| Index: content/browser/android/media_player_manager_impl.cc
|
| diff --git a/content/browser/android/media_player_manager_android.cc b/content/browser/android/media_player_manager_impl.cc
|
| similarity index 73%
|
| rename from content/browser/android/media_player_manager_android.cc
|
| rename to content/browser/android/media_player_manager_impl.cc
|
| index 4a093c7eb09ade488412741e9abeba1ddc5823b3..ba799a697bd9444023d77df2a6ad945354c5910f 100644
|
| --- a/content/browser/android/media_player_manager_android.cc
|
| +++ b/content/browser/android/media_player_manager_impl.cc
|
| @@ -2,7 +2,7 @@
|
| // Use of this source code is governed by a BSD-style license that can be
|
| // found in the LICENSE file.
|
|
|
| -#include "content/browser/android/media_player_manager_android.h"
|
| +#include "content/browser/android/media_player_manager_impl.h"
|
|
|
| #include "base/bind.h"
|
| #include "content/browser/android/media_resource_getter_impl.h"
|
| @@ -21,7 +21,7 @@ static const int kMediaPlayerThreshold = 1;
|
|
|
| namespace content {
|
|
|
| -MediaPlayerManagerAndroid::MediaPlayerManagerAndroid(
|
| +MediaPlayerManagerImpl::MediaPlayerManagerImpl(
|
| RenderViewHost* render_view_host)
|
| : RenderViewHostObserver(render_view_host),
|
| video_view_(this),
|
| @@ -29,11 +29,11 @@ MediaPlayerManagerAndroid::MediaPlayerManagerAndroid(
|
| web_contents_(WebContents::FromRenderViewHost(render_view_host)) {
|
| }
|
|
|
| -MediaPlayerManagerAndroid::~MediaPlayerManagerAndroid() {}
|
| +MediaPlayerManagerImpl::~MediaPlayerManagerImpl() {}
|
|
|
| -bool MediaPlayerManagerAndroid::OnMessageReceived(const IPC::Message& msg) {
|
| +bool MediaPlayerManagerImpl::OnMessageReceived(const IPC::Message& msg) {
|
| bool handled = true;
|
| - IPC_BEGIN_MESSAGE_MAP(MediaPlayerManagerAndroid, msg)
|
| + IPC_BEGIN_MESSAGE_MAP(MediaPlayerManagerImpl, msg)
|
| IPC_MESSAGE_HANDLER(MediaPlayerHostMsg_EnterFullscreen, OnEnterFullscreen)
|
| IPC_MESSAGE_HANDLER(MediaPlayerHostMsg_ExitFullscreen, OnExitFullscreen)
|
| IPC_MESSAGE_HANDLER(MediaPlayerHostMsg_MediaPlayerInitialize, OnInitialize)
|
| @@ -60,7 +60,7 @@ bool MediaPlayerManagerAndroid::OnMessageReceived(const IPC::Message& msg) {
|
| return handled;
|
| }
|
|
|
| -void MediaPlayerManagerAndroid::FullscreenPlayerPlay() {
|
| +void MediaPlayerManagerImpl::FullscreenPlayerPlay() {
|
| MediaPlayerBridge* player = GetFullscreenPlayer();
|
| if (player) {
|
| player->Start();
|
| @@ -69,7 +69,7 @@ void MediaPlayerManagerAndroid::FullscreenPlayerPlay() {
|
| }
|
| }
|
|
|
| -void MediaPlayerManagerAndroid::FullscreenPlayerPause() {
|
| +void MediaPlayerManagerImpl::FullscreenPlayerPause() {
|
| MediaPlayerBridge* player = GetFullscreenPlayer();
|
| if (player) {
|
| player->Pause();
|
| @@ -78,13 +78,13 @@ void MediaPlayerManagerAndroid::FullscreenPlayerPause() {
|
| }
|
| }
|
|
|
| -void MediaPlayerManagerAndroid::FullscreenPlayerSeek(int msec) {
|
| +void MediaPlayerManagerImpl::FullscreenPlayerSeek(int msec) {
|
| MediaPlayerBridge* player = GetFullscreenPlayer();
|
| if (player)
|
| player->SeekTo(base::TimeDelta::FromMilliseconds(msec));
|
| }
|
|
|
| -void MediaPlayerManagerAndroid::ExitFullscreen(bool release_media_player) {
|
| +void MediaPlayerManagerImpl::ExitFullscreen(bool release_media_player) {
|
| Send(new MediaPlayerMsg_DidExitFullscreen(
|
| routing_id(), fullscreen_player_id_));
|
| MediaPlayerBridge* player = GetFullscreenPlayer();
|
| @@ -97,7 +97,7 @@ void MediaPlayerManagerAndroid::ExitFullscreen(bool release_media_player) {
|
| player->SetVideoSurface(NULL);
|
| }
|
|
|
| -void MediaPlayerManagerAndroid::SetVideoSurface(jobject surface) {
|
| +void MediaPlayerManagerImpl::SetVideoSurface(jobject surface) {
|
| MediaPlayerBridge* player = GetFullscreenPlayer();
|
| if (player) {
|
| player->SetVideoSurface(surface);
|
| @@ -106,7 +106,7 @@ void MediaPlayerManagerAndroid::SetVideoSurface(jobject surface) {
|
| }
|
| }
|
|
|
| -void MediaPlayerManagerAndroid::OnInitialize(
|
| +void MediaPlayerManagerImpl::OnInitialize(
|
| int player_id, const GURL& url,
|
| bool is_media_source,
|
| const GURL& first_party_for_cookies) {
|
| @@ -119,62 +119,69 @@ void MediaPlayerManagerAndroid::OnInitialize(
|
| }
|
|
|
| RenderProcessHost* host = render_view_host()->GetProcess();
|
| - BrowserContext* context = host->GetBrowserContext();
|
| - StoragePartition* partition = host->GetStoragePartition();
|
| - fileapi::FileSystemContext* file_system_context =
|
| - partition ? partition->GetFileSystemContext() : NULL;
|
| players_.push_back(media::MediaPlayerBridge::Create(
|
| player_id, url, is_media_source, first_party_for_cookies,
|
| - new MediaResourceGetterImpl(context, file_system_context, host->GetID(),
|
| - routing_id()),
|
| - context->IsOffTheRecord(), this,
|
| + host->GetBrowserContext()->IsOffTheRecord(), this,
|
| #if defined(GOOGLE_TV)
|
| - base::Bind(&MediaPlayerManagerAndroid::OnReadFromDemuxer,
|
| + base::Bind(&MediaPlayerManagerImpl::OnReadFromDemuxer,
|
| base::Unretained(this)),
|
| #endif
|
| - base::Bind(&MediaPlayerManagerAndroid::OnError, base::Unretained(this)),
|
| - base::Bind(&MediaPlayerManagerAndroid::OnVideoSizeChanged,
|
| + base::Bind(&MediaPlayerManagerImpl::OnError, base::Unretained(this)),
|
| + base::Bind(&MediaPlayerManagerImpl::OnVideoSizeChanged,
|
| base::Unretained(this)),
|
| - base::Bind(&MediaPlayerManagerAndroid::OnBufferingUpdate,
|
| + base::Bind(&MediaPlayerManagerImpl::OnBufferingUpdate,
|
| base::Unretained(this)),
|
| - base::Bind(&MediaPlayerManagerAndroid::OnMediaMetadataChanged,
|
| + base::Bind(&MediaPlayerManagerImpl::OnMediaMetadataChanged,
|
| base::Unretained(this)),
|
| - base::Bind(&MediaPlayerManagerAndroid::OnPlaybackComplete,
|
| + base::Bind(&MediaPlayerManagerImpl::OnPlaybackComplete,
|
| base::Unretained(this)),
|
| - base::Bind(&MediaPlayerManagerAndroid::OnSeekComplete,
|
| + base::Bind(&MediaPlayerManagerImpl::OnSeekComplete,
|
| base::Unretained(this)),
|
| - base::Bind(&MediaPlayerManagerAndroid::OnTimeUpdate,
|
| + base::Bind(&MediaPlayerManagerImpl::OnTimeUpdate,
|
| base::Unretained(this)),
|
| - base::Bind(&MediaPlayerManagerAndroid::OnMediaInterrupted,
|
| + base::Bind(&MediaPlayerManagerImpl::OnMediaInterrupted,
|
| base::Unretained(this))));
|
| }
|
|
|
| -void MediaPlayerManagerAndroid::OnStart(int player_id) {
|
| +media::MediaResourceGetter* MediaPlayerManagerImpl::GetMediaResourceGetter() {
|
| + if (!media_resource_getter_.get()) {
|
| + RenderProcessHost* host = render_view_host()->GetProcess();
|
| + BrowserContext* context = host->GetBrowserContext();
|
| + StoragePartition* partition = host->GetStoragePartition();
|
| + fileapi::FileSystemContext* file_system_context =
|
| + partition ? partition->GetFileSystemContext() : NULL;
|
| + media_resource_getter_.reset(new MediaResourceGetterImpl(
|
| + context, file_system_context, host->GetID(), routing_id()));
|
| + }
|
| + return media_resource_getter_.get();
|
| +}
|
| +
|
| +void MediaPlayerManagerImpl::OnStart(int player_id) {
|
| MediaPlayerBridge* player = GetPlayer(player_id);
|
| if (player)
|
| player->Start();
|
| }
|
|
|
| -void MediaPlayerManagerAndroid::OnSeek(int player_id, base::TimeDelta time) {
|
| +void MediaPlayerManagerImpl::OnSeek(int player_id, base::TimeDelta time) {
|
| MediaPlayerBridge* player = GetPlayer(player_id);
|
| if (player)
|
| player->SeekTo(time);
|
| }
|
|
|
| -void MediaPlayerManagerAndroid::OnPause(int player_id) {
|
| +void MediaPlayerManagerImpl::OnPause(int player_id) {
|
| MediaPlayerBridge* player = GetPlayer(player_id);
|
| if (player)
|
| player->Pause();
|
| }
|
|
|
| -void MediaPlayerManagerAndroid::OnEnterFullscreen(int player_id) {
|
| +void MediaPlayerManagerImpl::OnEnterFullscreen(int player_id) {
|
| DCHECK_EQ(fullscreen_player_id_, -1);
|
|
|
| fullscreen_player_id_ = player_id;
|
| video_view_.CreateContentVideoView();
|
| }
|
|
|
| -void MediaPlayerManagerAndroid::OnExitFullscreen(int player_id) {
|
| +void MediaPlayerManagerImpl::OnExitFullscreen(int player_id) {
|
| if (fullscreen_player_id_ == player_id) {
|
| MediaPlayerBridge* player = GetPlayer(player_id);
|
| if (player)
|
| @@ -184,7 +191,7 @@ void MediaPlayerManagerAndroid::OnExitFullscreen(int player_id) {
|
| }
|
| }
|
|
|
| -void MediaPlayerManagerAndroid::OnReleaseResources(int player_id) {
|
| +void MediaPlayerManagerImpl::OnReleaseResources(int player_id) {
|
| MediaPlayerBridge* player = GetPlayer(player_id);
|
| // Don't release the fullscreen player when tab visibility changes,
|
| // it will be released when user hit the back/home button or when
|
| @@ -193,7 +200,7 @@ void MediaPlayerManagerAndroid::OnReleaseResources(int player_id) {
|
| player->Release();
|
| }
|
|
|
| -void MediaPlayerManagerAndroid::OnDestroyPlayer(int player_id) {
|
| +void MediaPlayerManagerImpl::OnDestroyPlayer(int player_id) {
|
| for (ScopedVector<MediaPlayerBridge>::iterator it = players_.begin();
|
| it != players_.end(); ++it) {
|
| if ((*it)->player_id() == player_id) {
|
| @@ -205,7 +212,7 @@ void MediaPlayerManagerAndroid::OnDestroyPlayer(int player_id) {
|
| fullscreen_player_id_ = -1;
|
| }
|
|
|
| -void MediaPlayerManagerAndroid::DestroyAllMediaPlayers() {
|
| +void MediaPlayerManagerImpl::DestroyAllMediaPlayers() {
|
| players_.clear();
|
| if (fullscreen_player_id_ != -1) {
|
| video_view_.DestroyContentVideoView();
|
| @@ -214,20 +221,20 @@ void MediaPlayerManagerAndroid::DestroyAllMediaPlayers() {
|
| }
|
|
|
| #if defined(GOOGLE_TV)
|
| -void MediaPlayerManagerAndroid::AttachExternalVideoSurface(int player_id,
|
| +void MediaPlayerManagerImpl::AttachExternalVideoSurface(int player_id,
|
| jobject surface) {
|
| MediaPlayerBridge* player = GetPlayer(player_id);
|
| if (player)
|
| player->SetVideoSurface(surface);
|
| }
|
|
|
| -void MediaPlayerManagerAndroid::DetachExternalVideoSurface(int player_id) {
|
| +void MediaPlayerManagerImpl::DetachExternalVideoSurface(int player_id) {
|
| MediaPlayerBridge* player = GetPlayer(player_id);
|
| if (player)
|
| player->SetVideoSurface(NULL);
|
| }
|
|
|
| -void MediaPlayerManagerAndroid::OnRequestExternalSurface(int player_id) {
|
| +void MediaPlayerManagerImpl::OnRequestExternalSurface(int player_id) {
|
| if (!web_contents_)
|
| return;
|
|
|
| @@ -237,7 +244,7 @@ void MediaPlayerManagerAndroid::OnRequestExternalSurface(int player_id) {
|
| view->RequestExternalVideoSurface(player_id);
|
| }
|
|
|
| -void MediaPlayerManagerAndroid::OnNotifyGeometryChange(int player_id,
|
| +void MediaPlayerManagerImpl::OnNotifyGeometryChange(int player_id,
|
| const gfx::RectF& rect) {
|
| if (!web_contents_)
|
| return;
|
| @@ -248,7 +255,7 @@ void MediaPlayerManagerAndroid::OnNotifyGeometryChange(int player_id,
|
| view->NotifyGeometryChange(player_id, rect);
|
| }
|
|
|
| -void MediaPlayerManagerAndroid::OnDemuxerReady(
|
| +void MediaPlayerManagerImpl::OnDemuxerReady(
|
| int player_id,
|
| const media::MediaPlayerHostMsg_DemuxerReady_Params& params) {
|
| MediaPlayerBridge* player = GetPlayer(player_id);
|
| @@ -256,7 +263,7 @@ void MediaPlayerManagerAndroid::OnDemuxerReady(
|
| player->DemuxerReady(params);
|
| }
|
|
|
| -void MediaPlayerManagerAndroid::OnReadFromDemuxerAck(
|
| +void MediaPlayerManagerImpl::OnReadFromDemuxerAck(
|
| int player_id,
|
| const media::MediaPlayerHostMsg_ReadFromDemuxerAck_Params& params) {
|
| MediaPlayerBridge* player = GetPlayer(player_id);
|
| @@ -265,7 +272,7 @@ void MediaPlayerManagerAndroid::OnReadFromDemuxerAck(
|
| }
|
| #endif
|
|
|
| -MediaPlayerBridge* MediaPlayerManagerAndroid::GetPlayer(int player_id) {
|
| +MediaPlayerBridge* MediaPlayerManagerImpl::GetPlayer(int player_id) {
|
| for (ScopedVector<MediaPlayerBridge>::iterator it = players_.begin();
|
| it != players_.end(); ++it) {
|
| if ((*it)->player_id() == player_id)
|
| @@ -274,11 +281,11 @@ MediaPlayerBridge* MediaPlayerManagerAndroid::GetPlayer(int player_id) {
|
| return NULL;
|
| }
|
|
|
| -MediaPlayerBridge* MediaPlayerManagerAndroid::GetFullscreenPlayer() {
|
| +MediaPlayerBridge* MediaPlayerManagerImpl::GetFullscreenPlayer() {
|
| return GetPlayer(fullscreen_player_id_);
|
| }
|
|
|
| -void MediaPlayerManagerAndroid::OnMediaMetadataChanged(
|
| +void MediaPlayerManagerImpl::OnMediaMetadataChanged(
|
| int player_id, base::TimeDelta duration, int width, int height,
|
| bool success) {
|
| Send(new MediaPlayerMsg_MediaMetadataChanged(
|
| @@ -287,19 +294,19 @@ void MediaPlayerManagerAndroid::OnMediaMetadataChanged(
|
| video_view_.UpdateMediaMetadata();
|
| }
|
|
|
| -void MediaPlayerManagerAndroid::OnPlaybackComplete(int player_id) {
|
| +void MediaPlayerManagerImpl::OnPlaybackComplete(int player_id) {
|
| Send(new MediaPlayerMsg_MediaPlaybackCompleted(routing_id(), player_id));
|
| if (fullscreen_player_id_ != -1)
|
| video_view_.OnPlaybackComplete();
|
| }
|
|
|
| -void MediaPlayerManagerAndroid::OnMediaInterrupted(int player_id) {
|
| +void MediaPlayerManagerImpl::OnMediaInterrupted(int player_id) {
|
| // Tell WebKit that the audio should be paused, then release all resources
|
| Send(new MediaPlayerMsg_DidMediaPlayerPause(routing_id(), player_id));
|
| OnReleaseResources(player_id);
|
| }
|
|
|
| -void MediaPlayerManagerAndroid::OnBufferingUpdate(
|
| +void MediaPlayerManagerImpl::OnBufferingUpdate(
|
| int player_id, int percentage) {
|
| Send(new MediaPlayerMsg_MediaBufferingUpdate(
|
| routing_id(), player_id, percentage));
|
| @@ -307,19 +314,19 @@ void MediaPlayerManagerAndroid::OnBufferingUpdate(
|
| video_view_.OnBufferingUpdate(percentage);
|
| }
|
|
|
| -void MediaPlayerManagerAndroid::OnSeekComplete(int player_id,
|
| +void MediaPlayerManagerImpl::OnSeekComplete(int player_id,
|
| base::TimeDelta current_time) {
|
| Send(new MediaPlayerMsg_MediaSeekCompleted(
|
| routing_id(), player_id, current_time));
|
| }
|
|
|
| -void MediaPlayerManagerAndroid::OnError(int player_id, int error) {
|
| +void MediaPlayerManagerImpl::OnError(int player_id, int error) {
|
| Send(new MediaPlayerMsg_MediaError(routing_id(), player_id, error));
|
| if (fullscreen_player_id_ != -1)
|
| video_view_.OnMediaPlayerError(error);
|
| }
|
|
|
| -void MediaPlayerManagerAndroid::OnVideoSizeChanged(
|
| +void MediaPlayerManagerImpl::OnVideoSizeChanged(
|
| int player_id, int width, int height) {
|
| Send(new MediaPlayerMsg_MediaVideoSizeChanged(routing_id(), player_id,
|
| width, height));
|
| @@ -327,21 +334,21 @@ void MediaPlayerManagerAndroid::OnVideoSizeChanged(
|
| video_view_.OnVideoSizeChanged(width, height);
|
| }
|
|
|
| -void MediaPlayerManagerAndroid::OnTimeUpdate(int player_id,
|
| +void MediaPlayerManagerImpl::OnTimeUpdate(int player_id,
|
| base::TimeDelta current_time) {
|
| Send(new MediaPlayerMsg_MediaTimeUpdate(
|
| routing_id(), player_id, current_time));
|
| }
|
|
|
| #if defined(GOOGLE_TV)
|
| -void MediaPlayerManagerAndroid::OnReadFromDemuxer(
|
| +void MediaPlayerManagerImpl::OnReadFromDemuxer(
|
| int player_id, media::DemuxerStream::Type type, bool seek_done) {
|
| Send(new MediaPlayerMsg_ReadFromDemuxer(
|
| routing_id(), player_id, type, seek_done));
|
| }
|
| #endif
|
|
|
| -void MediaPlayerManagerAndroid::RequestMediaResources(
|
| +void MediaPlayerManagerImpl::RequestMediaResources(
|
| MediaPlayerBridge* player) {
|
| if (player == NULL)
|
| return;
|
| @@ -373,7 +380,7 @@ void MediaPlayerManagerAndroid::RequestMediaResources(
|
| }
|
| }
|
|
|
| -void MediaPlayerManagerAndroid::ReleaseMediaResources(
|
| +void MediaPlayerManagerImpl::ReleaseMediaResources(
|
| MediaPlayerBridge* player) {
|
| // Nothing needs to be done.
|
| }
|
|
|