Index: webrtc/test/frame_generator.cc |
diff --git a/webrtc/test/frame_generator.cc b/webrtc/test/frame_generator.cc |
index ed7e95a12679d2abc36da2e56a4e194206c7d198..ed7565528009917996a590d51eb252e774143d8a 100644 |
--- a/webrtc/test/frame_generator.cc |
+++ b/webrtc/test/frame_generator.cc |
@@ -239,6 +239,25 @@ class ScrollingImageFrameGenerator : public FrameGenerator { |
} // namespace |
+void FrameForwarder::IncomingCapturedFrame(const VideoFrame& video_frame) { |
+ rtc::CritScope lock(&crit_); |
+ if (sink_) |
+ sink_->OnFrame(video_frame); |
+} |
+ |
+void FrameForwarder::AddOrUpdateSink(rtc::VideoSinkInterface<VideoFrame>* sink, |
+ const rtc::VideoSinkWants& wants) { |
+ rtc::CritScope lock(&crit_); |
+ RTC_DCHECK(!sink_ || sink_ == sink); |
+ sink_ = sink; |
+} |
+ |
+void FrameForwarder::RemoveSink(rtc::VideoSinkInterface<VideoFrame>* sink) { |
+ rtc::CritScope lock(&crit_); |
+ RTC_DCHECK(sink == sink_); |
+ sink_ = nullptr; |
+} |
+ |
FrameGenerator* FrameGenerator::CreateChromaGenerator(size_t width, |
size_t height) { |
return new ChromaGenerator(width, height); |