diff options
author | qinmin@chromium.org <qinmin@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-05-01 16:09:01 +0000 |
---|---|---|
committer | qinmin@chromium.org <qinmin@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-05-01 16:09:01 +0000 |
commit | 80e8d9617d5286af2b03f4ec5b0c5b95f0bb328f (patch) | |
tree | d7b04a2e41112b2c97198a91394d42ed6391cb2b /webkit/media | |
parent | d3643b5b9f060b114b926c3222b7d198ffa0362a (diff) | |
download | chromium_src-80e8d9617d5286af2b03f4ec5b0c5b95f0bb328f.zip chromium_src-80e8d9617d5286af2b03f4ec5b0c5b95f0bb328f.tar.gz chromium_src-80e8d9617d5286af2b03f4ec5b0c5b95f0bb328f.tar.bz2 |
Rename MediaPlayerBridgeManager to MediaPlayerManager
To support MediaSource, i am planning to introduce MediaSourceBridge on android.
Both MediaSourceBridge and MediaPlayerBridge will inherit from a common class: MediaPlayerAndroid.
As a result of this plan, MediaPlayerBridgeManager is no longer a good name for this common class.
This CL includes the following changes:
1. rename MediaPlayerBridgeManager to MediaPlayerManager, and MediaPlayerManagerAndroid to MediaPlayerManagerImpl.
2. remove MediaPlayerBridgeManagerImpl as it is no longer being used.
3. MediaResouceGetter is now owned by MediaPlayerManagerImpl.
so we no longer need to create a separate MediaResourceGetter for each player.
BUG=233420
R=jam@chromium.org, scherkus@chromium.org, yfriedman@chromium.org
Review URL: https://codereview.chromium.org/14314020
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@197626 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'webkit/media')
-rw-r--r-- | webkit/media/android/media_player_bridge_manager_impl.cc | 64 | ||||
-rw-r--r-- | webkit/media/android/media_player_bridge_manager_impl.h | 41 | ||||
-rw-r--r-- | webkit/media/webkit_media.gypi | 2 |
3 files changed, 0 insertions, 107 deletions
diff --git a/webkit/media/android/media_player_bridge_manager_impl.cc b/webkit/media/android/media_player_bridge_manager_impl.cc deleted file mode 100644 index acadb2d..0000000 --- a/webkit/media/android/media_player_bridge_manager_impl.cc +++ /dev/null @@ -1,64 +0,0 @@ -// Copyright (c) 2012 The Chromium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -#include "webkit/media/android/media_player_bridge_manager_impl.h" - -#include "media/base/android/media_player_bridge.h" - -namespace webkit_media { - -MediaPlayerBridgeManagerImpl::MediaPlayerBridgeManagerImpl( - int threshold) - : active_player_threshold_(threshold) { -} - -MediaPlayerBridgeManagerImpl::~MediaPlayerBridgeManagerImpl() {} - -void MediaPlayerBridgeManagerImpl::RequestMediaResources( - media::MediaPlayerBridge* player) { - if (!player) - return; - - int num_active_player = 0; - std::vector<media::MediaPlayerBridge*>::iterator it; - for (it = players_.begin(); it != players_.end(); ++it) { - // The player is already active, ignore it. - if ((*it) == player) - return; - - num_active_player++; - } - - if (num_active_player < active_player_threshold_) { - players_.push_back(player); - return; - } - - // Get a list of the players to free. - std::vector<media::MediaPlayerBridge*> players_to_release; - for (it = players_.begin(); it != players_.end(); ++it) { - if ((*it)->prepared() && !(*it)->IsPlaying()) - players_to_release.push_back(*it); - } - - // Calling release() will result in a call to ReleaseMediaResources(), so - // the player will be removed from |players_|. - for (it = players_to_release.begin(); it != players_to_release.end(); ++it) - (*it)->Release(); - - players_.push_back(player); -} - -void MediaPlayerBridgeManagerImpl::ReleaseMediaResources( - media::MediaPlayerBridge* player) { - for (std::vector<media::MediaPlayerBridge*>::iterator it = players_.begin(); - it != players_.end(); ++it) { - if ((*it) == player) { - players_.erase(it); - return; - } - } -} - -} // namespace webkit_media diff --git a/webkit/media/android/media_player_bridge_manager_impl.h b/webkit/media/android/media_player_bridge_manager_impl.h deleted file mode 100644 index d3ca426..0000000 --- a/webkit/media/android/media_player_bridge_manager_impl.h +++ /dev/null @@ -1,41 +0,0 @@ -// Copyright (c) 2012 The Chromium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -#ifndef WEBKIT_MEDIA_ANDROID_MEDIA_PLAYER_BRIDGE_MANAGER_IMPL_H_ -#define WEBKIT_MEDIA_ANDROID_MEDIA_PLAYER_BRIDGE_MANAGER_IMPL_H_ - -#include <vector> - -#include "base/basictypes.h" -#include "base/compiler_specific.h" -#include "media/base/android/media_player_bridge_manager.h" - -namespace webkit_media { - -// Class for managing active MediaPlayerBridge objects if they are created -// in render process. -class MediaPlayerBridgeManagerImpl : public media::MediaPlayerBridgeManager { - public: - // The manager will start to reclaim unused resources when the number of - // active MediaPlayerBridge objects reaches |threshold|. - explicit MediaPlayerBridgeManagerImpl(int threshold); - virtual ~MediaPlayerBridgeManagerImpl(); - - // media::MediaPlayerBridgeManager implementations. - virtual void RequestMediaResources(media::MediaPlayerBridge* player) OVERRIDE; - virtual void ReleaseMediaResources(media::MediaPlayerBridge* player) OVERRIDE; - - private: - // An array of active MediaPlayerBridge objects. - std::vector<media::MediaPlayerBridge*> players_; - - // Threshold before we start to reclaim unused media resources. - int active_player_threshold_; - - DISALLOW_COPY_AND_ASSIGN(MediaPlayerBridgeManagerImpl); -}; - -} // namespace webkit_media - -#endif // WEBKIT_MEDIA_ANDROID_MEDIA_PLAYER_BRIDGE_MANAGER_IMPL_H_ diff --git a/webkit/media/webkit_media.gypi b/webkit/media/webkit_media.gypi index 6cbd9cd..faf9257 100644 --- a/webkit/media/webkit_media.gypi +++ b/webkit/media/webkit_media.gypi @@ -45,8 +45,6 @@ ], 'sources': [ 'android/audio_decoder_android.cc', - 'android/media_player_bridge_manager_impl.cc', - 'android/media_player_bridge_manager_impl.h', 'android/stream_texture_factory_android.h', 'android/webmediaplayer_android.cc', 'android/webmediaplayer_android.h', |