video_decoder_verbatim.h 1.2 KB

1234567891011121314151617181920212223242526272829303132333435
  1. // Copyright (c) 2012 The Chromium Authors. All rights reserved.
  2. // Use of this source code is governed by a BSD-style license that can be
  3. // found in the LICENSE file.
  4. #ifndef REMOTING_CODEC_VIDEO_DECODER_VERBATIM_H_
  5. #define REMOTING_CODEC_VIDEO_DECODER_VERBATIM_H_
  6. #include "base/compiler_specific.h"
  7. #include "remoting/codec/video_decoder.h"
  8. #include "third_party/webrtc/modules/desktop_capture/desktop_geometry.h"
  9. #include "third_party/webrtc/modules/desktop_capture/desktop_region.h"
  10. namespace remoting {
  11. // Video decoder implementations that decodes video packet encoded by
  12. // VideoEncoderVerbatim. It just copies data from incoming packets to the
  13. // video frames.
  14. class VideoDecoderVerbatim : public VideoDecoder {
  15. public:
  16. VideoDecoderVerbatim();
  17. VideoDecoderVerbatim(const VideoDecoderVerbatim&) = delete;
  18. VideoDecoderVerbatim& operator=(const VideoDecoderVerbatim&) = delete;
  19. ~VideoDecoderVerbatim() override;
  20. // VideoDecoder implementation.
  21. void SetPixelFormat(PixelFormat pixel_format) override;
  22. bool DecodePacket(const VideoPacket& packet,
  23. webrtc::DesktopFrame* frame) override;
  24. };
  25. } // namespace remoting
  26. #endif // REMOTING_CODEC_VIDEO_DECODER_VERBATIM_H_