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

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

Issue 2338223003: Unassociating MediaSession from media players (in blink & content) (Closed)
Patch Set: fixed tests 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 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/browser/media/android/browser_media_player_manager.h" 5 #include "content/browser/media/android/browser_media_player_manager.h"
6 6
7 #include <utility> 7 #include <utility>
8 8
9 #include "base/android/scoped_java_ref.h" 9 #include "base/android/scoped_java_ref.h"
10 #include "base/memory/singleton.h" 10 #include "base/memory/singleton.h"
(...skipping 185 matching lines...) Expand 10 before | Expand all | Expand 10 after
196 switch (media_player_params.type) { 196 switch (media_player_params.type) {
197 case MEDIA_PLAYER_TYPE_REMOTE_ONLY: 197 case MEDIA_PLAYER_TYPE_REMOTE_ONLY:
198 case MEDIA_PLAYER_TYPE_URL: { 198 case MEDIA_PLAYER_TYPE_URL: {
199 const std::string user_agent = GetContentClient()->GetUserAgent(); 199 const std::string user_agent = GetContentClient()->GetUserAgent();
200 MediaPlayerBridge* media_player_bridge = new MediaPlayerBridge( 200 MediaPlayerBridge* media_player_bridge = new MediaPlayerBridge(
201 media_player_params.player_id, media_player_params.url, 201 media_player_params.player_id, media_player_params.url,
202 media_player_params.first_party_for_cookies, user_agent, hide_url_log, 202 media_player_params.first_party_for_cookies, user_agent, hide_url_log,
203 this, 203 this,
204 base::Bind(&BrowserMediaPlayerManager::OnDecoderResourcesReleased, 204 base::Bind(&BrowserMediaPlayerManager::OnDecoderResourcesReleased,
205 weak_ptr_factory_.GetWeakPtr()), 205 weak_ptr_factory_.GetWeakPtr()),
206 media_player_params.frame_url, media_player_params.allow_credentials, 206 media_player_params.frame_url, media_player_params.allow_credentials);
207 media_player_params.media_session_id);
208 207
209 if (media_player_params.type == MEDIA_PLAYER_TYPE_REMOTE_ONLY) 208 if (media_player_params.type == MEDIA_PLAYER_TYPE_REMOTE_ONLY)
210 return media_player_bridge; 209 return media_player_bridge;
211 210
212 bool should_block = false; 211 bool should_block = false;
213 bool extract_metadata = 212 bool extract_metadata =
214 // Initialize the player will cause MediaMetadataExtractor to decode 213 // Initialize the player will cause MediaMetadataExtractor to decode
215 // small chunks of data. 214 // small chunks of data.
216 RequestDecoderResources(media_player_params.player_id, true); 215 RequestDecoderResources(media_player_params.player_id, true);
217 #if !defined(USE_AURA) 216 #if !defined(USE_AURA)
(...skipping 19 matching lines...) Expand all
237 } 236 }
238 return media_player_bridge; 237 return media_player_bridge;
239 } 238 }
240 239
241 case MEDIA_PLAYER_TYPE_MEDIA_SOURCE: { 240 case MEDIA_PLAYER_TYPE_MEDIA_SOURCE: {
242 return new MediaSourcePlayer( 241 return new MediaSourcePlayer(
243 media_player_params.player_id, this, 242 media_player_params.player_id, this,
244 base::Bind(&BrowserMediaPlayerManager::OnDecoderResourcesReleased, 243 base::Bind(&BrowserMediaPlayerManager::OnDecoderResourcesReleased,
245 weak_ptr_factory_.GetWeakPtr()), 244 weak_ptr_factory_.GetWeakPtr()),
246 demuxer->CreateDemuxer(media_player_params.demuxer_client_id), 245 demuxer->CreateDemuxer(media_player_params.demuxer_client_id),
247 media_player_params.frame_url, media_player_params.media_session_id); 246 media_player_params.frame_url);
248 } 247 }
249 } 248 }
250 249
251 NOTREACHED(); 250 NOTREACHED();
252 return NULL; 251 return NULL;
253 } 252 }
254 253
255 BrowserMediaPlayerManager::BrowserMediaPlayerManager( 254 BrowserMediaPlayerManager::BrowserMediaPlayerManager(
256 RenderFrameHost* render_frame_host) 255 RenderFrameHost* render_frame_host)
257 : render_frame_host_(render_frame_host), 256 : render_frame_host_(render_frame_host),
(...skipping 423 matching lines...) Expand 10 before | Expand all | Expand 10 after
681 if (!player) 680 if (!player)
682 return; 681 return;
683 player->Start(); 682 player->Start();
684 if (fullscreen_player_id_ == player_id && fullscreen_player_is_released_) { 683 if (fullscreen_player_id_ == player_id && fullscreen_player_is_released_) {
685 video_view_->OpenVideo(); 684 video_view_->OpenVideo();
686 fullscreen_player_is_released_ = false; 685 fullscreen_player_is_released_ = false;
687 } 686 }
688 } 687 }
689 688
690 } // namespace content 689 } // namespace content
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698