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

Side by Side Diff: content/renderer/media/media_stream_video_track.cc

Issue 1249233002: [backup] Add MediaRecorderHandler (video part) (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@m_crbug262211__MSRecorder__4__VideoTrackRecorder
Patch Set: UnitTests cleanup Created 5 years, 4 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 unified diff | Download patch
OLDNEW
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 #include "base/location.h" 10 #include "base/location.h"
(...skipping 223 matching lines...) Expand 10 before | Expand all | Expand 10 after
234 void MediaStreamVideoTrack::AddSink( 234 void MediaStreamVideoTrack::AddSink(
235 MediaStreamVideoSink* sink, const VideoCaptureDeliverFrameCB& callback) { 235 MediaStreamVideoSink* sink, const VideoCaptureDeliverFrameCB& callback) {
236 DCHECK(main_render_thread_checker_.CalledOnValidThread()); 236 DCHECK(main_render_thread_checker_.CalledOnValidThread());
237 DCHECK(std::find(sinks_.begin(), sinks_.end(), sink) == sinks_.end()); 237 DCHECK(std::find(sinks_.begin(), sinks_.end(), sink) == sinks_.end());
238 sinks_.push_back(sink); 238 sinks_.push_back(sink);
239 frame_deliverer_->AddCallback(sink, callback); 239 frame_deliverer_->AddCallback(sink, callback);
240 } 240 }
241 241
242 void MediaStreamVideoTrack::RemoveSink(MediaStreamVideoSink* sink) { 242 void MediaStreamVideoTrack::RemoveSink(MediaStreamVideoSink* sink) {
243 DCHECK(main_render_thread_checker_.CalledOnValidThread()); 243 DCHECK(main_render_thread_checker_.CalledOnValidThread());
244 std::vector<MediaStreamVideoSink*>::iterator it = 244 auto it = std::find(sinks_.begin(), sinks_.end(), sink);
245 std::find(sinks_.begin(), sinks_.end(), sink);
246 DCHECK(it != sinks_.end()); 245 DCHECK(it != sinks_.end());
247 sinks_.erase(it); 246 sinks_.erase(it);
248 frame_deliverer_->RemoveCallback(sink); 247 frame_deliverer_->RemoveCallback(sink);
249 } 248 }
250 249
251 void MediaStreamVideoTrack::SetEnabled(bool enabled) { 250 void MediaStreamVideoTrack::SetEnabled(bool enabled) {
252 DCHECK(main_render_thread_checker_.CalledOnValidThread()); 251 DCHECK(main_render_thread_checker_.CalledOnValidThread());
253 frame_deliverer_->SetEnabled(enabled); 252 frame_deliverer_->SetEnabled(enabled);
254 for (auto* sink : sinks_) 253 for (auto* sink : sinks_)
255 sink->OnEnabledChanged(enabled); 254 sink->OnEnabledChanged(enabled);
256 } 255 }
257 256
258 void MediaStreamVideoTrack::Stop() { 257 void MediaStreamVideoTrack::Stop() {
259 DCHECK(main_render_thread_checker_.CalledOnValidThread()); 258 DCHECK(main_render_thread_checker_.CalledOnValidThread());
260 if (source_) { 259 if (source_) {
261 source_->RemoveTrack(this); 260 source_->RemoveTrack(this);
262 source_ = NULL; 261 source_ = NULL;
263 } 262 }
264 OnReadyStateChanged(blink::WebMediaStreamSource::ReadyStateEnded); 263 OnReadyStateChanged(blink::WebMediaStreamSource::ReadyStateEnded);
265 } 264 }
266 265
267 void MediaStreamVideoTrack::OnReadyStateChanged( 266 void MediaStreamVideoTrack::OnReadyStateChanged(
268 blink::WebMediaStreamSource::ReadyState state) { 267 blink::WebMediaStreamSource::ReadyState state) {
269 DCHECK(main_render_thread_checker_.CalledOnValidThread()); 268 DCHECK(main_render_thread_checker_.CalledOnValidThread());
270 for (auto* sink : sinks_) 269 for (auto* sink : sinks_)
271 sink->OnReadyStateChanged(state); 270 sink->OnReadyStateChanged(state);
272 } 271 }
273 272
274 } // namespace content 273 } // namespace content
OLDNEW
« no previous file with comments | « content/renderer/media/media_recorder_handler_unittest.cc ('k') | content/renderer/media/video_track_recorder.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698