43 #include <absl/types/optional.h>
44 #include <api/notifier.h>
45 #include <api/sequence_checker.h>
46 #include <api/video/recordable_encoded_frame.h>
47 #include <api/video/video_frame.h>
48 #include <api/video/video_sink_interface.h>
49 #include <api/video/video_source_interface.h>
50 #include <media/base/media_channel.h>
56 namespace visualization {
57 namespace webrtc_server {
77 virtual void OnFrame(
const std::shared_ptr<core::Tensor>&
frame) = 0;
83 void SetState(webrtc::MediaSourceInterface::SourceState new_state);
84 webrtc::MediaSourceInterface::SourceState
state()
const override {
87 bool remote()
const override {
return remote_; }
92 bool GetStats(Stats* stats)
override {
return false; }
94 const rtc::VideoSinkWants& wants)
override;
95 void RemoveSink(rtc::VideoSinkInterface<webrtc::VideoFrame>* sink)
override;
101 rtc::VideoSinkInterface<webrtc::RecordableEncodedFrame>* sink)
104 virtual void OnFrame(
const std::shared_ptr<core::Tensor>&
frame)
override {
110 virtual rtc::VideoSourceInterface<webrtc::VideoFrame>*
source() = 0;
113 webrtc::SequenceChecker worker_thread_checker_;
114 webrtc::MediaSourceInterface::SourceState state_;
Rect frame
Definition: BitmapWindowSystem.cpp:49
#define LogError(...)
Definition: Logging.h:67
Definition: BitmapTrackSource.h:80
virtual void OnFrame(const std::shared_ptr< core::Tensor > &frame) override
Definition: BitmapTrackSource.h:104
bool SupportsEncodedOutput() const override
Definition: BitmapTrackSource.h:96
bool GetStats(Stats *stats) override
Definition: BitmapTrackSource.h:92
void RemoveEncodedSink(rtc::VideoSinkInterface< webrtc::RecordableEncodedFrame > *sink) override
Definition: BitmapTrackSource.h:100
void RemoveSink(rtc::VideoSinkInterface< webrtc::VideoFrame > *sink) override
Definition: BitmapTrackSource.cpp:67
absl::optional< bool > needs_denoising() const override
Definition: BitmapTrackSource.h:89
BitmapTrackSource(bool remote)
Definition: BitmapTrackSource.cpp:47
bool remote() const override
Definition: BitmapTrackSource.h:87
void AddEncodedSink(rtc::VideoSinkInterface< webrtc::RecordableEncodedFrame > *sink) override
Definition: BitmapTrackSource.h:98
void AddOrUpdateSink(rtc::VideoSinkInterface< webrtc::VideoFrame > *sink, const rtc::VideoSinkWants &wants) override
Definition: BitmapTrackSource.cpp:60
virtual rtc::VideoSourceInterface< webrtc::VideoFrame > * source()=0
void SetState(webrtc::MediaSourceInterface::SourceState new_state)
Definition: BitmapTrackSource.cpp:52
webrtc::MediaSourceInterface::SourceState state() const override
Definition: BitmapTrackSource.h:84
bool is_screencast() const override
Definition: BitmapTrackSource.h:88
void GenerateKeyFrame() override
Definition: BitmapTrackSource.h:97
Definition: BitmapTrackSource.h:75
virtual void OnFrame(const std::shared_ptr< core::Tensor > &frame)=0
constexpr nullopt_t nullopt
Definition: Optional.h:171
Definition: PinholeCameraIntrinsic.cpp:35