Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1020)

Unified Diff: content/renderer/media/mock_media_stream_video_sink.cc

Issue 264363005: Cast: deliver video frames on the IO thread (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: merged Created 6 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: content/renderer/media/mock_media_stream_video_sink.cc
diff --git a/content/renderer/media/mock_media_stream_video_sink.cc b/content/renderer/media/mock_media_stream_video_sink.cc
index 4246a394974b8e9ff27877a6d7bb02738cb4383d..638c897535ff1fbb5d047badd22fd1a6609e8615 100644
--- a/content/renderer/media/mock_media_stream_video_sink.cc
+++ b/content/renderer/media/mock_media_stream_video_sink.cc
@@ -4,20 +4,32 @@
#include "content/renderer/media/mock_media_stream_video_sink.h"
+#include "media/base/bind_to_current_loop.h"
+
namespace content {
MockMediaStreamVideoSink::MockMediaStreamVideoSink()
: number_of_frames_(0),
enabled_(true),
format_(media::VideoFrame::UNKNOWN),
- state_(blink::WebMediaStreamSource::ReadyStateLive) {
+ state_(blink::WebMediaStreamSource::ReadyStateLive),
+ weak_factory_(this) {
perkj_chrome 2014/05/08 08:15:08 Can you add thread checks to this class? Just to m
}
MockMediaStreamVideoSink::~MockMediaStreamVideoSink() {
}
-void MockMediaStreamVideoSink::OnVideoFrame(
- const scoped_refptr<media::VideoFrame>& frame) {
+VideoCaptureDeliverFrameCB
+MockMediaStreamVideoSink::GetDeliverFrameCB() {
+ return media::BindToCurrentLoop(
+ base::Bind(
+ &MockMediaStreamVideoSink::DeliverVideoFrame,
+ weak_factory_.GetWeakPtr()));
+}
+
+void MockMediaStreamVideoSink::DeliverVideoFrame(
+ const scoped_refptr<media::VideoFrame>& frame,
+ const media::VideoCaptureFormat& format) {
++number_of_frames_;
format_ = frame->format();
frame_size_ = frame->natural_size();

Powered by Google App Engine
This is Rietveld 408576698