Title: [140532] trunk
Revision
140532
Author
[email protected]
Date
2013-01-23 04:04:22 -0800 (Wed, 23 Jan 2013)

Log Message

[GStreamer] Add Opus MIME type to the list of supported ones
https://bugs.webkit.org/show_bug.cgi?id=98759

Patch by Adrian Perez de Castro <[email protected]> on 2013-01-23
Reviewed by Philippe Normand.

Source/WebCore:

GStreamer has support for the Opus codec (http://opus-codec.org) by
using a plugin present in the "gst-plugins-bad" repository. Opus
streams may be embedded in a Ogg container, or standalone. The case
of the Ogg container is already covered by the "*/ogg" MIME types
declared as supported by the GStreamer media playing code, but for
standalone streams to work, "audio/opus" has to be added.

With this, and the needed GStreamer plugin installed, the GTK+
launcher is able to correctly play the example streams from
http://opus-codec.org/examples

* platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:

LayoutTests:

Opus (http://opus-codec.org) streams are typically embedded into
Ogg containers, so add a check for it in the test case.

* media/media-can-play-ogg-expected.txt:
* media/media-can-play-ogg.html:
* platform/chromium-android/media/media-can-play-ogg-expected.txt:
* platform/chromium/media/media-can-play-ogg-expected.txt: Copied from LayoutTests/media/media-can-play-ogg-expected.txt.
* platform/efl/media/media-can-play-ogg-expected.txt: Copied from LayoutTests/media/media-can-play-ogg-expected.txt.
* platform/gtk/media/media-can-play-ogg-expected.txt: Copied from LayoutTests/media/media-can-play-ogg-expected.txt.
* platform/qt-linux/media/media-can-play-ogg-expected.txt: Copied from LayoutTests/media/media-can-play-ogg-expected.txt.

Modified Paths

Added Paths

Diff

Modified: trunk/LayoutTests/ChangeLog (140531 => 140532)


--- trunk/LayoutTests/ChangeLog	2013-01-23 10:51:44 UTC (rev 140531)
+++ trunk/LayoutTests/ChangeLog	2013-01-23 12:04:22 UTC (rev 140532)
@@ -1,3 +1,21 @@
+2013-01-23  Adrian Perez de Castro  <[email protected]>
+
+        [GStreamer] Add Opus MIME type to the list of supported ones
+        https://bugs.webkit.org/show_bug.cgi?id=98759
+
+        Reviewed by Philippe Normand.
+
+        Opus (http://opus-codec.org) streams are typically embedded into
+        Ogg containers, so add a check for it in the test case.
+
+        * media/media-can-play-ogg-expected.txt:
+        * media/media-can-play-ogg.html:
+        * platform/chromium-android/media/media-can-play-ogg-expected.txt:
+        * platform/chromium/media/media-can-play-ogg-expected.txt: Copied from LayoutTests/media/media-can-play-ogg-expected.txt.
+        * platform/efl/media/media-can-play-ogg-expected.txt: Copied from LayoutTests/media/media-can-play-ogg-expected.txt.
+        * platform/gtk/media/media-can-play-ogg-expected.txt: Copied from LayoutTests/media/media-can-play-ogg-expected.txt.
+        * platform/qt-linux/media/media-can-play-ogg-expected.txt: Copied from LayoutTests/media/media-can-play-ogg-expected.txt.
+
 2013-01-23  Yoshifumi Inoue  <[email protected]>
 
         REGRESSION(r139044): Pan icon remains on screen on Chromium-WinXP

Modified: trunk/LayoutTests/media/media-can-play-ogg-expected.txt (140531 => 140532)


--- trunk/LayoutTests/media/media-can-play-ogg-expected.txt	2013-01-23 10:51:44 UTC (rev 140531)
+++ trunk/LayoutTests/media/media-can-play-ogg-expected.txt	2013-01-23 12:04:22 UTC (rev 140532)
@@ -5,6 +5,7 @@
 EXPECTED (video.canPlayType('audio/ogg') == 'maybe') OK
 EXPECTED (video.canPlayType('video/ogg') == 'maybe') OK
 EXPECTED (video.canPlayType('audio/ogg; codecs=vorbis') == 'probably') OK
+EXPECTED (video.canPlayType('audio/ogg; codecs=opus') == 'probably') OK
 EXPECTED (video.canPlayType('video/ogg; codecs=theora') == 'probably') OK
 EXPECTED (video.canPlayType('video/ogg; codecs=theora,vorbis') == 'probably') OK
 END OF TEST

Modified: trunk/LayoutTests/media/media-can-play-ogg.html (140531 => 140532)


--- trunk/LayoutTests/media/media-can-play-ogg.html	2013-01-23 10:51:44 UTC (rev 140531)
+++ trunk/LayoutTests/media/media-can-play-ogg.html	2013-01-23 12:04:22 UTC (rev 140532)
@@ -10,6 +10,7 @@
                 testExpected("video.canPlayType('video/ogg')", "maybe");
 
                 testExpected("video.canPlayType('audio/ogg; codecs=vorbis')", "probably");
+                testExpected("video.canPlayType('audio/ogg; codecs=opus')", "probably");
                 testExpected("video.canPlayType('video/ogg; codecs=theora')", "probably");
                 testExpected("video.canPlayType('video/ogg; codecs=theora,vorbis')", "probably");
 

Copied: trunk/LayoutTests/platform/blackberry/media/media-can-play-ogg-expected.txt (from rev 140531, trunk/LayoutTests/media/media-can-play-ogg-expected.txt) (0 => 140532)


--- trunk/LayoutTests/platform/blackberry/media/media-can-play-ogg-expected.txt	                        (rev 0)
+++ trunk/LayoutTests/platform/blackberry/media/media-can-play-ogg-expected.txt	2013-01-23 12:04:22 UTC (rev 140532)
@@ -0,0 +1,12 @@
+Test HTMLMediaElement canPlayType() method for ogg media containers.
+
+These tests may be expected to fail if the WebKit port does not support the format.
+
+EXPECTED (video.canPlayType('audio/ogg') == 'maybe') OK
+EXPECTED (video.canPlayType('video/ogg') == 'maybe') OK
+EXPECTED (video.canPlayType('audio/ogg; codecs=vorbis') == 'probably') OK
+EXPECTED (video.canPlayType('audio/ogg; codecs=opus') == 'probably'), OBSERVED '' FAIL
+EXPECTED (video.canPlayType('video/ogg; codecs=theora') == 'probably') OK
+EXPECTED (video.canPlayType('video/ogg; codecs=theora,vorbis') == 'probably') OK
+END OF TEST
+

Copied: trunk/LayoutTests/platform/chromium/media/media-can-play-ogg-expected.txt (from rev 140531, trunk/LayoutTests/media/media-can-play-ogg-expected.txt) (0 => 140532)


--- trunk/LayoutTests/platform/chromium/media/media-can-play-ogg-expected.txt	                        (rev 0)
+++ trunk/LayoutTests/platform/chromium/media/media-can-play-ogg-expected.txt	2013-01-23 12:04:22 UTC (rev 140532)
@@ -0,0 +1,12 @@
+Test HTMLMediaElement canPlayType() method for ogg media containers.
+
+These tests may be expected to fail if the WebKit port does not support the format.
+
+EXPECTED (video.canPlayType('audio/ogg') == 'maybe') OK
+EXPECTED (video.canPlayType('video/ogg') == 'maybe') OK
+EXPECTED (video.canPlayType('audio/ogg; codecs=vorbis') == 'probably') OK
+EXPECTED (video.canPlayType('audio/ogg; codecs=opus') == ''), OBSERVED 'maybe' FAIL
+EXPECTED (video.canPlayType('video/ogg; codecs=theora') == 'probably') OK
+EXPECTED (video.canPlayType('video/ogg; codecs=theora,vorbis') == 'probably') OK
+END OF TEST
+

Modified: trunk/LayoutTests/platform/chromium-android/media/media-can-play-ogg-expected.txt (140531 => 140532)


--- trunk/LayoutTests/platform/chromium-android/media/media-can-play-ogg-expected.txt	2013-01-23 10:51:44 UTC (rev 140531)
+++ trunk/LayoutTests/platform/chromium-android/media/media-can-play-ogg-expected.txt	2013-01-23 12:04:22 UTC (rev 140532)
@@ -5,6 +5,7 @@
 EXPECTED (video.canPlayType('audio/ogg') == 'maybe') OK
 EXPECTED (video.canPlayType('video/ogg') == 'maybe'), OBSERVED '' FAIL
 EXPECTED (video.canPlayType('audio/ogg; codecs=vorbis') == 'probably') OK
+EXPECTED (video.canPlayType('audio/ogg; codecs=opus') == 'probably'), OBSERVED '' FAIL
 EXPECTED (video.canPlayType('video/ogg; codecs=theora') == 'probably'), OBSERVED '' FAIL
 EXPECTED (video.canPlayType('video/ogg; codecs=theora,vorbis') == 'probably'), OBSERVED '' FAIL
 END OF TEST

Copied: trunk/LayoutTests/platform/efl/media/media-can-play-ogg-expected.txt (from rev 140531, trunk/LayoutTests/media/media-can-play-ogg-expected.txt) (0 => 140532)


--- trunk/LayoutTests/platform/efl/media/media-can-play-ogg-expected.txt	                        (rev 0)
+++ trunk/LayoutTests/platform/efl/media/media-can-play-ogg-expected.txt	2013-01-23 12:04:22 UTC (rev 140532)
@@ -0,0 +1,12 @@
+Test HTMLMediaElement canPlayType() method for ogg media containers.
+
+These tests may be expected to fail if the WebKit port does not support the format.
+
+EXPECTED (video.canPlayType('audio/ogg') == 'maybe') OK
+EXPECTED (video.canPlayType('video/ogg') == 'maybe') OK
+EXPECTED (video.canPlayType('audio/ogg; codecs=vorbis') == 'probably') OK
+EXPECTED (video.canPlayType('audio/ogg; codecs=opus') == 'probably'), OBSERVED '' FAIL
+EXPECTED (video.canPlayType('video/ogg; codecs=theora') == 'probably') OK
+EXPECTED (video.canPlayType('video/ogg; codecs=theora,vorbis') == 'probably') OK
+END OF TEST
+

Copied: trunk/LayoutTests/platform/mac/media/media-can-play-ogg-expected.txt (from rev 140531, trunk/LayoutTests/media/media-can-play-ogg-expected.txt) (0 => 140532)


--- trunk/LayoutTests/platform/mac/media/media-can-play-ogg-expected.txt	                        (rev 0)
+++ trunk/LayoutTests/platform/mac/media/media-can-play-ogg-expected.txt	2013-01-23 12:04:22 UTC (rev 140532)
@@ -0,0 +1,12 @@
+Test HTMLMediaElement canPlayType() method for ogg media containers.
+
+These tests may be expected to fail if the WebKit port does not support the format.
+
+EXPECTED (video.canPlayType('audio/ogg') == 'maybe') OK
+EXPECTED (video.canPlayType('video/ogg') == 'maybe') OK
+EXPECTED (video.canPlayType('audio/ogg; codecs=vorbis') == 'probably') OK
+EXPECTED (video.canPlayType('audio/ogg; codecs=opus') == 'probably'), OBSERVED '' FAIL
+EXPECTED (video.canPlayType('video/ogg; codecs=theora') == 'probably') OK
+EXPECTED (video.canPlayType('video/ogg; codecs=theora,vorbis') == 'probably') OK
+END OF TEST
+

Copied: trunk/LayoutTests/platform/qt-linux/media/media-can-play-ogg-expected.txt (from rev 140531, trunk/LayoutTests/media/media-can-play-ogg-expected.txt) (0 => 140532)


--- trunk/LayoutTests/platform/qt-linux/media/media-can-play-ogg-expected.txt	                        (rev 0)
+++ trunk/LayoutTests/platform/qt-linux/media/media-can-play-ogg-expected.txt	2013-01-23 12:04:22 UTC (rev 140532)
@@ -0,0 +1,12 @@
+Test HTMLMediaElement canPlayType() method for ogg media containers.
+
+These tests may be expected to fail if the WebKit port does not support the format.
+
+EXPECTED (video.canPlayType('audio/ogg') == 'maybe') OK
+EXPECTED (video.canPlayType('video/ogg') == 'maybe') OK
+EXPECTED (video.canPlayType('audio/ogg; codecs=vorbis') == 'probably') OK
+EXPECTED (video.canPlayType('audio/ogg; codecs=opus') == 'probably'), OBSERVED '' FAIL
+EXPECTED (video.canPlayType('video/ogg; codecs=theora') == 'probably') OK
+EXPECTED (video.canPlayType('video/ogg; codecs=theora,vorbis') == 'probably') OK
+END OF TEST
+

Copied: trunk/LayoutTests/platform/win/media/media-can-play-ogg-expected.txt (from rev 140531, trunk/LayoutTests/media/media-can-play-ogg-expected.txt) (0 => 140532)


--- trunk/LayoutTests/platform/win/media/media-can-play-ogg-expected.txt	                        (rev 0)
+++ trunk/LayoutTests/platform/win/media/media-can-play-ogg-expected.txt	2013-01-23 12:04:22 UTC (rev 140532)
@@ -0,0 +1,12 @@
+Test HTMLMediaElement canPlayType() method for ogg media containers.
+
+These tests may be expected to fail if the WebKit port does not support the format.
+
+EXPECTED (video.canPlayType('audio/ogg') == 'maybe') OK
+EXPECTED (video.canPlayType('video/ogg') == 'maybe') OK
+EXPECTED (video.canPlayType('audio/ogg; codecs=vorbis') == 'probably') OK
+EXPECTED (video.canPlayType('audio/ogg; codecs=opus') == 'probably'), OBSERVED '' FAIL
+EXPECTED (video.canPlayType('video/ogg; codecs=theora') == 'probably') OK
+EXPECTED (video.canPlayType('video/ogg; codecs=theora,vorbis') == 'probably') OK
+END OF TEST
+

Modified: trunk/Source/WebCore/ChangeLog (140531 => 140532)


--- trunk/Source/WebCore/ChangeLog	2013-01-23 10:51:44 UTC (rev 140531)
+++ trunk/Source/WebCore/ChangeLog	2013-01-23 12:04:22 UTC (rev 140532)
@@ -1,3 +1,23 @@
+2013-01-23  Adrian Perez de Castro  <[email protected]>
+
+        [GStreamer] Add Opus MIME type to the list of supported ones
+        https://bugs.webkit.org/show_bug.cgi?id=98759
+
+        Reviewed by Philippe Normand.
+
+        GStreamer has support for the Opus codec (http://opus-codec.org) by
+        using a plugin present in the "gst-plugins-bad" repository. Opus
+        streams may be embedded in a Ogg container, or standalone. The case
+        of the Ogg container is already covered by the "*/ogg" MIME types
+        declared as supported by the GStreamer media playing code, but for
+        standalone streams to work, "audio/opus" has to be added.
+
+        With this, and the needed GStreamer plugin installed, the GTK+
+        launcher is able to correctly play the example streams from
+        http://opus-codec.org/examples
+
+        * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
+
 2013-01-23  Takashi Sakamoto  <[email protected]>
 
         [Refactoring] Remove elementParentStyle from SelectorCheckerContext

Modified: trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp (140531 => 140532)


--- trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp	2013-01-23 10:51:44 UTC (rev 140531)
+++ trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp	2013-01-23 12:04:22 UTC (rev 140532)
@@ -1636,6 +1636,7 @@
         "audio/mp4",
         "audio/mpeg",
         "audio/ogg",
+        "audio/opus",
         "audio/qcelp",
         "audio/riff-midi",
         "audio/wav",
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to