| OLD | NEW |
| 1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 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/media_stream_video_track.h" | 5 #include "content/renderer/media/media_stream_video_track.h" |
| 6 | 6 |
| 7 #include <utility> | 7 #include <utility> |
| 8 | 8 |
| 9 #include "base/bind.h" | 9 #include "base/bind.h" |
| 10 | 10 |
| (...skipping 60 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 71 typedef std::pair<void*, VideoCaptureDeliverFrameCB> VideoIdCallbackPair; | 71 typedef std::pair<void*, VideoCaptureDeliverFrameCB> VideoIdCallbackPair; |
| 72 std::vector<VideoIdCallbackPair> callbacks_; | 72 std::vector<VideoIdCallbackPair> callbacks_; |
| 73 | 73 |
| 74 DISALLOW_COPY_AND_ASSIGN(FrameDeliverer); | 74 DISALLOW_COPY_AND_ASSIGN(FrameDeliverer); |
| 75 }; | 75 }; |
| 76 | 76 |
| 77 MediaStreamVideoTrack::FrameDeliverer::FrameDeliverer( | 77 MediaStreamVideoTrack::FrameDeliverer::FrameDeliverer( |
| 78 const scoped_refptr<base::MessageLoopProxy>& io_message_loop, bool enabled) | 78 const scoped_refptr<base::MessageLoopProxy>& io_message_loop, bool enabled) |
| 79 : io_message_loop_(io_message_loop), | 79 : io_message_loop_(io_message_loop), |
| 80 enabled_(enabled) { | 80 enabled_(enabled) { |
| 81 DCHECK(io_message_loop_); | 81 DCHECK(io_message_loop_.get()); |
| 82 } | 82 } |
| 83 | 83 |
| 84 MediaStreamVideoTrack::FrameDeliverer::~FrameDeliverer() { | 84 MediaStreamVideoTrack::FrameDeliverer::~FrameDeliverer() { |
| 85 DCHECK(callbacks_.empty()); | 85 DCHECK(callbacks_.empty()); |
| 86 } | 86 } |
| 87 | 87 |
| 88 void MediaStreamVideoTrack::FrameDeliverer::AddCallback( | 88 void MediaStreamVideoTrack::FrameDeliverer::AddCallback( |
| 89 void* id, | 89 void* id, |
| 90 const VideoCaptureDeliverFrameCB& callback) { | 90 const VideoCaptureDeliverFrameCB& callback) { |
| 91 DCHECK(thread_checker_.CalledOnValidThread()); | 91 DCHECK(thread_checker_.CalledOnValidThread()); |
| (...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 153 for (std::vector<VideoIdCallbackPair>::iterator it = callbacks_.begin(); | 153 for (std::vector<VideoIdCallbackPair>::iterator it = callbacks_.begin(); |
| 154 it != callbacks_.end(); ++it) { | 154 it != callbacks_.end(); ++it) { |
| 155 it->second.Run(video_frame, format, estimated_capture_time); | 155 it->second.Run(video_frame, format, estimated_capture_time); |
| 156 } | 156 } |
| 157 } | 157 } |
| 158 | 158 |
| 159 const scoped_refptr<media::VideoFrame>& | 159 const scoped_refptr<media::VideoFrame>& |
| 160 MediaStreamVideoTrack::FrameDeliverer::GetBlackFrame( | 160 MediaStreamVideoTrack::FrameDeliverer::GetBlackFrame( |
| 161 const scoped_refptr<media::VideoFrame>& reference_frame) { | 161 const scoped_refptr<media::VideoFrame>& reference_frame) { |
| 162 DCHECK(io_message_loop_->BelongsToCurrentThread()); | 162 DCHECK(io_message_loop_->BelongsToCurrentThread()); |
| 163 if (!black_frame_ || | 163 if (!black_frame_.get() || |
| 164 black_frame_->natural_size() != reference_frame->natural_size()) | 164 black_frame_->natural_size() != reference_frame->natural_size()) |
| 165 black_frame_ = | 165 black_frame_ = |
| 166 media::VideoFrame::CreateBlackFrame(reference_frame->natural_size()); | 166 media::VideoFrame::CreateBlackFrame(reference_frame->natural_size()); |
| 167 | 167 |
| 168 black_frame_->set_timestamp(reference_frame->timestamp()); | 168 black_frame_->set_timestamp(reference_frame->timestamp()); |
| 169 return black_frame_; | 169 return black_frame_; |
| 170 } | 170 } |
| 171 | 171 |
| 172 // static | 172 // static |
| 173 blink::WebMediaStreamTrack MediaStreamVideoTrack::CreateVideoTrack( | 173 blink::WebMediaStreamTrack MediaStreamVideoTrack::CreateVideoTrack( |
| (...skipping 92 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 266 DCHECK(thread_checker_.CalledOnValidThread()); | 266 DCHECK(thread_checker_.CalledOnValidThread()); |
| 267 muted_state_ = muted_state; | 267 muted_state_ = muted_state; |
| 268 } | 268 } |
| 269 | 269 |
| 270 bool MediaStreamVideoTrack::GetMutedState(void) const { | 270 bool MediaStreamVideoTrack::GetMutedState(void) const { |
| 271 DCHECK(thread_checker_.CalledOnValidThread()); | 271 DCHECK(thread_checker_.CalledOnValidThread()); |
| 272 return muted_state_; | 272 return muted_state_; |
| 273 } | 273 } |
| 274 | 274 |
| 275 } // namespace content | 275 } // namespace content |
| OLD | NEW |