Commit 328d4822 authored by dalecurtis's avatar dalecurtis Committed by Commit bot

Implement MediaSource support for mojo.

- Implements WebMimeRegistryImpl::supportsMediaSourceMIMEType().
- Changes NullEncryptedMediaPlayerSupport to return a callback
  bound to NOTIMPLEMENTED() for the NeedKeyCB.

BUG=423416
TEST=basic mse player plays!

Review URL: https://codereview.chromium.org/653213002

Cr-Commit-Position: refs/heads/master@{#300012}
parent d7c94dea
...@@ -4,11 +4,17 @@ ...@@ -4,11 +4,17 @@
#include "media/blink/null_encrypted_media_player_support.h" #include "media/blink/null_encrypted_media_player_support.h"
#include "base/bind.h"
#include "third_party/WebKit/public/platform/WebContentDecryptionModule.h" #include "third_party/WebKit/public/platform/WebContentDecryptionModule.h"
#include "third_party/WebKit/public/platform/WebContentDecryptionModuleResult.h" #include "third_party/WebKit/public/platform/WebContentDecryptionModuleResult.h"
namespace media { namespace media {
static void NeedKeyHandler(const std::string& type,
const std::vector<uint8>& init_data) {
NOTIMPLEMENTED();
}
scoped_ptr<EncryptedMediaPlayerSupport> scoped_ptr<EncryptedMediaPlayerSupport>
NullEncryptedMediaPlayerSupport::Create(blink::WebMediaPlayerClient* client) { NullEncryptedMediaPlayerSupport::Create(blink::WebMediaPlayerClient* client) {
return scoped_ptr<EncryptedMediaPlayerSupport>( return scoped_ptr<EncryptedMediaPlayerSupport>(
...@@ -66,7 +72,7 @@ void NullEncryptedMediaPlayerSupport::SetContentDecryptionModule( ...@@ -66,7 +72,7 @@ void NullEncryptedMediaPlayerSupport::SetContentDecryptionModule(
} }
Demuxer::NeedKeyCB NullEncryptedMediaPlayerSupport::CreateNeedKeyCB() { Demuxer::NeedKeyCB NullEncryptedMediaPlayerSupport::CreateNeedKeyCB() {
return Demuxer::NeedKeyCB(); return base::Bind(&NeedKeyHandler);
} }
SetDecryptorReadyCB SetDecryptorReadyCB
......
...@@ -8,6 +8,7 @@ ...@@ -8,6 +8,7 @@
#include "base/strings/string_util.h" #include "base/strings/string_util.h"
#include "base/strings/sys_string_conversions.h" #include "base/strings/sys_string_conversions.h"
#include "base/strings/utf_string_conversions.h" #include "base/strings/utf_string_conversions.h"
#include "media/filters/stream_parser_factory.h"
#include "net/base/mime_util.h" #include "net/base/mime_util.h"
#include "third_party/WebKit/public/platform/WebString.h" #include "third_party/WebKit/public/platform/WebString.h"
...@@ -89,8 +90,14 @@ blink::WebMimeRegistry::SupportsType WebMimeRegistryImpl::supportsMediaMIMEType( ...@@ -89,8 +90,14 @@ blink::WebMimeRegistry::SupportsType WebMimeRegistryImpl::supportsMediaMIMEType(
bool WebMimeRegistryImpl::supportsMediaSourceMIMEType( bool WebMimeRegistryImpl::supportsMediaSourceMIMEType(
const blink::WebString& mime_type, const blink::WebString& mime_type,
const blink::WebString& codecs) { const blink::WebString& codecs) {
NOTIMPLEMENTED(); const std::string mime_type_ascii = ToASCIIOrEmpty(mime_type);
return false; if (mime_type_ascii.empty())
return false;
std::vector<std::string> parsed_codec_ids;
net::ParseCodecString(ToASCIIOrEmpty(codecs), &parsed_codec_ids, false);
return media::StreamParserFactory::IsTypeSupported(mime_type_ascii,
parsed_codec_ids);
} }
bool WebMimeRegistryImpl::supportsEncryptedMediaMIMEType( bool WebMimeRegistryImpl::supportsEncryptedMediaMIMEType(
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment