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

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

Issue 443393002: Stop using WebMediaPlayerClient::preload() and volume() (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 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 | Annotate | Revision Log
« no previous file with comments | « content/renderer/media/webmediaplayer_ms.h ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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 8
9 #include "base/bind.h" 9 #include "base/bind.h"
10 #include "base/callback.h" 10 #include "base/callback.h"
(...skipping 69 matching lines...) Expand 10 before | Expand all | Expand 10 after
80 WebMediaPlayerMS::WebMediaPlayerMS( 80 WebMediaPlayerMS::WebMediaPlayerMS(
81 blink::WebFrame* frame, 81 blink::WebFrame* frame,
82 blink::WebMediaPlayerClient* client, 82 blink::WebMediaPlayerClient* client,
83 base::WeakPtr<WebMediaPlayerDelegate> delegate, 83 base::WeakPtr<WebMediaPlayerDelegate> delegate,
84 media::MediaLog* media_log, 84 media::MediaLog* media_log,
85 scoped_ptr<MediaStreamRendererFactory> factory) 85 scoped_ptr<MediaStreamRendererFactory> factory)
86 : frame_(frame), 86 : frame_(frame),
87 network_state_(WebMediaPlayer::NetworkStateEmpty), 87 network_state_(WebMediaPlayer::NetworkStateEmpty),
88 ready_state_(WebMediaPlayer::ReadyStateHaveNothing), 88 ready_state_(WebMediaPlayer::ReadyStateHaveNothing),
89 buffered_(static_cast<size_t>(1)), 89 buffered_(static_cast<size_t>(1)),
90 volume_(1.0f),
90 client_(client), 91 client_(client),
91 delegate_(delegate), 92 delegate_(delegate),
92 paused_(true), 93 paused_(true),
93 current_frame_used_(false), 94 current_frame_used_(false),
94 pending_repaint_(false), 95 pending_repaint_(false),
95 video_frame_provider_client_(NULL), 96 video_frame_provider_client_(NULL),
96 received_first_frame_(false), 97 received_first_frame_(false),
97 total_frame_count_(0), 98 total_frame_count_(0),
98 dropped_frame_count_(0), 99 dropped_frame_count_(0),
99 media_log_(media_log), 100 media_log_(media_log),
(...skipping 28 matching lines...) Expand all
128 CORSMode cors_mode) { 129 CORSMode cors_mode) {
129 DVLOG(1) << "WebMediaPlayerMS::load"; 130 DVLOG(1) << "WebMediaPlayerMS::load";
130 DCHECK(thread_checker_.CalledOnValidThread()); 131 DCHECK(thread_checker_.CalledOnValidThread());
131 132
132 // TODO(acolwell): Change this to DCHECK_EQ(load_type, 133 // TODO(acolwell): Change this to DCHECK_EQ(load_type,
133 // LoadTypeMediaStream) once Blink-side changes land. 134 // LoadTypeMediaStream) once Blink-side changes land.
134 DCHECK_NE(load_type, LoadTypeMediaSource); 135 DCHECK_NE(load_type, LoadTypeMediaSource);
135 136
136 GURL gurl(url); 137 GURL gurl(url);
137 138
138 setVolume(GetClient()->volume());
139 SetNetworkState(WebMediaPlayer::NetworkStateLoading); 139 SetNetworkState(WebMediaPlayer::NetworkStateLoading);
140 SetReadyState(WebMediaPlayer::ReadyStateHaveNothing); 140 SetReadyState(WebMediaPlayer::ReadyStateHaveNothing);
141 media_log_->AddEvent(media_log_->CreateLoadEvent(url.spec())); 141 media_log_->AddEvent(media_log_->CreateLoadEvent(url.spec()));
142 142
143 video_frame_provider_ = renderer_factory_->GetVideoFrameProvider( 143 video_frame_provider_ = renderer_factory_->GetVideoFrameProvider(
144 url, 144 url,
145 base::Bind(&WebMediaPlayerMS::OnSourceError, AsWeakPtr()), 145 base::Bind(&WebMediaPlayerMS::OnSourceError, AsWeakPtr()),
146 base::Bind(&WebMediaPlayerMS::OnFrameAvailable, AsWeakPtr())); 146 base::Bind(&WebMediaPlayerMS::OnFrameAvailable, AsWeakPtr()));
147 147
148 RenderFrame* frame = RenderFrame::FromWebFrame(frame_); 148 RenderFrame* frame = RenderFrame::FromWebFrame(frame_);
149 audio_renderer_ = renderer_factory_->GetAudioRenderer( 149 audio_renderer_ = renderer_factory_->GetAudioRenderer(
150 url, 150 url,
151 frame->GetRenderView()->GetRoutingID(), 151 frame->GetRenderView()->GetRoutingID(),
152 frame->GetRoutingID()); 152 frame->GetRoutingID());
153 153
154 if (video_frame_provider_.get() || audio_renderer_.get()) { 154 if (video_frame_provider_.get() || audio_renderer_.get()) {
155 if (audio_renderer_.get()) 155 if (audio_renderer_.get()) {
156 audio_renderer_->SetVolume(volume_);
156 audio_renderer_->Start(); 157 audio_renderer_->Start();
158 }
157 159
158 if (video_frame_provider_.get()) { 160 if (video_frame_provider_.get()) {
159 video_frame_provider_->Start(); 161 video_frame_provider_->Start();
160 } else { 162 } else {
161 // This is audio-only mode. 163 // This is audio-only mode.
162 DCHECK(audio_renderer_.get()); 164 DCHECK(audio_renderer_.get());
163 SetReadyState(WebMediaPlayer::ReadyStateHaveMetadata); 165 SetReadyState(WebMediaPlayer::ReadyStateHaveMetadata);
164 SetReadyState(WebMediaPlayer::ReadyStateHaveEnoughData); 166 SetReadyState(WebMediaPlayer::ReadyStateHaveEnoughData);
165 } 167 }
166 } else { 168 } else {
(...skipping 60 matching lines...) Expand 10 before | Expand all | Expand 10 after
227 void WebMediaPlayerMS::seek(double seconds) { 229 void WebMediaPlayerMS::seek(double seconds) {
228 DCHECK(thread_checker_.CalledOnValidThread()); 230 DCHECK(thread_checker_.CalledOnValidThread());
229 } 231 }
230 232
231 void WebMediaPlayerMS::setRate(double rate) { 233 void WebMediaPlayerMS::setRate(double rate) {
232 DCHECK(thread_checker_.CalledOnValidThread()); 234 DCHECK(thread_checker_.CalledOnValidThread());
233 } 235 }
234 236
235 void WebMediaPlayerMS::setVolume(double volume) { 237 void WebMediaPlayerMS::setVolume(double volume) {
236 DCHECK(thread_checker_.CalledOnValidThread()); 238 DCHECK(thread_checker_.CalledOnValidThread());
237 if (!audio_renderer_.get())
238 return;
239 DVLOG(1) << "WebMediaPlayerMS::setVolume(volume=" << volume << ")"; 239 DVLOG(1) << "WebMediaPlayerMS::setVolume(volume=" << volume << ")";
240 audio_renderer_->SetVolume(volume); 240 volume_ = volume;
241 if (audio_renderer_.get())
242 audio_renderer_->SetVolume(volume_);
241 } 243 }
242 244
243 void WebMediaPlayerMS::setPreload(WebMediaPlayer::Preload preload) { 245 void WebMediaPlayerMS::setPreload(WebMediaPlayer::Preload preload) {
244 DCHECK(thread_checker_.CalledOnValidThread()); 246 DCHECK(thread_checker_.CalledOnValidThread());
245 } 247 }
246 248
247 bool WebMediaPlayerMS::hasVideo() const { 249 bool WebMediaPlayerMS::hasVideo() const {
248 DCHECK(thread_checker_.CalledOnValidThread()); 250 DCHECK(thread_checker_.CalledOnValidThread());
249 return (video_frame_provider_.get() != NULL); 251 return (video_frame_provider_.get() != NULL);
250 } 252 }
(...skipping 218 matching lines...) Expand 10 before | Expand all | Expand 10 after
469 GetClient()->readyStateChanged(); 471 GetClient()->readyStateChanged();
470 } 472 }
471 473
472 blink::WebMediaPlayerClient* WebMediaPlayerMS::GetClient() { 474 blink::WebMediaPlayerClient* WebMediaPlayerMS::GetClient() {
473 DCHECK(thread_checker_.CalledOnValidThread()); 475 DCHECK(thread_checker_.CalledOnValidThread());
474 DCHECK(client_); 476 DCHECK(client_);
475 return client_; 477 return client_;
476 } 478 }
477 479
478 } // namespace content 480 } // namespace content
OLDNEW
« no previous file with comments | « content/renderer/media/webmediaplayer_ms.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698