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

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

Issue 1330873002: MediaRecorderHandler: connecting Blink factory method to content/ (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Forward declaring WebMediaRecorderHandlerClient (ISO including full header) Created 5 years, 3 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 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 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/video_track_recorder.h" 5 #include "content/renderer/media/video_track_recorder.h"
6 6
7 #include "base/bind.h" 7 #include "base/bind.h"
8 #include "base/logging.h" 8 #include "base/logging.h"
9 #include "base/sys_info.h" 9 #include "base/sys_info.h"
10 #include "base/threading/thread.h" 10 #include "base/threading/thread.h"
(...skipping 306 matching lines...) Expand 10 before | Expand all | Expand 10 after
317 kMinFrameDuration)); 317 kMinFrameDuration));
318 } 318 }
319 319
320 VideoTrackRecorder::VideoTrackRecorder( 320 VideoTrackRecorder::VideoTrackRecorder(
321 const blink::WebMediaStreamTrack& track, 321 const blink::WebMediaStreamTrack& track,
322 const OnEncodedVideoCB& on_encoded_video_callback) 322 const OnEncodedVideoCB& on_encoded_video_callback)
323 : track_(track), 323 : track_(track),
324 encoder_(new VpxEncoder(on_encoded_video_callback)) { 324 encoder_(new VpxEncoder(on_encoded_video_callback)) {
325 DCHECK(main_render_thread_checker_.CalledOnValidThread()); 325 DCHECK(main_render_thread_checker_.CalledOnValidThread());
326 DCHECK(!track_.isNull()); 326 DCHECK(!track_.isNull());
327 DCHECK(track.extraData()); 327 DCHECK(track_.extraData());
328 328
329 // StartFrameEncode() will be called on Render IO thread. 329 // StartFrameEncode() will be called on Render IO thread.
330 AddToVideoTrack(this, 330 AddToVideoTrack(this,
331 base::Bind(&VideoTrackRecorder::VpxEncoder::StartFrameEncode, 331 base::Bind(&VideoTrackRecorder::VpxEncoder::StartFrameEncode,
332 encoder_), 332 encoder_),
333 track_); 333 track_);
334 } 334 }
335 335
336 VideoTrackRecorder::~VideoTrackRecorder() { 336 VideoTrackRecorder::~VideoTrackRecorder() {
337 DCHECK(main_render_thread_checker_.CalledOnValidThread()); 337 DCHECK(main_render_thread_checker_.CalledOnValidThread());
338 RemoveFromVideoTrack(this, track_); 338 RemoveFromVideoTrack(this, track_);
339 track_.reset(); 339 track_.reset();
340 } 340 }
341 341
342 void VideoTrackRecorder::OnVideoFrameForTesting( 342 void VideoTrackRecorder::OnVideoFrameForTesting(
343 const scoped_refptr<media::VideoFrame>& frame, 343 const scoped_refptr<media::VideoFrame>& frame,
344 base::TimeTicks timestamp) { 344 base::TimeTicks timestamp) {
345 encoder_->StartFrameEncode(frame, timestamp); 345 encoder_->StartFrameEncode(frame, timestamp);
346 } 346 }
347 347
348 } // namespace content 348 } // namespace content
OLDNEW
« no previous file with comments | « content/renderer/media/media_recorder_handler_unittest.cc ('k') | content/renderer/renderer_blink_platform_impl.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698