OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "content/renderer/media/mock_media_stream_video_sink.h" | 5 #include "content/renderer/media/mock_media_stream_video_sink.h" |
6 | 6 |
| 7 #include "media/base/bind_to_current_loop.h" |
| 8 |
7 namespace content { | 9 namespace content { |
8 | 10 |
9 MockMediaStreamVideoSink::MockMediaStreamVideoSink() | 11 MockMediaStreamVideoSink::MockMediaStreamVideoSink() |
10 : number_of_frames_(0), | 12 : number_of_frames_(0), |
11 enabled_(true), | 13 enabled_(true), |
12 format_(media::VideoFrame::UNKNOWN), | 14 format_(media::VideoFrame::UNKNOWN), |
13 state_(blink::WebMediaStreamSource::ReadyStateLive) { | 15 state_(blink::WebMediaStreamSource::ReadyStateLive), |
| 16 weak_factory_(this) { |
14 } | 17 } |
15 | 18 |
16 MockMediaStreamVideoSink::~MockMediaStreamVideoSink() { | 19 MockMediaStreamVideoSink::~MockMediaStreamVideoSink() { |
17 } | 20 } |
18 | 21 |
19 void MockMediaStreamVideoSink::OnVideoFrame( | 22 VideoCaptureDeliverFrameCB |
20 const scoped_refptr<media::VideoFrame>& frame) { | 23 MockMediaStreamVideoSink::GetDeliverFrameCB() { |
| 24 return media::BindToCurrentLoop( |
| 25 base::Bind( |
| 26 &MockMediaStreamVideoSink::DeliverVideoFrame, |
| 27 weak_factory_.GetWeakPtr())); |
| 28 } |
| 29 |
| 30 void MockMediaStreamVideoSink::DeliverVideoFrame( |
| 31 const scoped_refptr<media::VideoFrame>& frame, |
| 32 const media::VideoCaptureFormat& format) { |
21 ++number_of_frames_; | 33 ++number_of_frames_; |
22 format_ = frame->format(); | 34 format_ = frame->format(); |
23 frame_size_ = frame->natural_size(); | 35 frame_size_ = frame->natural_size(); |
24 OnVideoFrame(); | 36 OnVideoFrame(); |
25 } | 37 } |
26 | 38 |
27 void MockMediaStreamVideoSink::OnReadyStateChanged( | 39 void MockMediaStreamVideoSink::OnReadyStateChanged( |
28 blink::WebMediaStreamSource::ReadyState state) { | 40 blink::WebMediaStreamSource::ReadyState state) { |
29 state_ = state; | 41 state_ = state; |
30 } | 42 } |
31 | 43 |
32 void MockMediaStreamVideoSink::OnEnabledChanged(bool enabled) { | 44 void MockMediaStreamVideoSink::OnEnabledChanged(bool enabled) { |
33 enabled_ = enabled; | 45 enabled_ = enabled; |
34 } | 46 } |
35 | 47 |
36 } // namespace content | 48 } // namespace content |
OLD | NEW |