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

Side by Side Diff: content/browser/media/android/media_player_renderer.cc

Issue 2463533002: Add support for MediaUrlInterceptor (Closed)
Patch Set: Created 4 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 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/browser/media/android/media_player_renderer.h" 5 #include "content/browser/media/android/media_player_renderer.h"
6 6
7 #include <memory> 7 #include <memory>
8 8
9 #include "content/browser/android/scoped_surface_request_manager.h" 9 #include "content/browser/android/scoped_surface_request_manager.h"
10 #include "content/browser/media/android/media_resource_getter_impl.h" 10 #include "content/browser/media/android/media_resource_getter_impl.h"
11 #include "content/public/browser/browser_context.h" 11 #include "content/public/browser/browser_context.h"
12 #include "content/public/browser/browser_thread.h" 12 #include "content/public/browser/browser_thread.h"
13 #include "content/public/browser/render_process_host.h" 13 #include "content/public/browser/render_process_host.h"
14 #include "content/public/browser/storage_partition.h" 14 #include "content/public/browser/storage_partition.h"
15 #include "content/public/browser/web_contents.h" 15 #include "content/public/browser/web_contents.h"
16 #include "content/public/common/content_client.h" 16 #include "content/public/common/content_client.h"
17 17
18 // TODO(tguilbert): Remove this ID once MediaPlayerManager has been deleted 18 // TODO(tguilbert): Remove this ID once MediaPlayerManager has been deleted
19 // and MediaPlayerBridge updated. See comment in header file. 19 // and MediaPlayerBridge updated. See comment in header file.
20 constexpr int kUnusedAndIrrelevantPlayerId = 0; 20 constexpr int kUnusedAndIrrelevantPlayerId = 0;
21 21
22 namespace content { 22 namespace content {
23 23
24 static media::MediaUrlInterceptor* media_url_interceptor_ = nullptr;
watk 2016/10/28 22:34:48 This should have the g_ prefix (for global). And I
25
24 MediaPlayerRenderer::MediaPlayerRenderer(RenderFrameHost* render_frame_host) 26 MediaPlayerRenderer::MediaPlayerRenderer(RenderFrameHost* render_frame_host)
25 : render_frame_host_(render_frame_host), 27 : render_frame_host_(render_frame_host),
26 has_error_(false), 28 has_error_(false),
27 weak_factory_(this) {} 29 weak_factory_(this) {}
28 30
29 MediaPlayerRenderer::~MediaPlayerRenderer() { 31 MediaPlayerRenderer::~MediaPlayerRenderer() {
30 CancelScopedSurfaceRequest(); 32 CancelScopedSurfaceRequest();
31 } 33 }
32 34
33 void MediaPlayerRenderer::Initialize( 35 void MediaPlayerRenderer::Initialize(
(...skipping 122 matching lines...) Expand 10 before | Expand all | Expand 10 after
156 storage::FileSystemContext* file_system_context = 158 storage::FileSystemContext* file_system_context =
157 partition ? partition->GetFileSystemContext() : nullptr; 159 partition ? partition->GetFileSystemContext() : nullptr;
158 media_resource_getter_.reset( 160 media_resource_getter_.reset(
159 new MediaResourceGetterImpl(context, file_system_context, host->GetID(), 161 new MediaResourceGetterImpl(context, file_system_context, host->GetID(),
160 render_frame_host_->GetRoutingID())); 162 render_frame_host_->GetRoutingID()));
161 } 163 }
162 return media_resource_getter_.get(); 164 return media_resource_getter_.get();
163 } 165 }
164 166
165 media::MediaUrlInterceptor* MediaPlayerRenderer::GetMediaUrlInterceptor() { 167 media::MediaUrlInterceptor* MediaPlayerRenderer::GetMediaUrlInterceptor() {
166 // TODO(tguilbert): Offer a RegisterMediaUrlInterceptor equivalent for use in 168 return media_url_interceptor_;
167 // webview. See crbug.com/636588.
168 return nullptr;
169 } 169 }
170 170
171 void MediaPlayerRenderer::OnTimeUpdate(int player_id, 171 void MediaPlayerRenderer::OnTimeUpdate(int player_id,
172 base::TimeDelta current_timestamp, 172 base::TimeDelta current_timestamp,
173 base::TimeTicks current_time_ticks) {} 173 base::TimeTicks current_time_ticks) {}
174 174
175 void MediaPlayerRenderer::OnMediaMetadataChanged(int player_id, 175 void MediaPlayerRenderer::OnMediaMetadataChanged(int player_id,
176 base::TimeDelta duration, 176 base::TimeDelta duration,
177 int width, 177 int width,
178 int height, 178 int height,
(...skipping 56 matching lines...) Expand 10 before | Expand all | Expand 10 after
235 } 235 }
236 236
237 void MediaPlayerRenderer::OnDecoderResourcesReleased(int player_id) { 237 void MediaPlayerRenderer::OnDecoderResourcesReleased(int player_id) {
238 // Since we are not using a pool of MediaPlayerAndroid instances, this 238 // Since we are not using a pool of MediaPlayerAndroid instances, this
239 // function is not relevant. 239 // function is not relevant.
240 240
241 // TODO(tguilbert): Throttle requests, via exponential backoff. 241 // TODO(tguilbert): Throttle requests, via exponential backoff.
242 // See crbug.com/636615. 242 // See crbug.com/636615.
243 } 243 }
244 244
245 // static
246 void MediaPlayerRenderer::RegisterMediaUrlInterceptor(
247 media::MediaUrlInterceptor* media_url_interceptor) {
248 media_url_interceptor_ = media_url_interceptor;
249 }
250
245 void MediaPlayerRenderer::CancelScopedSurfaceRequest() { 251 void MediaPlayerRenderer::CancelScopedSurfaceRequest() {
246 if (!surface_request_token_) 252 if (!surface_request_token_)
247 return; 253 return;
248 254
249 ScopedSurfaceRequestManager::GetInstance()->UnregisterScopedSurfaceRequest( 255 ScopedSurfaceRequestManager::GetInstance()->UnregisterScopedSurfaceRequest(
250 surface_request_token_); 256 surface_request_token_);
251 surface_request_token_ = base::UnguessableToken(); 257 surface_request_token_ = base::UnguessableToken();
252 } 258 }
253 259
254 } // namespace content 260 } // namespace content
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698