diff options
author | fischman@chromium.org <fischman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-06-12 05:01:56 +0000 |
---|---|---|
committer | fischman@chromium.org <fischman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-06-12 05:01:56 +0000 |
commit | 122f4025dfb04a6b990bc3e45f4cc0f19f1bb50e (patch) | |
tree | bcbd14dd7017ea065bd164609043c17e722ffd41 /media | |
parent | 5b6f0699827e3dec55b8676bf7893bdab1a1faaa (diff) | |
download | chromium_src-122f4025dfb04a6b990bc3e45f4cc0f19f1bb50e.zip chromium_src-122f4025dfb04a6b990bc3e45f4cc0f19f1bb50e.tar.gz chromium_src-122f4025dfb04a6b990bc3e45f4cc0f19f1bb50e.tar.bz2 |
Replace Pipeline::SetNetworkActivity() with BufferedDataSource -> WebMediaPlayerImpl callback.
This removes a bunch of plumbing that's completely unnecessary. Concretely:
Before: BufferedResourceLoader -> BufferedDataSource -> DemuxerHost -> DataSourceHost -> Pipeline -> WebMediaPlayerImpl
After: BufferedResourceLoader -> BufferedDataSource -> WebMediaPlayerImpl
Review URL: https://chromiumcodereview.appspot.com/10535101
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@141619 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'media')
-rw-r--r-- | media/base/data_source.h | 3 | ||||
-rw-r--r-- | media/base/mock_data_source_host.h | 1 | ||||
-rw-r--r-- | media/base/mock_demuxer_host.h | 1 | ||||
-rw-r--r-- | media/base/pipeline.cc | 26 | ||||
-rw-r--r-- | media/base/pipeline.h | 18 | ||||
-rw-r--r-- | media/base/pipeline_unittest.cc | 3 | ||||
-rw-r--r-- | media/filters/chunk_demuxer.cc | 2 | ||||
-rw-r--r-- | media/filters/chunk_demuxer_unittest.cc | 2 | ||||
-rw-r--r-- | media/filters/pipeline_integration_test.cc | 2 | ||||
-rw-r--r-- | media/filters/pipeline_integration_test_base.cc | 2 | ||||
-rw-r--r-- | media/tools/player_wtl/movie.cc | 1 | ||||
-rw-r--r-- | media/tools/player_x11/player_x11.cc | 3 | ||||
-rw-r--r-- | media/tools/seek_tester/seek_tester.cc | 1 |
13 files changed, 3 insertions, 62 deletions
diff --git a/media/base/data_source.h b/media/base/data_source.h index 7ce965f..037c645 100644 --- a/media/base/data_source.h +++ b/media/base/data_source.h @@ -20,9 +20,6 @@ class MEDIA_EXPORT DataSourceHost { // Notify the host that byte range [start,end] has been buffered. virtual void AddBufferedByteRange(int64 start, int64 end) = 0; - - // Sets the flag to indicate current network activity. - virtual void SetNetworkActivity(bool is_downloading_data) = 0; }; class MEDIA_EXPORT DataSource : public base::RefCountedThreadSafe<DataSource> { diff --git a/media/base/mock_data_source_host.h b/media/base/mock_data_source_host.h index a1a2365..83db550 100644 --- a/media/base/mock_data_source_host.h +++ b/media/base/mock_data_source_host.h @@ -20,7 +20,6 @@ class MockDataSourceHost : public DataSourceHost { // DataSourceHost implementation. MOCK_METHOD1(SetTotalBytes, void(int64 total_bytes)); MOCK_METHOD2(AddBufferedByteRange, void(int64 start, int64 end)); - MOCK_METHOD1(SetNetworkActivity, void(bool network_activity)); private: DISALLOW_COPY_AND_ASSIGN(MockDataSourceHost); diff --git a/media/base/mock_demuxer_host.h b/media/base/mock_demuxer_host.h index cdb5509..dab553a 100644 --- a/media/base/mock_demuxer_host.h +++ b/media/base/mock_demuxer_host.h @@ -20,7 +20,6 @@ class MockDemuxerHost : public DemuxerHost { // DataSourceHost implementation. MOCK_METHOD1(SetTotalBytes, void(int64 total_bytes)); MOCK_METHOD2(AddBufferedByteRange, void(int64 start, int64 end)); - MOCK_METHOD1(SetNetworkActivity, void(bool network_activity)); // DemuxerHost implementation. MOCK_METHOD1(OnDemuxerError, void(PipelineStatus error)); diff --git a/media/base/pipeline.cc b/media/base/pipeline.cc index 0b3063c..de70983 100644 --- a/media/base/pipeline.cc +++ b/media/base/pipeline.cc @@ -95,7 +95,6 @@ Pipeline::~Pipeline() { void Pipeline::Start(scoped_ptr<FilterCollection> collection, const PipelineStatusCB& ended_cb, const PipelineStatusCB& error_cb, - const NetworkEventCB& network_cb, const PipelineStatusCB& start_cb) { base::AutoLock auto_lock(lock_); CHECK(!running_) << "Media pipeline is already running"; @@ -103,7 +102,7 @@ void Pipeline::Start(scoped_ptr<FilterCollection> collection, running_ = true; message_loop_->PostTask(FROM_HERE, base::Bind( &Pipeline::StartTask, this, base::Passed(&collection), - ended_cb, error_cb, network_cb, start_cb)); + ended_cb, error_cb, start_cb)); } void Pipeline::Stop(const base::Closure& stop_cb) { @@ -474,21 +473,6 @@ void Pipeline::NotifyEnded() { media_log_->AddEvent(media_log_->CreateEvent(MediaLogEvent::ENDED)); } -void Pipeline::SetNetworkActivity(bool is_downloading_data) { - DCHECK(IsRunning()); - - NetworkEvent type = DOWNLOAD_PAUSED; - if (is_downloading_data) - type = DOWNLOAD_CONTINUED; - - message_loop_->PostTask(FROM_HERE, base::Bind( - &Pipeline::NotifyNetworkEventTask, this, type)); - media_log_->AddEvent( - media_log_->CreateBooleanEvent( - MediaLogEvent::NETWORK_ACTIVITY_SET, - "is_downloading_data", is_downloading_data)); -} - void Pipeline::DisableAudioRenderer() { DCHECK(IsRunning()); @@ -542,14 +526,12 @@ void Pipeline::OnUpdateStatistics(const PipelineStatistics& stats) { void Pipeline::StartTask(scoped_ptr<FilterCollection> filter_collection, const PipelineStatusCB& ended_cb, const PipelineStatusCB& error_cb, - const NetworkEventCB& network_cb, const PipelineStatusCB& start_cb) { DCHECK(message_loop_->BelongsToCurrentThread()); DCHECK_EQ(kCreated, state_); filter_collection_ = filter_collection.Pass(); ended_cb_ = ended_cb; error_cb_ = error_cb; - network_cb_ = network_cb; seek_cb_ = start_cb; // Kick off initialization. @@ -848,12 +830,6 @@ void Pipeline::NotifyEndedTask() { ReportStatus(ended_cb_, status_); } -void Pipeline::NotifyNetworkEventTask(NetworkEvent type) { - DCHECK(message_loop_->BelongsToCurrentThread()); - if (!network_cb_.is_null()) - network_cb_.Run(type); -} - void Pipeline::DisableAudioRendererTask() { DCHECK(message_loop_->BelongsToCurrentThread()); diff --git a/media/base/pipeline.h b/media/base/pipeline.h index c5436621..45fdd33 100644 --- a/media/base/pipeline.h +++ b/media/base/pipeline.h @@ -35,16 +35,6 @@ class MediaLog; class VideoDecoder; class VideoRenderer; -enum NetworkEvent { - DOWNLOAD_CONTINUED, - DOWNLOAD_PAUSED, - CAN_PLAY_THROUGH -}; - -// Callback that executes when a network event occurs. -// The parameter specifies the type of event that is being signalled. -typedef base::Callback<void(NetworkEvent)> NetworkEventCB; - // Adapter for using asynchronous Pipeline methods in code that wants to run // synchronously. To use, construct an instance of this class and pass the // |Callback()| to the Pipeline method requiring a callback. Then Wait() for @@ -126,7 +116,6 @@ class MEDIA_EXPORT Pipeline // // The following permanent callbacks will be executed as follows: // |start_cb_| will be executed when Start is done (successfully or not). - // |network_cb_| will be executed whenever there's a network activity. // |ended_cb| will be executed whenever the media reaches the end. // |error_cb_| will be executed whenever an error occurs but hasn't // been reported already through another callback. @@ -140,7 +129,6 @@ class MEDIA_EXPORT Pipeline void Start(scoped_ptr<FilterCollection> filter_collection, const PipelineStatusCB& ended_cb, const PipelineStatusCB& error_cb, - const NetworkEventCB& network_cb, const PipelineStatusCB& start_cb); // Asynchronously stops the pipeline and resets it to an uninitialized state. @@ -300,7 +288,6 @@ class MEDIA_EXPORT Pipeline // DataSourceHost (by way of DemuxerHost) implementation. virtual void SetTotalBytes(int64 total_bytes) OVERRIDE; virtual void AddBufferedByteRange(int64 start, int64 end) OVERRIDE; - virtual void SetNetworkActivity(bool is_downloading_data) OVERRIDE; // DemuxerHost implementaion. virtual void SetDuration(base::TimeDelta duration) OVERRIDE; @@ -341,7 +328,6 @@ class MEDIA_EXPORT Pipeline void StartTask(scoped_ptr<FilterCollection> filter_collection, const PipelineStatusCB& ended_cb, const PipelineStatusCB& error_cb, - const NetworkEventCB& network_cb, const PipelineStatusCB& start_cb); // InitializeTask() performs initialization in multiple passes. It is executed @@ -370,9 +356,6 @@ class MEDIA_EXPORT Pipeline // Carries out handling a notification from a filter that it has ended. void NotifyEndedTask(); - // Carries out handling a notification of network event. - void NotifyNetworkEventTask(NetworkEvent type); - // Carries out disabling the audio renderer. void DisableAudioRendererTask(); @@ -545,7 +528,6 @@ class MEDIA_EXPORT Pipeline base::Closure stop_cb_; PipelineStatusCB ended_cb_; PipelineStatusCB error_cb_; - NetworkEventCB network_cb_; // Reference to the filter(s) that constitute the pipeline. scoped_refptr<Filter> pipeline_filter_; diff --git a/media/base/pipeline_unittest.cc b/media/base/pipeline_unittest.cc index 54e4cd7..b2c08eb 100644 --- a/media/base/pipeline_unittest.cc +++ b/media/base/pipeline_unittest.cc @@ -192,7 +192,6 @@ class PipelineTest : public ::testing::Test { mocks_->Create().Pass(), base::Bind(&CallbackHelper::OnEnded, base::Unretained(&callbacks_)), base::Bind(&CallbackHelper::OnError, base::Unretained(&callbacks_)), - NetworkEventCB(), base::Bind(&CallbackHelper::OnStart, base::Unretained(&callbacks_))); message_loop_.RunAllPending(); } @@ -305,7 +304,6 @@ TEST_F(PipelineTest, NeverInitializes) { mocks_->Create().Pass(), base::Bind(&CallbackHelper::OnEnded, base::Unretained(&callbacks_)), base::Bind(&CallbackHelper::OnError, base::Unretained(&callbacks_)), - NetworkEventCB(), base::Bind(&CallbackHelper::OnStart, base::Unretained(&callbacks_))); message_loop_.RunAllPending(); @@ -328,7 +326,6 @@ TEST_F(PipelineTest, RequiredFilterMissing) { collection.Pass(), base::Bind(&CallbackHelper::OnEnded, base::Unretained(&callbacks_)), base::Bind(&CallbackHelper::OnError, base::Unretained(&callbacks_)), - NetworkEventCB(), base::Bind(&CallbackHelper::OnStart, base::Unretained(&callbacks_))); message_loop_.RunAllPending(); EXPECT_FALSE(pipeline_->IsInitialized()); diff --git a/media/filters/chunk_demuxer.cc b/media/filters/chunk_demuxer.cc index cc9c6dd..99b45db 100644 --- a/media/filters/chunk_demuxer.cc +++ b/media/filters/chunk_demuxer.cc @@ -648,8 +648,6 @@ bool ChunkDemuxer::AppendData(const std::string& id, // range. host_->AddBufferedByteRange(0, buffered_bytes); - host_->SetNetworkActivity(true); - if (!cb.is_null()) cb.Run(PIPELINE_OK); diff --git a/media/filters/chunk_demuxer_unittest.cc b/media/filters/chunk_demuxer_unittest.cc index eabc244..1087bdd 100644 --- a/media/filters/chunk_demuxer_unittest.cc +++ b/media/filters/chunk_demuxer_unittest.cc @@ -207,8 +207,6 @@ class ChunkDemuxerTest : public testing::Test { CHECK(length); EXPECT_CALL(host_, AddBufferedByteRange(_, _)).Times(AnyNumber()) .WillRepeatedly(SaveArg<1>(&buffered_bytes_)); - EXPECT_CALL(host_, SetNetworkActivity(true)) - .Times(AnyNumber()); return demuxer_->AppendData(kSourceId, data, length); } diff --git a/media/filters/pipeline_integration_test.cc b/media/filters/pipeline_integration_test.cc index 54da1d2..f9a18ea 100644 --- a/media/filters/pipeline_integration_test.cc +++ b/media/filters/pipeline_integration_test.cc @@ -116,7 +116,7 @@ class PipelineIntegrationTest CreateFilterCollection(&source), base::Bind(&PipelineIntegrationTest::OnEnded, base::Unretained(this)), base::Bind(&PipelineIntegrationTest::OnError, base::Unretained(this)), - NetworkEventCB(), QuitOnStatusCB(PIPELINE_OK)); + QuitOnStatusCB(PIPELINE_OK)); ASSERT_TRUE(decoder_.get()); source.set_decryptor(decryptor_.get()); diff --git a/media/filters/pipeline_integration_test_base.cc b/media/filters/pipeline_integration_test_base.cc index e6a58f5..565d3b7 100644 --- a/media/filters/pipeline_integration_test_base.cc +++ b/media/filters/pipeline_integration_test_base.cc @@ -92,7 +92,6 @@ bool PipelineIntegrationTestBase::Start(const std::string& url, CreateFilterCollection(url), base::Bind(&PipelineIntegrationTestBase::OnEnded, base::Unretained(this)), base::Bind(&PipelineIntegrationTestBase::OnError, base::Unretained(this)), - NetworkEventCB(), QuitOnStatusCB(expected_status)); message_loop_.Run(); return (pipeline_status_ == PIPELINE_OK); @@ -110,7 +109,6 @@ bool PipelineIntegrationTestBase::Start(const std::string& url) { CreateFilterCollection(url), base::Bind(&PipelineIntegrationTestBase::OnEnded, base::Unretained(this)), base::Bind(&PipelineIntegrationTestBase::OnError, base::Unretained(this)), - NetworkEventCB(), base::Bind(&PipelineIntegrationTestBase::OnStatusCallback, base::Unretained(this))); message_loop_.Run(); diff --git a/media/tools/player_wtl/movie.cc b/media/tools/player_wtl/movie.cc index 3473aff..799f78e 100644 --- a/media/tools/player_wtl/movie.cc +++ b/media/tools/player_wtl/movie.cc @@ -93,7 +93,6 @@ bool Movie::Open(const wchar_t* url, VideoRendererBase* video_renderer) { collection.Pass(), media::PipelineStatusCB(), media::PipelineStatusCB(), - media::NetworkEventCB(), note.Callback()); // Wait until the pipeline is fully initialized. diff --git a/media/tools/player_x11/player_x11.cc b/media/tools/player_x11/player_x11.cc index 68fe80c..bc8ef38 100644 --- a/media/tools/player_x11/player_x11.cc +++ b/media/tools/player_x11/player_x11.cc @@ -134,8 +134,7 @@ bool InitPipeline(MessageLoop* message_loop, *pipeline = new media::Pipeline(message_loop, new media::MediaLog()); media::PipelineStatusNotification note; (*pipeline)->Start( - collection.Pass(), media::PipelineStatusCB(), - media::PipelineStatusCB(), media::NetworkEventCB(), + collection.Pass(), media::PipelineStatusCB(), media::PipelineStatusCB(), note.Callback()); // Wait until the pipeline is fully initialized. diff --git a/media/tools/seek_tester/seek_tester.cc b/media/tools/seek_tester/seek_tester.cc index f8e769d..f66095f 100644 --- a/media/tools/seek_tester/seek_tester.cc +++ b/media/tools/seek_tester/seek_tester.cc @@ -27,7 +27,6 @@ class DemuxerHostImpl : public media::DemuxerHost { // DataSourceHost implementation. virtual void SetTotalBytes(int64 total_bytes) OVERRIDE {} virtual void AddBufferedByteRange(int64 start, int64 end) OVERRIDE {} - virtual void SetNetworkActivity(bool is_downloading_data) OVERRIDE {} // DemuxerHost implementation. virtual void SetDuration(base::TimeDelta duration) OVERRIDE {} |