Chromium Code Reviews| OLD | NEW |
|---|---|
| 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 "base/android/scoped_java_ref.h" | 7 #include "base/android/scoped_java_ref.h" |
| 8 #include "base/command_line.h" | 8 #include "base/command_line.h" |
| 9 #include "content/browser/android/content_view_core_impl.h" | 9 #include "content/browser/android/content_view_core_impl.h" |
| 10 #include "content/browser/android/media_players_observer.h" | 10 #include "content/browser/android/media_players_observer.h" |
| (...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 72 return new BrowserMediaPlayerManager(rfh, audio_monitor); | 72 return new BrowserMediaPlayerManager(rfh, audio_monitor); |
| 73 } | 73 } |
| 74 | 74 |
| 75 ContentViewCore* BrowserMediaPlayerManager::GetContentViewCore() const { | 75 ContentViewCore* BrowserMediaPlayerManager::GetContentViewCore() const { |
| 76 return ContentViewCoreImpl::FromWebContents(web_contents()); | 76 return ContentViewCoreImpl::FromWebContents(web_contents()); |
| 77 } | 77 } |
| 78 | 78 |
| 79 MediaPlayerAndroid* BrowserMediaPlayerManager::CreateMediaPlayer( | 79 MediaPlayerAndroid* BrowserMediaPlayerManager::CreateMediaPlayer( |
| 80 const MediaPlayerHostMsg_Initialize_Params& media_player_params, | 80 const MediaPlayerHostMsg_Initialize_Params& media_player_params, |
| 81 bool hide_url_log, | 81 bool hide_url_log, |
| 82 MediaPlayerManager* manager, | 82 MediaPlayerManager* manager, |
|
timav
2015/05/11 23:17:40
It seems we always pass |this| for |manager|, can
| |
| 83 BrowserDemuxerAndroid* demuxer) { | 83 BrowserDemuxerAndroid* demuxer) { |
| 84 switch (media_player_params.type) { | 84 switch (media_player_params.type) { |
| 85 case MEDIA_PLAYER_TYPE_URL: { | 85 case MEDIA_PLAYER_TYPE_URL: { |
| 86 const std::string user_agent = GetContentClient()->GetUserAgent(); | 86 const std::string user_agent = GetContentClient()->GetUserAgent(); |
| 87 MediaPlayerBridge* media_player_bridge = new MediaPlayerBridge( | 87 MediaPlayerBridge* media_player_bridge = new MediaPlayerBridge( |
| 88 media_player_params.player_id, | 88 media_player_params.player_id, |
| 89 media_player_params.url, | 89 media_player_params.url, |
| 90 media_player_params.first_party_for_cookies, | 90 media_player_params.first_party_for_cookies, |
| 91 user_agent, | 91 user_agent, |
| 92 hide_url_log, | 92 hide_url_log, |
| (...skipping 19 matching lines...) Expand all Loading... | |
| 112 media_player_bridge->Initialize(); | 112 media_player_bridge->Initialize(); |
| 113 } | 113 } |
| 114 return media_player_bridge; | 114 return media_player_bridge; |
| 115 } | 115 } |
| 116 | 116 |
| 117 case MEDIA_PLAYER_TYPE_MEDIA_SOURCE: { | 117 case MEDIA_PLAYER_TYPE_MEDIA_SOURCE: { |
| 118 if (base::CommandLine::ForCurrentProcess()-> | 118 if (base::CommandLine::ForCurrentProcess()-> |
| 119 HasSwitch(switches::kEnableMediaThreadForMediaPlayback)) { | 119 HasSwitch(switches::kEnableMediaThreadForMediaPlayback)) { |
| 120 return new MediaCodecPlayer( | 120 return new MediaCodecPlayer( |
| 121 media_player_params.player_id, | 121 media_player_params.player_id, |
| 122 manager, | 122 weak_ptr_factory_.GetWeakPtr(), |
| 123 base::Bind(&BrowserMediaPlayerManager::OnMediaResourcesRequested, | 123 base::Bind(&BrowserMediaPlayerManager::OnMediaResourcesRequested, |
| 124 weak_ptr_factory_.GetWeakPtr()), | 124 weak_ptr_factory_.GetWeakPtr()), |
| 125 demuxer->CreateDemuxer(media_player_params.demuxer_client_id), | 125 demuxer->CreateDemuxer(media_player_params.demuxer_client_id), |
| 126 media_player_params.frame_url); | 126 media_player_params.frame_url); |
| 127 } else { | 127 } else { |
| 128 return new MediaSourcePlayer( | 128 return new MediaSourcePlayer( |
| 129 media_player_params.player_id, | 129 media_player_params.player_id, |
| 130 manager, | 130 this, |
| 131 base::Bind(&BrowserMediaPlayerManager::OnMediaResourcesRequested, | 131 base::Bind(&BrowserMediaPlayerManager::OnMediaResourcesRequested, |
| 132 weak_ptr_factory_.GetWeakPtr()), | 132 weak_ptr_factory_.GetWeakPtr()), |
| 133 demuxer->CreateDemuxer(media_player_params.demuxer_client_id), | 133 demuxer->CreateDemuxer(media_player_params.demuxer_client_id), |
| 134 media_player_params.frame_url); | 134 media_player_params.frame_url); |
| 135 } | 135 } |
| 136 } | 136 } |
| 137 } | 137 } |
| 138 | 138 |
| 139 NOTREACHED(); | 139 NOTREACHED(); |
| 140 return NULL; | 140 return NULL; |
| (...skipping 478 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 619 external_video_surface_container_->ReleaseExternalVideoSurface(player_id); | 619 external_video_surface_container_->ReleaseExternalVideoSurface(player_id); |
| 620 #endif // defined(VIDEO_HOLE) | 620 #endif // defined(VIDEO_HOLE) |
| 621 } | 621 } |
| 622 | 622 |
| 623 void BrowserMediaPlayerManager::ReleasePlayer(MediaPlayerAndroid* player) { | 623 void BrowserMediaPlayerManager::ReleasePlayer(MediaPlayerAndroid* player) { |
| 624 player->Release(); | 624 player->Release(); |
| 625 ReleaseMediaResources(player->player_id()); | 625 ReleaseMediaResources(player->player_id()); |
| 626 } | 626 } |
| 627 | 627 |
| 628 } // namespace content | 628 } // namespace content |
| OLD | NEW |