| Index: remoting/protocol/webrtc_video_capturer_adapter.h
|
| diff --git a/remoting/protocol/webrtc_video_capturer_adapter.h b/remoting/protocol/webrtc_video_capturer_adapter.h
|
| deleted file mode 100644
|
| index cf7804457dd9660cd3a597981dbc3355868a6177..0000000000000000000000000000000000000000
|
| --- a/remoting/protocol/webrtc_video_capturer_adapter.h
|
| +++ /dev/null
|
| @@ -1,102 +0,0 @@
|
| -// Copyright 2015 The Chromium Authors. All rights reserved.
|
| -// Use of this source code is governed by a BSD-style license that can be
|
| -// found in the LICENSE file.
|
| -
|
| -#ifndef REMOTING_PROTOCOL_WEBRTC_VIDEO_CAPTURER_ADAPTER_H_
|
| -#define REMOTING_PROTOCOL_WEBRTC_VIDEO_CAPTURER_ADAPTER_H_
|
| -
|
| -#include <stddef.h>
|
| -#include <stdint.h>
|
| -
|
| -#include <memory>
|
| -#include <vector>
|
| -
|
| -#include "base/macros.h"
|
| -#include "base/memory/weak_ptr.h"
|
| -#include "base/threading/thread_checker.h"
|
| -#include "base/timer/timer.h"
|
| -#include "remoting/protocol/video_stream.h"
|
| -#include "third_party/webrtc/media/base/videocapturer.h"
|
| -#include "third_party/webrtc/modules/desktop_capture/desktop_capturer.h"
|
| -#include "third_party/webrtc/modules/desktop_capture/desktop_geometry.h"
|
| -
|
| -namespace base {
|
| -class SingleThreadTaskRunner;
|
| -} // namespace base
|
| -
|
| -namespace cricket {
|
| -class VideoFrame;
|
| -} // namespace cricket
|
| -
|
| -namespace webrtc {
|
| -class DesktopFrame;
|
| -} // namespace webrtc
|
| -
|
| -namespace remoting {
|
| -namespace protocol {
|
| -
|
| -// This class controls the capture of video frames from the desktop and is used
|
| -// to construct a VideoSource as part of the webrtc PeerConnection API.
|
| -// WebrtcVideoCapturerAdapter acts as an adapter between webrtc::DesktopCapturer
|
| -// and the cricket::VideoCapturer interface, which it implements. It is used
|
| -// to construct a cricket::VideoSource for a PeerConnection, to capture frames
|
| -// of the desktop. As indicated in the base implementation, Start() and Stop()
|
| -// should be called on the same thread.
|
| -class WebrtcVideoCapturerAdapter : public cricket::VideoCapturer,
|
| - public webrtc::DesktopCapturer::Callback {
|
| - public:
|
| - explicit WebrtcVideoCapturerAdapter(
|
| - std::unique_ptr<webrtc::DesktopCapturer> capturer);
|
| - ~WebrtcVideoCapturerAdapter() override;
|
| -
|
| - void SetSizeCallback(const VideoStream::SizeCallback& size_callback);
|
| - bool PauseCapturer(bool pause);
|
| - base::WeakPtr<WebrtcVideoCapturerAdapter> GetWeakPtr();
|
| -
|
| - // cricket::VideoCapturer implementation.
|
| - bool GetBestCaptureFormat(const cricket::VideoFormat& desired,
|
| - cricket::VideoFormat* best_format) override;
|
| - cricket::CaptureState Start(
|
| - const cricket::VideoFormat& capture_format) override;
|
| - void Stop() override;
|
| - bool IsRunning() override;
|
| - bool IsScreencast() const override;
|
| - bool GetPreferredFourccs(std::vector<uint32_t>* fourccs) override;
|
| -
|
| - private:
|
| - // webrtc::DesktopCapturer::Callback implementation.
|
| - webrtc::SharedMemory* CreateSharedMemory(size_t size) override;
|
| - void OnCaptureCompleted(webrtc::DesktopFrame* frame) override;
|
| -
|
| - // Kicks off the next frame capture using |desktop_capturer_|. The captured
|
| - // frame will be passed to OnCaptureCompleted().
|
| - void CaptureNextFrame();
|
| -
|
| - base::ThreadChecker thread_checker_;
|
| -
|
| - std::unique_ptr<webrtc::DesktopCapturer> desktop_capturer_;
|
| -
|
| - VideoStream::SizeCallback size_callback_;
|
| -
|
| - // Timer to call CaptureNextFrame().
|
| - std::unique_ptr<base::RepeatingTimer> capture_timer_;
|
| -
|
| - webrtc::DesktopSize frame_size_;
|
| - webrtc::DesktopVector frame_dpi_;
|
| -
|
| - // Video frame is kept between captures to avoid YUV conversion for static
|
| - // parts of the screen.
|
| - rtc::scoped_refptr<webrtc::I420Buffer> yuv_frame_;
|
| -
|
| - bool capture_pending_ = false;
|
| - bool paused_ = false;
|
| -
|
| - base::WeakPtrFactory<WebrtcVideoCapturerAdapter> weak_factory_;
|
| -
|
| - DISALLOW_COPY_AND_ASSIGN(WebrtcVideoCapturerAdapter);
|
| -};
|
| -
|
| -} // namespace protocol
|
| -} // namespace remoting
|
| -
|
| -#endif // REMOTING_PROTOCOL_WEBRTC_VIDEO_CAPTURER_ADAPTER_H_
|
|
|