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

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

Issue 1417533006: Unit test for WebMediaPlayerMS (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Style Created 5 years, 1 month 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/webmediaplayer_ms.h" 5 #include "content/renderer/media/webmediaplayer_ms.h"
6 6
7 #include <limits> 7 #include <limits>
8 #include <string> 8 #include <string>
9 9
10 #include "base/bind.h" 10 #include "base/bind.h"
(...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after
55 delegate_(delegate), 55 delegate_(delegate),
56 paused_(true), 56 paused_(true),
57 received_first_frame_(false), 57 received_first_frame_(false),
58 media_log_(media_log), 58 media_log_(media_log),
59 renderer_factory_(factory.Pass()), 59 renderer_factory_(factory.Pass()),
60 media_task_runner_(media_task_runner), 60 media_task_runner_(media_task_runner),
61 worker_task_runner_(worker_task_runner), 61 worker_task_runner_(worker_task_runner),
62 gpu_factories_(gpu_factories), 62 gpu_factories_(gpu_factories),
63 compositor_task_runner_(compositor_task_runner), 63 compositor_task_runner_(compositor_task_runner),
64 initial_audio_output_device_id_(sink_id.utf8()), 64 initial_audio_output_device_id_(sink_id.utf8()),
65 initial_security_origin_(security_origin) { 65 initial_security_origin_(security_origin.isNull()
66 ? url::Origin()
67 : url::Origin(security_origin)) {
mcasas 2015/12/02 19:42:31 url::Origin() has a ctor with no arguments, so you
qiangchen 2015/12/05 00:24:14 Ah, that does not work. Here security_origin is of
66 DVLOG(1) << __FUNCTION__; 68 DVLOG(1) << __FUNCTION__;
67 DCHECK(client); 69 DCHECK(client);
68 media_log_->AddEvent( 70 media_log_->AddEvent(
69 media_log_->CreateEvent(media::MediaLogEvent::WEBMEDIAPLAYER_CREATED)); 71 media_log_->CreateEvent(media::MediaLogEvent::WEBMEDIAPLAYER_CREATED));
70 } 72 }
71 73
72 WebMediaPlayerMS::~WebMediaPlayerMS() { 74 WebMediaPlayerMS::~WebMediaPlayerMS() {
73 DVLOG(1) << __FUNCTION__; 75 DVLOG(1) << __FUNCTION__;
74 DCHECK(thread_checker_.CalledOnValidThread()); 76 DCHECK(thread_checker_.CalledOnValidThread());
75 77
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after
110 112
111 video_frame_provider_ = renderer_factory_->GetVideoFrameProvider( 113 video_frame_provider_ = renderer_factory_->GetVideoFrameProvider(
112 url, 114 url,
113 base::Bind(&WebMediaPlayerMS::OnSourceError, AsWeakPtr()), 115 base::Bind(&WebMediaPlayerMS::OnSourceError, AsWeakPtr()),
114 base::Bind(&WebMediaPlayerMS::OnFrameAvailable, AsWeakPtr()), 116 base::Bind(&WebMediaPlayerMS::OnFrameAvailable, AsWeakPtr()),
115 media_task_runner_, 117 media_task_runner_,
116 worker_task_runner_, 118 worker_task_runner_,
117 gpu_factories_); 119 gpu_factories_);
118 120
119 RenderFrame* const frame = RenderFrame::FromWebFrame(frame_); 121 RenderFrame* const frame = RenderFrame::FromWebFrame(frame_);
120 audio_renderer_ = renderer_factory_->GetAudioRenderer( 122
121 url, frame->GetRoutingID(), initial_audio_output_device_id_, 123 if (frame) {
122 initial_security_origin_); 124 audio_renderer_ = renderer_factory_->GetAudioRenderer(
125 url, frame->GetRoutingID(), initial_audio_output_device_id_,
126 initial_security_origin_);
127 }
123 128
124 if (!video_frame_provider_ && !audio_renderer_) { 129 if (!video_frame_provider_ && !audio_renderer_) {
125 SetNetworkState(WebMediaPlayer::NetworkStateNetworkError); 130 SetNetworkState(WebMediaPlayer::NetworkStateNetworkError);
126 return; 131 return;
127 } 132 }
128 133
129 if (audio_renderer_) { 134 if (audio_renderer_) {
130 audio_renderer_->SetVolume(DEFAULT_AUDIO_VOLUME); 135 audio_renderer_->SetVolume(DEFAULT_AUDIO_VOLUME);
131 audio_renderer_->Start(); 136 audio_renderer_->Start();
132 } 137 }
(...skipping 312 matching lines...) Expand 10 before | Expand all | Expand 10 after
445 } 450 }
446 451
447 media::SkCanvasVideoRenderer* WebMediaPlayerMS::GetSkCanvasVideoRenderer() { 452 media::SkCanvasVideoRenderer* WebMediaPlayerMS::GetSkCanvasVideoRenderer() {
448 return &video_renderer_; 453 return &video_renderer_;
449 } 454 }
450 455
451 void WebMediaPlayerMS::ResetCanvasCache() { 456 void WebMediaPlayerMS::ResetCanvasCache() {
452 DCHECK(thread_checker_.CalledOnValidThread()); 457 DCHECK(thread_checker_.CalledOnValidThread());
453 video_renderer_.ResetCache(); 458 video_renderer_.ResetCache();
454 } 459 }
460
455 } // namespace content 461 } // namespace content
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698