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

Side by Side Diff: content/renderer/media/android/media_player_renderer_client.cc

Issue 2282633002: Integrate Surface requests with MediaPlayerRenderer (Closed)
Patch Set: Fixed MojoRenderService constructor Created 4 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 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 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/android/media_player_renderer_client.h" 5 #include "content/renderer/media/android/media_player_renderer_client.h"
6 6
7 #include "base/callback_helpers.h" 7 #include "base/callback_helpers.h"
8 8
9 namespace content { 9 namespace content {
10 10
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after
51 51
52 void MediaPlayerRendererClient::InitializeRemoteRenderer( 52 void MediaPlayerRendererClient::InitializeRemoteRenderer(
53 media::DemuxerStreamProvider* demuxer_stream_provider) { 53 media::DemuxerStreamProvider* demuxer_stream_provider) {
54 DCHECK(media_task_runner_->BelongsToCurrentThread()); 54 DCHECK(media_task_runner_->BelongsToCurrentThread());
55 mojo_renderer_->Initialize( 55 mojo_renderer_->Initialize(
56 demuxer_stream_provider, this, 56 demuxer_stream_provider, this,
57 base::Bind(&MediaPlayerRendererClient::CompleteInitialization, 57 base::Bind(&MediaPlayerRendererClient::CompleteInitialization,
58 weak_factory_.GetWeakPtr())); 58 weak_factory_.GetWeakPtr()));
59 } 59 }
60 60
61 void MediaPlayerRendererClient::OnScopedSurfaceRequested(
62 bool success,
63 uint64_t request_token) {
64 if (!success) {
65 // No request was registered in the browser.
watk 2016/09/01 21:58:58 I would instead write why this is NOTREACHED(). Y
tguilbert 2016/09/21 02:02:30 Done.
66 NOTREACHED();
67 return;
68 }
69
70 stream_texture_wrapper_->ForwardStreamTextureForSurfaceRequest(request_token);
71 }
72
61 void MediaPlayerRendererClient::CompleteInitialization( 73 void MediaPlayerRendererClient::CompleteInitialization(
62 media::PipelineStatus status) { 74 media::PipelineStatus status) {
63 DCHECK(media_task_runner_->BelongsToCurrentThread()); 75 DCHECK(media_task_runner_->BelongsToCurrentThread());
64 DCHECK(!init_cb_.is_null()); 76 DCHECK(!init_cb_.is_null());
65 77
66 // TODO(tguilbert): Register |stream_texture_wrapper_|'s surface and send it 78 // TODO(tguilbert): Measure and smooth out the initialization's ordering to
67 // to MediaPlayerRenderer via |mojo_renderer_|. See crbug.com/627658. 79 // have the lowest total initialization time.
80 mojo_renderer_->InitiateScopedSurfaceRequest(
81 base::Bind(&MediaPlayerRendererClient::OnScopedSurfaceRequested,
82 weak_factory_.GetWeakPtr()));
68 83
69 base::ResetAndReturn(&init_cb_).Run(status); 84 base::ResetAndReturn(&init_cb_).Run(status);
70 } 85 }
71 86
72 void MediaPlayerRendererClient::SetCdm( 87 void MediaPlayerRendererClient::SetCdm(
73 media::CdmContext* cdm_context, 88 media::CdmContext* cdm_context,
74 const media::CdmAttachedCB& cdm_attached_cb) { 89 const media::CdmAttachedCB& cdm_attached_cb) {
75 NOTREACHED(); 90 NOTREACHED();
76 } 91 }
77 92
(...skipping 70 matching lines...) Expand 10 before | Expand all | Expand 10 after
148 163
149 void MediaPlayerRendererClient::OnVideoOpacityChange(bool opaque) { 164 void MediaPlayerRendererClient::OnVideoOpacityChange(bool opaque) {
150 client_->OnVideoOpacityChange(opaque); 165 client_->OnVideoOpacityChange(opaque);
151 } 166 }
152 167
153 void MediaPlayerRendererClient::OnDurationChange(base::TimeDelta duration) { 168 void MediaPlayerRendererClient::OnDurationChange(base::TimeDelta duration) {
154 client_->OnDurationChange(duration); 169 client_->OnDurationChange(duration);
155 } 170 }
156 171
157 } // namespace content 172 } // namespace content
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698