| Index: webkit/media/webmediasourceclient_impl.cc
|
| diff --git a/webkit/media/webmediasourceclient_impl.cc b/webkit/media/webmediasourceclient_impl.cc
|
| index 2f84c0f1447c8634eeef6de0ad16acaed39d814c..dbe388a88b4567ce1c2bb879a9d97f552d48c8ea 100644
|
| --- a/webkit/media/webmediasourceclient_impl.cc
|
| +++ b/webkit/media/webmediasourceclient_impl.cc
|
| @@ -6,6 +6,7 @@
|
|
|
| #include "base/guid.h"
|
| #include "media/filters/chunk_demuxer.h"
|
| +#include "media/filters/stream_parser_factory.h"
|
| #include "third_party/WebKit/Source/Platform/chromium/public/WebCString.h"
|
| #include "third_party/WebKit/Source/Platform/chromium/public/WebString.h"
|
| #include "third_party/WebKit/Source/WebKit/chromium/public/WebSourceBuffer.h"
|
| @@ -84,9 +85,17 @@ void WebSourceBufferImpl::removedFromMediaSource() {
|
| demuxer_ = NULL;
|
| }
|
|
|
| +bool WebMediaSourceClientImpl::isTypeSupported(
|
| + const std::string& type,
|
| + const std::vector<std::string>& codecs) {
|
| + return media::StreamParserFactory::IsTypeSupported(type, codecs);
|
| +}
|
| +
|
| WebMediaSourceClientImpl::WebMediaSourceClientImpl(
|
| - const scoped_refptr<media::ChunkDemuxer>& demuxer)
|
| - : demuxer_(demuxer) {
|
| + const scoped_refptr<media::ChunkDemuxer>& demuxer,
|
| + media::LogCB log_cb)
|
| + : demuxer_(demuxer),
|
| + log_cb_(log_cb) {
|
| DCHECK(demuxer_);
|
| }
|
|
|
| @@ -100,7 +109,7 @@ WebMediaSourceClient::AddStatus WebMediaSourceClientImpl::addSourceBuffer(
|
| std::vector<std::string> new_codecs(codecs.size());
|
| for (size_t i = 0; i < codecs.size(); ++i)
|
| new_codecs[i] = codecs[i].utf8().data();
|
| -
|
| + DCHECK(isTypeSupported(type.utf8().data(), new_codecs));
|
| WebMediaSourceClient::AddStatus result =
|
| static_cast<WebMediaSourceClient::AddStatus>(
|
| demuxer_->AddId(id, type.utf8().data(), new_codecs));
|
|
|