Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(496)

Unified Diff: third_party/WebKit/Source/modules/media_capabilities/MediaCapabilities.cpp

Issue 2805553004: Wire up MediaCapabilities is_supported to MimeUtil (Closed)
Patch Set: Created 3 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: third_party/WebKit/Source/modules/media_capabilities/MediaCapabilities.cpp
diff --git a/third_party/WebKit/Source/modules/media_capabilities/MediaCapabilities.cpp b/third_party/WebKit/Source/modules/media_capabilities/MediaCapabilities.cpp
index 73f13ae144a7cab3458eb4125fce76450b3a855a..fd3f19fd55890be5f89accb9539a74fb94f82ce9 100644
--- a/third_party/WebKit/Source/modules/media_capabilities/MediaCapabilities.cpp
+++ b/third_party/WebKit/Source/modules/media_capabilities/MediaCapabilities.cpp
@@ -10,6 +10,7 @@
#include "bindings/core/v8/ScriptState.h"
#include "modules/media_capabilities/MediaConfiguration.h"
#include "modules/media_capabilities/MediaDecodingAbility.h"
+#include "platform/network/ParsedContentType.h"
#include "public/platform/Platform.h"
#include "public/platform/modules/media_capabilities/WebMediaCapabilitiesClient.h"
#include "public/platform/modules/media_capabilities/WebMediaConfiguration.h"
@@ -25,7 +26,16 @@ WebAudioConfiguration toWebAudioConfiguration(
// contentType is mandatory.
DCHECK(configuration.hasContentType());
- webConfiguration.contentType = configuration.contentType();
+ ParsedContentType parsedContentType(configuration.contentType(),
+ ParsedContentType::Mode::Strict);
+
+ // TODO(mlamouri): Sort out error handling for invalid input. Spec issue
+ // https://github.com/WICG/media-capabilities/issues/32
+ DCHECK(parsedContentType.isValid());
+
+ DEFINE_STATIC_LOCAL(const String, codecs, ("codecs"));
+ webConfiguration.mimeType = parsedContentType.mimeType().lower();
+ webConfiguration.codec = parsedContentType.parameterValueForName(codecs);
// channels is optional and will be set to a null WebString if not present.
webConfiguration.channels = configuration.hasChannels()
@@ -47,7 +57,15 @@ WebVideoConfiguration toWebVideoConfiguration(
// All the properties are mandatory.
DCHECK(configuration.hasContentType());
- webConfiguration.contentType = configuration.contentType();
+ ParsedContentType parsedContentType(configuration.contentType(),
+ ParsedContentType::Mode::Strict);
+ // TODO(mlamouri): Sort out error handling for invalid input. Spec issue
+ // https://github.com/WICG/media-capabilities/issues/32
+ DCHECK(parsedContentType.isValid());
+
+ DEFINE_STATIC_LOCAL(const String, codecs, ("codecs"));
+ webConfiguration.mimeType = parsedContentType.mimeType().lower();
+ webConfiguration.codec = parsedContentType.parameterValueForName(codecs);
DCHECK(configuration.hasWidth());
webConfiguration.width = configuration.width();

Powered by Google App Engine
This is Rietveld 408576698