diff options
author | acolwell@chromium.org <acolwell@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-04-21 05:45:54 +0000 |
---|---|---|
committer | acolwell@chromium.org <acolwell@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-04-21 05:45:54 +0000 |
commit | 11530d2c4423debe747b2051caf64bdd36dfc055 (patch) | |
tree | 1e6a2c6d8bc1579c1244f5669be850f1255fffa0 /webkit | |
parent | 40101ae21c7134b274be9724512dc10c017365fa (diff) | |
download | chromium_src-11530d2c4423debe747b2051caf64bdd36dfc055.zip chromium_src-11530d2c4423debe747b2051caf64bdd36dfc055.tar.gz chromium_src-11530d2c4423debe747b2051caf64bdd36dfc055.tar.bz2 |
Revert 133335 - Update MediaSource API implementation to match v0.4 spec.
- Adding support for sourceAddId() & sourceRemoveId().
- Adding id parameter to sourceAppend() signature.
BUG=122897
TEST=Covered by LayoutTests
TBR=scherkus@chromium.org
Review URL: http://codereview.chromium.org/10166015
TBR=acolwell@chromium.org
Review URL: https://chromiumcodereview.appspot.com/10161017
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@133339 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'webkit')
-rw-r--r-- | webkit/media/webmediaplayer_impl.cc | 30 | ||||
-rw-r--r-- | webkit/media/webmediaplayer_impl.h | 7 | ||||
-rw-r--r-- | webkit/media/webmediaplayer_proxy.cc | 21 | ||||
-rw-r--r-- | webkit/media/webmediaplayer_proxy.h | 6 |
4 files changed, 8 insertions, 56 deletions
diff --git a/webkit/media/webmediaplayer_impl.cc b/webkit/media/webmediaplayer_impl.cc index 1c5221a..a604f3a7 100644 --- a/webkit/media/webmediaplayer_impl.cc +++ b/webkit/media/webmediaplayer_impl.cc @@ -645,38 +645,10 @@ void WebMediaPlayerImpl::putCurrentFrame( } } -#define COMPILE_ASSERT_MATCHING_STATUS_ENUM(webkit_name, chromium_name) \ - COMPILE_ASSERT(static_cast<int>(WebKit::WebMediaPlayer::webkit_name) == \ - static_cast<int>(media::ChunkDemuxer::chromium_name), \ - mismatching_status_enums) -COMPILE_ASSERT_MATCHING_STATUS_ENUM(AddIdStatusOk, kOk); -COMPILE_ASSERT_MATCHING_STATUS_ENUM(AddIdStatusNotSupported, kNotSupported); -COMPILE_ASSERT_MATCHING_STATUS_ENUM(AddIdStatusReachedIdLimit, kReachedIdLimit); - -WebKit::WebMediaPlayer::AddIdStatus WebMediaPlayerImpl::sourceAddId( - const WebKit::WebString& id, - const WebKit::WebString& type) { - DCHECK_EQ(main_loop_, MessageLoop::current()); - return static_cast<WebKit::WebMediaPlayer::AddIdStatus>( - proxy_->DemuxerAddId(id.utf8().data(), type.utf8().data())); -} - -bool WebMediaPlayerImpl::sourceRemoveId(const WebKit::WebString& id) { - DCHECK(!id.isEmpty()); - return proxy_->DemuxerRemoveId(id.utf8().data()); -} - bool WebMediaPlayerImpl::sourceAppend(const unsigned char* data, unsigned length) { - return sourceAppend(WebKit::WebString::fromUTF8("DefaultSourceId"), - data, length); -} - -bool WebMediaPlayerImpl::sourceAppend(const WebKit::WebString& id, - const unsigned char* data, - unsigned length) { DCHECK_EQ(main_loop_, MessageLoop::current()); - return proxy_->DemuxerAppend(id.utf8().data(), data, length); + return proxy_->DemuxerAppend(data, length); } void WebMediaPlayerImpl::sourceEndOfStream( diff --git a/webkit/media/webmediaplayer_impl.h b/webkit/media/webmediaplayer_impl.h index 83c2c0d..ae1e889 100644 --- a/webkit/media/webmediaplayer_impl.h +++ b/webkit/media/webmediaplayer_impl.h @@ -181,14 +181,7 @@ class WebMediaPlayerImpl virtual WebKit::WebAudioSourceProvider* audioSourceProvider(); - virtual AddIdStatus sourceAddId(const WebKit::WebString& id, - const WebKit::WebString& type); - virtual bool sourceRemoveId(const WebKit::WebString& id); - // TODO(acolwell): Remove non-id version when http://webk.it/83788 fix lands. virtual bool sourceAppend(const unsigned char* data, unsigned length); - virtual bool sourceAppend(const WebKit::WebString& id, - const unsigned char* data, - unsigned length); virtual void sourceEndOfStream(EndOfStreamStatus status); virtual MediaKeyException generateKeyRequest( diff --git a/webkit/media/webmediaplayer_proxy.cc b/webkit/media/webmediaplayer_proxy.cc index ae04d45..f6984f0 100644 --- a/webkit/media/webmediaplayer_proxy.cc +++ b/webkit/media/webmediaplayer_proxy.cc @@ -187,24 +187,15 @@ void WebMediaPlayerProxy::DemuxerFlush() { chunk_demuxer_->FlushData(); } -media::ChunkDemuxer::Status WebMediaPlayerProxy::DemuxerAddId( - const std::string& id, - const std::string& type) { - return chunk_demuxer_->AddId(id, type); -} - -bool WebMediaPlayerProxy::DemuxerRemoveId(const std::string& id) { - return chunk_demuxer_->RemoveId(id); -} - -bool WebMediaPlayerProxy::DemuxerAppend(const std::string& id, - const uint8* data, - size_t length) { - return chunk_demuxer_->AppendData(id, data, length); +bool WebMediaPlayerProxy::DemuxerAppend(const uint8* data, size_t length) { + if (chunk_demuxer_.get()) + return chunk_demuxer_->AppendData(data, length); + return false; } void WebMediaPlayerProxy::DemuxerEndOfStream(media::PipelineStatus status) { - chunk_demuxer_->EndOfStream(status); + if (chunk_demuxer_.get()) + chunk_demuxer_->EndOfStream(status); } void WebMediaPlayerProxy::DemuxerShutdown() { diff --git a/webkit/media/webmediaplayer_proxy.h b/webkit/media/webmediaplayer_proxy.h index 8d6a6b4..83fab2f 100644 --- a/webkit/media/webmediaplayer_proxy.h +++ b/webkit/media/webmediaplayer_proxy.h @@ -10,7 +10,6 @@ #include "base/memory/ref_counted.h" #include "base/synchronization/lock.h" #include "media/base/pipeline.h" -#include "media/filters/chunk_demuxer.h" #include "media/filters/chunk_demuxer_client.h" #include "media/filters/ffmpeg_video_decoder.h" #include "webkit/media/buffered_data_source.h" @@ -89,10 +88,7 @@ class WebMediaPlayerProxy // Methods for Demuxer communication. void DemuxerFlush(); - media::ChunkDemuxer::Status DemuxerAddId(const std::string& id, - const std::string& type); - bool DemuxerRemoveId(const std::string& id); - bool DemuxerAppend(const std::string& id, const uint8* data, size_t length); + bool DemuxerAppend(const uint8* data, size_t length); void DemuxerEndOfStream(media::PipelineStatus status); void DemuxerShutdown(); |