| OLD | NEW |
| 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 Loading... |
| 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 const base::Optional<base::UnguessableToken>& request_token) { |
| 63 if (!request_token) { |
| 64 // No request was registered in the browser. |
| 65 // The MojoRendererService was not constructed with an |
| 66 // InitiateSurfaceRequestCB. This means that the renderer in the browser |
| 67 // process likely isn't a MediaPlayerRenderer. |
| 68 NOTREACHED(); |
| 69 return; |
| 70 } |
| 71 |
| 72 stream_texture_wrapper_->ForwardStreamTextureForSurfaceRequest( |
| 73 request_token.value()); |
| 74 } |
| 75 |
| 61 void MediaPlayerRendererClient::CompleteInitialization( | 76 void MediaPlayerRendererClient::CompleteInitialization( |
| 62 media::PipelineStatus status) { | 77 media::PipelineStatus status) { |
| 63 DCHECK(media_task_runner_->BelongsToCurrentThread()); | 78 DCHECK(media_task_runner_->BelongsToCurrentThread()); |
| 64 DCHECK(!init_cb_.is_null()); | 79 DCHECK(!init_cb_.is_null()); |
| 65 | 80 |
| 66 // TODO(tguilbert): Register |stream_texture_wrapper_|'s surface and send it | 81 // TODO(tguilbert): Measure and smooth out the initialization's ordering to |
| 67 // to MediaPlayerRenderer via |mojo_renderer_|. See crbug.com/627658. | 82 // have the lowest total initialization time. |
| 83 mojo_renderer_->InitiateScopedSurfaceRequest( |
| 84 base::Bind(&MediaPlayerRendererClient::OnScopedSurfaceRequested, |
| 85 weak_factory_.GetWeakPtr())); |
| 68 | 86 |
| 69 base::ResetAndReturn(&init_cb_).Run(status); | 87 base::ResetAndReturn(&init_cb_).Run(status); |
| 70 } | 88 } |
| 71 | 89 |
| 72 void MediaPlayerRendererClient::SetCdm( | 90 void MediaPlayerRendererClient::SetCdm( |
| 73 media::CdmContext* cdm_context, | 91 media::CdmContext* cdm_context, |
| 74 const media::CdmAttachedCB& cdm_attached_cb) { | 92 const media::CdmAttachedCB& cdm_attached_cb) { |
| 75 NOTREACHED(); | 93 NOTREACHED(); |
| 76 } | 94 } |
| 77 | 95 |
| (...skipping 70 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 148 | 166 |
| 149 void MediaPlayerRendererClient::OnVideoOpacityChange(bool opaque) { | 167 void MediaPlayerRendererClient::OnVideoOpacityChange(bool opaque) { |
| 150 client_->OnVideoOpacityChange(opaque); | 168 client_->OnVideoOpacityChange(opaque); |
| 151 } | 169 } |
| 152 | 170 |
| 153 void MediaPlayerRendererClient::OnDurationChange(base::TimeDelta duration) { | 171 void MediaPlayerRendererClient::OnDurationChange(base::TimeDelta duration) { |
| 154 client_->OnDurationChange(duration); | 172 client_->OnDurationChange(duration); |
| 155 } | 173 } |
| 156 | 174 |
| 157 } // namespace content | 175 } // namespace content |
| OLD | NEW |