Diff
Modified: trunk/Source/WebCore/ChangeLog (121052 => 121053)
--- trunk/Source/WebCore/ChangeLog 2012-06-22 20:26:14 UTC (rev 121052)
+++ trunk/Source/WebCore/ChangeLog 2012-06-22 20:28:26 UTC (rev 121053)
@@ -1,3 +1,64 @@
+2012-06-22 Danilo Cesar Lemes de Paula <[email protected]>
+
+ Add url to supportsType
+ https://bugs.webkit.org/show_bug.cgi?id=89514
+
+ Reviewed by Eric Carlson.
+
+ No new tests since there's no change on code behavior.
+
+ When a blob is created as the address for a Media Stream, the MediaEngine
+ will ask it's players if they support that media. However, a player built
+ for MediaStream needs to know to URL to decide if it's supported or not.
+
+ * dom/DOMImplementation.cpp:
+ (WebCore::DOMImplementation::createDocument):
+ * html/HTMLMediaElement.cpp:
+ (WebCore::HTMLMediaElement::canPlayType):
+ (WebCore::HTMLMediaElement::selectNextSourceChild):
+ * html/HTMLMediaElement.h:
+ * platform/graphics/MediaPlayer.cpp:
+ (MediaPlayerFactory):
+ (WebCore::MediaPlayerFactory::MediaPlayerFactory):
+ (WebCore):
+ (WebCore::textPlain):
+ (WebCore::bestMediaEngineForTypeAndCodecs):
+ (WebCore::MediaPlayer::load):
+ (WebCore::MediaPlayer::loadWithNextMediaEngine):
+ (WebCore::MediaPlayer::paint):
+ (WebCore::MediaPlayer::supportsType):
+ * platform/graphics/MediaPlayer.h:
+ (WebCore):
+ * platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp:
+ (WebCore::MediaPlayerPrivateAVFoundationCF::supportsType):
+ * platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.h:
+ (MediaPlayerPrivateAVFoundationCF):
+ * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h:
+ (MediaPlayerPrivateAVFoundationObjC):
+ * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
+ (WebCore::MediaPlayerPrivateAVFoundationObjC::supportsType):
+ * platform/graphics/blackberry/MediaPlayerPrivateBlackBerry.cpp:
+ (WebCore::MediaPlayerPrivate::supportsType):
+ * platform/graphics/blackberry/MediaPlayerPrivateBlackBerry.h:
+ (MediaPlayerPrivate):
+ * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
+ * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:
+ (MediaPlayerPrivateGStreamer):
+ * platform/graphics/mac/MediaPlayerPrivateQTKit.h:
+ (MediaPlayerPrivateQTKit):
+ * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
+ (WebCore::MediaPlayerPrivateQTKit::supportsType):
+ * platform/graphics/qt/MediaPlayerPrivateQt.cpp:
+ (WebCore::MediaPlayerPrivateQt::supportsType):
+ * platform/graphics/qt/MediaPlayerPrivateQt.h:
+ (MediaPlayerPrivateQt):
+ * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:
+ (WebCore::MediaPlayerPrivateQuickTimeVisualContext::supportsType):
+ * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.h:
+ (MediaPlayerPrivateQuickTimeVisualContext):
+ * platform/graphics/wince/MediaPlayerPrivateWinCE.h:
+ (MediaPlayerPrivate):
+
2012-06-22 Joshua Netterfield <[email protected]>
[BlackBerry] Sanitize GLSL code using ANGLE.
Modified: trunk/Source/WebCore/dom/DOMImplementation.cpp (121052 => 121053)
--- trunk/Source/WebCore/dom/DOMImplementation.cpp 2012-06-22 20:26:14 UTC (rev 121052)
+++ trunk/Source/WebCore/dom/DOMImplementation.cpp 2012-06-22 20:28:26 UTC (rev 121053)
@@ -410,7 +410,7 @@
// Check to see if the type can be played by our MediaPlayer, if so create a MediaDocument
// Key system is not applicable here.
DOMImplementationSupportsTypeClient client(frame && frame->settings() && frame->settings()->needsSiteSpecificQuirks(), url.host());
- if (MediaPlayer::supportsType(ContentType(type), String(), &client))
+ if (MediaPlayer::supportsType(ContentType(type), String(), url, &client))
return MediaDocument::create(frame, url);
#endif
Modified: trunk/Source/WebCore/html/HTMLMediaElement.cpp (121052 => 121053)
--- trunk/Source/WebCore/html/HTMLMediaElement.cpp 2012-06-22 20:26:14 UTC (rev 121052)
+++ trunk/Source/WebCore/html/HTMLMediaElement.cpp 2012-06-22 20:28:26 UTC (rev 121053)
@@ -615,9 +615,9 @@
return m_networkState;
}
-String HTMLMediaElement::canPlayType(const String& mimeType, const String& keySystem) const
+String HTMLMediaElement::canPlayType(const String& mimeType, const String& keySystem, const KURL& url) const
{
- MediaPlayer::SupportsType support = MediaPlayer::supportsType(ContentType(mimeType), keySystem, this);
+ MediaPlayer::SupportsType support = MediaPlayer::supportsType(ContentType(mimeType), keySystem, url, this);
String canPlay;
// 4.8.10.3
@@ -634,7 +634,7 @@
break;
}
- LOG(Media, "HTMLMediaElement::canPlayType(%s, %s) -> %s", mimeType.utf8().data(), keySystem.utf8().data(), canPlay.utf8().data());
+ LOG(Media, "HTMLMediaElement::canPlayType(%s, %s, %s) -> %s", mimeType.utf8().data(), keySystem.utf8().data(), url.string().utf8().data(), canPlay.utf8().data());
return canPlay;
}
@@ -3174,7 +3174,7 @@
if (shouldLog)
LOG(Media, "HTMLMediaElement::selectNextSourceChild - 'type' is '%s' - key system is '%s'", type.utf8().data(), system.utf8().data());
#endif
- if (!MediaPlayer::supportsType(ContentType(type), system, this))
+ if (!MediaPlayer::supportsType(ContentType(type), system, mediaURL, this))
goto check_again;
}
Modified: trunk/Source/WebCore/html/HTMLMediaElement.h (121052 => 121053)
--- trunk/Source/WebCore/html/HTMLMediaElement.h 2012-06-22 20:26:14 UTC (rev 121052)
+++ trunk/Source/WebCore/html/HTMLMediaElement.h 2012-06-22 20:28:26 UTC (rev 121053)
@@ -128,7 +128,7 @@
PassRefPtr<TimeRanges> buffered() const;
void load(ExceptionCode&);
- String canPlayType(const String& mimeType, const String& keySystem = String()) const;
+ String canPlayType(const String& mimeType, const String& keySystem = String(), const KURL& = KURL()) const;
// ready state
ReadyState readyState() const;
Modified: trunk/Source/WebCore/platform/graphics/MediaPlayer.cpp (121052 => 121053)
--- trunk/Source/WebCore/platform/graphics/MediaPlayer.cpp 2012-06-22 20:26:14 UTC (rev 121052)
+++ trunk/Source/WebCore/platform/graphics/MediaPlayer.cpp 2012-06-22 20:28:26 UTC (rev 121053)
@@ -176,15 +176,14 @@
WTF_MAKE_NONCOPYABLE(MediaPlayerFactory); WTF_MAKE_FAST_ALLOCATED;
public:
MediaPlayerFactory(CreateMediaEnginePlayer constructor, MediaEngineSupportedTypes getSupportedTypes, MediaEngineSupportsType supportsTypeAndCodecs,
- MediaEngineGetSitesInMediaCache getSitesInMediaCache, MediaEngineClearMediaCache clearMediaCache, MediaEngineClearMediaCacheForSite clearMediaCacheForSite)
+ MediaEngineGetSitesInMediaCache getSitesInMediaCache, MediaEngineClearMediaCache clearMediaCache, MediaEngineClearMediaCacheForSite clearMediaCacheForSite)
: constructor(constructor)
, getSupportedTypes(getSupportedTypes)
, supportsTypeAndCodecs(supportsTypeAndCodecs)
, getSitesInMediaCache(getSitesInMediaCache)
, clearMediaCache(clearMediaCache)
, clearMediaCacheForSite(clearMediaCacheForSite)
-
- {
+ {
}
CreateMediaEnginePlayer constructor;
@@ -196,7 +195,8 @@
};
static void addMediaEngine(CreateMediaEnginePlayer, MediaEngineSupportedTypes, MediaEngineSupportsType, MediaEngineGetSitesInMediaCache, MediaEngineClearMediaCache, MediaEngineClearMediaCacheForSite);
-static MediaPlayerFactory* bestMediaEngineForTypeAndCodecs(const String& type, const String& codecs, const String& keySystem, MediaPlayerFactory* current = 0);
+
+static MediaPlayerFactory* bestMediaEngineForTypeAndCodecs(const String& type, const String& codecs, const String& keySystem, const KURL&, MediaPlayerFactory* current = 0);
static MediaPlayerFactory* nextMediaEngine(MediaPlayerFactory* current);
static Vector<MediaPlayerFactory*>& installedMediaEngines()
@@ -253,7 +253,7 @@
return codecs;
}
-static MediaPlayerFactory* bestMediaEngineForTypeAndCodecs(const String& type, const String& codecs, const String& keySystem, MediaPlayerFactory* current)
+static MediaPlayerFactory* bestMediaEngineForTypeAndCodecs(const String& type, const String& codecs, const String& keySystem, const KURL& url, MediaPlayerFactory* current)
{
if (type.isEmpty())
return 0;
@@ -280,11 +280,11 @@
continue;
}
#if ENABLE(ENCRYPTED_MEDIA)
- MediaPlayer::SupportsType engineSupport = engines[ndx]->supportsTypeAndCodecs(type, codecs, keySystem);
+ MediaPlayer::SupportsType engineSupport = engines[ndx]->supportsTypeAndCodecs(type, codecs, keySystem, url);
#else
UNUSED_PARAM(keySystem);
ASSERT(keySystem.isEmpty());
- MediaPlayer::SupportsType engineSupport = engines[ndx]->supportsTypeAndCodecs(type, codecs);
+ MediaPlayer::SupportsType engineSupport = engines[ndx]->supportsTypeAndCodecs(type, codecs, url);
#endif
if (engineSupport > supported) {
supported = engineSupport;
@@ -352,14 +352,14 @@
{
m_contentMIMEType = contentType.type().lower();
m_contentTypeCodecs = contentType.parameter(codecs());
- m_url = url.string();
+ m_url = url;
m_keySystem = keySystem.lower();
m_contentMIMETypeWasInferredFromExtension = false;
// If the MIME type is missing or is not meaningful, try to figure it out from the URL.
if (m_contentMIMEType.isEmpty() || m_contentMIMEType == applicationOctetStream() || m_contentMIMEType == textPlain()) {
- if (protocolIs(m_url, "data"))
- m_contentMIMEType = mimeTypeFromDataURL(m_url);
+ if (protocolIs(m_url.string(), "data"))
+ m_contentMIMEType = mimeTypeFromDataURL(m_url.string());
else {
String lastPathComponent = url.lastPathComponent();
size_t pos = lastPathComponent.reverseFind('.');
@@ -383,7 +383,7 @@
MediaPlayerFactory* engine = 0;
if (!m_contentMIMEType.isEmpty())
- engine = bestMediaEngineForTypeAndCodecs(m_contentMIMEType, m_contentTypeCodecs, m_keySystem, current);
+ engine = bestMediaEngineForTypeAndCodecs(m_contentMIMEType, m_contentTypeCodecs, m_keySystem, m_url, current);
// If no MIME type is specified or the type was inferred from the file extension, just use the next engine.
if (!engine && (m_contentMIMEType.isEmpty() || m_contentMIMETypeWasInferredFromExtension))
@@ -410,7 +410,7 @@
}
if (m_private)
- m_private->load(m_url);
+ m_private->load(m_url.string());
else {
m_private = createNullMediaPlayer(this);
if (m_mediaPlayerClient) {
@@ -418,7 +418,7 @@
m_mediaPlayerClient->mediaPlayerResourceNotSupported(this);
}
}
-}
+}
bool MediaPlayer::hasAvailableVideoFrame() const
{
@@ -724,7 +724,7 @@
m_private->paintCurrentFrameInContext(p, r);
}
-MediaPlayer::SupportsType MediaPlayer::supportsType(const ContentType& contentType, const String& keySystem, const MediaPlayerSupportsTypeClient* client)
+MediaPlayer::SupportsType MediaPlayer::supportsType(const ContentType& contentType, const String& keySystem, const KURL& url, const MediaPlayerSupportsTypeClient* client)
{
String type = contentType.type().lower();
// The codecs string is not lower-cased because MP4 values are case sensitive
@@ -737,7 +737,7 @@
if (type == applicationOctetStream())
return IsNotSupported;
- MediaPlayerFactory* engine = bestMediaEngineForTypeAndCodecs(type, typeCodecs, system);
+ MediaPlayerFactory* engine = bestMediaEngineForTypeAndCodecs(type, typeCodecs, system, url);
if (!engine)
return IsNotSupported;
@@ -757,10 +757,10 @@
#endif
#if ENABLE(ENCRYPTED_MEDIA)
- return engine->supportsTypeAndCodecs(type, typeCodecs, system);
+ return engine->supportsTypeAndCodecs(type, typeCodecs, system, url);
#else
ASSERT(system.isEmpty());
- return engine->supportsTypeAndCodecs(type, typeCodecs);
+ return engine->supportsTypeAndCodecs(type, typeCodecs, url);
#endif
}
@@ -942,7 +942,7 @@
if (m_private->networkState() >= FormatError
&& m_private->readyState() < HaveMetadata
&& installedMediaEngines().size() > 1) {
- if (m_contentMIMEType.isEmpty() || bestMediaEngineForTypeAndCodecs(m_contentMIMEType, m_contentTypeCodecs, m_keySystem, m_currentMediaEngine)) {
+ if (m_contentMIMEType.isEmpty() || bestMediaEngineForTypeAndCodecs(m_contentMIMEType, m_contentTypeCodecs, m_keySystem, m_url, m_currentMediaEngine)) {
m_reloadTimer.startOneShot(0);
return;
}
Modified: trunk/Source/WebCore/platform/graphics/MediaPlayer.h (121052 => 121053)
--- trunk/Source/WebCore/platform/graphics/MediaPlayer.h 2012-06-22 20:26:14 UTC (rev 121052)
+++ trunk/Source/WebCore/platform/graphics/MediaPlayer.h 2012-06-22 20:28:26 UTC (rev 121053)
@@ -203,7 +203,7 @@
// Media engine support.
enum SupportsType { IsNotSupported, IsSupported, MayBeSupported };
- static MediaPlayer::SupportsType supportsType(const ContentType&, const String& keySystem, const MediaPlayerSupportsTypeClient*);
+ static MediaPlayer::SupportsType supportsType(const ContentType&, const String& keySystem, const KURL&, const MediaPlayerSupportsTypeClient*);
static void getSupportedTypes(HashSet<String>&);
static bool isAvailable();
static void getSitesInMediaCache(Vector<String>&);
@@ -401,7 +401,7 @@
Timer<MediaPlayer> m_reloadTimer;
OwnPtr<MediaPlayerPrivateInterface> m_private;
MediaPlayerFactory* m_currentMediaEngine;
- String m_url;
+ KURL m_url;
String m_contentMIMEType;
String m_contentTypeCodecs;
String m_keySystem;
@@ -424,18 +424,17 @@
typedef PassOwnPtr<MediaPlayerPrivateInterface> (*CreateMediaEnginePlayer)(MediaPlayer*);
typedef void (*MediaEngineSupportedTypes)(HashSet<String>& types);
#if ENABLE(ENCRYPTED_MEDIA)
-typedef MediaPlayer::SupportsType (*MediaEngineSupportsType)(const String& type, const String& codecs, const String& keySystem);
+typedef MediaPlayer::SupportsType (*MediaEngineSupportsType)(const String& type, const String& codecs, const String& keySystem, const KURL& url);
#else
-typedef MediaPlayer::SupportsType (*MediaEngineSupportsType)(const String& type, const String& codecs);
+typedef MediaPlayer::SupportsType (*MediaEngineSupportsType)(const String& type, const String& codecs, const KURL& url);
#endif
typedef void (*MediaEngineGetSitesInMediaCache)(Vector<String>&);
typedef void (*MediaEngineClearMediaCache)();
typedef void (*MediaEngineClearMediaCacheForSite)(const String&);
-typedef void (*MediaEngineRegistrar)(CreateMediaEnginePlayer, MediaEngineSupportedTypes, MediaEngineSupportsType,
- MediaEngineGetSitesInMediaCache, MediaEngineClearMediaCache, MediaEngineClearMediaCacheForSite);
+typedef void (*MediaEngineRegistrar)(CreateMediaEnginePlayer, MediaEngineSupportedTypes, MediaEngineSupportsType,
+ MediaEngineGetSitesInMediaCache, MediaEngineClearMediaCache, MediaEngineClearMediaCacheForSite);
-
}
#endif // ENABLE(VIDEO)
Modified: trunk/Source/WebCore/platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp (121052 => 121053)
--- trunk/Source/WebCore/platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp 2012-06-22 20:26:14 UTC (rev 121052)
+++ trunk/Source/WebCore/platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp 2012-06-22 20:28:26 UTC (rev 121053)
@@ -725,7 +725,7 @@
supportedTypes = mimeTypeCache();
}
-MediaPlayer::SupportsType MediaPlayerPrivateAVFoundationCF::supportsType(const String& type, const String& codecs)
+MediaPlayer::SupportsType MediaPlayerPrivateAVFoundationCF::supportsType(const String& type, const String& codecs, const KURL&)
{
// Only return "IsSupported" if there is no codecs parameter for now as there is no way to ask if it supports an
// extended MIME type until rdar://8721715 is fixed.
Modified: trunk/Source/WebCore/platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.h (121052 => 121053)
--- trunk/Source/WebCore/platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.h 2012-06-22 20:26:14 UTC (rev 121052)
+++ trunk/Source/WebCore/platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.h 2012-06-22 20:28:26 UTC (rev 121053)
@@ -46,7 +46,7 @@
// Engine support
static PassOwnPtr<MediaPlayerPrivateInterface> create(MediaPlayer*);
static void getSupportedTypes(HashSet<String>& types);
- static MediaPlayer::SupportsType supportsType(const String& type, const String& codecs);
+ static MediaPlayer::SupportsType supportsType(const String& type, const String& codecs, const KURL&);
static bool isAvailable();
virtual void cancelLoad();
Modified: trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h (121052 => 121053)
--- trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h 2012-06-22 20:26:14 UTC (rev 121052)
+++ trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h 2012-06-22 20:28:26 UTC (rev 121053)
@@ -60,7 +60,7 @@
// engine support
static PassOwnPtr<MediaPlayerPrivateInterface> create(MediaPlayer*);
static void getSupportedTypes(HashSet<String>& types);
- static MediaPlayer::SupportsType supportsType(const String& type, const String& codecs);
+ static MediaPlayer::SupportsType supportsType(const String& type, const String& codecs, const KURL&);
static bool isAvailable();
virtual void cancelLoad();
Modified: trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm (121052 => 121053)
--- trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm 2012-06-22 20:26:14 UTC (rev 121052)
+++ trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm 2012-06-22 20:28:26 UTC (rev 121053)
@@ -670,7 +670,7 @@
supportedTypes = mimeTypeCache();
}
-MediaPlayer::SupportsType MediaPlayerPrivateAVFoundationObjC::supportsType(const String& type, const String& codecs)
+MediaPlayer::SupportsType MediaPlayerPrivateAVFoundationObjC::supportsType(const String& type, const String& codecs, const KURL&)
{
if (!mimeTypeCache().contains(type))
return MediaPlayer::IsNotSupported;
Modified: trunk/Source/WebCore/platform/graphics/blackberry/MediaPlayerPrivateBlackBerry.cpp (121052 => 121053)
--- trunk/Source/WebCore/platform/graphics/blackberry/MediaPlayerPrivateBlackBerry.cpp 2012-06-22 20:26:14 UTC (rev 121052)
+++ trunk/Source/WebCore/platform/graphics/blackberry/MediaPlayerPrivateBlackBerry.cpp 2012-06-22 20:28:26 UTC (rev 121053)
@@ -72,7 +72,7 @@
types.add(i->c_str());
}
-MediaPlayer::SupportsType MediaPlayerPrivate::supportsType(const String& type, const String& codecs)
+MediaPlayer::SupportsType MediaPlayerPrivate::supportsType(const String& type, const String& codecs, const KURL&)
{
if (type.isNull() || type.isEmpty()) {
LOG(Media, "MediaPlayer does not support type; type is null or empty.");
Modified: trunk/Source/WebCore/platform/graphics/blackberry/MediaPlayerPrivateBlackBerry.h (121052 => 121053)
--- trunk/Source/WebCore/platform/graphics/blackberry/MediaPlayerPrivateBlackBerry.h 2012-06-22 20:26:14 UTC (rev 121052)
+++ trunk/Source/WebCore/platform/graphics/blackberry/MediaPlayerPrivateBlackBerry.h 2012-06-22 20:28:26 UTC (rev 121053)
@@ -39,7 +39,7 @@
static PassOwnPtr<MediaPlayerPrivateInterface> create(MediaPlayer*);
static void registerMediaEngine(MediaEngineRegistrar);
static void getSupportedTypes(HashSet<String>&);
- static MediaPlayer::SupportsType supportsType(const String&, const String&);
+ static MediaPlayer::SupportsType supportsType(const String&, const String&, const KURL&);
static void notifyAppActivatedEvent(bool);
static void setCertificatePath(const String&);
Modified: trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp (121052 => 121053)
--- trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp 2012-06-22 20:26:14 UTC (rev 121052)
+++ trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp 2012-06-22 20:28:26 UTC (rev 121053)
@@ -1586,7 +1586,7 @@
types = mimeTypeCache();
}
-MediaPlayer::SupportsType MediaPlayerPrivateGStreamer::supportsType(const String& type, const String& codecs)
+MediaPlayer::SupportsType MediaPlayerPrivateGStreamer::supportsType(const String& type, const String& codecs, const KURL&)
{
if (type.isNull() || type.isEmpty())
return MediaPlayer::IsNotSupported;
Modified: trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h (121052 => 121053)
--- trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h 2012-06-22 20:26:14 UTC (rev 121052)
+++ trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h 2012-06-22 20:28:26 UTC (rev 121053)
@@ -130,7 +130,8 @@
static PassOwnPtr<MediaPlayerPrivateInterface> create(MediaPlayer*);
static void getSupportedTypes(HashSet<String>&);
- static MediaPlayer::SupportsType supportsType(const String& type, const String& codecs);
+ static MediaPlayer::SupportsType supportsType(const String& type, const String& codecs, const KURL&);
+
static bool isAvailable();
void updateAudioSink();
Modified: trunk/Source/WebCore/platform/graphics/mac/MediaPlayerPrivateQTKit.h (121052 => 121053)
--- trunk/Source/WebCore/platform/graphics/mac/MediaPlayerPrivateQTKit.h 2012-06-22 20:26:14 UTC (rev 121052)
+++ trunk/Source/WebCore/platform/graphics/mac/MediaPlayerPrivateQTKit.h 2012-06-22 20:28:26 UTC (rev 121053)
@@ -75,7 +75,7 @@
// engine support
static PassOwnPtr<MediaPlayerPrivateInterface> create(MediaPlayer*);
static void getSupportedTypes(HashSet<String>& types);
- static MediaPlayer::SupportsType supportsType(const String& type, const String& codecs);
+ static MediaPlayer::SupportsType supportsType(const String& type, const String& codecs, const KURL&);
static void getSitesInMediaCache(Vector<String>&);
static void clearMediaCache();
static void clearMediaCacheForSite(const String&);
Modified: trunk/Source/WebCore/platform/graphics/mac/MediaPlayerPrivateQTKit.mm (121052 => 121053)
--- trunk/Source/WebCore/platform/graphics/mac/MediaPlayerPrivateQTKit.mm 2012-06-22 20:26:14 UTC (rev 121052)
+++ trunk/Source/WebCore/platform/graphics/mac/MediaPlayerPrivateQTKit.mm 2012-06-22 20:28:26 UTC (rev 121053)
@@ -1501,7 +1501,7 @@
supportedTypes.add(*it);
}
-MediaPlayer::SupportsType MediaPlayerPrivateQTKit::supportsType(const String& type, const String& codecs)
+MediaPlayer::SupportsType MediaPlayerPrivateQTKit::supportsType(const String& type, const String& codecs, const KURL&)
{
// Only return "IsSupported" if there is no codecs parameter for now as there is no way to ask QT if it supports an
// extended MIME type yet.
Modified: trunk/Source/WebCore/platform/graphics/qt/MediaPlayerPrivateQt.cpp (121052 => 121053)
--- trunk/Source/WebCore/platform/graphics/qt/MediaPlayerPrivateQt.cpp 2012-06-22 20:26:14 UTC (rev 121052)
+++ trunk/Source/WebCore/platform/graphics/qt/MediaPlayerPrivateQt.cpp 2012-06-22 20:28:26 UTC (rev 121053)
@@ -81,7 +81,7 @@
}
}
-MediaPlayer::SupportsType MediaPlayerPrivateQt::supportsType(const String& mime, const String& codec)
+MediaPlayer::SupportsType MediaPlayerPrivateQt::supportsType(const String& mime, const String& codec, const KURL&)
{
if (!mime.startsWith("audio/") && !mime.startsWith("video/"))
return MediaPlayer::IsNotSupported;
Modified: trunk/Source/WebCore/platform/graphics/qt/MediaPlayerPrivateQt.h (121052 => 121053)
--- trunk/Source/WebCore/platform/graphics/qt/MediaPlayerPrivateQt.h 2012-06-22 20:26:14 UTC (rev 121052)
+++ trunk/Source/WebCore/platform/graphics/qt/MediaPlayerPrivateQt.h 2012-06-22 20:28:26 UTC (rev 121053)
@@ -51,7 +51,7 @@
static void registerMediaEngine(MediaEngineRegistrar);
static void getSupportedTypes(HashSet<String>&);
- static MediaPlayer::SupportsType supportsType(const String&, const String&);
+ static MediaPlayer::SupportsType supportsType(const String&, const String&, const KURL&);
static bool isAvailable() { return true; }
bool hasVideo() const;
Modified: trunk/Source/WebCore/platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp (121052 => 121053)
--- trunk/Source/WebCore/platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp 2012-06-22 20:26:14 UTC (rev 121052)
+++ trunk/Source/WebCore/platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp 2012-06-22 20:28:26 UTC (rev 121053)
@@ -1011,7 +1011,7 @@
return QTMovie::initializeQuickTime();
}
-MediaPlayer::SupportsType MediaPlayerPrivateQuickTimeVisualContext::supportsType(const String& type, const String& codecs)
+MediaPlayer::SupportsType MediaPlayerPrivateQuickTimeVisualContext::supportsType(const String& type, const String& codecs, const KURL&)
{
// only return "IsSupported" if there is no codecs parameter for now as there is no way to ask QT if it supports an
// extended MIME type
Modified: trunk/Source/WebCore/platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.h (121052 => 121053)
--- trunk/Source/WebCore/platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.h 2012-06-22 20:26:14 UTC (rev 121052)
+++ trunk/Source/WebCore/platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.h 2012-06-22 20:28:26 UTC (rev 121053)
@@ -128,7 +128,7 @@
// engine support
static PassOwnPtr<MediaPlayerPrivateInterface> create(MediaPlayer*);
static void getSupportedTypes(HashSet<String>& types);
- static MediaPlayer::SupportsType supportsType(const String& type, const String& codecs);
+ static MediaPlayer::SupportsType supportsType(const String& type, const String& codecs, const KURL&);
static bool isAvailable();
#if USE(ACCELERATED_COMPOSITING)
Modified: trunk/Source/WebCore/platform/graphics/wince/MediaPlayerPrivateWinCE.h (121052 => 121053)
--- trunk/Source/WebCore/platform/graphics/wince/MediaPlayerPrivateWinCE.h 2012-06-22 20:26:14 UTC (rev 121052)
+++ trunk/Source/WebCore/platform/graphics/wince/MediaPlayerPrivateWinCE.h 2012-06-22 20:28:26 UTC (rev 121053)
@@ -100,7 +100,7 @@
// engine support
static PassOwnPtr<MediaPlayerPrivateInterface> create(MediaPlayer*);
static void getSupportedTypes(HashSet<String>& types);
- static MediaPlayer::SupportsType supportsType(const String& type, const String& codecs);
+ static MediaPlayer::SupportsType supportsType(const String& type, const String& codecs, const KURL&);
static bool isAvailable();
MediaPlayer* m_player;
Modified: trunk/Source/WebKit/chromium/src/WebMediaPlayerClientImpl.cpp (121052 => 121053)
--- trunk/Source/WebKit/chromium/src/WebMediaPlayerClientImpl.cpp 2012-06-22 20:26:14 UTC (rev 121052)
+++ trunk/Source/WebKit/chromium/src/WebMediaPlayerClientImpl.cpp 2012-06-22 20:28:26 UTC (rev 121053)
@@ -803,11 +803,13 @@
#if ENABLE(ENCRYPTED_MEDIA)
MediaPlayer::SupportsType WebMediaPlayerClientImpl::supportsType(const String& type,
const String& codecs,
- const String& keySystem)
+ const String& keySystem,
+ const KURL&)
{
#else
MediaPlayer::SupportsType WebMediaPlayerClientImpl::supportsType(const String& type,
- const String& codecs)
+ const String& codecs,
+ const KURL&)
{
String keySystem;
#endif
Modified: trunk/Source/WebKit/chromium/src/WebMediaPlayerClientImpl.h (121052 => 121053)
--- trunk/Source/WebKit/chromium/src/WebMediaPlayerClientImpl.h 2012-06-22 20:26:14 UTC (rev 121052)
+++ trunk/Source/WebKit/chromium/src/WebMediaPlayerClientImpl.h 2012-06-22 20:28:26 UTC (rev 121053)
@@ -186,10 +186,10 @@
static void getSupportedTypes(WTF::HashSet<WTF::String>&);
#if ENABLE(ENCRYPTED_MEDIA)
static WebCore::MediaPlayer::SupportsType supportsType(
- const WTF::String& type, const WTF::String& codecs, const String& keySystem);
+ const WTF::String& type, const WTF::String& codecs, const String& keySystem, const WebCore::KURL&);
#else
static WebCore::MediaPlayer::SupportsType supportsType(
- const WTF::String& type, const WTF::String& codecs);
+ const WTF::String& type, const WTF::String& codecs, const WebCore::KURL&);
#endif
#if USE(ACCELERATED_COMPOSITING)
bool acceleratedRenderingInUse();