<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>[159730] trunk</title>
</head>
<body>
<style type="text/css"><!--
#msg dl.meta { border: 1px #006 solid; background: #369; padding: 6px; color: #fff; }
#msg dl.meta dt { float: left; width: 6em; font-weight: bold; }
#msg dt:after { content:':';}
#msg dl, #msg dt, #msg ul, #msg li, #header, #footer, #logmsg { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; }
#msg dl a { font-weight: bold}
#msg dl a:link { color:#fc3; }
#msg dl a:active { color:#ff0; }
#msg dl a:visited { color:#cc6; }
h3 { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; font-weight: bold; }
#msg pre { overflow: auto; background: #ffc; border: 1px #fa0 solid; padding: 6px; }
#logmsg { background: #ffc; border: 1px #fa0 solid; padding: 1em 1em 0 1em; }
#logmsg p, #logmsg pre, #logmsg blockquote { margin: 0 0 1em 0; }
#logmsg p, #logmsg li, #logmsg dt, #logmsg dd { line-height: 14pt; }
#logmsg h1, #logmsg h2, #logmsg h3, #logmsg h4, #logmsg h5, #logmsg h6 { margin: .5em 0; }
#logmsg h1:first-child, #logmsg h2:first-child, #logmsg h3:first-child, #logmsg h4:first-child, #logmsg h5:first-child, #logmsg h6:first-child { margin-top: 0; }
#logmsg ul, #logmsg ol { padding: 0; list-style-position: inside; margin: 0 0 0 1em; }
#logmsg ul { text-indent: -1em; padding-left: 1em; }#logmsg ol { text-indent: -1.5em; padding-left: 1.5em; }
#logmsg > ul, #logmsg > ol { margin: 0 0 1em 0; }
#logmsg pre { background: #eee; padding: 1em; }
#logmsg blockquote { border: 1px solid #fa0; border-left-width: 10px; padding: 1em 1em 0 1em; background: white;}
#logmsg dl { margin: 0; }
#logmsg dt { font-weight: bold; }
#logmsg dd { margin: 0; padding: 0 0 0.5em 0; }
#logmsg dd:before { content:'\00bb';}
#logmsg table { border-spacing: 0px; border-collapse: collapse; border-top: 4px solid #fa0; border-bottom: 1px solid #fa0; background: #fff; }
#logmsg table th { text-align: left; font-weight: normal; padding: 0.2em 0.5em; border-top: 1px dotted #fa0; }
#logmsg table td { text-align: right; border-top: 1px dotted #fa0; padding: 0.2em 0.5em; }
#logmsg table thead th { text-align: center; border-bottom: 1px solid #fa0; }
#logmsg table th.Corner { text-align: left; }
#logmsg hr { border: none 0; border-top: 2px dashed #fa0; height: 1px; }
#header, #footer { color: #fff; background: #636; border: 1px #300 solid; padding: 6px; }
#patch { width: 100%; }
#patch h4 {font-family: verdana,arial,helvetica,sans-serif;font-size:10pt;padding:8px;background:#369;color:#fff;margin:0;}
#patch .propset h4, #patch .binary h4 {margin:0;}
#patch pre {padding:0;line-height:1.2em;margin:0;}
#patch .diff {width:100%;background:#eee;padding: 0 0 10px 0;overflow:auto;}
#patch .propset .diff, #patch .binary .diff {padding:10px 0;}
#patch span {display:block;padding:0 10px;}
#patch .modfile, #patch .addfile, #patch .delfile, #patch .propset, #patch .binary, #patch .copfile {border:1px solid #ccc;margin:10px 0;}
#patch ins {background:#dfd;text-decoration:none;display:block;padding:0 10px;}
#patch del {background:#fdd;text-decoration:none;display:block;padding:0 10px;}
#patch .lines, .info {color:#888;background:#fff;}
--></style>
<div id="msg">
<dl class="meta">
<dt>Revision</dt> <dd><a href="http://trac.webkit.org/projects/webkit/changeset/159730">159730</a></dd>
<dt>Author</dt> <dd>calvaris@igalia.com</dd>
<dt>Date</dt> <dd>2013-11-23 06:35:26 -0800 (Sat, 23 Nov 2013)</dd>
</dl>
<h3>Log Message</h3>
<pre>[GStreamer] Remove 0.10 codepath
https://bugs.webkit.org/show_bug.cgi?id=124534
Reviewed by Philippe Normand.
.:
* Source/cmake/OptionsEfl.cmake: Removed GST_API_VERSION_1
definition.
Source/WebCore:
All GStreamer ports are using 1.0 now so we remove the 0.10
codepath.
* GNUmakefile.list.am:
* PlatformEfl.cmake:
* PlatformGTK.cmake:
* WebCore.vcxproj/WebCore.vcxproj:
* WebCore.vcxproj/WebCore.vcxproj.filters: Removed
GStreamerVersioning.
* platform/audio/gstreamer/AudioDestinationGStreamer.cpp:
(onGStreamerWavparsePadAddedCallback): Removed.
(WebCore::AudioDestinationGStreamer::AudioDestinationGStreamer):
Replaced webkitGstPipelineGetBus and removed 0.10 codepath.
(WebCore::AudioDestinationGStreamer::~AudioDestinationGStreamer):
Replaced webkitGstPipelineGetBus.
* platform/audio/gstreamer/AudioFileReaderGStreamer.cpp:
(WebCore::copyGstreamerBuffersToAudioChannel):
(WebCore::onAppsinkPullRequiredCallback): Removed 0.10 codepath.
(WebCore::AudioFileReader::~AudioFileReader): Replaced
webkitGstPipelineGetBus and removed 0.10 codepath.
(WebCore::AudioFileReader::handleSample): Left as only codepath.
(WebCore::AudioFileReader::handleBuffer): Removed.
(WebCore::AudioFileReader::handleNewDeinterleavePad): Removed 0.10
codepath.
(WebCore::AudioFileReader::plugDeinterleave): Replaced
getGstAudioCaps.
(WebCore::AudioFileReader::decodeAudioForBusCreation): Replaced
webkitGstPipelineGetBus.
(WebCore::AudioFileReader::createBus): Removed 0.10 codepath.
* platform/audio/gstreamer/WebKitWebAudioSourceGStreamer.cpp:
(getGStreamerMonoAudioCaps):
(webKitWebAudioGStreamerChannelPosition): Removed 0.10 codepath.
(webkit_web_audio_src_class_init): Replaced
setGstElementClassMetadata.
(webkit_web_audio_src_init):
(webKitWebAudioSrcConstructed):
(webKitWebAudioSrcFinalize):
(webKitWebAudioSrcLoop): Removed 0.10 codepath.
* platform/graphics/gstreamer/AudioTrackPrivateGStreamer.cpp:
* platform/graphics/gstreamer/AudioTrackPrivateGStreamer.h:
Removed checks for 1.0 as it is the only codepath now.
* platform/graphics/gstreamer/GRefPtrGStreamer.cpp:
(WTF::GstElement):
(WTF::GstPad):
(WTF::GstPadTemplate):
(WTF::GstTask):
(WTF::GstBus):
(WTF::GstElementFactory):
(WTF::adoptGRef): Replaced gstObjectIsFloating.
(WTF::refGRef): Replaced webkitGstObjectRefSink.
(WTF::GstTagList):
(WTF::GstSample): Removed checks for 1.0 as it is the only
codepath now.
* platform/graphics/gstreamer/GRefPtrGStreamer.h: Removed checks
for 1.0 as it is the only codepath now.
* platform/graphics/gstreamer/GStreamerUtilities.cpp:
(WebCore::webkitGstGhostPadFromStaticTemplate):
(WebCore::getVideoSizeAndFormatFromCaps):
(WebCore::createGstBuffer):
(WebCore::createGstBufferForData):
(WebCore::getGstBufferDataPointer):
(WebCore::mapGstBuffer):
(WebCore::unmapGstBuffer): Moved here from GstVersioning and added
to WebCore namespace.
* platform/graphics/gstreamer/GStreamerUtilities.h:
(WebCore::webkitGstCheckVersion): Moved here from GstVersioning
and added to WebCore namespace.
* platform/graphics/gstreamer/GStreamerVersioning.cpp: Removed.
* platform/graphics/gstreamer/GStreamerVersioning.h: Removed.
* platform/graphics/gstreamer/ImageGStreamer.h: Removed checks for
1.0 as it is the only codepath now.
* platform/graphics/gstreamer/ImageGStreamerCairo.cpp:
(ImageGStreamer::ImageGStreamer): Removed 0.10 codepath.
(ImageGStreamer::~ImageGStreamer): Removed checks for 1.0 as it is
the only codepath now.
* platform/graphics/gstreamer/InbandMetadataTextTrackPrivateGStreamer.h:
* platform/graphics/gstreamer/InbandTextTrackPrivateGStreamer.cpp:
* platform/graphics/gstreamer/InbandTextTrackPrivateGStreamer.h:
Removed checks for 1.0 as it is the only codepath now.
* platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
(WebCore::setAudioStreamPropertiesCallback): Removed 0.10 codepath.
(WebCore::mediaPlayerPrivateTextChangedCallback): Removed checks
for 1.0 as it is the only codepath now.
(WebCore::MediaPlayerPrivateGStreamer::isAvailable): Replaced
gPlaybinName.
(WebCore::MediaPlayerPrivateGStreamer::~MediaPlayerPrivateGStreamer):
Removed checks for 1.0 and replaced webkitGstPipelineGetBus.
(WebCore::MediaPlayerPrivateGStreamer::duration): Removed 0.10
codepath.
(WebCore::MediaPlayerPrivateGStreamer::notifyPlayerOfVideo):
(WebCore::MediaPlayerPrivateGStreamer::notifyPlayerOfAudio):
(WebCore::MediaPlayerPrivateGStreamer::textChanged):
Removed checks for 1.0 as it is the only codepath now.
(WebCore::MediaPlayerPrivateGStreamer::buffered): Replaced
gPercentMax.
(WebCore::MediaPlayerPrivateGStreamer::handleMessage): Removed
0.10 codepath.
(WebCore::MediaPlayerPrivateGStreamer::processTableOfContents):
Removed checks for 1.0 as it is the only codepath now.
(WebCore::MediaPlayerPrivateGStreamer::totalBytes): Removed 0.10
codepath.
(WebCore::MediaPlayerPrivateGStreamer::createGSTPlayBin): Replaced
gPlaybinName and webkitGstPipelineGetBus and removed checks for
1.0.
* platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:
Removed checks for 1.0 as it is the only codepath now.
* platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:
(WebCore::MediaPlayerPrivateGStreamerBase::naturalSize):
(WebCore::MediaPlayerPrivateGStreamerBase::updateTexture):
(WebCore::MediaPlayerPrivateGStreamerBase::paint): Removed 0.10
codepath.
* platform/graphics/gstreamer/TextCombinerGStreamer.cpp:
* platform/graphics/gstreamer/TextCombinerGStreamer.h:
* platform/graphics/gstreamer/TextSinkGStreamer.cpp:
* platform/graphics/gstreamer/TextSinkGStreamer.h:
* platform/graphics/gstreamer/TrackPrivateBaseGStreamer.cpp:
* platform/graphics/gstreamer/TrackPrivateBaseGStreamer.h: Removed
checks for 1.0 as it is the only codepath now.
* platform/graphics/gstreamer/VideoSinkGStreamer.cpp:
(webkitVideoSinkRender): Removed 0.10 codepath and added WebCore
as createGstBuffer namespace.
(webkitVideoSinkSetCaps): Removed 0.10 codepath.
(webkitVideoSinkProposeAllocation): Removed checks for 1.0 as it
is the only codepath now.
(webkitVideoSinkMarshalVoidAndMiniObject): Removed as it was 0.10.
(webkit_video_sink_class_init): Removed 0.10 codepath and replaced
setGstElementClassMetadata.
* platform/graphics/gstreamer/VideoTrackPrivateGStreamer.cpp:
* platform/graphics/gstreamer/VideoTrackPrivateGStreamer.h:
Removed checks for 1.0 as it is the only codepath now.
* platform/graphics/gstreamer/WebKitMediaSourceGStreamer.cpp:
(webkit_media_src_class_init): Replaced
setGstElementClassMetadata.
(webKitMediaSrcAddSrc): Added WebCore namespace to
webkitGstGhostPadFromStaticTemplate.
(MediaSourceClientGstreamer::didReceiveData): Added WebCore
namespace to createGstBufferForData.
* platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
Removed 0.10 codepath.
(webKitWebSrcQuery): Removed as it was 0.10 only.
(void webkit_web_src_class_init): Replaced setGstElementClassMetadata.
(webkit_web_src_init): Removed haveAppSrc27 private attribute and
0.10 codepath.
(webKitWebSrcStop): Removed checks for 1.0 as it is the only
codepath now.
(webKitWebSrcSetProperty):
(webKitWebSrcUriGetType):
(webKitWebSrcGetProtocols):
(webKitWebSrcGetUri):
(webKitWebSrcSetUri): Removed 0.10 codepath.
(StreamingClient::createReadBuffer): Removed checks for 1.0 and
replaced getGstBufferSize.
(StreamingClient::handleResponseReceived): Removed 0.10 codepath
and replaced notifyGstTagsOnPad.
(StreamingClient::handleDataReceived): Removed 0.10 codepath and
replaced setGstBufferSize and gst_buffer_get_size.
Source/WebKit:
* PlatformEfl.cmake: Removed FullscreenVideoControllerEfl.cpp.
Source/WebKit/efl:
* WebCoreSupport/FullscreenVideoControllerEfl.cpp: Removed.
Source/WTF:
* wtf/Platform.h: Removed macro for GStreamer 1.0 as it is the
only codepath now.</pre>
<h3>Modified Paths</h3>
<ul>
<li><a href="#trunkChangeLog">trunk/ChangeLog</a></li>
<li><a href="#trunkSourceWTFChangeLog">trunk/Source/WTF/ChangeLog</a></li>
<li><a href="#trunkSourceWTFwtfPlatformh">trunk/Source/WTF/wtf/Platform.h</a></li>
<li><a href="#trunkSourceWebCoreChangeLog">trunk/Source/WebCore/ChangeLog</a></li>
<li><a href="#trunkSourceWebCoreGNUmakefilelistam">trunk/Source/WebCore/GNUmakefile.list.am</a></li>
<li><a href="#trunkSourceWebCorePlatformEflcmake">trunk/Source/WebCore/PlatformEfl.cmake</a></li>
<li><a href="#trunkSourceWebCorePlatformGTKcmake">trunk/Source/WebCore/PlatformGTK.cmake</a></li>
<li><a href="#trunkSourceWebCoreWebCorevcxprojWebCorevcxproj">trunk/Source/WebCore/WebCore.vcxproj/WebCore.vcxproj</a></li>
<li><a href="#trunkSourceWebCoreWebCorevcxprojWebCorevcxprojfilters">trunk/Source/WebCore/WebCore.vcxproj/WebCore.vcxproj.filters</a></li>
<li><a href="#trunkSourceWebCoreplatformaudiogstreamerAudioDestinationGStreamercpp">trunk/Source/WebCore/platform/audio/gstreamer/AudioDestinationGStreamer.cpp</a></li>
<li><a href="#trunkSourceWebCoreplatformaudiogstreamerAudioFileReaderGStreamercpp">trunk/Source/WebCore/platform/audio/gstreamer/AudioFileReaderGStreamer.cpp</a></li>
<li><a href="#trunkSourceWebCoreplatformaudiogstreamerWebKitWebAudioSourceGStreamercpp">trunk/Source/WebCore/platform/audio/gstreamer/WebKitWebAudioSourceGStreamer.cpp</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicsgstreamerAudioTrackPrivateGStreamercpp">trunk/Source/WebCore/platform/graphics/gstreamer/AudioTrackPrivateGStreamer.cpp</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicsgstreamerAudioTrackPrivateGStreamerh">trunk/Source/WebCore/platform/graphics/gstreamer/AudioTrackPrivateGStreamer.h</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicsgstreamerGRefPtrGStreamercpp">trunk/Source/WebCore/platform/graphics/gstreamer/GRefPtrGStreamer.cpp</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicsgstreamerGRefPtrGStreamerh">trunk/Source/WebCore/platform/graphics/gstreamer/GRefPtrGStreamer.h</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicsgstreamerGStreamerUtilitiescpp">trunk/Source/WebCore/platform/graphics/gstreamer/GStreamerUtilities.cpp</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicsgstreamerGStreamerUtilitiesh">trunk/Source/WebCore/platform/graphics/gstreamer/GStreamerUtilities.h</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicsgstreamerImageGStreamerh">trunk/Source/WebCore/platform/graphics/gstreamer/ImageGStreamer.h</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicsgstreamerImageGStreamerCairocpp">trunk/Source/WebCore/platform/graphics/gstreamer/ImageGStreamerCairo.cpp</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicsgstreamerInbandMetadataTextTrackPrivateGStreamerh">trunk/Source/WebCore/platform/graphics/gstreamer/InbandMetadataTextTrackPrivateGStreamer.h</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicsgstreamerInbandTextTrackPrivateGStreamercpp">trunk/Source/WebCore/platform/graphics/gstreamer/InbandTextTrackPrivateGStreamer.cpp</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicsgstreamerInbandTextTrackPrivateGStreamerh">trunk/Source/WebCore/platform/graphics/gstreamer/InbandTextTrackPrivateGStreamer.h</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicsgstreamerMediaPlayerPrivateGStreamercpp">trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicsgstreamerMediaPlayerPrivateGStreamerh">trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicsgstreamerMediaPlayerPrivateGStreamerBasecpp">trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicsgstreamerTextCombinerGStreamercpp">trunk/Source/WebCore/platform/graphics/gstreamer/TextCombinerGStreamer.cpp</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicsgstreamerTextCombinerGStreamerh">trunk/Source/WebCore/platform/graphics/gstreamer/TextCombinerGStreamer.h</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicsgstreamerTextSinkGStreamercpp">trunk/Source/WebCore/platform/graphics/gstreamer/TextSinkGStreamer.cpp</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicsgstreamerTextSinkGStreamerh">trunk/Source/WebCore/platform/graphics/gstreamer/TextSinkGStreamer.h</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicsgstreamerTrackPrivateBaseGStreamercpp">trunk/Source/WebCore/platform/graphics/gstreamer/TrackPrivateBaseGStreamer.cpp</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicsgstreamerTrackPrivateBaseGStreamerh">trunk/Source/WebCore/platform/graphics/gstreamer/TrackPrivateBaseGStreamer.h</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicsgstreamerVideoSinkGStreamercpp">trunk/Source/WebCore/platform/graphics/gstreamer/VideoSinkGStreamer.cpp</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicsgstreamerVideoTrackPrivateGStreamercpp">trunk/Source/WebCore/platform/graphics/gstreamer/VideoTrackPrivateGStreamer.cpp</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicsgstreamerVideoTrackPrivateGStreamerh">trunk/Source/WebCore/platform/graphics/gstreamer/VideoTrackPrivateGStreamer.h</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicsgstreamerWebKitMediaSourceGStreamercpp">trunk/Source/WebCore/platform/graphics/gstreamer/WebKitMediaSourceGStreamer.cpp</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicsgstreamerWebKitWebSourceGStreamercpp">trunk/Source/WebCore/platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp</a></li>
<li><a href="#trunkSourceWebKitChangeLog">trunk/Source/WebKit/ChangeLog</a></li>
<li><a href="#trunkSourceWebKitPlatformEflcmake">trunk/Source/WebKit/PlatformEfl.cmake</a></li>
<li><a href="#trunkSourceWebKiteflChangeLog">trunk/Source/WebKit/efl/ChangeLog</a></li>
<li><a href="#trunkSourcecmakeOptionsEflcmake">trunk/Source/cmake/OptionsEfl.cmake</a></li>
</ul>
<h3>Removed Paths</h3>
<ul>
<li><a href="#trunkSourceWebCoreplatformgraphicsgstreamerGStreamerVersioningcpp">trunk/Source/WebCore/platform/graphics/gstreamer/GStreamerVersioning.cpp</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicsgstreamerGStreamerVersioningh">trunk/Source/WebCore/platform/graphics/gstreamer/GStreamerVersioning.h</a></li>
<li><a href="#trunkSourceWebKiteflWebCoreSupportFullscreenVideoControllerEflcpp">trunk/Source/WebKit/efl/WebCoreSupport/FullscreenVideoControllerEfl.cpp</a></li>
</ul>
</div>
<div id="patch">
<h3>Diff</h3>
<a id="trunkChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/ChangeLog (159729 => 159730)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/ChangeLog        2013-11-23 11:05:53 UTC (rev 159729)
+++ trunk/ChangeLog        2013-11-23 14:35:26 UTC (rev 159730)
</span><span class="lines">@@ -1,3 +1,13 @@
</span><ins>+2013-11-23 Xabier Rodriguez Calvar <calvaris@igalia.com>
+
+ [GStreamer] Remove 0.10 codepath
+ https://bugs.webkit.org/show_bug.cgi?id=124534
+
+ Reviewed by Philippe Normand.
+
+ * Source/cmake/OptionsEfl.cmake: Removed GST_API_VERSION_1
+ definition.
+
</ins><span class="cx"> 2013-11-22 Manuel Rego Casasnovas <rego@igalia.com>
</span><span class="cx">
</span><span class="cx"> [GTK] Review enabled/disabled CSS features for release builds
</span></span></pre></div>
<a id="trunkSourceWTFChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Source/WTF/ChangeLog (159729 => 159730)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WTF/ChangeLog        2013-11-23 11:05:53 UTC (rev 159729)
+++ trunk/Source/WTF/ChangeLog        2013-11-23 14:35:26 UTC (rev 159730)
</span><span class="lines">@@ -1,3 +1,13 @@
</span><ins>+2013-11-23 Xabier Rodriguez Calvar <calvaris@igalia.com>
+
+ [GStreamer] Remove 0.10 codepath
+ https://bugs.webkit.org/show_bug.cgi?id=124534
+
+ Reviewed by Philippe Normand.
+
+ * wtf/Platform.h: Removed macro for GStreamer 1.0 as it is the
+ only codepath now.
+
</ins><span class="cx"> 2013-11-21 Peter Molnar <pmolnar.u-szeged@partner.samsung.com>
</span><span class="cx">
</span><span class="cx"> Remove ENABLE_WORKERS
</span></span></pre></div>
<a id="trunkSourceWTFwtfPlatformh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WTF/wtf/Platform.h (159729 => 159730)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WTF/wtf/Platform.h        2013-11-23 11:05:53 UTC (rev 159729)
+++ trunk/Source/WTF/wtf/Platform.h        2013-11-23 14:35:26 UTC (rev 159730)
</span><span class="lines">@@ -494,7 +494,6 @@
</span><span class="cx"> #define WTF_USE_SOUP 1
</span><span class="cx"> #define WTF_USE_WEBP 1
</span><span class="cx"> #define ENABLE_GLOBAL_FASTMALLOC_NEW 0
</span><del>-#define GST_API_VERSION_1 1
</del><span class="cx"> #endif
</span><span class="cx">
</span><span class="cx"> /* On Windows, use QueryPerformanceCounter by default */
</span></span></pre></div>
<a id="trunkSourceWebCoreChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/ChangeLog (159729 => 159730)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/ChangeLog        2013-11-23 11:05:53 UTC (rev 159729)
+++ trunk/Source/WebCore/ChangeLog        2013-11-23 14:35:26 UTC (rev 159730)
</span><span class="lines">@@ -1,3 +1,167 @@
</span><ins>+2013-11-23 Xabier Rodriguez Calvar <calvaris@igalia.com>
+
+ [GStreamer] Remove 0.10 codepath
+ https://bugs.webkit.org/show_bug.cgi?id=124534
+
+ Reviewed by Philippe Normand.
+
+ All GStreamer ports are using 1.0 now so we remove the 0.10
+ codepath.
+
+ * GNUmakefile.list.am:
+ * PlatformEfl.cmake:
+ * PlatformGTK.cmake:
+ * WebCore.vcxproj/WebCore.vcxproj:
+ * WebCore.vcxproj/WebCore.vcxproj.filters: Removed
+ GStreamerVersioning.
+ * platform/audio/gstreamer/AudioDestinationGStreamer.cpp:
+ (onGStreamerWavparsePadAddedCallback): Removed.
+ (WebCore::AudioDestinationGStreamer::AudioDestinationGStreamer):
+ Replaced webkitGstPipelineGetBus and removed 0.10 codepath.
+ (WebCore::AudioDestinationGStreamer::~AudioDestinationGStreamer):
+ Replaced webkitGstPipelineGetBus.
+ * platform/audio/gstreamer/AudioFileReaderGStreamer.cpp:
+ (WebCore::copyGstreamerBuffersToAudioChannel):
+ (WebCore::onAppsinkPullRequiredCallback): Removed 0.10 codepath.
+ (WebCore::AudioFileReader::~AudioFileReader): Replaced
+ webkitGstPipelineGetBus and removed 0.10 codepath.
+ (WebCore::AudioFileReader::handleSample): Left as only codepath.
+ (WebCore::AudioFileReader::handleBuffer): Removed.
+ (WebCore::AudioFileReader::handleNewDeinterleavePad): Removed 0.10
+ codepath.
+ (WebCore::AudioFileReader::plugDeinterleave): Replaced
+ getGstAudioCaps.
+ (WebCore::AudioFileReader::decodeAudioForBusCreation): Replaced
+ webkitGstPipelineGetBus.
+ (WebCore::AudioFileReader::createBus): Removed 0.10 codepath.
+ * platform/audio/gstreamer/WebKitWebAudioSourceGStreamer.cpp:
+ (getGStreamerMonoAudioCaps):
+ (webKitWebAudioGStreamerChannelPosition): Removed 0.10 codepath.
+ (webkit_web_audio_src_class_init): Replaced
+ setGstElementClassMetadata.
+ (webkit_web_audio_src_init):
+ (webKitWebAudioSrcConstructed):
+ (webKitWebAudioSrcFinalize):
+ (webKitWebAudioSrcLoop): Removed 0.10 codepath.
+ * platform/graphics/gstreamer/AudioTrackPrivateGStreamer.cpp:
+ * platform/graphics/gstreamer/AudioTrackPrivateGStreamer.h:
+ Removed checks for 1.0 as it is the only codepath now.
+ * platform/graphics/gstreamer/GRefPtrGStreamer.cpp:
+ (WTF::GstElement):
+ (WTF::GstPad):
+ (WTF::GstPadTemplate):
+ (WTF::GstTask):
+ (WTF::GstBus):
+ (WTF::GstElementFactory):
+ (WTF::adoptGRef): Replaced gstObjectIsFloating.
+ (WTF::refGRef): Replaced webkitGstObjectRefSink.
+ (WTF::GstTagList):
+ (WTF::GstSample): Removed checks for 1.0 as it is the only
+ codepath now.
+ * platform/graphics/gstreamer/GRefPtrGStreamer.h: Removed checks
+ for 1.0 as it is the only codepath now.
+ * platform/graphics/gstreamer/GStreamerUtilities.cpp:
+ (WebCore::webkitGstGhostPadFromStaticTemplate):
+ (WebCore::getVideoSizeAndFormatFromCaps):
+ (WebCore::createGstBuffer):
+ (WebCore::createGstBufferForData):
+ (WebCore::getGstBufferDataPointer):
+ (WebCore::mapGstBuffer):
+ (WebCore::unmapGstBuffer): Moved here from GstVersioning and added
+ to WebCore namespace.
+ * platform/graphics/gstreamer/GStreamerUtilities.h:
+ (WebCore::webkitGstCheckVersion): Moved here from GstVersioning
+ and added to WebCore namespace.
+ * platform/graphics/gstreamer/GStreamerVersioning.cpp: Removed.
+ * platform/graphics/gstreamer/GStreamerVersioning.h: Removed.
+ * platform/graphics/gstreamer/ImageGStreamer.h: Removed checks for
+ 1.0 as it is the only codepath now.
+ * platform/graphics/gstreamer/ImageGStreamerCairo.cpp:
+ (ImageGStreamer::ImageGStreamer): Removed 0.10 codepath.
+ (ImageGStreamer::~ImageGStreamer): Removed checks for 1.0 as it is
+ the only codepath now.
+ * platform/graphics/gstreamer/InbandMetadataTextTrackPrivateGStreamer.h:
+ * platform/graphics/gstreamer/InbandTextTrackPrivateGStreamer.cpp:
+ * platform/graphics/gstreamer/InbandTextTrackPrivateGStreamer.h:
+ Removed checks for 1.0 as it is the only codepath now.
+ * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
+ (WebCore::setAudioStreamPropertiesCallback): Removed 0.10 codepath.
+ (WebCore::mediaPlayerPrivateTextChangedCallback): Removed checks
+ for 1.0 as it is the only codepath now.
+ (WebCore::MediaPlayerPrivateGStreamer::isAvailable): Replaced
+ gPlaybinName.
+ (WebCore::MediaPlayerPrivateGStreamer::~MediaPlayerPrivateGStreamer):
+ Removed checks for 1.0 and replaced webkitGstPipelineGetBus.
+ (WebCore::MediaPlayerPrivateGStreamer::duration): Removed 0.10
+ codepath.
+ (WebCore::MediaPlayerPrivateGStreamer::notifyPlayerOfVideo):
+ (WebCore::MediaPlayerPrivateGStreamer::notifyPlayerOfAudio):
+ (WebCore::MediaPlayerPrivateGStreamer::textChanged):
+ Removed checks for 1.0 as it is the only codepath now.
+ (WebCore::MediaPlayerPrivateGStreamer::buffered): Replaced
+ gPercentMax.
+ (WebCore::MediaPlayerPrivateGStreamer::handleMessage): Removed
+ 0.10 codepath.
+ (WebCore::MediaPlayerPrivateGStreamer::processTableOfContents):
+ Removed checks for 1.0 as it is the only codepath now.
+ (WebCore::MediaPlayerPrivateGStreamer::totalBytes): Removed 0.10
+ codepath.
+ (WebCore::MediaPlayerPrivateGStreamer::createGSTPlayBin): Replaced
+ gPlaybinName and webkitGstPipelineGetBus and removed checks for
+ 1.0.
+ * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:
+ Removed checks for 1.0 as it is the only codepath now.
+ * platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:
+ (WebCore::MediaPlayerPrivateGStreamerBase::naturalSize):
+ (WebCore::MediaPlayerPrivateGStreamerBase::updateTexture):
+ (WebCore::MediaPlayerPrivateGStreamerBase::paint): Removed 0.10
+ codepath.
+ * platform/graphics/gstreamer/TextCombinerGStreamer.cpp:
+ * platform/graphics/gstreamer/TextCombinerGStreamer.h:
+ * platform/graphics/gstreamer/TextSinkGStreamer.cpp:
+ * platform/graphics/gstreamer/TextSinkGStreamer.h:
+ * platform/graphics/gstreamer/TrackPrivateBaseGStreamer.cpp:
+ * platform/graphics/gstreamer/TrackPrivateBaseGStreamer.h: Removed
+ checks for 1.0 as it is the only codepath now.
+ * platform/graphics/gstreamer/VideoSinkGStreamer.cpp:
+ (webkitVideoSinkRender): Removed 0.10 codepath and added WebCore
+ as createGstBuffer namespace.
+ (webkitVideoSinkSetCaps): Removed 0.10 codepath.
+ (webkitVideoSinkProposeAllocation): Removed checks for 1.0 as it
+ is the only codepath now.
+ (webkitVideoSinkMarshalVoidAndMiniObject): Removed as it was 0.10.
+ (webkit_video_sink_class_init): Removed 0.10 codepath and replaced
+ setGstElementClassMetadata.
+ * platform/graphics/gstreamer/VideoTrackPrivateGStreamer.cpp:
+ * platform/graphics/gstreamer/VideoTrackPrivateGStreamer.h:
+ Removed checks for 1.0 as it is the only codepath now.
+ * platform/graphics/gstreamer/WebKitMediaSourceGStreamer.cpp:
+ (webkit_media_src_class_init): Replaced
+ setGstElementClassMetadata.
+ (webKitMediaSrcAddSrc): Added WebCore namespace to
+ webkitGstGhostPadFromStaticTemplate.
+ (MediaSourceClientGstreamer::didReceiveData): Added WebCore
+ namespace to createGstBufferForData.
+ * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
+ Removed 0.10 codepath.
+ (webKitWebSrcQuery): Removed as it was 0.10 only.
+ (void webkit_web_src_class_init): Replaced setGstElementClassMetadata.
+ (webkit_web_src_init): Removed haveAppSrc27 private attribute and
+ 0.10 codepath.
+ (webKitWebSrcStop): Removed checks for 1.0 as it is the only
+ codepath now.
+ (webKitWebSrcSetProperty):
+ (webKitWebSrcUriGetType):
+ (webKitWebSrcGetProtocols):
+ (webKitWebSrcGetUri):
+ (webKitWebSrcSetUri): Removed 0.10 codepath.
+ (StreamingClient::createReadBuffer): Removed checks for 1.0 and
+ replaced getGstBufferSize.
+ (StreamingClient::handleResponseReceived): Removed 0.10 codepath
+ and replaced notifyGstTagsOnPad.
+ (StreamingClient::handleDataReceived): Removed 0.10 codepath and
+ replaced setGstBufferSize and gst_buffer_get_size.
+
</ins><span class="cx"> 2013-11-22 Jer Noble <jer.noble@apple.com>
</span><span class="cx">
</span><span class="cx"> [Mac] Can't drag full-screen video to another monitor
</span></span></pre></div>
<a id="trunkSourceWebCoreGNUmakefilelistam"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/GNUmakefile.list.am (159729 => 159730)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/GNUmakefile.list.am        2013-11-23 11:05:53 UTC (rev 159729)
+++ trunk/Source/WebCore/GNUmakefile.list.am        2013-11-23 14:35:26 UTC (rev 159730)
</span><span class="lines">@@ -6327,8 +6327,6 @@
</span><span class="cx">         Source/WebCore/platform/graphics/gstreamer/GRefPtrGStreamer.h \
</span><span class="cx">         Source/WebCore/platform/graphics/gstreamer/GStreamerUtilities.cpp \
</span><span class="cx">         Source/WebCore/platform/graphics/gstreamer/GStreamerUtilities.h \
</span><del>-        Source/WebCore/platform/graphics/gstreamer/GStreamerVersioning.cpp \
-        Source/WebCore/platform/graphics/gstreamer/GStreamerVersioning.h \
</del><span class="cx">         Source/WebCore/platform/graphics/gstreamer/InbandTextTrackPrivateGStreamer.cpp \
</span><span class="cx">         Source/WebCore/platform/graphics/gstreamer/InbandTextTrackPrivateGStreamer.h \
</span><span class="cx">         Source/WebCore/platform/graphics/gstreamer/TextCombinerGStreamer.cpp \
</span></span></pre></div>
<a id="trunkSourceWebCorePlatformEflcmake"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/PlatformEfl.cmake (159729 => 159730)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/PlatformEfl.cmake        2013-11-23 11:05:53 UTC (rev 159729)
+++ trunk/Source/WebCore/PlatformEfl.cmake        2013-11-23 14:35:26 UTC (rev 159730)
</span><span class="lines">@@ -126,7 +126,6 @@
</span><span class="cx"> platform/graphics/gstreamer/AudioTrackPrivateGStreamer.cpp
</span><span class="cx"> platform/graphics/gstreamer/GRefPtrGStreamer.cpp
</span><span class="cx"> platform/graphics/gstreamer/GStreamerUtilities.cpp
</span><del>- platform/graphics/gstreamer/GStreamerVersioning.cpp
</del><span class="cx"> platform/graphics/gstreamer/ImageGStreamerCairo.cpp
</span><span class="cx"> platform/graphics/gstreamer/InbandTextTrackPrivateGStreamer.cpp
</span><span class="cx"> platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp
</span></span></pre></div>
<a id="trunkSourceWebCorePlatformGTKcmake"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/PlatformGTK.cmake (159729 => 159730)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/PlatformGTK.cmake        2013-11-23 11:05:53 UTC (rev 159729)
+++ trunk/Source/WebCore/PlatformGTK.cmake        2013-11-23 14:35:26 UTC (rev 159730)
</span><span class="lines">@@ -99,7 +99,6 @@
</span><span class="cx">
</span><span class="cx"> platform/graphics/gstreamer/GRefPtrGStreamer.cpp
</span><span class="cx"> platform/graphics/gstreamer/GStreamerUtilities.cpp
</span><del>- platform/graphics/gstreamer/GStreamerVersioning.cpp
</del><span class="cx"> platform/graphics/gstreamer/ImageGStreamerCairo.cpp
</span><span class="cx"> platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp
</span><span class="cx"> platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp
</span></span></pre></div>
<a id="trunkSourceWebCoreWebCorevcxprojWebCorevcxproj"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/WebCore.vcxproj/WebCore.vcxproj (159729 => 159730)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/WebCore.vcxproj/WebCore.vcxproj        2013-11-23 11:05:53 UTC (rev 159729)
+++ trunk/Source/WebCore/WebCore.vcxproj/WebCore.vcxproj        2013-11-23 14:35:26 UTC (rev 159730)
</span><span class="lines">@@ -7275,16 +7275,6 @@
</span><span class="cx"> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Production|Win32'">true</ExcludedFromBuild>
</span><span class="cx"> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Production|x64'">true</ExcludedFromBuild>
</span><span class="cx"> </ClCompile>
</span><del>- <ClCompile Include="..\platform\graphics\gstreamer\GStreamerVersioning.cpp">
- <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
- <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
- <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='DebugSuffix|Win32'">true</ExcludedFromBuild>
- <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='DebugSuffix|x64'">true</ExcludedFromBuild>
- <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
- <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
- <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Production|Win32'">true</ExcludedFromBuild>
- <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Production|x64'">true</ExcludedFromBuild>
- </ClCompile>
</del><span class="cx"> <ClCompile Include="..\platform\graphics\gstreamer\ImageGStreamerCairo.cpp">
</span><span class="cx"> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
</span><span class="cx"> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
</span><span class="lines">@@ -19041,7 +19031,6 @@
</span><span class="cx"> <ClInclude Include="..\platform\graphics\gstreamer\AudioTrackPrivateGStreamer.h" />
</span><span class="cx"> <ClInclude Include="..\platform\graphics\gstreamer\GRefPtrGStreamer.h" />
</span><span class="cx"> <ClInclude Include="..\platform\graphics\gstreamer\GStreamerUtilities.h" />
</span><del>- <ClInclude Include="..\platform\graphics\gstreamer\GStreamerVersioning.h" />
</del><span class="cx"> <ClInclude Include="..\platform\graphics\gstreamer\ImageGStreamer.h" />
</span><span class="cx"> <ClInclude Include="..\platform\graphics\gstreamer\InbandMetadataTextTrackPrivateGStreamer.h" />
</span><span class="cx"> <ClInclude Include="..\platform\graphics\gstreamer\InbandTextTrackPrivateGStreamer.h" />
</span></span></pre></div>
<a id="trunkSourceWebCoreWebCorevcxprojWebCorevcxprojfilters"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/WebCore.vcxproj/WebCore.vcxproj.filters (159729 => 159730)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/WebCore.vcxproj/WebCore.vcxproj.filters        2013-11-23 11:05:53 UTC (rev 159729)
+++ trunk/Source/WebCore/WebCore.vcxproj/WebCore.vcxproj.filters        2013-11-23 14:35:26 UTC (rev 159730)
</span><span class="lines">@@ -7072,9 +7072,6 @@
</span><span class="cx"> <ClCompile Include="..\platform\graphics\gstreamer\GStreamerUtilities.cpp">
</span><span class="cx"> <Filter>platform\graphics\gstreamer</Filter>
</span><span class="cx"> </ClCompile>
</span><del>- <ClCompile Include="..\platform\graphics\gstreamer\GStreamerVersioning.cpp">
- <Filter>platform\graphics\gstreamer</Filter>
- </ClCompile>
</del><span class="cx"> <ClCompile Include="..\platform\graphics\gstreamer\ImageGStreamerCairo.cpp">
</span><span class="cx"> <Filter>platform\graphics\gstreamer</Filter>
</span><span class="cx"> </ClCompile>
</span><span class="lines">@@ -14906,9 +14903,6 @@
</span><span class="cx"> <ClInclude Include="..\platform\graphics\gstreamer\GStreamerUtilities.h">
</span><span class="cx"> <Filter>platform\graphics\gstreamer</Filter>
</span><span class="cx"> </ClInclude>
</span><del>- <ClInclude Include="..\platform\graphics\gstreamer\GStreamerVersioning.h">
- <Filter>platform\graphics\gstreamer</Filter>
- </ClInclude>
</del><span class="cx"> <ClInclude Include="..\platform\graphics\gstreamer\ImageGStreamer.h">
</span><span class="cx"> <Filter>platform\graphics\gstreamer</Filter>
</span><span class="cx"> </ClInclude>
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformaudiogstreamerAudioDestinationGStreamercpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/audio/gstreamer/AudioDestinationGStreamer.cpp (159729 => 159730)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/audio/gstreamer/AudioDestinationGStreamer.cpp        2013-11-23 11:05:53 UTC (rev 159729)
+++ trunk/Source/WebCore/platform/audio/gstreamer/AudioDestinationGStreamer.cpp        2013-11-23 14:35:26 UTC (rev 159730)
</span><span class="lines">@@ -26,7 +26,6 @@
</span><span class="cx"> #include "AudioSourceProvider.h"
</span><span class="cx"> #include <wtf/gobject/GOwnPtr.h>
</span><span class="cx"> #include "GRefPtrGStreamer.h"
</span><del>-#include "GStreamerVersioning.h"
</del><span class="cx"> #include "Logging.h"
</span><span class="cx"> #include "WebKitWebAudioSourceGStreamer.h"
</span><span class="cx"> #include <gst/gst.h>
</span><span class="lines">@@ -70,13 +69,6 @@
</span><span class="cx"> return 0;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-#ifndef GST_API_VERSION_1
-static void onGStreamerWavparsePadAddedCallback(GstElement*, GstPad* pad, AudioDestinationGStreamer* destination)
-{
- destination->finishBuildingPipelineAfterWavParserPadReady(pad);
-}
-#endif
-
</del><span class="cx"> AudioDestinationGStreamer::AudioDestinationGStreamer(AudioIOCallback& callback, float sampleRate)
</span><span class="cx"> : m_callback(callback)
</span><span class="cx"> , m_renderBus(AudioBus::create(2, framesToPull, false))
</span><span class="lines">@@ -84,7 +76,7 @@
</span><span class="cx"> , m_isPlaying(false)
</span><span class="cx"> {
</span><span class="cx"> m_pipeline = gst_pipeline_new("play");
</span><del>- GRefPtr<GstBus> bus = webkitGstPipelineGetBus(GST_PIPELINE(m_pipeline));
</del><ins>+ GRefPtr<GstBus> bus = adoptGRef(gst_pipeline_get_bus(GST_PIPELINE(m_pipeline)));
</ins><span class="cx"> ASSERT(bus);
</span><span class="cx"> gst_bus_add_signal_watch(bus.get());
</span><span class="cx"> g_signal_connect(bus.get(), "message", G_CALLBACK(messageCallback), this);
</span><span class="lines">@@ -102,21 +94,16 @@
</span><span class="cx"> if (!m_wavParserAvailable)
</span><span class="cx"> return;
</span><span class="cx">
</span><del>-#ifndef GST_API_VERSION_1
- g_signal_connect(wavParser, "pad-added", G_CALLBACK(onGStreamerWavparsePadAddedCallback), this);
-#endif
</del><span class="cx"> gst_bin_add_many(GST_BIN(m_pipeline), webkitAudioSrc, wavParser, NULL);
</span><span class="cx"> gst_element_link_pads_full(webkitAudioSrc, "src", wavParser, "sink", GST_PAD_LINK_CHECK_NOTHING);
</span><span class="cx">
</span><del>-#ifdef GST_API_VERSION_1
</del><span class="cx"> GRefPtr<GstPad> srcPad = adoptGRef(gst_element_get_static_pad(wavParser, "src"));
</span><span class="cx"> finishBuildingPipelineAfterWavParserPadReady(srcPad.get());
</span><del>-#endif
</del><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> AudioDestinationGStreamer::~AudioDestinationGStreamer()
</span><span class="cx"> {
</span><del>- GRefPtr<GstBus> bus = webkitGstPipelineGetBus(GST_PIPELINE(m_pipeline));
</del><ins>+ GRefPtr<GstBus> bus = adoptGRef(gst_pipeline_get_bus(GST_PIPELINE(m_pipeline)));
</ins><span class="cx"> ASSERT(bus);
</span><span class="cx"> g_signal_handlers_disconnect_by_func(bus.get(), reinterpret_cast<gpointer>(messageCallback), this);
</span><span class="cx"> gst_bus_remove_signal_watch(bus.get());
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformaudiogstreamerAudioFileReaderGStreamercpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/audio/gstreamer/AudioFileReaderGStreamer.cpp (159729 => 159730)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/audio/gstreamer/AudioFileReaderGStreamer.cpp        2013-11-23 11:05:53 UTC (rev 159729)
+++ trunk/Source/WebCore/platform/audio/gstreamer/AudioFileReaderGStreamer.cpp        2013-11-23 14:35:26 UTC (rev 159730)
</span><span class="lines">@@ -24,7 +24,6 @@
</span><span class="cx"> #include "AudioFileReader.h"
</span><span class="cx">
</span><span class="cx"> #include "AudioBus.h"
</span><del>-#include "GStreamerVersioning.h"
</del><span class="cx">
</span><span class="cx"> #include <gio/gio.h>
</span><span class="cx"> #include <gst/app/gstappsink.h>
</span><span class="lines">@@ -35,18 +34,8 @@
</span><span class="cx"> #include <wtf/gobject/GOwnPtr.h>
</span><span class="cx"> #include <wtf/gobject/GRefPtr.h>
</span><span class="cx">
</span><del>-#ifdef GST_API_VERSION_1
</del><span class="cx"> #include <gst/audio/audio.h>
</span><del>-#else
-#include <gst/audio/multichannel.h>
-#endif
</del><span class="cx">
</span><del>-#ifdef GST_API_VERSION_1
-static const char* gDecodebinName = "decodebin";
-#else
-static const char* gDecodebinName = "decodebin2";
-#endif
-
</del><span class="cx"> namespace WebCore {
</span><span class="cx">
</span><span class="cx"> class AudioFileReader {
</span><span class="lines">@@ -58,11 +47,7 @@
</span><span class="cx">
</span><span class="cx"> PassRefPtr<AudioBus> createBus(float sampleRate, bool mixToMono);
</span><span class="cx">
</span><del>-#ifdef GST_API_VERSION_1
</del><span class="cx"> GstFlowReturn handleSample(GstAppSink*);
</span><del>-#else
- GstFlowReturn handleBuffer(GstAppSink*);
-#endif
</del><span class="cx"> gboolean handleMessage(GstMessage*);
</span><span class="cx"> void handleNewDeinterleavePad(GstPad*);
</span><span class="cx"> void deinterleavePadsConfigured();
</span><span class="lines">@@ -78,11 +63,6 @@
</span><span class="cx"> GstBufferList* m_frontLeftBuffers;
</span><span class="cx"> GstBufferList* m_frontRightBuffers;
</span><span class="cx">
</span><del>-#ifndef GST_API_VERSION_1
- GstBufferListIterator* m_frontLeftBuffersIterator;
- GstBufferListIterator* m_frontRightBuffersIterator;
-#endif
-
</del><span class="cx"> GstElement* m_pipeline;
</span><span class="cx"> unsigned m_channelSize;
</span><span class="cx"> GRefPtr<GstElement> m_decodebin;
</span><span class="lines">@@ -93,7 +73,6 @@
</span><span class="cx">
</span><span class="cx"> static void copyGstreamerBuffersToAudioChannel(GstBufferList* buffers, AudioChannel* audioChannel)
</span><span class="cx"> {
</span><del>-#ifdef GST_API_VERSION_1
</del><span class="cx"> float* destination = audioChannel->mutableData();
</span><span class="cx"> unsigned bufferCount = gst_buffer_list_length(buffers);
</span><span class="cx"> for (unsigned i = 0; i < bufferCount; ++i) {
</span><span class="lines">@@ -103,26 +82,11 @@
</span><span class="cx"> gst_buffer_extract(buffer, 0, destination, bufferSize);
</span><span class="cx"> destination += bufferSize / sizeof(float);
</span><span class="cx"> }
</span><del>-#else
- GstBufferListIterator* iter = gst_buffer_list_iterate(buffers);
- gst_buffer_list_iterator_next_group(iter);
- GstBuffer* buffer = gst_buffer_list_iterator_merge_group(iter);
- if (buffer) {
- memcpy(audioChannel->mutableData(), reinterpret_cast<float*>(GST_BUFFER_DATA(buffer)), GST_BUFFER_SIZE(buffer));
- gst_buffer_unref(buffer);
- }
-
- gst_buffer_list_iterator_free(iter);
-#endif
</del><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> static GstFlowReturn onAppsinkPullRequiredCallback(GstAppSink* sink, gpointer userData)
</span><span class="cx"> {
</span><del>-#ifdef GST_API_VERSION_1
</del><span class="cx"> return static_cast<AudioFileReader*>(userData)->handleSample(sink);
</span><del>-#else
- return static_cast<AudioFileReader*>(userData)->handleBuffer(sink);
-#endif
</del><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> gboolean messageCallback(GstBus*, GstMessage* message, AudioFileReader* reader)
</span><span class="lines">@@ -173,7 +137,7 @@
</span><span class="cx"> AudioFileReader::~AudioFileReader()
</span><span class="cx"> {
</span><span class="cx"> if (m_pipeline) {
</span><del>- GRefPtr<GstBus> bus = webkitGstPipelineGetBus(GST_PIPELINE(m_pipeline));
</del><ins>+ GRefPtr<GstBus> bus = adoptGRef(gst_pipeline_get_bus(GST_PIPELINE(m_pipeline)));
</ins><span class="cx"> ASSERT(bus);
</span><span class="cx"> g_signal_handlers_disconnect_by_func(bus.get(), reinterpret_cast<gpointer>(messageCallback), this);
</span><span class="cx"> gst_bus_remove_signal_watch(bus.get());
</span><span class="lines">@@ -193,15 +157,10 @@
</span><span class="cx"> m_deInterleave.clear();
</span><span class="cx"> }
</span><span class="cx">
</span><del>-#ifndef GST_API_VERSION_1
- gst_buffer_list_iterator_free(m_frontLeftBuffersIterator);
- gst_buffer_list_iterator_free(m_frontRightBuffersIterator);
-#endif
</del><span class="cx"> gst_buffer_list_unref(m_frontLeftBuffers);
</span><span class="cx"> gst_buffer_list_unref(m_frontRightBuffers);
</span><span class="cx"> }
</span><span class="cx">
</span><del>-#ifdef GST_API_VERSION_1
</del><span class="cx"> GstFlowReturn AudioFileReader::handleSample(GstAppSink* sink)
</span><span class="cx"> {
</span><span class="cx"> GstSample* sample = gst_app_sink_pull_sample(sink);
</span><span class="lines">@@ -242,64 +201,7 @@
</span><span class="cx"> return GST_FLOW_OK;
</span><span class="cx">
</span><span class="cx"> }
</span><del>-#endif
</del><span class="cx">
</span><del>-#ifndef GST_API_VERSION_1
-GstFlowReturn AudioFileReader::handleBuffer(GstAppSink* sink)
-{
- GstBuffer* buffer = gst_app_sink_pull_buffer(sink);
- if (!buffer)
- return GST_FLOW_ERROR;
-
- GstCaps* caps = gst_buffer_get_caps(buffer);
- GstStructure* structure = gst_caps_get_structure(caps, 0);
-
- gint channels = 0;
- if (!gst_structure_get_int(structure, "channels", &channels) || !channels) {
- gst_caps_unref(caps);
- gst_buffer_unref(buffer);
- return GST_FLOW_ERROR;
- }
-
- gint sampleRate = 0;
- if (!gst_structure_get_int(structure, "rate", &sampleRate) || !sampleRate) {
- gst_caps_unref(caps);
- gst_buffer_unref(buffer);
- return GST_FLOW_ERROR;
- }
-
- gint width = 0;
- if (!gst_structure_get_int(structure, "width", &width) || !width) {
- gst_caps_unref(caps);
- gst_buffer_unref(buffer);
- return GST_FLOW_ERROR;
- }
-
- GstClockTime duration = (static_cast<guint64>(GST_BUFFER_SIZE(buffer)) * 8 * GST_SECOND) / (sampleRate * channels * width);
- int frames = GST_CLOCK_TIME_TO_FRAMES(duration, sampleRate);
-
- // Check the first audio channel. The buffer is supposed to store
- // data of a single channel anyway.
- GstAudioChannelPosition* positions = gst_audio_get_channel_positions(structure);
- switch (positions[0]) {
- case GST_AUDIO_CHANNEL_POSITION_FRONT_LEFT:
- gst_buffer_list_iterator_add(m_frontLeftBuffersIterator, buffer);
- m_channelSize += frames;
- break;
- case GST_AUDIO_CHANNEL_POSITION_FRONT_RIGHT:
- gst_buffer_list_iterator_add(m_frontRightBuffersIterator, buffer);
- break;
- default:
- gst_buffer_unref(buffer);
- break;
- }
-
- g_free(positions);
- gst_caps_unref(caps);
- return GST_FLOW_OK;
-}
-#endif
-
</del><span class="cx"> gboolean AudioFileReader::handleMessage(GstMessage* message)
</span><span class="cx"> {
</span><span class="cx"> GOwnPtr<GError> error;
</span><span class="lines">@@ -337,12 +239,7 @@
</span><span class="cx"> GstAppSinkCallbacks callbacks;
</span><span class="cx"> callbacks.eos = 0;
</span><span class="cx"> callbacks.new_preroll = 0;
</span><del>-#ifdef GST_API_VERSION_1
</del><span class="cx"> callbacks.new_sample = onAppsinkPullRequiredCallback;
</span><del>-#else
- callbacks.new_buffer_list = 0;
- callbacks.new_buffer = onAppsinkPullRequiredCallback;
-#endif
</del><span class="cx"> gst_app_sink_set_callbacks(GST_APP_SINK(sink), &callbacks, this, 0);
</span><span class="cx">
</span><span class="cx"> g_object_set(sink, "sync", FALSE, NULL);
</span><span class="lines">@@ -380,7 +277,10 @@
</span><span class="cx"> g_signal_connect(m_deInterleave.get(), "pad-added", G_CALLBACK(onGStreamerDeinterleavePadAddedCallback), this);
</span><span class="cx"> g_signal_connect(m_deInterleave.get(), "no-more-pads", G_CALLBACK(onGStreamerDeinterleaveReadyCallback), this);
</span><span class="cx">
</span><del>- GstCaps* caps = getGstAudioCaps(2, m_sampleRate);
</del><ins>+ GstCaps* caps = gst_caps_new_simple("audio/x-raw", "rate", G_TYPE_INT, static_cast<int>(m_sampleRate),
+ "channels", G_TYPE_INT, 2,
+ "format", G_TYPE_STRING, gst_audio_format_to_string(GST_AUDIO_FORMAT_F32),
+ "layout", G_TYPE_STRING, "interleaved", nullptr);
</ins><span class="cx"> g_object_set(capsFilter, "caps", caps, NULL);
</span><span class="cx"> gst_caps_unref(caps);
</span><span class="cx">
</span><span class="lines">@@ -406,7 +306,7 @@
</span><span class="cx"> // A deinterleave element is added once a src pad becomes available in decodebin.
</span><span class="cx"> m_pipeline = gst_pipeline_new(0);
</span><span class="cx">
</span><del>- GRefPtr<GstBus> bus = webkitGstPipelineGetBus(GST_PIPELINE(m_pipeline));
</del><ins>+ GRefPtr<GstBus> bus = adoptGRef(gst_pipeline_get_bus(GST_PIPELINE(m_pipeline)));
</ins><span class="cx"> ASSERT(bus);
</span><span class="cx"> gst_bus_add_signal_watch(bus.get());
</span><span class="cx"> g_signal_connect(bus.get(), "message", G_CALLBACK(messageCallback), this);
</span><span class="lines">@@ -422,7 +322,7 @@
</span><span class="cx"> g_object_set(source, "location", m_filePath, NULL);
</span><span class="cx"> }
</span><span class="cx">
</span><del>- m_decodebin = gst_element_factory_make(gDecodebinName, "decodebin");
</del><ins>+ m_decodebin = gst_element_factory_make("decodebin", "decodebin");
</ins><span class="cx"> g_signal_connect(m_decodebin.get(), "pad-added", G_CALLBACK(onGStreamerDecodebinPadAddedCallback), this);
</span><span class="cx">
</span><span class="cx"> gst_bin_add_many(GST_BIN(m_pipeline), source, m_decodebin.get(), NULL);
</span><span class="lines">@@ -437,14 +337,6 @@
</span><span class="cx"> m_frontLeftBuffers = gst_buffer_list_new();
</span><span class="cx"> m_frontRightBuffers = gst_buffer_list_new();
</span><span class="cx">
</span><del>-#ifndef GST_API_VERSION_1
- m_frontLeftBuffersIterator = gst_buffer_list_iterate(m_frontLeftBuffers);
- gst_buffer_list_iterator_add_group(m_frontLeftBuffersIterator);
-
- m_frontRightBuffersIterator = gst_buffer_list_iterate(m_frontRightBuffers);
- gst_buffer_list_iterator_add_group(m_frontRightBuffersIterator);
-#endif
-
</del><span class="cx"> GRefPtr<GMainContext> context = adoptGRef(g_main_context_new());
</span><span class="cx"> g_main_context_push_thread_default(context.get());
</span><span class="cx"> m_loop = adoptGRef(g_main_loop_new(context.get(), FALSE));
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformaudiogstreamerWebKitWebAudioSourceGStreamercpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/audio/gstreamer/WebKitWebAudioSourceGStreamer.cpp (159729 => 159730)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/audio/gstreamer/WebKitWebAudioSourceGStreamer.cpp        2013-11-23 11:05:53 UTC (rev 159729)
+++ trunk/Source/WebCore/platform/audio/gstreamer/WebKitWebAudioSourceGStreamer.cpp        2013-11-23 14:35:26 UTC (rev 159730)
</span><span class="lines">@@ -26,19 +26,10 @@
</span><span class="cx"> #include "AudioIOCallback.h"
</span><span class="cx"> #include <wtf/gobject/GOwnPtr.h>
</span><span class="cx"> #include "GRefPtrGStreamer.h"
</span><del>-#include "GStreamerVersioning.h"
-#ifdef GST_API_VERSION_1
</del><ins>+#include "GStreamerUtilities.h"
</ins><span class="cx"> #include <gst/audio/audio.h>
</span><del>-#else
-#include <gst/audio/multichannel.h>
-#endif
</del><span class="cx"> #include <gst/pbutils/pbutils.h>
</span><span class="cx">
</span><del>-// GStaticRecMutex is deprecated in Glib, but required in GStreamer 0.10
-#if (COMPILER(GCC) && GCC_VERSION_AT_LEAST(4, 6, 0) && !defined(GST_API_VERSION_1))
-#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
-#endif
-
</del><span class="cx"> using namespace WebCore;
</span><span class="cx">
</span><span class="cx"> typedef struct _WebKitWebAudioSrcClass WebKitWebAudioSrcClass;
</span><span class="lines">@@ -65,11 +56,7 @@
</span><span class="cx"> GRefPtr<GstElement> wavEncoder;
</span><span class="cx">
</span><span class="cx"> GRefPtr<GstTask> task;
</span><del>-#ifdef GST_API_VERSION_1
</del><span class="cx"> GRecMutex mutex;
</span><del>-#else
- GStaticRecMutex mutex;
-#endif
</del><span class="cx">
</span><span class="cx"> GSList* pads; // List of queue sink pads. One queue for each planar audio channel.
</span><span class="cx"> GstPad* sourcePad; // src pad of the element, interleaved wav data is pushed to it.
</span><span class="lines">@@ -99,17 +86,10 @@
</span><span class="cx">
</span><span class="cx"> static GstCaps* getGStreamerMonoAudioCaps(float sampleRate)
</span><span class="cx"> {
</span><del>-#ifdef GST_API_VERSION_1
</del><span class="cx"> return gst_caps_new_simple("audio/x-raw", "rate", G_TYPE_INT, static_cast<int>(sampleRate),
</span><span class="cx"> "channels", G_TYPE_INT, 1,
</span><span class="cx"> "format", G_TYPE_STRING, gst_audio_format_to_string(GST_AUDIO_FORMAT_F32),
</span><span class="cx"> "layout", G_TYPE_STRING, "non-interleaved", NULL);
</span><del>-#else
- return gst_caps_new_simple("audio/x-raw-float", "rate", G_TYPE_INT, static_cast<int>(sampleRate),
- "channels", G_TYPE_INT, 1,
- "endianness", G_TYPE_INT, G_BYTE_ORDER,
- "width", G_TYPE_INT, 32, NULL);
-#endif
</del><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> static GstAudioChannelPosition webKitWebAudioGStreamerChannelPosition(int channelIndex)
</span><span class="lines">@@ -127,11 +107,7 @@
</span><span class="cx"> position = GST_AUDIO_CHANNEL_POSITION_FRONT_CENTER;
</span><span class="cx"> break;
</span><span class="cx"> case AudioBus::ChannelLFE:
</span><del>-#ifdef GST_API_VERSION_1
</del><span class="cx"> position = GST_AUDIO_CHANNEL_POSITION_LFE1;
</span><del>-#else
- position = GST_AUDIO_CHANNEL_POSITION_LFE;
-#endif
</del><span class="cx"> break;
</span><span class="cx"> case AudioBus::ChannelSurroundLeft:
</span><span class="cx"> position = GST_AUDIO_CHANNEL_POSITION_REAR_LEFT;
</span><span class="lines">@@ -158,7 +134,7 @@
</span><span class="cx"> GstElementClass* elementClass = GST_ELEMENT_CLASS(webKitWebAudioSrcClass);
</span><span class="cx">
</span><span class="cx"> gst_element_class_add_pad_template(elementClass, gst_static_pad_template_get(&srcTemplate));
</span><del>- setGstElementClassMetadata(elementClass, "WebKit WebAudio source element", "Source", "Handles WebAudio data from WebCore", "Philippe Normand <pnormand@igalia.com>");
</del><ins>+ gst_element_class_set_metadata(elementClass, "WebKit WebAudio source element", "Source", "Handles WebAudio data from WebCore", "Philippe Normand <pnormand@igalia.com>");
</ins><span class="cx">
</span><span class="cx"> objectClass->constructed = webKitWebAudioSrcConstructed;
</span><span class="cx"> objectClass->finalize = webKitWebAudioSrcFinalize;
</span><span class="lines">@@ -205,13 +181,8 @@
</span><span class="cx"> priv->provider = 0;
</span><span class="cx"> priv->bus = 0;
</span><span class="cx">
</span><del>-#ifdef GST_API_VERSION_1
</del><span class="cx"> g_rec_mutex_init(&priv->mutex);
</span><span class="cx"> priv->task = gst_task_new(reinterpret_cast<GstTaskFunction>(webKitWebAudioSrcLoop), src, 0);
</span><del>-#else
- g_static_rec_mutex_init(&priv->mutex);
- priv->task = gst_task_create(reinterpret_cast<GstTaskFunction>(webKitWebAudioSrcLoop), src);
-#endif
</del><span class="cx">
</span><span class="cx"> gst_task_set_lock(priv->task.get(), &priv->mutex);
</span><span class="cx"> }
</span><span class="lines">@@ -250,15 +221,11 @@
</span><span class="cx">
</span><span class="cx"> GRefPtr<GstCaps> monoCaps = adoptGRef(getGStreamerMonoAudioCaps(priv->sampleRate));
</span><span class="cx">
</span><del>-#ifdef GST_API_VERSION_1
</del><span class="cx"> GstAudioInfo info;
</span><span class="cx"> gst_audio_info_from_caps(&info, monoCaps.get());
</span><span class="cx"> GST_AUDIO_INFO_POSITION(&info, 0) = webKitWebAudioGStreamerChannelPosition(channelIndex);
</span><span class="cx"> GRefPtr<GstCaps> caps = adoptGRef(gst_audio_info_to_caps(&info));
</span><span class="cx"> g_object_set(capsfilter, "caps", caps.get(), NULL);
</span><del>-#else
- g_object_set(capsfilter, "caps", monoCaps.get(), NULL);
-#endif
</del><span class="cx">
</span><span class="cx"> // Configure the queue for minimal latency.
</span><span class="cx"> g_object_set(queue, "max-size-buffers", static_cast<guint>(1), NULL);
</span><span class="lines">@@ -284,11 +251,7 @@
</span><span class="cx"> WebKitWebAudioSrc* src = WEBKIT_WEB_AUDIO_SRC(object);
</span><span class="cx"> WebKitWebAudioSourcePrivate* priv = src->priv;
</span><span class="cx">
</span><del>-#ifdef GST_API_VERSION_1
</del><span class="cx"> g_rec_mutex_clear(&priv->mutex);
</span><del>-#else
- g_static_rec_mutex_free(&priv->mutex);
-#endif
</del><span class="cx">
</span><span class="cx"> g_slist_free_full(priv->pads, reinterpret_cast<GDestroyNotify>(gst_object_unref));
</span><span class="cx">
</span><span class="lines">@@ -360,14 +323,10 @@
</span><span class="cx"> GstBuffer* channelBuffer = gst_buffer_new_and_alloc(bufferSize);
</span><span class="cx"> ASSERT(channelBuffer);
</span><span class="cx"> channelBufferList = g_slist_prepend(channelBufferList, channelBuffer);
</span><del>-#ifdef GST_API_VERSION_1
</del><span class="cx"> GstMapInfo info;
</span><span class="cx"> gst_buffer_map(channelBuffer, &info, GST_MAP_READ);
</span><span class="cx"> priv->bus->setChannelMemory(i, reinterpret_cast<float*>(info.data), priv->framesToPull);
</span><span class="cx"> gst_buffer_unmap(channelBuffer, &info);
</span><del>-#else
- priv->bus->setChannelMemory(i, reinterpret_cast<float*>(GST_BUFFER_DATA(channelBuffer)), priv->framesToPull);
-#endif
</del><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> // FIXME: Add support for local/live audio input.
</span><span class="lines">@@ -379,14 +338,6 @@
</span><span class="cx"> GstPad* pad = static_cast<GstPad*>(padsIt->data);
</span><span class="cx"> GstBuffer* channelBuffer = static_cast<GstBuffer*>(buffersIt->data);
</span><span class="cx">
</span><del>-#ifndef GST_API_VERSION_1
- GRefPtr<GstCaps> monoCaps = adoptGRef(getGStreamerMonoAudioCaps(priv->sampleRate));
- GstStructure* structure = gst_caps_get_structure(monoCaps.get(), 0);
- GstAudioChannelPosition channelPosition = webKitWebAudioGStreamerChannelPosition(i);
- gst_audio_set_channel_positions(structure, &channelPosition);
- gst_buffer_set_caps(channelBuffer, monoCaps.get());
-#endif
-
</del><span class="cx"> GstFlowReturn ret = gst_pad_chain(pad, channelBuffer);
</span><span class="cx"> if (ret != GST_FLOW_OK)
</span><span class="cx"> GST_ELEMENT_ERROR(src, CORE, PAD, ("Internal WebAudioSrc error"), ("Failed to push buffer on %s:%s", GST_DEBUG_PAD_NAME(pad)));
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicsgstreamerAudioTrackPrivateGStreamercpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/gstreamer/AudioTrackPrivateGStreamer.cpp (159729 => 159730)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/gstreamer/AudioTrackPrivateGStreamer.cpp        2013-11-23 11:05:53 UTC (rev 159729)
+++ trunk/Source/WebCore/platform/graphics/gstreamer/AudioTrackPrivateGStreamer.cpp        2013-11-23 14:35:26 UTC (rev 159730)
</span><span class="lines">@@ -25,7 +25,7 @@
</span><span class="cx">
</span><span class="cx"> #include "config.h"
</span><span class="cx">
</span><del>-#if ENABLE(VIDEO) && USE(GSTREAMER) && ENABLE(VIDEO_TRACK) && defined(GST_API_VERSION_1)
</del><ins>+#if ENABLE(VIDEO) && USE(GSTREAMER) && ENABLE(VIDEO_TRACK)
</ins><span class="cx">
</span><span class="cx"> #include "AudioTrackPrivateGStreamer.h"
</span><span class="cx">
</span><span class="lines">@@ -58,4 +58,4 @@
</span><span class="cx">
</span><span class="cx"> } // namespace WebCore
</span><span class="cx">
</span><del>-#endif // ENABLE(VIDEO) && USE(GSTREAMER) && ENABLE(VIDEO_TRACK) && defined(GST_API_VERSION_1)
</del><ins>+#endif // ENABLE(VIDEO) && USE(GSTREAMER) && ENABLE(VIDEO_TRACK)
</ins></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicsgstreamerAudioTrackPrivateGStreamerh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/gstreamer/AudioTrackPrivateGStreamer.h (159729 => 159730)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/gstreamer/AudioTrackPrivateGStreamer.h        2013-11-23 11:05:53 UTC (rev 159729)
+++ trunk/Source/WebCore/platform/graphics/gstreamer/AudioTrackPrivateGStreamer.h        2013-11-23 14:35:26 UTC (rev 159730)
</span><span class="lines">@@ -26,7 +26,7 @@
</span><span class="cx"> #ifndef AudioTrackPrivateGStreamer_h
</span><span class="cx"> #define AudioTrackPrivateGStreamer_h
</span><span class="cx">
</span><del>-#if ENABLE(VIDEO) && USE(GSTREAMER) && ENABLE(VIDEO_TRACK) && defined(GST_API_VERSION_1)
</del><ins>+#if ENABLE(VIDEO) && USE(GSTREAMER) && ENABLE(VIDEO_TRACK)
</ins><span class="cx">
</span><span class="cx"> #include "AudioTrackPrivate.h"
</span><span class="cx"> #include "GRefPtrGStreamer.h"
</span><span class="lines">@@ -59,6 +59,6 @@
</span><span class="cx">
</span><span class="cx"> } // namespace WebCore
</span><span class="cx">
</span><del>-#endif // ENABLE(VIDEO) && USE(GSTREAMER) && ENABLE(VIDEO_TRACK) && defined(GST_API_VERSION_1)
</del><ins>+#endif // ENABLE(VIDEO) && USE(GSTREAMER) && ENABLE(VIDEO_TRACK)
</ins><span class="cx">
</span><span class="cx"> #endif // AudioTrackPrivateGStreamer_h
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicsgstreamerGRefPtrGStreamercpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/gstreamer/GRefPtrGStreamer.cpp (159729 => 159730)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/gstreamer/GRefPtrGStreamer.cpp        2013-11-23 11:05:53 UTC (rev 159729)
+++ trunk/Source/WebCore/platform/graphics/gstreamer/GRefPtrGStreamer.cpp        2013-11-23 14:35:26 UTC (rev 159730)
</span><span class="lines">@@ -19,7 +19,6 @@
</span><span class="cx">
</span><span class="cx"> #include "config.h"
</span><span class="cx"> #include "GRefPtrGStreamer.h"
</span><del>-#include "GStreamerVersioning.h"
</del><span class="cx">
</span><span class="cx"> #if USE(GSTREAMER)
</span><span class="cx"> #include <gst/gst.h>
</span><span class="lines">@@ -28,14 +27,14 @@
</span><span class="cx">
</span><span class="cx"> template <> GRefPtr<GstElement> adoptGRef(GstElement* ptr)
</span><span class="cx"> {
</span><del>- ASSERT(!ptr || !gstObjectIsFloating(GST_OBJECT(ptr)));
</del><ins>+ ASSERT(!ptr || !g_object_is_floating(G_OBJECT(ptr)));
</ins><span class="cx"> return GRefPtr<GstElement>(ptr, GRefPtrAdopt);
</span><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> template <> GstElement* refGPtr<GstElement>(GstElement* ptr)
</span><span class="cx"> {
</span><span class="cx"> if (ptr)
</span><del>- webkitGstObjectRefSink(GST_OBJECT(ptr));
</del><ins>+ gst_object_ref_sink(GST_OBJECT(ptr));
</ins><span class="cx">
</span><span class="cx"> return ptr;
</span><span class="cx"> }
</span><span class="lines">@@ -48,14 +47,14 @@
</span><span class="cx">
</span><span class="cx"> template <> GRefPtr<GstPad> adoptGRef(GstPad* ptr)
</span><span class="cx"> {
</span><del>- ASSERT(!ptr || !gstObjectIsFloating(GST_OBJECT(ptr)));
</del><ins>+ ASSERT(!ptr || !g_object_is_floating(G_OBJECT(ptr)));
</ins><span class="cx"> return GRefPtr<GstPad>(ptr, GRefPtrAdopt);
</span><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> template <> GstPad* refGPtr<GstPad>(GstPad* ptr)
</span><span class="cx"> {
</span><span class="cx"> if (ptr)
</span><del>- webkitGstObjectRefSink(GST_OBJECT(ptr));
</del><ins>+ gst_object_ref_sink(GST_OBJECT(ptr));
</ins><span class="cx">
</span><span class="cx"> return ptr;
</span><span class="cx"> }
</span><span class="lines">@@ -68,14 +67,14 @@
</span><span class="cx">
</span><span class="cx"> template <> GRefPtr<GstPadTemplate> adoptGRef(GstPadTemplate* ptr)
</span><span class="cx"> {
</span><del>- ASSERT(!ptr || !gstObjectIsFloating(GST_OBJECT(ptr)));
</del><ins>+ ASSERT(!ptr || !g_object_is_floating(G_OBJECT(ptr)));
</ins><span class="cx"> return GRefPtr<GstPadTemplate>(ptr, GRefPtrAdopt);
</span><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> template <> GstPadTemplate* refGPtr<GstPadTemplate>(GstPadTemplate* ptr)
</span><span class="cx"> {
</span><span class="cx"> if (ptr)
</span><del>- webkitGstObjectRefSink(GST_OBJECT(ptr));
</del><ins>+ gst_object_ref_sink(GST_OBJECT(ptr));
</ins><span class="cx">
</span><span class="cx"> return ptr;
</span><span class="cx"> }
</span><span class="lines">@@ -107,14 +106,14 @@
</span><span class="cx">
</span><span class="cx"> template <> GRefPtr<GstTask> adoptGRef(GstTask* ptr)
</span><span class="cx"> {
</span><del>- ASSERT(!gstObjectIsFloating(GST_OBJECT(ptr)));
</del><ins>+ ASSERT(!g_object_is_floating(G_OBJECT(ptr)));
</ins><span class="cx"> return GRefPtr<GstTask>(ptr, GRefPtrAdopt);
</span><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> template <> GstTask* refGPtr<GstTask>(GstTask* ptr)
</span><span class="cx"> {
</span><span class="cx"> if (ptr)
</span><del>- webkitGstObjectRefSink(GST_OBJECT(ptr));
</del><ins>+ gst_object_ref_sink(GST_OBJECT(ptr));
</ins><span class="cx">
</span><span class="cx"> return ptr;
</span><span class="cx"> }
</span><span class="lines">@@ -127,14 +126,14 @@
</span><span class="cx">
</span><span class="cx"> template <> GRefPtr<GstBus> adoptGRef(GstBus* ptr)
</span><span class="cx"> {
</span><del>- ASSERT(!gstObjectIsFloating(GST_OBJECT(ptr)));
</del><ins>+ ASSERT(!g_object_is_floating(G_OBJECT(ptr)));
</ins><span class="cx"> return GRefPtr<GstBus>(ptr, GRefPtrAdopt);
</span><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> template <> GstBus* refGPtr<GstBus>(GstBus* ptr)
</span><span class="cx"> {
</span><span class="cx"> if (ptr)
</span><del>- webkitGstObjectRefSink(GST_OBJECT(ptr));
</del><ins>+ gst_object_ref_sink(GST_OBJECT(ptr));
</ins><span class="cx">
</span><span class="cx"> return ptr;
</span><span class="cx"> }
</span><span class="lines">@@ -147,14 +146,14 @@
</span><span class="cx">
</span><span class="cx"> template <> GRefPtr<GstElementFactory> adoptGRef(GstElementFactory* ptr)
</span><span class="cx"> {
</span><del>- ASSERT(!gstObjectIsFloating(GST_OBJECT(ptr)));
</del><ins>+ ASSERT(!g_object_is_floating(G_OBJECT(ptr)));
</ins><span class="cx"> return GRefPtr<GstElementFactory>(ptr, GRefPtrAdopt);
</span><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> template <> GstElementFactory* refGPtr<GstElementFactory>(GstElementFactory* ptr)
</span><span class="cx"> {
</span><span class="cx"> if (ptr)
</span><del>- webkitGstObjectRefSink(GST_OBJECT(ptr));
</del><ins>+ gst_object_ref_sink(GST_OBJECT(ptr));
</ins><span class="cx">
</span><span class="cx"> return ptr;
</span><span class="cx"> }
</span><span class="lines">@@ -184,7 +183,6 @@
</span><span class="cx"> gst_buffer_unref(ptr);
</span><span class="cx"> }
</span><span class="cx">
</span><del>-#ifdef GST_API_VERSION_1
</del><span class="cx"> template<> GRefPtr<GstSample> adoptGRef(GstSample* ptr)
</span><span class="cx"> {
</span><span class="cx"> return GRefPtr<GstSample>(ptr, GRefPtrAdopt);
</span><span class="lines">@@ -222,7 +220,6 @@
</span><span class="cx"> if (ptr)
</span><span class="cx"> gst_tag_list_unref(ptr);
</span><span class="cx"> }
</span><del>-#endif
</del><span class="cx">
</span><span class="cx"> template<> GRefPtr<GstEvent> adoptGRef(GstEvent* ptr)
</span><span class="cx"> {
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicsgstreamerGRefPtrGStreamerh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/gstreamer/GRefPtrGStreamer.h (159729 => 159730)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/gstreamer/GRefPtrGStreamer.h        2013-11-23 11:05:53 UTC (rev 159729)
+++ trunk/Source/WebCore/platform/graphics/gstreamer/GRefPtrGStreamer.h        2013-11-23 14:35:26 UTC (rev 159730)
</span><span class="lines">@@ -31,10 +31,8 @@
</span><span class="cx"> typedef struct _GstBus GstBus;
</span><span class="cx"> typedef struct _GstElementFactory GstElementFactory;
</span><span class="cx"> typedef struct _GstBuffer GstBuffer;
</span><del>-#ifdef GST_API_VERSION_1
</del><span class="cx"> typedef struct _GstSample GstSample;
</span><span class="cx"> typedef struct _GstTagList GstTagList;
</span><del>-#endif
</del><span class="cx"> typedef struct _GstEvent GstEvent;
</span><span class="cx"> typedef struct _GstToc GstToc;
</span><span class="cx">
</span><span class="lines">@@ -72,17 +70,13 @@
</span><span class="cx"> template<> GstBuffer* refGPtr<GstBuffer>(GstBuffer* ptr);
</span><span class="cx"> template<> void derefGPtr<GstBuffer>(GstBuffer* ptr);
</span><span class="cx">
</span><del>-#ifdef GST_API_VERSION_1
-/* GstSample was added in GStreamer 1.0 */
</del><span class="cx"> template<> GRefPtr<GstSample> adoptGRef(GstSample* ptr);
</span><span class="cx"> template<> GstSample* refGPtr<GstSample>(GstSample* ptr);
</span><span class="cx"> template<> void derefGPtr<GstSample>(GstSample* ptr);
</span><span class="cx">
</span><del>-/* GstTagList isn't refcounted in GStreamer 0.10 */
</del><span class="cx"> template<> GRefPtr<GstTagList> adoptGRef(GstTagList* ptr);
</span><span class="cx"> template<> GstTagList* refGPtr<GstTagList>(GstTagList* ptr);
</span><span class="cx"> template<> void derefGPtr<GstTagList>(GstTagList* ptr);
</span><del>-#endif
</del><span class="cx">
</span><span class="cx"> template<> GRefPtr<GstEvent> adoptGRef(GstEvent* ptr);
</span><span class="cx"> template<> GstEvent* refGPtr<GstEvent>(GstEvent* ptr);
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicsgstreamerGStreamerUtilitiescpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/gstreamer/GStreamerUtilities.cpp (159729 => 159730)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/gstreamer/GStreamerUtilities.cpp        2013-11-23 11:05:53 UTC (rev 159729)
+++ trunk/Source/WebCore/platform/graphics/gstreamer/GStreamerUtilities.cpp        2013-11-23 14:35:26 UTC (rev 159730)
</span><span class="lines">@@ -21,11 +21,104 @@
</span><span class="cx"> #include "GStreamerUtilities.h"
</span><span class="cx">
</span><span class="cx"> #if USE(GSTREAMER)
</span><ins>+
+#include "IntSize.h"
+
+#include <gst/audio/audio.h>
</ins><span class="cx"> #include <gst/gst.h>
</span><span class="cx"> #include <wtf/gobject/GOwnPtr.h>
</span><span class="cx">
</span><span class="cx"> namespace WebCore {
</span><span class="cx">
</span><ins>+const char* webkitGstMapInfoQuarkString = "webkit-gst-map-info";
+
+GstPad* webkitGstGhostPadFromStaticTemplate(GstStaticPadTemplate* staticPadTemplate, const gchar* name, GstPad* target)
+{
+ GstPad* pad;
+ GstPadTemplate* padTemplate = gst_static_pad_template_get(staticPadTemplate);
+
+ if (target)
+ pad = gst_ghost_pad_new_from_template(name, target, padTemplate);
+ else
+ pad = gst_ghost_pad_new_no_target_from_template(name, padTemplate);
+
+ gst_object_unref(padTemplate);
+
+ return pad;
+}
+
+#if ENABLE(VIDEO)
+bool getVideoSizeAndFormatFromCaps(GstCaps* caps, WebCore::IntSize& size, GstVideoFormat& format, int& pixelAspectRatioNumerator, int& pixelAspectRatioDenominator, int& stride)
+{
+ GstVideoInfo info;
+
+ if (!gst_caps_is_fixed(caps) || !gst_video_info_from_caps(&info, caps))
+ return false;
+
+ format = GST_VIDEO_INFO_FORMAT(&info);
+ size.setWidth(GST_VIDEO_INFO_WIDTH(&info));
+ size.setHeight(GST_VIDEO_INFO_HEIGHT(&info));
+ pixelAspectRatioNumerator = GST_VIDEO_INFO_PAR_N(&info);
+ pixelAspectRatioDenominator = GST_VIDEO_INFO_PAR_D(&info);
+ stride = GST_VIDEO_INFO_PLANE_STRIDE(&info, 0);
+
+ return true;
+}
+#endif
+
+GstBuffer* createGstBuffer(GstBuffer* buffer)
+{
+ gsize bufferSize = gst_buffer_get_size(buffer);
+ GstBuffer* newBuffer = gst_buffer_new_and_alloc(bufferSize);
+
+ if (!newBuffer)
+ return 0;
+
+ gst_buffer_copy_into(newBuffer, buffer, static_cast<GstBufferCopyFlags>(GST_BUFFER_COPY_METADATA), 0, bufferSize);
+ return newBuffer;
+}
+
+GstBuffer* createGstBufferForData(const char* data, int length)
+{
+ GstBuffer* buffer = gst_buffer_new_and_alloc(length);
+
+ gst_buffer_fill(buffer, 0, data, length);
+
+ return buffer;
+}
+
+char* getGstBufferDataPointer(GstBuffer* buffer)
+{
+ GstMiniObject* miniObject = reinterpret_cast<GstMiniObject*>(buffer);
+ GstMapInfo* mapInfo = static_cast<GstMapInfo*>(gst_mini_object_get_qdata(miniObject, g_quark_from_static_string(webkitGstMapInfoQuarkString)));
+ return reinterpret_cast<char*>(mapInfo->data);
+}
+
+void mapGstBuffer(GstBuffer* buffer)
+{
+ GstMapInfo* mapInfo = g_slice_new(GstMapInfo);
+ if (!gst_buffer_map(buffer, mapInfo, GST_MAP_WRITE)) {
+ g_slice_free(GstMapInfo, mapInfo);
+ gst_buffer_unref(buffer);
+ return;
+ }
+
+ GstMiniObject* miniObject = reinterpret_cast<GstMiniObject*>(buffer);
+ gst_mini_object_set_qdata(miniObject, g_quark_from_static_string(webkitGstMapInfoQuarkString), mapInfo, 0);
+}
+
+void unmapGstBuffer(GstBuffer* buffer)
+{
+ GstMiniObject* miniObject = reinterpret_cast<GstMiniObject*>(buffer);
+ GstMapInfo* mapInfo = static_cast<GstMapInfo*>(gst_mini_object_steal_qdata(miniObject, g_quark_from_static_string(webkitGstMapInfoQuarkString)));
+
+ if (!mapInfo)
+ return;
+
+ gst_buffer_unmap(buffer, mapInfo);
+ g_slice_free(GstMapInfo, mapInfo);
+}
+
</ins><span class="cx"> bool initializeGStreamer()
</span><span class="cx"> {
</span><span class="cx"> #if GST_CHECK_VERSION(0, 10, 31)
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicsgstreamerGStreamerUtilitiesh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/gstreamer/GStreamerUtilities.h (159729 => 159730)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/gstreamer/GStreamerUtilities.h        2013-11-23 11:05:53 UTC (rev 159729)
+++ trunk/Source/WebCore/platform/graphics/gstreamer/GStreamerUtilities.h        2013-11-23 14:35:26 UTC (rev 159730)
</span><span class="lines">@@ -18,6 +18,9 @@
</span><span class="cx">
</span><span class="cx"> #include "Logging.h"
</span><span class="cx">
</span><ins>+#include <gst/gst.h>
+#include <gst/video/video.h>
+
</ins><span class="cx"> #define LOG_MEDIA_MESSAGE(...) do { \
</span><span class="cx"> GST_DEBUG(__VA_ARGS__); \
</span><span class="cx"> LOG_VERBOSE(Media, __VA_ARGS__); } while (0)
</span><span class="lines">@@ -35,5 +38,39 @@
</span><span class="cx"> LOG_VERBOSE(Media, __VA_ARGS__); } while (0)
</span><span class="cx">
</span><span class="cx"> namespace WebCore {
</span><ins>+
+class IntSize;
+
+inline bool webkitGstCheckVersion(guint major, guint minor, guint micro)
+{
+ guint currentMajor, currentMinor, currentMicro, currentNano;
+ gst_version(&currentMajor, &currentMinor, &currentMicro, &currentNano);
+
+ if (currentMajor < major)
+ return false;
+ if (currentMajor > major)
+ return true;
+
+ if (currentMinor < minor)
+ return false;
+ if (currentMinor > minor)
+ return true;
+
+ if (currentMicro < micro)
+ return false;
+
+ return true;
+}
+
+GstPad* webkitGstGhostPadFromStaticTemplate(GstStaticPadTemplate*, const gchar* name, GstPad* target);
+#if ENABLE(VIDEO)
+bool getVideoSizeAndFormatFromCaps(GstCaps*, WebCore::IntSize&, GstVideoFormat&, int& pixelAspectRatioNumerator, int& pixelAspectRatioDenominator, int& stride);
+#endif
+GstBuffer* createGstBuffer(GstBuffer*);
+GstBuffer* createGstBufferForData(const char* data, int length);
+char* getGstBufferDataPointer(GstBuffer*);
+void mapGstBuffer(GstBuffer*);
+void unmapGstBuffer(GstBuffer*);
</ins><span class="cx"> bool initializeGStreamer();
</span><ins>+
</ins><span class="cx"> }
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicsgstreamerGStreamerVersioningcpp"></a>
<div class="delfile"><h4>Deleted: trunk/Source/WebCore/platform/graphics/gstreamer/GStreamerVersioning.cpp (159729 => 159730)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/gstreamer/GStreamerVersioning.cpp        2013-11-23 11:05:53 UTC (rev 159729)
+++ trunk/Source/WebCore/platform/graphics/gstreamer/GStreamerVersioning.cpp        2013-11-23 14:35:26 UTC (rev 159730)
</span><span class="lines">@@ -1,254 +0,0 @@
</span><del>-/*
- * Copyright (C) 2012 Igalia, S.L.
- * Copyright (C) 2013 Collabora Ltd.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#include "config.h"
-
-#include "GStreamerVersioning.h"
-
-#if USE(GSTREAMER)
-#include "IntSize.h"
-
-#ifdef GST_API_VERSION_1
-#include <gst/audio/audio.h>
-#else
-#include <gst/audio/multichannel.h>
-#include <string.h>
-#endif
-
-#ifdef GST_API_VERSION_1
-const char* webkitGstMapInfoQuarkString = "webkit-gst-map-info";
-#endif
-
-void webkitGstObjectRefSink(GstObject* gstObject)
-{
-#ifdef GST_API_VERSION_1
- gst_object_ref_sink(gstObject);
-#else
- gst_object_ref(gstObject);
- gst_object_sink(gstObject);
-#endif
-}
-
-GstPad* webkitGstGhostPadFromStaticTemplate(GstStaticPadTemplate* staticPadTemplate, const gchar* name, GstPad* target)
-{
- GstPad* pad;
- GstPadTemplate* padTemplate = gst_static_pad_template_get(staticPadTemplate);
-
- if (target)
- pad = gst_ghost_pad_new_from_template(name, target, padTemplate);
- else
- pad = gst_ghost_pad_new_no_target_from_template(name, padTemplate);
-
-#ifdef GST_API_VERSION_1
- gst_object_unref(padTemplate);
-#endif
-
- return pad;
-}
-
-GRefPtr<GstCaps> webkitGstGetPadCaps(GstPad* pad)
-{
- if (!pad)
- return 0;
-
-#ifdef GST_API_VERSION_1
- return adoptGRef(gst_pad_get_current_caps(pad)); // gst_pad_get_current_caps return a new reference.
-#else
- return GST_PAD_CAPS(pad);
-#endif
-}
-
-GRefPtr<GstBus> webkitGstPipelineGetBus(GstPipeline* pipeline)
-{
-#ifdef GST_API_VERSION_1
- return adoptGRef(gst_pipeline_get_bus(pipeline));
-#else
- // gst_pipeline_get_bus returns a floating reference in
- // gstreamer 0.10 so we should not adopt.
- return gst_pipeline_get_bus(pipeline);
-#endif
-}
-
-#if ENABLE(VIDEO)
-bool getVideoSizeAndFormatFromCaps(GstCaps* caps, WebCore::IntSize& size, GstVideoFormat& format, int& pixelAspectRatioNumerator, int& pixelAspectRatioDenominator, int& stride)
-{
-#ifdef GST_API_VERSION_1
- GstVideoInfo info;
-
- if (!gst_caps_is_fixed(caps) || !gst_video_info_from_caps(&info, caps))
- return false;
-
- format = GST_VIDEO_INFO_FORMAT(&info);
- size.setWidth(GST_VIDEO_INFO_WIDTH(&info));
- size.setHeight(GST_VIDEO_INFO_HEIGHT(&info));
- pixelAspectRatioNumerator = GST_VIDEO_INFO_PAR_N(&info);
- pixelAspectRatioDenominator = GST_VIDEO_INFO_PAR_D(&info);
- stride = GST_VIDEO_INFO_PLANE_STRIDE(&info, 0);
-#else
- gint width, height;
- if (!GST_IS_CAPS(caps) || !gst_caps_is_fixed(caps)
- || !gst_video_format_parse_caps(caps, &format, &width, &height)
- || !gst_video_parse_caps_pixel_aspect_ratio(caps, &pixelAspectRatioNumerator,
- &pixelAspectRatioDenominator))
- return false;
- size.setWidth(width);
- size.setHeight(height);
- stride = size.width() * 4;
-#endif
-
- return true;
-}
-#endif
-
-GstBuffer* createGstBuffer(GstBuffer* buffer)
-{
-#ifndef GST_API_VERSION_1
- GstBuffer* newBuffer = gst_buffer_try_new_and_alloc(GST_BUFFER_SIZE(buffer));
-#else
- gsize bufferSize = gst_buffer_get_size(buffer);
- GstBuffer* newBuffer = gst_buffer_new_and_alloc(bufferSize);
-#endif
-
- if (!newBuffer)
- return 0;
-
-#ifndef GST_API_VERSION_1
- gst_buffer_copy_metadata(newBuffer, buffer, static_cast<GstBufferCopyFlags>(GST_BUFFER_COPY_ALL));
-#else
- gst_buffer_copy_into(newBuffer, buffer, static_cast<GstBufferCopyFlags>(GST_BUFFER_COPY_METADATA), 0, bufferSize);
-#endif
- return newBuffer;
-}
-
-GstBuffer* createGstBufferForData(const char* data, int length)
-{
- GstBuffer* buffer = gst_buffer_new_and_alloc(length);
-
-#ifdef GST_API_VERSION_1
- gst_buffer_fill(buffer, 0, data, length);
-#else
- memcpy(GST_BUFFER_DATA(buffer), data, length);
-#endif
-
- return buffer;
-}
-
-int getGstBufferSize(GstBuffer* buffer)
-{
-#ifdef GST_API_VERSION_1
- return gst_buffer_get_size(buffer);
-#else
- return GST_BUFFER_SIZE(buffer);
-#endif
-}
-
-void setGstBufferSize(GstBuffer* buffer, int newSize)
-{
-#ifdef GST_API_VERSION_1
- gst_buffer_set_size(buffer, static_cast<gssize>(newSize));
-#else
- GST_BUFFER_SIZE(buffer) = static_cast<gsize>(newSize);
-#endif
-}
-
-char* getGstBufferDataPointer(GstBuffer* buffer)
-{
-#ifdef GST_API_VERSION_1
- GstMiniObject* miniObject = reinterpret_cast<GstMiniObject*>(buffer);
- GstMapInfo* mapInfo = static_cast<GstMapInfo*>(gst_mini_object_get_qdata(miniObject, g_quark_from_static_string(webkitGstMapInfoQuarkString)));
- return reinterpret_cast<char*>(mapInfo->data);
-#else
- return reinterpret_cast<char*>(GST_BUFFER_DATA(buffer));
-#endif
-}
-
-#ifdef GST_API_VERSION_1
-void mapGstBuffer(GstBuffer* buffer)
-{
- GstMapInfo* mapInfo = g_slice_new(GstMapInfo);
- if (!gst_buffer_map(buffer, mapInfo, GST_MAP_WRITE)) {
- g_slice_free(GstMapInfo, mapInfo);
- gst_buffer_unref(buffer);
- return;
- }
-
- GstMiniObject* miniObject = reinterpret_cast<GstMiniObject*>(buffer);
- gst_mini_object_set_qdata(miniObject, g_quark_from_static_string(webkitGstMapInfoQuarkString), mapInfo, 0);
-}
-
-void unmapGstBuffer(GstBuffer* buffer)
-{
- GstMiniObject* miniObject = reinterpret_cast<GstMiniObject*>(buffer);
- GstMapInfo* mapInfo = static_cast<GstMapInfo*>(gst_mini_object_steal_qdata(miniObject, g_quark_from_static_string(webkitGstMapInfoQuarkString)));
-
- if (!mapInfo)
- return;
-
- gst_buffer_unmap(buffer, mapInfo);
- g_slice_free(GstMapInfo, mapInfo);
-}
-#endif
-
-void setGstElementClassMetadata(GstElementClass* elementClass, const char* name, const char* longName, const char* description, const char* author)
-{
-#ifdef GST_API_VERSION_1
- gst_element_class_set_metadata(elementClass, name, longName, description, author);
-#else
- gst_element_class_set_details_simple(elementClass, name, longName, description, author);
-#endif
-}
-
-bool gstObjectIsFloating(GstObject* gstObject)
-{
-#ifdef GST_API_VERSION_1
- return g_object_is_floating(G_OBJECT(gstObject));
-#else
- return GST_OBJECT_IS_FLOATING(gstObject);
-#endif
-}
-
-void notifyGstTagsOnPad(GstElement* element, GstPad* pad, GstTagList* tags)
-{
-#ifdef GST_API_VERSION_1
- UNUSED_PARAM(element);
- gst_pad_push_event(GST_PAD_CAST(pad), gst_event_new_tag(tags));
-#else
- gst_element_found_tags_for_pad(element, pad, tags);
-#endif
-}
-
-#if ENABLE(WEB_AUDIO)
-GstCaps* getGstAudioCaps(int channels, float sampleRate)
-{
-#ifdef GST_API_VERSION_1
- return gst_caps_new_simple("audio/x-raw", "rate", G_TYPE_INT, static_cast<int>(sampleRate),
- "channels", G_TYPE_INT, channels,
- "format", G_TYPE_STRING, gst_audio_format_to_string(GST_AUDIO_FORMAT_F32),
- "layout", G_TYPE_STRING, "interleaved", NULL);
-#else
- return gst_caps_new_simple("audio/x-raw-float", "rate", G_TYPE_INT, static_cast<int>(sampleRate),
- "channels", G_TYPE_INT, channels,
- "endianness", G_TYPE_INT, G_BYTE_ORDER,
- "width", G_TYPE_INT, 32, NULL);
-#endif
-}
-#endif
-
-#endif // USE(GSTREAMER)
</del></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicsgstreamerGStreamerVersioningh"></a>
<div class="delfile"><h4>Deleted: trunk/Source/WebCore/platform/graphics/gstreamer/GStreamerVersioning.h (159729 => 159730)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/gstreamer/GStreamerVersioning.h        2013-11-23 11:05:53 UTC (rev 159729)
+++ trunk/Source/WebCore/platform/graphics/gstreamer/GStreamerVersioning.h        2013-11-23 14:35:26 UTC (rev 159730)
</span><span class="lines">@@ -1,76 +0,0 @@
</span><del>-/*
- * Copyright (C) 2012 Igalia, S.L.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#ifndef GStreamerVersioning_h
-#define GStreamerVersioning_h
-#if USE(GSTREAMER)
-
-#include "GRefPtrGStreamer.h"
-#include <gst/gst.h>
-#include <gst/video/video.h>
-
-namespace WebCore {
-class IntSize;
-};
-
-inline bool webkitGstCheckVersion(guint major, guint minor, guint micro)
-{
- guint currentMajor, currentMinor, currentMicro, currentNano;
- gst_version(&currentMajor, &currentMinor, &currentMicro, &currentNano);
-
- if (currentMajor < major)
- return false;
- if (currentMajor > major)
- return true;
-
- if (currentMinor < minor)
- return false;
- if (currentMinor > minor)
- return true;
-
- if (currentMicro < micro)
- return false;
-
- return true;
-}
-
-void webkitGstObjectRefSink(GstObject*);
-GstPad* webkitGstGhostPadFromStaticTemplate(GstStaticPadTemplate*, const gchar* name, GstPad* target);
-GRefPtr<GstCaps> webkitGstGetPadCaps(GstPad*);
-GRefPtr<GstBus> webkitGstPipelineGetBus(GstPipeline*);
-#if ENABLE(VIDEO)
-bool getVideoSizeAndFormatFromCaps(GstCaps*, WebCore::IntSize&, GstVideoFormat&, int& pixelAspectRatioNumerator, int& pixelAspectRatioDenominator, int& stride);
-#endif
-GstBuffer* createGstBuffer(GstBuffer*);
-GstBuffer* createGstBufferForData(const char* data, int length);
-int getGstBufferSize(GstBuffer*);
-void setGstBufferSize(GstBuffer*, int newSize);
-char* getGstBufferDataPointer(GstBuffer*);
-#ifdef GST_API_VERSION_1
-void mapGstBuffer(GstBuffer*);
-void unmapGstBuffer(GstBuffer*);
-#endif
-void setGstElementClassMetadata(GstElementClass*, const char* name, const char* longName, const char* description, const char* author);
-bool gstObjectIsFloating(GstObject*);
-void notifyGstTagsOnPad(GstElement*, GstPad*, GstTagList*);
-#if ENABLE(WEB_AUDIO)
-GstCaps* getGstAudioCaps(int channels, float sampleRate);
-#endif
-#endif // USE(GSTREAMER)
-#endif // GStreamerVersioning_h
</del></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicsgstreamerImageGStreamerh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/gstreamer/ImageGStreamer.h (159729 => 159730)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/gstreamer/ImageGStreamer.h        2013-11-23 11:05:53 UTC (rev 159729)
+++ trunk/Source/WebCore/platform/graphics/gstreamer/ImageGStreamer.h        2013-11-23 14:35:26 UTC (rev 159730)
</span><span class="lines">@@ -24,7 +24,10 @@
</span><span class="cx">
</span><span class="cx"> #include "BitmapImage.h"
</span><span class="cx"> #include "FloatRect.h"
</span><del>-#include "GStreamerVersioning.h"
</del><ins>+#include "GRefPtrGStreamer.h"
+
+#include <gst/gst.h>
+
</ins><span class="cx"> #include <wtf/PassRefPtr.h>
</span><span class="cx"> #include <wtf/RefCounted.h>
</span><span class="cx"> #include <wtf/RefPtr.h>
</span><span class="lines">@@ -60,7 +63,7 @@
</span><span class="cx"> RefPtr<BitmapImage> m_image;
</span><span class="cx"> FloatRect m_cropRect;
</span><span class="cx">
</span><del>-#if USE(CAIRO) && defined(GST_API_VERSION_1)
</del><ins>+#if USE(CAIRO)
</ins><span class="cx"> GRefPtr<GstBuffer> m_buffer;
</span><span class="cx"> GstMapInfo m_mapInfo;
</span><span class="cx"> #endif
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicsgstreamerImageGStreamerCairocpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/gstreamer/ImageGStreamerCairo.cpp (159729 => 159730)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/gstreamer/ImageGStreamerCairo.cpp        2013-11-23 11:05:53 UTC (rev 159729)
+++ trunk/Source/WebCore/platform/graphics/gstreamer/ImageGStreamerCairo.cpp        2013-11-23 14:35:26 UTC (rev 159730)
</span><span class="lines">@@ -22,34 +22,28 @@
</span><span class="cx">
</span><span class="cx"> #if ENABLE(VIDEO) && USE(GSTREAMER)
</span><span class="cx">
</span><ins>+#include "GStreamerUtilities.h"
+
</ins><span class="cx"> #include <cairo.h>
</span><span class="cx"> #include <gst/gst.h>
</span><span class="cx"> #include <wtf/gobject/GOwnPtr.h>
</span><span class="cx">
</span><del>-#ifdef GST_API_VERSION_1
</del><span class="cx"> #include <gst/video/gstvideometa.h>
</span><del>-#endif
</del><span class="cx">
</span><span class="cx">
</span><span class="cx"> using namespace std;
</span><span class="cx"> using namespace WebCore;
</span><span class="cx">
</span><span class="cx"> ImageGStreamer::ImageGStreamer(GstBuffer* buffer, GstCaps* caps)
</span><del>-#ifdef GST_API_VERSION_1
</del><span class="cx"> : m_buffer(buffer)
</span><del>-#endif
</del><span class="cx"> {
</span><span class="cx"> GstVideoFormat format;
</span><span class="cx"> IntSize size;
</span><span class="cx"> int pixelAspectRatioNumerator, pixelAspectRatioDenominator, stride;
</span><span class="cx"> getVideoSizeAndFormatFromCaps(caps, size, format, pixelAspectRatioNumerator, pixelAspectRatioDenominator, stride);
</span><span class="cx">
</span><del>-#ifdef GST_API_VERSION_1
</del><span class="cx"> gst_buffer_map(buffer, &m_mapInfo, GST_MAP_READ);
</span><span class="cx"> unsigned char* bufferData = reinterpret_cast<unsigned char*>(m_mapInfo.data);
</span><del>-#else
- unsigned char* bufferData = reinterpret_cast<unsigned char*>(GST_BUFFER_DATA(buffer));
-#endif
</del><span class="cx">
</span><span class="cx"> cairo_format_t cairoFormat;
</span><span class="cx"> #if G_BYTE_ORDER == G_LITTLE_ENDIAN
</span><span class="lines">@@ -62,10 +56,8 @@
</span><span class="cx"> ASSERT(cairo_surface_status(surface.get()) == CAIRO_STATUS_SUCCESS);
</span><span class="cx"> m_image = BitmapImage::create(surface.release());
</span><span class="cx">
</span><del>-#ifdef GST_API_VERSION_1
</del><span class="cx"> if (GstVideoCropMeta* cropMeta = gst_buffer_get_video_crop_meta(buffer))
</span><span class="cx"> setCropRect(FloatRect(cropMeta->x, cropMeta->y, cropMeta->width, cropMeta->height));
</span><del>-#endif
</del><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> ImageGStreamer::~ImageGStreamer()
</span><span class="lines">@@ -75,10 +67,8 @@
</span><span class="cx">
</span><span class="cx"> m_image = 0;
</span><span class="cx">
</span><del>-#ifdef GST_API_VERSION_1
</del><span class="cx"> // We keep the buffer memory mapped until the image is destroyed because the internal
</span><span class="cx"> // cairo_surface_t was created using cairo_image_surface_create_for_data().
</span><span class="cx"> gst_buffer_unmap(m_buffer.get(), &m_mapInfo);
</span><del>-#endif
</del><span class="cx"> }
</span><span class="cx"> #endif // USE(GSTREAMER)
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicsgstreamerInbandMetadataTextTrackPrivateGStreamerh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/gstreamer/InbandMetadataTextTrackPrivateGStreamer.h (159729 => 159730)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/gstreamer/InbandMetadataTextTrackPrivateGStreamer.h        2013-11-23 11:05:53 UTC (rev 159729)
+++ trunk/Source/WebCore/platform/graphics/gstreamer/InbandMetadataTextTrackPrivateGStreamer.h        2013-11-23 14:35:26 UTC (rev 159730)
</span><span class="lines">@@ -26,7 +26,7 @@
</span><span class="cx"> #ifndef InbandMetadataTextTrackPrivateGStreamer_h
</span><span class="cx"> #define InbandMetadataTextTrackPrivateGStreamer_h
</span><span class="cx">
</span><del>-#if ENABLE(VIDEO) && USE(GSTREAMER) && ENABLE(VIDEO_TRACK) && defined(GST_API_VERSION_1)
</del><ins>+#if ENABLE(VIDEO) && USE(GSTREAMER) && ENABLE(VIDEO_TRACK)
</ins><span class="cx">
</span><span class="cx"> #include "GRefPtrGStreamer.h"
</span><span class="cx"> #include "InbandTextTrackPrivate.h"
</span><span class="lines">@@ -57,6 +57,6 @@
</span><span class="cx">
</span><span class="cx"> } // namespace WebCore
</span><span class="cx">
</span><del>-#endif // ENABLE(VIDEO) && USE(GSTREAMER) && ENABLE(VIDEO_TRACK) && defined(GST_API_VERSION_1)
</del><ins>+#endif // ENABLE(VIDEO) && USE(GSTREAMER) && ENABLE(VIDEO_TRACK)
</ins><span class="cx">
</span><span class="cx"> #endif // InbandMetadataTextTrackPrivateGStreamer_h
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicsgstreamerInbandTextTrackPrivateGStreamercpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/gstreamer/InbandTextTrackPrivateGStreamer.cpp (159729 => 159730)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/gstreamer/InbandTextTrackPrivateGStreamer.cpp        2013-11-23 11:05:53 UTC (rev 159729)
+++ trunk/Source/WebCore/platform/graphics/gstreamer/InbandTextTrackPrivateGStreamer.cpp        2013-11-23 14:35:26 UTC (rev 159730)
</span><span class="lines">@@ -25,7 +25,7 @@
</span><span class="cx">
</span><span class="cx"> #include "config.h"
</span><span class="cx">
</span><del>-#if ENABLE(VIDEO) && USE(GSTREAMER) && ENABLE(VIDEO_TRACK) && defined(GST_API_VERSION_1)
</del><ins>+#if ENABLE(VIDEO) && USE(GSTREAMER) && ENABLE(VIDEO_TRACK)
</ins><span class="cx">
</span><span class="cx"> #include "InbandTextTrackPrivateGStreamer.h"
</span><span class="cx">
</span><span class="lines">@@ -157,4 +157,4 @@
</span><span class="cx">
</span><span class="cx"> } // namespace WebCore
</span><span class="cx">
</span><del>-#endif // ENABLE(VIDEO) && USE(GSTREAMER) && ENABLE(VIDEO_TRACK) && defined(GST_API_VERSION_1)
</del><ins>+#endif // ENABLE(VIDEO) && USE(GSTREAMER) && ENABLE(VIDEO_TRACK)
</ins></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicsgstreamerInbandTextTrackPrivateGStreamerh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/gstreamer/InbandTextTrackPrivateGStreamer.h (159729 => 159730)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/gstreamer/InbandTextTrackPrivateGStreamer.h        2013-11-23 11:05:53 UTC (rev 159729)
+++ trunk/Source/WebCore/platform/graphics/gstreamer/InbandTextTrackPrivateGStreamer.h        2013-11-23 14:35:26 UTC (rev 159730)
</span><span class="lines">@@ -26,7 +26,7 @@
</span><span class="cx"> #ifndef InbandTextTrackPrivateGStreamer_h
</span><span class="cx"> #define InbandTextTrackPrivateGStreamer_h
</span><span class="cx">
</span><del>-#if ENABLE(VIDEO) && USE(GSTREAMER) && ENABLE(VIDEO_TRACK) && defined(GST_API_VERSION_1)
</del><ins>+#if ENABLE(VIDEO) && USE(GSTREAMER) && ENABLE(VIDEO_TRACK)
</ins><span class="cx">
</span><span class="cx"> #include "GRefPtrGStreamer.h"
</span><span class="cx"> #include "InbandTextTrackPrivate.h"
</span><span class="lines">@@ -71,6 +71,6 @@
</span><span class="cx">
</span><span class="cx"> } // namespace WebCore
</span><span class="cx">
</span><del>-#endif // ENABLE(VIDEO) && USE(GSTREAMER) && ENABLE(VIDEO_TRACK) && defined(GST_API_VERSION_1)
</del><ins>+#endif // ENABLE(VIDEO) && USE(GSTREAMER) && ENABLE(VIDEO_TRACK)
</ins><span class="cx">
</span><span class="cx"> #endif // InbandTextTrackPrivateGStreamer_h
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicsgstreamerMediaPlayerPrivateGStreamercpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp (159729 => 159730)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp        2013-11-23 11:05:53 UTC (rev 159729)
+++ trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp        2013-11-23 14:35:26 UTC (rev 159730)
</span><span class="lines">@@ -27,7 +27,6 @@
</span><span class="cx"> #if ENABLE(VIDEO) && USE(GSTREAMER)
</span><span class="cx">
</span><span class="cx"> #include "GStreamerUtilities.h"
</span><del>-#include "GStreamerVersioning.h"
</del><span class="cx"> #include "URL.h"
</span><span class="cx"> #include "MIMETypeRegistry.h"
</span><span class="cx"> #include "MediaPlayer.h"
</span><span class="lines">@@ -41,7 +40,7 @@
</span><span class="cx"> #include <wtf/gobject/GOwnPtr.h>
</span><span class="cx"> #include <wtf/text/CString.h>
</span><span class="cx">
</span><del>-#if ENABLE(VIDEO_TRACK) && defined(GST_API_VERSION_1)
</del><ins>+#if ENABLE(VIDEO_TRACK)
</ins><span class="cx"> #include "AudioTrackPrivateGStreamer.h"
</span><span class="cx"> #include "InbandMetadataTextTrackPrivateGStreamer.h"
</span><span class="cx"> #include "InbandTextTrackPrivateGStreamer.h"
</span><span class="lines">@@ -50,11 +49,7 @@
</span><span class="cx"> #include "VideoTrackPrivateGStreamer.h"
</span><span class="cx"> #endif
</span><span class="cx">
</span><del>-#ifdef GST_API_VERSION_1
</del><span class="cx"> #include <gst/audio/streamvolume.h>
</span><del>-#else
-#include <gst/interfaces/streamvolume.h>
-#endif
</del><span class="cx">
</span><span class="cx"> #if ENABLE(MEDIA_SOURCE)
</span><span class="cx"> #include "MediaSource.h"
</span><span class="lines">@@ -76,18 +71,6 @@
</span><span class="cx"> GST_PLAY_FLAG_BUFFERING = 0x000000100
</span><span class="cx"> } GstPlayFlags;
</span><span class="cx">
</span><del>-// gPercentMax is used when parsing buffering ranges with
-// gst_query_parse_nth_buffering_range as there was a bug in GStreamer
-// 0.10 that was using 100 instead of GST_FORMAT_PERCENT_MAX. This was
-// corrected in 1.0. gst_query_parse_buffering_range worked as
-// expected with GST_FORMAT_PERCENT_MAX in both cases.
-#ifdef GST_API_VERSION_1
-static const char* gPlaybinName = "playbin";
-static const gint64 gPercentMax = GST_FORMAT_PERCENT_MAX;
-#else
-static const char* gPlaybinName = "playbin2";
-static const gint64 gPercentMax = 100;
-#endif
</del><span class="cx"> // Max interval in seconds to stay in the READY state on manual
</span><span class="cx"> // state change requests.
</span><span class="cx"> static const guint gReadyStateTimerInterval = 60;
</span><span class="lines">@@ -131,12 +114,8 @@
</span><span class="cx"> return FALSE;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-#ifdef GST_API_VERSION_1
</del><span class="cx"> static void setAudioStreamPropertiesCallback(GstChildProxy*, GObject* object, gchar*,
</span><span class="cx"> MediaPlayerPrivateGStreamer* player)
</span><del>-#else
-static void setAudioStreamPropertiesCallback(GstChildProxy*, GObject* object, MediaPlayerPrivateGStreamer* player)
-#endif
</del><span class="cx"> {
</span><span class="cx"> player->setAudioStreamProperties(object);
</span><span class="cx"> }
</span><span class="lines">@@ -155,7 +134,7 @@
</span><span class="cx"> return FALSE;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-#if ENABLE(VIDEO_TRACK) && defined(GST_API_VERSION_1)
</del><ins>+#if ENABLE(VIDEO_TRACK)
</ins><span class="cx"> static void mediaPlayerPrivateTextChangedCallback(GObject*, MediaPlayerPrivateGStreamer* player)
</span><span class="cx"> {
</span><span class="cx"> player->textChanged();
</span><span class="lines">@@ -250,7 +229,7 @@
</span><span class="cx"> if (!initializeGStreamerAndRegisterWebKitElements())
</span><span class="cx"> return false;
</span><span class="cx">
</span><del>- GRefPtr<GstElementFactory> factory = gst_element_factory_find(gPlaybinName);
</del><ins>+ GRefPtr<GstElementFactory> factory = gst_element_factory_find("playbin");
</ins><span class="cx"> return factory;
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -299,7 +278,7 @@
</span><span class="cx">
</span><span class="cx"> MediaPlayerPrivateGStreamer::~MediaPlayerPrivateGStreamer()
</span><span class="cx"> {
</span><del>-#if ENABLE(VIDEO_TRACK) && defined(GST_API_VERSION_1)
</del><ins>+#if ENABLE(VIDEO_TRACK)
</ins><span class="cx"> for (size_t i = 0; i < m_audioTracks.size(); ++i)
</span><span class="cx"> m_audioTracks[i]->disconnect();
</span><span class="cx">
</span><span class="lines">@@ -325,7 +304,7 @@
</span><span class="cx"> g_source_remove(m_readyTimerHandler);
</span><span class="cx">
</span><span class="cx"> if (m_playBin) {
</span><del>- GRefPtr<GstBus> bus = webkitGstPipelineGetBus(GST_PIPELINE(m_playBin.get()));
</del><ins>+ GRefPtr<GstBus> bus = adoptGRef(gst_pipeline_get_bus(GST_PIPELINE(m_playBin.get())));
</ins><span class="cx"> ASSERT(bus);
</span><span class="cx"> g_signal_handlers_disconnect_by_func(bus.get(), reinterpret_cast<gpointer>(mediaPlayerPrivateMessageCallback), this);
</span><span class="cx"> gst_bus_remove_signal_watch(bus.get());
</span><span class="lines">@@ -333,7 +312,7 @@
</span><span class="cx"> g_signal_handlers_disconnect_by_func(m_playBin.get(), reinterpret_cast<gpointer>(mediaPlayerPrivateSourceChangedCallback), this);
</span><span class="cx"> g_signal_handlers_disconnect_by_func(m_playBin.get(), reinterpret_cast<gpointer>(mediaPlayerPrivateVideoChangedCallback), this);
</span><span class="cx"> g_signal_handlers_disconnect_by_func(m_playBin.get(), reinterpret_cast<gpointer>(mediaPlayerPrivateAudioChangedCallback), this);
</span><del>-#if ENABLE(VIDEO_TRACK) && defined(GST_API_VERSION_1)
</del><ins>+#if ENABLE(VIDEO_TRACK)
</ins><span class="cx"> g_signal_handlers_disconnect_by_func(m_playBin.get(), reinterpret_cast<gpointer>(mediaPlayerPrivateNewTextSampleCallback), this);
</span><span class="cx"> g_signal_handlers_disconnect_by_func(m_playBin.get(), reinterpret_cast<gpointer>(mediaPlayerPrivateTextChangedCallback), this);
</span><span class="cx"> #endif
</span><span class="lines">@@ -543,11 +522,7 @@
</span><span class="cx"> GstFormat timeFormat = GST_FORMAT_TIME;
</span><span class="cx"> gint64 timeLength = 0;
</span><span class="cx">
</span><del>-#ifdef GST_API_VERSION_1
</del><span class="cx"> bool failure = !gst_element_query_duration(m_playBin.get(), timeFormat, &timeLength) || static_cast<guint64>(timeLength) == GST_CLOCK_TIME_NONE;
</span><del>-#else
- bool failure = !gst_element_query_duration(m_playBin.get(), &timeFormat, &timeLength) || timeFormat != GST_FORMAT_TIME || static_cast<guint64>(timeLength) == GST_CLOCK_TIME_NONE;
-#endif
</del><span class="cx"> if (failure) {
</span><span class="cx"> LOG_MEDIA_MESSAGE("Time duration query failed for %s", m_url.string().utf8().data());
</span><span class="cx"> return numeric_limits<float>::infinity();
</span><span class="lines">@@ -688,7 +663,7 @@
</span><span class="cx">
</span><span class="cx"> m_hasVideo = numTracks > 0;
</span><span class="cx">
</span><del>-#if ENABLE(VIDEO_TRACK) && defined(GST_API_VERSION_1)
</del><ins>+#if ENABLE(VIDEO_TRACK)
</ins><span class="cx"> for (gint i = 0; i < numTracks; ++i) {
</span><span class="cx"> GRefPtr<GstPad> pad;
</span><span class="cx"> g_signal_emit_by_name(m_playBin.get(), "get-video-pad", i, &pad.outPtr(), NULL);
</span><span class="lines">@@ -741,7 +716,7 @@
</span><span class="cx">
</span><span class="cx"> m_hasAudio = numTracks > 0;
</span><span class="cx">
</span><del>-#if ENABLE(VIDEO_TRACK) && defined(GST_API_VERSION_1)
</del><ins>+#if ENABLE(VIDEO_TRACK)
</ins><span class="cx"> for (gint i = 0; i < numTracks; ++i) {
</span><span class="cx"> GRefPtr<GstPad> pad;
</span><span class="cx"> g_signal_emit_by_name(m_playBin.get(), "get-audio-pad", i, &pad.outPtr(), NULL);
</span><span class="lines">@@ -770,7 +745,7 @@
</span><span class="cx"> m_player->mediaPlayerClient()->mediaPlayerEngineUpdated(m_player);
</span><span class="cx"> }
</span><span class="cx">
</span><del>-#if ENABLE(VIDEO_TRACK) && defined(GST_API_VERSION_1)
</del><ins>+#if ENABLE(VIDEO_TRACK)
</ins><span class="cx"> void MediaPlayerPrivateGStreamer::textChanged()
</span><span class="cx"> {
</span><span class="cx"> if (m_textTimerHandler)
</span><span class="lines">@@ -927,8 +902,8 @@
</span><span class="cx"> for (guint index = 0; index < gst_query_get_n_buffering_ranges(query); index++) {
</span><span class="cx"> gint64 rangeStart = 0, rangeStop = 0;
</span><span class="cx"> if (gst_query_parse_nth_buffering_range(query, index, &rangeStart, &rangeStop))
</span><del>- timeRanges->add(static_cast<float>((rangeStart * mediaDuration) / gPercentMax),
- static_cast<float>((rangeStop * mediaDuration) / gPercentMax));
</del><ins>+ timeRanges->add(static_cast<float>((rangeStart * mediaDuration) / GST_FORMAT_PERCENT_MAX),
+ static_cast<float>((rangeStop * mediaDuration) / GST_FORMAT_PERCENT_MAX));
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> // Fallback to the more general maxTimeLoaded() if no range has
</span><span class="lines">@@ -1033,11 +1008,7 @@
</span><span class="cx"> case GST_MESSAGE_BUFFERING:
</span><span class="cx"> processBufferingStats(message);
</span><span class="cx"> break;
</span><del>-#ifdef GST_API_VERSION_1
</del><span class="cx"> case GST_MESSAGE_DURATION_CHANGED:
</span><del>-#else
- case GST_MESSAGE_DURATION:
-#endif
</del><span class="cx"> if (messageSourceIsPlaybin)
</span><span class="cx"> durationChanged();
</span><span class="cx"> break;
</span><span class="lines">@@ -1062,7 +1033,7 @@
</span><span class="cx"> g_free(detail);
</span><span class="cx"> }
</span><span class="cx"> break;
</span><del>-#if ENABLE(VIDEO_TRACK) && defined(GST_API_VERSION_1)
</del><ins>+#if ENABLE(VIDEO_TRACK)
</ins><span class="cx"> case GST_MESSAGE_TOC:
</span><span class="cx"> processTableOfContents(message);
</span><span class="cx"> break;
</span><span class="lines">@@ -1095,7 +1066,7 @@
</span><span class="cx"> updateStates();
</span><span class="cx"> }
</span><span class="cx">
</span><del>-#if ENABLE(VIDEO_TRACK) && defined(GST_API_VERSION_1)
</del><ins>+#if ENABLE(VIDEO_TRACK)
</ins><span class="cx"> void MediaPlayerPrivateGStreamer::processTableOfContents(GstMessage* message)
</span><span class="cx"> {
</span><span class="cx"> if (m_chaptersTrack)
</span><span class="lines">@@ -1239,11 +1210,7 @@
</span><span class="cx">
</span><span class="cx"> GstFormat fmt = GST_FORMAT_BYTES;
</span><span class="cx"> gint64 length = 0;
</span><del>-#ifdef GST_API_VERSION_1
</del><span class="cx"> if (gst_element_query_duration(m_source.get(), fmt, &length)) {
</span><del>-#else
- if (gst_element_query_duration(m_source.get(), &fmt, &length)) {
-#endif
</del><span class="cx"> INFO_MEDIA_MESSAGE("totalBytes %" G_GINT64_FORMAT, length);
</span><span class="cx"> m_totalBytes = static_cast<unsigned>(length);
</span><span class="cx"> m_isStreaming = !length;
</span><span class="lines">@@ -1255,7 +1222,6 @@
</span><span class="cx"> GstIterator* iter = gst_element_iterate_src_pads(m_source.get());
</span><span class="cx"> bool done = false;
</span><span class="cx"> while (!done) {
</span><del>-#ifdef GST_API_VERSION_1
</del><span class="cx"> GValue item = G_VALUE_INIT;
</span><span class="cx"> switch (gst_iterator_next(iter, &item)) {
</span><span class="cx"> case GST_ITERATOR_OK: {
</span><span class="lines">@@ -1265,18 +1231,6 @@
</span><span class="cx"> length = padLength;
</span><span class="cx"> break;
</span><span class="cx"> }
</span><del>-#else
- gpointer data;
-
- switch (gst_iterator_next(iter, &data)) {
- case GST_ITERATOR_OK: {
- GRefPtr<GstPad> pad = adoptGRef(GST_PAD_CAST(data));
- gint64 padLength = 0;
- if (gst_pad_query_duration(pad.get(), &fmt, &padLength) && padLength > length)
- length = padLength;
- break;
- }
-#endif
</del><span class="cx"> case GST_ITERATOR_RESYNC:
</span><span class="cx"> gst_iterator_resync(iter);
</span><span class="cx"> break;
</span><span class="lines">@@ -1287,9 +1241,7 @@
</span><span class="cx"> break;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-#ifdef GST_API_VERSION_1
</del><span class="cx"> g_value_unset(&item);
</span><del>-#endif
</del><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> gst_iterator_free(iter);
</span><span class="lines">@@ -1905,10 +1857,10 @@
</span><span class="cx">
</span><span class="cx"> // gst_element_factory_make() returns a floating reference so
</span><span class="cx"> // we should not adopt.
</span><del>- m_playBin = gst_element_factory_make(gPlaybinName, "play");
</del><ins>+ m_playBin = gst_element_factory_make("playbin", "play");
</ins><span class="cx"> setStreamVolumeElement(GST_STREAM_VOLUME(m_playBin.get()));
</span><span class="cx">
</span><del>- GRefPtr<GstBus> bus = webkitGstPipelineGetBus(GST_PIPELINE(m_playBin.get()));
</del><ins>+ GRefPtr<GstBus> bus = adoptGRef(gst_pipeline_get_bus(GST_PIPELINE(m_playBin.get())));
</ins><span class="cx"> gst_bus_add_signal_watch(bus.get());
</span><span class="cx"> g_signal_connect(bus.get(), "message", G_CALLBACK(mediaPlayerPrivateMessageCallback), this);
</span><span class="cx">
</span><span class="lines">@@ -1917,7 +1869,7 @@
</span><span class="cx"> g_signal_connect(m_playBin.get(), "notify::source", G_CALLBACK(mediaPlayerPrivateSourceChangedCallback), this);
</span><span class="cx"> g_signal_connect(m_playBin.get(), "video-changed", G_CALLBACK(mediaPlayerPrivateVideoChangedCallback), this);
</span><span class="cx"> g_signal_connect(m_playBin.get(), "audio-changed", G_CALLBACK(mediaPlayerPrivateAudioChangedCallback), this);
</span><del>-#if ENABLE(VIDEO_TRACK) && defined(GST_API_VERSION_1)
</del><ins>+#if ENABLE(VIDEO_TRACK)
</ins><span class="cx"> if (webkitGstCheckVersion(1, 1, 2)) {
</span><span class="cx"> g_signal_connect(m_playBin.get(), "text-changed", G_CALLBACK(mediaPlayerPrivateTextChangedCallback), this);
</span><span class="cx">
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicsgstreamerMediaPlayerPrivateGStreamerh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h (159729 => 159730)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h        2013-11-23 11:05:53 UTC (rev 159729)
+++ trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h        2013-11-23 14:35:26 UTC (rev 159730)
</span><span class="lines">@@ -100,7 +100,7 @@
</span><span class="cx"> void notifyPlayerOfVideoCaps();
</span><span class="cx"> void notifyPlayerOfAudio();
</span><span class="cx">
</span><del>-#if ENABLE(VIDEO_TRACK) && defined(GST_API_VERSION_1)
</del><ins>+#if ENABLE(VIDEO_TRACK)
</ins><span class="cx"> void textChanged();
</span><span class="cx"> void notifyPlayerOfText();
</span><span class="cx">
</span><span class="lines">@@ -143,7 +143,7 @@
</span><span class="cx">
</span><span class="cx"> void setDownloadBuffering();
</span><span class="cx"> void processBufferingStats(GstMessage*);
</span><del>-#if ENABLE(VIDEO_TRACK) && defined(GST_API_VERSION_1)
</del><ins>+#if ENABLE(VIDEO_TRACK)
</ins><span class="cx"> void processTableOfContents(GstMessage*);
</span><span class="cx"> void processTableOfContentsEntry(GstTocEntry*, GstTocEntry* parent);
</span><span class="cx"> #endif
</span><span class="lines">@@ -154,7 +154,7 @@
</span><span class="cx"> private:
</span><span class="cx"> GRefPtr<GstElement> m_playBin;
</span><span class="cx"> GRefPtr<GstElement> m_source;
</span><del>-#if ENABLE(VIDEO_TRACK) && defined(GST_API_VERSION_1)
</del><ins>+#if ENABLE(VIDEO_TRACK)
</ins><span class="cx"> GRefPtr<GstElement> m_textAppSink;
</span><span class="cx"> GRefPtr<GstPad> m_textAppSinkPad;
</span><span class="cx"> #endif
</span><span class="lines">@@ -198,7 +198,7 @@
</span><span class="cx"> GstState m_requestedState;
</span><span class="cx"> GRefPtr<GstElement> m_autoAudioSink;
</span><span class="cx"> bool m_missingPlugins;
</span><del>-#if ENABLE(VIDEO_TRACK) && defined(GST_API_VERSION_1)
</del><ins>+#if ENABLE(VIDEO_TRACK)
</ins><span class="cx"> Vector<RefPtr<AudioTrackPrivateGStreamer>> m_audioTracks;
</span><span class="cx"> Vector<RefPtr<InbandTextTrackPrivateGStreamer>> m_textTracks;
</span><span class="cx"> Vector<RefPtr<VideoTrackPrivateGStreamer>> m_videoTracks;
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicsgstreamerMediaPlayerPrivateGStreamerBasecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp (159729 => 159730)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp        2013-11-23 11:05:53 UTC (rev 159729)
+++ trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp        2013-11-23 14:35:26 UTC (rev 159730)
</span><span class="lines">@@ -28,7 +28,6 @@
</span><span class="cx">
</span><span class="cx"> #include "ColorSpace.h"
</span><span class="cx"> #include "GStreamerUtilities.h"
</span><del>-#include "GStreamerVersioning.h"
</del><span class="cx"> #include "GraphicsContext.h"
</span><span class="cx"> #include "GraphicsTypes.h"
</span><span class="cx"> #include "ImageGStreamer.h"
</span><span class="lines">@@ -41,11 +40,7 @@
</span><span class="cx"> #include <gst/gst.h>
</span><span class="cx"> #include <wtf/text/CString.h>
</span><span class="cx">
</span><del>-#ifdef GST_API_VERSION_1
</del><span class="cx"> #include <gst/audio/streamvolume.h>
</span><del>-#else
-#include <gst/interfaces/streamvolume.h>
-#endif
</del><span class="cx">
</span><span class="cx"> #if GST_CHECK_VERSION(1, 1, 0) && USE(ACCELERATED_COMPOSITING) && USE(TEXTURE_MAPPER_GL)
</span><span class="cx"> #include "TextureMapperGL.h"
</span><span class="lines">@@ -164,13 +159,7 @@
</span><span class="cx"> if (!m_videoSize.isEmpty())
</span><span class="cx"> return m_videoSize;
</span><span class="cx">
</span><del>-#ifdef GST_API_VERSION_1
</del><span class="cx"> GRefPtr<GstCaps> caps = currentVideoSinkCaps();
</span><del>-#else
- g_mutex_lock(m_bufferMutex);
- GRefPtr<GstCaps> caps = m_buffer ? GST_BUFFER_CAPS(m_buffer) : 0;
- g_mutex_unlock(m_bufferMutex);
-#endif
</del><span class="cx"> if (!caps)
</span><span class="cx"> return IntSize();
</span><span class="cx">
</span><span class="lines">@@ -324,11 +313,7 @@
</span><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> const void* srcData = 0;
</span><del>-#ifdef GST_API_VERSION_1
</del><span class="cx"> GRefPtr<GstCaps> caps = currentVideoSinkCaps();
</span><del>-#else
- GRefPtr<GstCaps> caps = GST_BUFFER_CAPS(m_buffer);
-#endif
</del><span class="cx"> if (!caps) {
</span><span class="cx"> g_mutex_unlock(m_bufferMutex);
</span><span class="cx"> return 0;
</span><span class="lines">@@ -359,19 +344,13 @@
</span><span class="cx"> }
</span><span class="cx"> #endif
</span><span class="cx">
</span><del>-#ifdef GST_API_VERSION_1
</del><span class="cx"> GstMapInfo srcInfo;
</span><span class="cx"> gst_buffer_map(m_buffer, &srcInfo, GST_MAP_READ);
</span><span class="cx"> srcData = srcInfo.data;
</span><del>-#else
- srcData = GST_BUFFER_DATA(m_buffer);
-#endif
</del><span class="cx">
</span><span class="cx"> texture->updateContents(srcData, WebCore::IntRect(WebCore::IntPoint(0, 0), size), WebCore::IntPoint(0, 0), stride, BitmapTexture::UpdateCannotModifyOriginalImageData);
</span><span class="cx">
</span><del>-#ifdef GST_API_VERSION_1
</del><span class="cx"> gst_buffer_unmap(m_buffer, &srcInfo);
</span><del>-#endif
</del><span class="cx">
</span><span class="cx"> g_mutex_unlock(m_bufferMutex);
</span><span class="cx"> return texture;
</span><span class="lines">@@ -420,11 +399,7 @@
</span><span class="cx"> return;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-#ifdef GST_API_VERSION_1
</del><span class="cx"> GRefPtr<GstCaps> caps = currentVideoSinkCaps();
</span><del>-#else
- GRefPtr<GstCaps> caps = GST_BUFFER_CAPS(m_buffer);
-#endif
</del><span class="cx"> if (!caps) {
</span><span class="cx"> g_mutex_unlock(m_bufferMutex);
</span><span class="cx"> return;
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicsgstreamerTextCombinerGStreamercpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/gstreamer/TextCombinerGStreamer.cpp (159729 => 159730)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/gstreamer/TextCombinerGStreamer.cpp        2013-11-23 11:05:53 UTC (rev 159729)
+++ trunk/Source/WebCore/platform/graphics/gstreamer/TextCombinerGStreamer.cpp        2013-11-23 14:35:26 UTC (rev 159730)
</span><span class="lines">@@ -24,7 +24,7 @@
</span><span class="cx"> */
</span><span class="cx">
</span><span class="cx"> #include "config.h"
</span><del>-#if ENABLE(VIDEO) && USE(GSTREAMER) && ENABLE(VIDEO_TRACK) && defined(GST_API_VERSION_1)
</del><ins>+#if ENABLE(VIDEO) && USE(GSTREAMER) && ENABLE(VIDEO_TRACK)
</ins><span class="cx">
</span><span class="cx"> #include "TextCombinerGStreamer.h"
</span><span class="cx">
</span><span class="lines">@@ -291,4 +291,4 @@
</span><span class="cx"> return GST_ELEMENT(g_object_new(WEBKIT_TYPE_TEXT_COMBINER, 0));
</span><span class="cx"> }
</span><span class="cx">
</span><del>-#endif // ENABLE(VIDEO) && USE(GSTREAMER) && ENABLE(VIDEO_TRACK) && defined(GST_API_VERSION_1)
</del><ins>+#endif // ENABLE(VIDEO) && USE(GSTREAMER) && ENABLE(VIDEO_TRACK)
</ins></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicsgstreamerTextCombinerGStreamerh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/gstreamer/TextCombinerGStreamer.h (159729 => 159730)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/gstreamer/TextCombinerGStreamer.h        2013-11-23 11:05:53 UTC (rev 159729)
+++ trunk/Source/WebCore/platform/graphics/gstreamer/TextCombinerGStreamer.h        2013-11-23 14:35:26 UTC (rev 159730)
</span><span class="lines">@@ -26,7 +26,7 @@
</span><span class="cx"> #ifndef TextCombinerGStreamer_h
</span><span class="cx"> #define TextCombinerGStreamer_h
</span><span class="cx">
</span><del>-#if ENABLE(VIDEO) && USE(GSTREAMER) && ENABLE(VIDEO_TRACK) && defined(GST_API_VERSION_1)
</del><ins>+#if ENABLE(VIDEO) && USE(GSTREAMER) && ENABLE(VIDEO_TRACK)
</ins><span class="cx">
</span><span class="cx"> #include <glib-object.h>
</span><span class="cx"> #include <gst/gst.h>
</span><span class="lines">@@ -62,5 +62,5 @@
</span><span class="cx">
</span><span class="cx"> GstElement* webkitTextCombinerNew();
</span><span class="cx">
</span><del>-#endif // ENABLE(VIDEO) && USE(GSTREAMER) && ENABLE(VIDEO_TRACK) && defined(GST_API_VERSION_1)
</del><ins>+#endif // ENABLE(VIDEO) && USE(GSTREAMER) && ENABLE(VIDEO_TRACK)
</ins><span class="cx"> #endif
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicsgstreamerTextSinkGStreamercpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/gstreamer/TextSinkGStreamer.cpp (159729 => 159730)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/gstreamer/TextSinkGStreamer.cpp        2013-11-23 11:05:53 UTC (rev 159729)
+++ trunk/Source/WebCore/platform/graphics/gstreamer/TextSinkGStreamer.cpp        2013-11-23 14:35:26 UTC (rev 159730)
</span><span class="lines">@@ -24,7 +24,7 @@
</span><span class="cx"> */
</span><span class="cx">
</span><span class="cx"> #include "config.h"
</span><del>-#if ENABLE(VIDEO) && USE(GSTREAMER) && ENABLE(VIDEO_TRACK) && defined(GST_API_VERSION_1)
</del><ins>+#if ENABLE(VIDEO) && USE(GSTREAMER) && ENABLE(VIDEO_TRACK)
</ins><span class="cx">
</span><span class="cx"> #include "TextSinkGStreamer.h"
</span><span class="cx">
</span><span class="lines">@@ -98,4 +98,4 @@
</span><span class="cx"> return GST_ELEMENT(g_object_new(WEBKIT_TYPE_TEXT_SINK, 0));
</span><span class="cx"> }
</span><span class="cx">
</span><del>-#endif // ENABLE(VIDEO) && USE(GSTREAMER) && ENABLE(VIDEO_TRACK) && defined(GST_API_VERSION_1)
</del><ins>+#endif // ENABLE(VIDEO) && USE(GSTREAMER) && ENABLE(VIDEO_TRACK)
</ins></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicsgstreamerTextSinkGStreamerh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/gstreamer/TextSinkGStreamer.h (159729 => 159730)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/gstreamer/TextSinkGStreamer.h        2013-11-23 11:05:53 UTC (rev 159729)
+++ trunk/Source/WebCore/platform/graphics/gstreamer/TextSinkGStreamer.h        2013-11-23 14:35:26 UTC (rev 159730)
</span><span class="lines">@@ -26,7 +26,7 @@
</span><span class="cx"> #ifndef TextSinkGStreamer_h
</span><span class="cx"> #define TextSinkGStreamer_h
</span><span class="cx">
</span><del>-#if ENABLE(VIDEO) && USE(GSTREAMER) && ENABLE(VIDEO_TRACK) && defined(GST_API_VERSION_1)
</del><ins>+#if ENABLE(VIDEO) && USE(GSTREAMER) && ENABLE(VIDEO_TRACK)
</ins><span class="cx">
</span><span class="cx"> #include <glib-object.h>
</span><span class="cx"> #include <gst/app/gstappsink.h>
</span><span class="lines">@@ -61,5 +61,5 @@
</span><span class="cx">
</span><span class="cx"> GstElement* webkitTextSinkNew();
</span><span class="cx">
</span><del>-#endif // ENABLE(VIDEO) && USE(GSTREAMER) && ENABLE(VIDEO_TRACK) && defined(GST_API_VERSION_1)
</del><ins>+#endif // ENABLE(VIDEO) && USE(GSTREAMER) && ENABLE(VIDEO_TRACK)
</ins><span class="cx"> #endif
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicsgstreamerTrackPrivateBaseGStreamercpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/gstreamer/TrackPrivateBaseGStreamer.cpp (159729 => 159730)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/gstreamer/TrackPrivateBaseGStreamer.cpp        2013-11-23 11:05:53 UTC (rev 159729)
+++ trunk/Source/WebCore/platform/graphics/gstreamer/TrackPrivateBaseGStreamer.cpp        2013-11-23 14:35:26 UTC (rev 159730)
</span><span class="lines">@@ -25,7 +25,7 @@
</span><span class="cx">
</span><span class="cx"> #include "config.h"
</span><span class="cx">
</span><del>-#if ENABLE(VIDEO) && USE(GSTREAMER) && ENABLE(VIDEO_TRACK) && defined(GST_API_VERSION_1)
</del><ins>+#if ENABLE(VIDEO) && USE(GSTREAMER) && ENABLE(VIDEO_TRACK)
</ins><span class="cx">
</span><span class="cx"> #include "TrackPrivateBaseGStreamer.h"
</span><span class="cx">
</span><span class="lines">@@ -162,4 +162,4 @@
</span><span class="cx">
</span><span class="cx"> } // namespace WebCore
</span><span class="cx">
</span><del>-#endif // ENABLE(VIDEO) && USE(GSTREAMER) && ENABLE(VIDEO_TRACK) && defined(GST_API_VERSION_1)
</del><ins>+#endif // ENABLE(VIDEO) && USE(GSTREAMER) && ENABLE(VIDEO_TRACK)
</ins></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicsgstreamerTrackPrivateBaseGStreamerh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/gstreamer/TrackPrivateBaseGStreamer.h (159729 => 159730)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/gstreamer/TrackPrivateBaseGStreamer.h        2013-11-23 11:05:53 UTC (rev 159729)
+++ trunk/Source/WebCore/platform/graphics/gstreamer/TrackPrivateBaseGStreamer.h        2013-11-23 14:35:26 UTC (rev 159730)
</span><span class="lines">@@ -26,7 +26,7 @@
</span><span class="cx"> #ifndef TrackPrivateBaseGStreamer_h
</span><span class="cx"> #define TrackPrivateBaseGStreamer_h
</span><span class="cx">
</span><del>-#if ENABLE(VIDEO) && USE(GSTREAMER) && ENABLE(VIDEO_TRACK) && defined(GST_API_VERSION_1)
</del><ins>+#if ENABLE(VIDEO) && USE(GSTREAMER) && ENABLE(VIDEO_TRACK)
</ins><span class="cx">
</span><span class="cx"> #include "GRefPtrGStreamer.h"
</span><span class="cx"> #include <wtf/text/WTFString.h>
</span><span class="lines">@@ -71,6 +71,6 @@
</span><span class="cx">
</span><span class="cx"> } // namespace WebCore
</span><span class="cx">
</span><del>-#endif // ENABLE(VIDEO) && USE(GSTREAMER) && ENABLE(VIDEO_TRACK) && defined(GST_API_VERSION_1)
</del><ins>+#endif // ENABLE(VIDEO) && USE(GSTREAMER) && ENABLE(VIDEO_TRACK)
</ins><span class="cx">
</span><span class="cx"> #endif // TrackPrivateBaseGStreamer_h
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicsgstreamerVideoSinkGStreamercpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/gstreamer/VideoSinkGStreamer.cpp (159729 => 159730)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/gstreamer/VideoSinkGStreamer.cpp        2013-11-23 11:05:53 UTC (rev 159729)
+++ trunk/Source/WebCore/platform/graphics/gstreamer/VideoSinkGStreamer.cpp        2013-11-23 14:35:26 UTC (rev 159730)
</span><span class="lines">@@ -30,17 +30,14 @@
</span><span class="cx">
</span><span class="cx"> #if ENABLE(VIDEO) && USE(GSTREAMER)
</span><span class="cx"> #include "GRefPtrGStreamer.h"
</span><del>-#include "GStreamerVersioning.h"
</del><ins>+#include "GStreamerUtilities.h"
</ins><span class="cx"> #include "IntSize.h"
</span><span class="cx"> #include <glib.h>
</span><span class="cx"> #include <gst/gst.h>
</span><del>-#ifdef GST_API_VERSION_1
</del><span class="cx"> #include <gst/video/gstvideometa.h>
</span><del>-#endif
</del><span class="cx"> #include <wtf/OwnPtr.h>
</span><span class="cx">
</span><span class="cx"> // CAIRO_FORMAT_RGB24 used to render the video buffers is little/big endian dependant.
</span><del>-#ifdef GST_API_VERSION_1
</del><span class="cx"> #if G_BYTE_ORDER == G_LITTLE_ENDIAN
</span><span class="cx"> #define GST_CAPS_FORMAT "{ BGRx, BGRA }"
</span><span class="cx"> #else
</span><span class="lines">@@ -51,17 +48,8 @@
</span><span class="cx"> #else
</span><span class="cx"> #define GST_FEATURED_CAPS
</span><span class="cx"> #endif
</span><del>-#endif // GST_API_VERSION_1
</del><span class="cx">
</span><del>-#ifdef GST_API_VERSION_1
</del><span class="cx"> #define WEBKIT_VIDEO_SINK_PAD_CAPS GST_FEATURED_CAPS GST_VIDEO_CAPS_MAKE(GST_CAPS_FORMAT)
</span><del>-#else
-#if G_BYTE_ORDER == G_LITTLE_ENDIAN
-#define WEBKIT_VIDEO_SINK_PAD_CAPS GST_VIDEO_CAPS_BGRx ";" GST_VIDEO_CAPS_BGRA
-#else
-#define WEBKIT_VIDEO_SINK_PAD_CAPS GST_VIDEO_CAPS_xRGB ";" GST_VIDEO_CAPS_ARGB
-#endif
-#endif // GST_API_VERSION_1
</del><span class="cx">
</span><span class="cx"> static GstStaticPadTemplate s_sinkTemplate = GST_STATIC_PAD_TEMPLATE("sink", GST_PAD_SINK, GST_PAD_ALWAYS, GST_STATIC_CAPS(WEBKIT_VIDEO_SINK_PAD_CAPS));
</span><span class="cx">
</span><span class="lines">@@ -87,9 +75,7 @@
</span><span class="cx"> GMutex* bufferMutex;
</span><span class="cx"> GCond* dataCondition;
</span><span class="cx">
</span><del>-#ifdef GST_API_VERSION_1
</del><span class="cx"> GstVideoInfo info;
</span><del>-#endif
</del><span class="cx">
</span><span class="cx"> GstCaps* currentCaps;
</span><span class="cx">
</span><span class="lines">@@ -121,9 +107,7 @@
</span><span class="cx"> sink->priv->bufferMutex = g_mutex_new();
</span><span class="cx"> #endif
</span><span class="cx">
</span><del>-#ifdef GST_API_VERSION_1
</del><span class="cx"> gst_video_info_init(&sink->priv->info);
</span><del>-#endif
</del><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> static gboolean webkitVideoSinkTimeoutCallback(gpointer data)
</span><span class="lines">@@ -164,23 +148,12 @@
</span><span class="cx">
</span><span class="cx"> priv->buffer = gst_buffer_ref(buffer);
</span><span class="cx">
</span><del>-#ifndef GST_API_VERSION_1
- // For the unlikely case where the buffer has no caps, the caps
- // are implicitely the caps of the pad. This shouldn't happen.
- if (UNLIKELY(!GST_BUFFER_CAPS(buffer))) {
- buffer = priv->buffer = gst_buffer_make_metadata_writable(priv->buffer);
- gst_buffer_set_caps(priv->buffer, GST_PAD_CAPS(GST_BASE_SINK_PAD(baseSink)));
- }
-
- GRefPtr<GstCaps> caps = GST_BUFFER_CAPS(buffer);
-#else
</del><span class="cx"> GRefPtr<GstCaps> caps;
</span><span class="cx"> // The video info structure is valid only if the sink handled an allocation query.
</span><span class="cx"> if (GST_VIDEO_INFO_FORMAT(&priv->info) != GST_VIDEO_FORMAT_UNKNOWN)
</span><span class="cx"> caps = adoptGRef(gst_video_info_to_caps(&priv->info));
</span><span class="cx"> else
</span><span class="cx"> caps = priv->currentCaps;
</span><del>-#endif
</del><span class="cx">
</span><span class="cx"> GstVideoFormat format;
</span><span class="cx"> WebCore::IntSize size;
</span><span class="lines">@@ -199,7 +172,7 @@
</span><span class="cx"> // The buffer content should not be changed here because the same buffer
</span><span class="cx"> // could be passed multiple times to this method (in theory).
</span><span class="cx">
</span><del>- GstBuffer* newBuffer = createGstBuffer(buffer);
</del><ins>+ GstBuffer* newBuffer = WebCore::createGstBuffer(buffer);
</ins><span class="cx">
</span><span class="cx"> // Check if allocation failed.
</span><span class="cx"> if (UNLIKELY(!newBuffer)) {
</span><span class="lines">@@ -211,17 +184,12 @@
</span><span class="cx"> // one function call per video pixel is just too expensive:
</span><span class="cx"> // For 720p/PAL for example this means 1280*720*25=23040000
</span><span class="cx"> // function calls per second!
</span><del>-#ifndef GST_API_VERSION_1
- const guint8* source = GST_BUFFER_DATA(buffer);
- guint8* destination = GST_BUFFER_DATA(newBuffer);
-#else
</del><span class="cx"> GstMapInfo sourceInfo;
</span><span class="cx"> GstMapInfo destinationInfo;
</span><span class="cx"> gst_buffer_map(buffer, &sourceInfo, GST_MAP_READ);
</span><span class="cx"> const guint8* source = const_cast<guint8*>(sourceInfo.data);
</span><span class="cx"> gst_buffer_map(newBuffer, &destinationInfo, GST_MAP_WRITE);
</span><span class="cx"> guint8* destination = static_cast<guint8*>(destinationInfo.data);
</span><del>-#endif
</del><span class="cx">
</span><span class="cx"> for (int x = 0; x < size.height(); x++) {
</span><span class="cx"> for (int y = 0; y < size.width(); y++) {
</span><span class="lines">@@ -243,10 +211,8 @@
</span><span class="cx"> }
</span><span class="cx"> }
</span><span class="cx">
</span><del>-#ifdef GST_API_VERSION_1
</del><span class="cx"> gst_buffer_unmap(buffer, &sourceInfo);
</span><span class="cx"> gst_buffer_unmap(newBuffer, &destinationInfo);
</span><del>-#endif
</del><span class="cx"> gst_buffer_unref(buffer);
</span><span class="cx"> buffer = priv->buffer = newBuffer;
</span><span class="cx"> }
</span><span class="lines">@@ -375,19 +341,16 @@
</span><span class="cx">
</span><span class="cx"> GST_DEBUG_OBJECT(sink, "Current caps %" GST_PTR_FORMAT ", setting caps %" GST_PTR_FORMAT, priv->currentCaps, caps);
</span><span class="cx">
</span><del>-#ifdef GST_API_VERSION_1
</del><span class="cx"> GstVideoInfo info;
</span><span class="cx"> if (!gst_video_info_from_caps(&info, caps)) {
</span><span class="cx"> GST_ERROR_OBJECT(sink, "Invalid caps %" GST_PTR_FORMAT, caps);
</span><span class="cx"> return FALSE;
</span><span class="cx"> }
</span><del>-#endif
</del><span class="cx">
</span><span class="cx"> gst_caps_replace(&priv->currentCaps, caps);
</span><span class="cx"> return TRUE;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-#ifdef GST_API_VERSION_1
</del><span class="cx"> static gboolean webkitVideoSinkProposeAllocation(GstBaseSink* baseSink, GstQuery* query)
</span><span class="cx"> {
</span><span class="cx"> GstCaps* caps;
</span><span class="lines">@@ -406,31 +369,7 @@
</span><span class="cx"> #endif
</span><span class="cx"> return TRUE;
</span><span class="cx"> }
</span><del>-#endif
</del><span class="cx">
</span><del>-#ifndef GST_API_VERSION_1
-static void webkitVideoSinkMarshalVoidAndMiniObject(GClosure* closure, GValue*, guint parametersNumber, const GValue* parameterValues, gpointer, gpointer marshalData)
-{
- typedef void (*marshalfunc_VOID__MINIOBJECT) (gpointer obj, gpointer arg1, gpointer data2);
- marshalfunc_VOID__MINIOBJECT callback;
- GCClosure* cclosure = reinterpret_cast<GCClosure*>(closure);
- gpointer data1, data2;
-
- g_return_if_fail(parametersNumber == 2);
-
- if (G_CCLOSURE_SWAP_DATA(closure)) {
- data1 = closure->data;
- data2 = g_value_peek_pointer(parameterValues + 0);
- } else {
- data1 = g_value_peek_pointer(parameterValues + 0);
- data2 = closure->data;
- }
-
- callback = (marshalfunc_VOID__MINIOBJECT) (marshalData ? marshalData : cclosure->callback);
- callback(data1, gst_value_get_mini_object(parameterValues + 1), data2);
-}
-#endif
-
</del><span class="cx"> static void webkit_video_sink_class_init(WebKitVideoSinkClass* klass)
</span><span class="cx"> {
</span><span class="cx"> GObjectClass* gobjectClass = G_OBJECT_CLASS(klass);
</span><span class="lines">@@ -438,7 +377,7 @@
</span><span class="cx"> GstElementClass* elementClass = GST_ELEMENT_CLASS(klass);
</span><span class="cx">
</span><span class="cx"> gst_element_class_add_pad_template(elementClass, gst_static_pad_template_get(&s_sinkTemplate));
</span><del>- setGstElementClassMetadata(elementClass, "WebKit video sink", "Sink/Video", "Sends video data from a GStreamer pipeline to a Cairo surface", "Alp Toker <alp@atoker.com>");
</del><ins>+ gst_element_class_set_metadata(elementClass, "WebKit video sink", "Sink/Video", "Sends video data from a GStreamer pipeline to a Cairo surface", "Alp Toker <alp@atoker.com>");
</ins><span class="cx">
</span><span class="cx"> g_type_class_add_private(klass, sizeof(WebKitVideoSinkPrivate));
</span><span class="cx">
</span><span class="lines">@@ -452,9 +391,7 @@
</span><span class="cx"> baseSinkClass->stop = webkitVideoSinkStop;
</span><span class="cx"> baseSinkClass->start = webkitVideoSinkStart;
</span><span class="cx"> baseSinkClass->set_caps = webkitVideoSinkSetCaps;
</span><del>-#ifdef GST_API_VERSION_1
</del><span class="cx"> baseSinkClass->propose_allocation = webkitVideoSinkProposeAllocation;
</span><del>-#endif
</del><span class="cx">
</span><span class="cx"> g_object_class_install_property(gobjectClass, PROP_CAPS,
</span><span class="cx"> g_param_spec_boxed("current-caps", "Current-Caps", "Current caps", GST_TYPE_CAPS, G_PARAM_READABLE));
</span><span class="lines">@@ -465,11 +402,7 @@
</span><span class="cx"> 0, // Class offset
</span><span class="cx"> 0, // Accumulator
</span><span class="cx"> 0, // Accumulator data
</span><del>-#ifndef GST_API_VERSION_1
- webkitVideoSinkMarshalVoidAndMiniObject,
-#else
</del><span class="cx"> g_cclosure_marshal_generic,
</span><del>-#endif
</del><span class="cx"> G_TYPE_NONE, // Return type
</span><span class="cx"> 1, // Only one parameter
</span><span class="cx"> GST_TYPE_BUFFER);
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicsgstreamerVideoTrackPrivateGStreamercpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/gstreamer/VideoTrackPrivateGStreamer.cpp (159729 => 159730)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/gstreamer/VideoTrackPrivateGStreamer.cpp        2013-11-23 11:05:53 UTC (rev 159729)
+++ trunk/Source/WebCore/platform/graphics/gstreamer/VideoTrackPrivateGStreamer.cpp        2013-11-23 14:35:26 UTC (rev 159730)
</span><span class="lines">@@ -25,7 +25,7 @@
</span><span class="cx">
</span><span class="cx"> #include "config.h"
</span><span class="cx">
</span><del>-#if ENABLE(VIDEO) && USE(GSTREAMER) && ENABLE(VIDEO_TRACK) && defined(GST_API_VERSION_1)
</del><ins>+#if ENABLE(VIDEO) && USE(GSTREAMER) && ENABLE(VIDEO_TRACK)
</ins><span class="cx">
</span><span class="cx"> #include "VideoTrackPrivateGStreamer.h"
</span><span class="cx">
</span><span class="lines">@@ -58,4 +58,4 @@
</span><span class="cx">
</span><span class="cx"> } // namespace WebCore
</span><span class="cx">
</span><del>-#endif // ENABLE(VIDEO) && USE(GSTREAMER) && ENABLE(VIDEO_TRACK) && defined(GST_API_VERSION_1)
</del><ins>+#endif // ENABLE(VIDEO) && USE(GSTREAMER) && ENABLE(VIDEO_TRACK)
</ins></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicsgstreamerVideoTrackPrivateGStreamerh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/gstreamer/VideoTrackPrivateGStreamer.h (159729 => 159730)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/gstreamer/VideoTrackPrivateGStreamer.h        2013-11-23 11:05:53 UTC (rev 159729)
+++ trunk/Source/WebCore/platform/graphics/gstreamer/VideoTrackPrivateGStreamer.h        2013-11-23 14:35:26 UTC (rev 159730)
</span><span class="lines">@@ -26,7 +26,7 @@
</span><span class="cx"> #ifndef VideoTrackPrivateGStreamer_h
</span><span class="cx"> #define VideoTrackPrivateGStreamer_h
</span><span class="cx">
</span><del>-#if ENABLE(VIDEO) && USE(GSTREAMER) && ENABLE(VIDEO_TRACK) && defined(GST_API_VERSION_1)
</del><ins>+#if ENABLE(VIDEO) && USE(GSTREAMER) && ENABLE(VIDEO_TRACK)
</ins><span class="cx">
</span><span class="cx"> #include "GRefPtrGStreamer.h"
</span><span class="cx"> #include "TrackPrivateBaseGStreamer.h"
</span><span class="lines">@@ -59,6 +59,6 @@
</span><span class="cx">
</span><span class="cx"> } // namespace WebCore
</span><span class="cx">
</span><del>-#endif // ENABLE(VIDEO) && USE(GSTREAMER) && ENABLE(VIDEO_TRACK) && defined(GST_API_VERSION_1)
</del><ins>+#endif // ENABLE(VIDEO) && USE(GSTREAMER) && ENABLE(VIDEO_TRACK)
</ins><span class="cx">
</span><span class="cx"> #endif // VideoTrackPrivateGStreamer_h
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicsgstreamerWebKitMediaSourceGStreamercpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/gstreamer/WebKitMediaSourceGStreamer.cpp (159729 => 159730)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/gstreamer/WebKitMediaSourceGStreamer.cpp        2013-11-23 11:05:53 UTC (rev 159729)
+++ trunk/Source/WebCore/platform/graphics/gstreamer/WebKitMediaSourceGStreamer.cpp        2013-11-23 14:35:26 UTC (rev 159730)
</span><span class="lines">@@ -23,7 +23,8 @@
</span><span class="cx">
</span><span class="cx"> #if ENABLE(VIDEO) && ENABLE(MEDIA_SOURCE) && USE(GSTREAMER)
</span><span class="cx">
</span><del>-#include "GStreamerVersioning.h"
</del><ins>+#include "GRefPtrGStreamer.h"
+#include "GStreamerUtilities.h"
</ins><span class="cx"> #include "NotImplemented.h"
</span><span class="cx"> #include "TimeRanges.h"
</span><span class="cx"> #include <gst/app/gstappsrc.h>
</span><span class="lines">@@ -122,7 +123,7 @@
</span><span class="cx">
</span><span class="cx"> gst_element_class_add_pad_template(eklass, gst_static_pad_template_get(&srcTemplate));
</span><span class="cx">
</span><del>- setGstElementClassMetadata(eklass, "WebKit Media source element", "Source", "Handles Blob uris", "Stephane Jadaud <sjadaud@sii.fr>");
</del><ins>+ gst_element_class_set_metadata(eklass, "WebKit Media source element", "Source", "Handles Blob uris", "Stephane Jadaud <sjadaud@sii.fr>");
</ins><span class="cx">
</span><span class="cx"> /* Allows setting the uri using the 'location' property, which is used
</span><span class="cx"> * for example by gst_element_make_from_uri() */
</span><span class="lines">@@ -154,7 +155,7 @@
</span><span class="cx">
</span><span class="cx"> gst_element_sync_state_with_parent(element);
</span><span class="cx"> name.set(g_strdup_printf("src_%u", priv->nbSource));
</span><del>- ghostPad = webkitGstGhostPadFromStaticTemplate(&srcTemplate, name.get(), targetsrc.get());
</del><ins>+ ghostPad = WebCore::webkitGstGhostPadFromStaticTemplate(&srcTemplate, name.get(), targetsrc.get());
</ins><span class="cx"> gst_pad_set_active(ghostPad, TRUE);
</span><span class="cx">
</span><span class="cx"> priv->nbSource++;
</span><span class="lines">@@ -785,7 +786,7 @@
</span><span class="cx"> priv->sourceVideo.padAdded = TRUE;
</span><span class="cx"> }
</span><span class="cx"> GST_OBJECT_LOCK(m_src);
</span><del>- buffer = createGstBufferForData(data, length);
</del><ins>+ buffer = WebCore::createGstBufferForData(data, length);
</ins><span class="cx"> GST_OBJECT_UNLOCK(m_src);
</span><span class="cx">
</span><span class="cx"> ret = gst_app_src_push_buffer(GST_APP_SRC(priv->sourceVideo.appsrc), buffer);
</span><span class="lines">@@ -799,7 +800,7 @@
</span><span class="cx"> priv->sourceAudio.padAdded = TRUE;
</span><span class="cx"> }
</span><span class="cx"> GST_OBJECT_LOCK(m_src);
</span><del>- buffer = createGstBufferForData(data, length);
</del><ins>+ buffer = WebCore::createGstBufferForData(data, length);
</ins><span class="cx"> GST_OBJECT_UNLOCK(m_src);
</span><span class="cx">
</span><span class="cx"> ret = gst_app_src_push_buffer(GST_APP_SRC(priv->sourceAudio.appsrc), buffer);
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicsgstreamerWebKitWebSourceGStreamercpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp (159729 => 159730)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp        2013-11-23 11:05:53 UTC (rev 159729)
+++ trunk/Source/WebCore/platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp        2013-11-23 14:35:26 UTC (rev 159730)
</span><span class="lines">@@ -28,7 +28,7 @@
</span><span class="cx"> #include "CachedResourceLoader.h"
</span><span class="cx"> #include "CachedResourceRequest.h"
</span><span class="cx"> #include "GRefPtrGStreamer.h"
</span><del>-#include "GStreamerVersioning.h"
</del><ins>+#include "GStreamerUtilities.h"
</ins><span class="cx"> #include "MediaPlayer.h"
</span><span class="cx"> #include "NotImplemented.h"
</span><span class="cx"> #include "ResourceHandle.h"
</span><span class="lines">@@ -138,10 +138,6 @@
</span><span class="cx"> gchar* iradioGenre;
</span><span class="cx"> gchar* iradioUrl;
</span><span class="cx"> gchar* iradioTitle;
</span><del>-
- // TRUE if appsrc's version is >= 0.10.27, see
- // https://bugzilla.gnome.org/show_bug.cgi?id=609423
- gboolean haveAppSrc27;
</del><span class="cx"> };
</span><span class="cx">
</span><span class="cx"> enum {
</span><span class="lines">@@ -170,9 +166,6 @@
</span><span class="cx"> static GstStateChangeReturn webKitWebSrcChangeState(GstElement*, GstStateChange);
</span><span class="cx">
</span><span class="cx"> static gboolean webKitWebSrcQueryWithParent(GstPad*, GstObject*, GstQuery*);
</span><del>-#ifndef GST_API_VERSION_1
-static gboolean webKitWebSrcQuery(GstPad*, GstQuery*);
-#endif
</del><span class="cx">
</span><span class="cx"> static void webKitWebSrcNeedDataCb(GstAppSrc*, guint length, gpointer userData);
</span><span class="cx"> static void webKitWebSrcEnoughDataCb(GstAppSrc*, gpointer userData);
</span><span class="lines">@@ -204,7 +197,7 @@
</span><span class="cx">
</span><span class="cx"> gst_element_class_add_pad_template(eklass,
</span><span class="cx"> gst_static_pad_template_get(&srcTemplate));
</span><del>- setGstElementClassMetadata(eklass, "WebKit Web source element", "Source", "Handles HTTP/HTTPS uris",
</del><ins>+ gst_element_class_set_metadata(eklass, "WebKit Web source element", "Source", "Handles HTTP/HTTPS uris",
</ins><span class="cx"> "Sebastian Dröge <sebastian.droege@collabora.co.uk>");
</span><span class="cx">
</span><span class="cx"> // icecast stuff
</span><span class="lines">@@ -275,9 +268,6 @@
</span><span class="cx"> return;
</span><span class="cx"> }
</span><span class="cx">
</span><del>- GstElementFactory* factory = GST_ELEMENT_FACTORY(GST_ELEMENT_GET_CLASS(priv->appsrc)->elementfactory);
- priv->haveAppSrc27 = gst_plugin_feature_check_version(GST_PLUGIN_FEATURE(factory), 0, 10, 27);
-
</del><span class="cx"> gst_bin_add(GST_BIN(src), GST_ELEMENT(priv->appsrc));
</span><span class="cx">
</span><span class="cx">
</span><span class="lines">@@ -286,12 +276,8 @@
</span><span class="cx">
</span><span class="cx"> gst_element_add_pad(GST_ELEMENT(src), priv->srcpad);
</span><span class="cx">
</span><del>-#ifdef GST_API_VERSION_1
</del><span class="cx"> GST_OBJECT_FLAG_SET(priv->srcpad, GST_PAD_FLAG_NEED_PARENT);
</span><span class="cx"> gst_pad_set_query_function(priv->srcpad, webKitWebSrcQueryWithParent);
</span><del>-#else
- gst_pad_set_query_function(priv->srcpad, webKitWebSrcQuery);
-#endif
</del><span class="cx">
</span><span class="cx"> gst_app_src_set_callbacks(priv->appsrc, &appsrcCallbacks, src, 0);
</span><span class="cx"> gst_app_src_set_emit_signals(priv->appsrc, FALSE);
</span><span class="lines">@@ -314,8 +300,7 @@
</span><span class="cx"> // likely that libsoup already provides new data before
</span><span class="cx"> // the queue is really empty.
</span><span class="cx"> // This might need tweaking for ports not using libsoup.
</span><del>- if (priv->haveAppSrc27)
- g_object_set(priv->appsrc, "min-percent", 20, NULL);
</del><ins>+ g_object_set(priv->appsrc, "min-percent", 20, NULL);
</ins><span class="cx">
</span><span class="cx"> gst_app_src_set_caps(priv->appsrc, 0);
</span><span class="cx"> gst_app_src_set_size(priv->appsrc, -1);
</span><span class="lines">@@ -353,11 +338,7 @@
</span><span class="cx"> break;
</span><span class="cx"> }
</span><span class="cx"> case PROP_LOCATION:
</span><del>-#ifdef GST_API_VERSION_1
</del><span class="cx"> gst_uri_handler_set_uri(reinterpret_cast<GstURIHandler*>(src), g_value_get_string(value), 0);
</span><del>-#else
- gst_uri_handler_set_uri(reinterpret_cast<GstURIHandler*>(src), g_value_get_string(value));
-#endif
</del><span class="cx"> break;
</span><span class="cx"> default:
</span><span class="cx"> G_OBJECT_WARN_INVALID_PROPERTY_ID(object, propID, pspec);
</span><span class="lines">@@ -436,9 +417,7 @@
</span><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> if (priv->buffer) {
</span><del>-#ifdef GST_API_VERSION_1
</del><span class="cx"> unmapGstBuffer(priv->buffer.get());
</span><del>-#endif
</del><span class="cx"> priv->buffer.clear();
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -638,14 +617,6 @@
</span><span class="cx"> return result;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-#ifndef GST_API_VERSION_1
-static gboolean webKitWebSrcQuery(GstPad* pad, GstQuery* query)
-{
- GRefPtr<GstElement> src = adoptGRef(gst_pad_get_parent_element(pad));
- return webKitWebSrcQueryWithParent(pad, GST_OBJECT(src.get()), query);
-}
-#endif
-
</del><span class="cx"> static bool urlHasSupportedProtocol(const URL& url)
</span><span class="cx"> {
</span><span class="cx"> return url.isValid() && (url.protocolIsInHTTPFamily() || url.protocolIs("blob"));
</span><span class="lines">@@ -653,7 +624,6 @@
</span><span class="cx">
</span><span class="cx"> // uri handler interface
</span><span class="cx">
</span><del>-#ifdef GST_API_VERSION_1
</del><span class="cx"> static GstURIType webKitWebSrcUriGetType(GType)
</span><span class="cx"> {
</span><span class="cx"> return GST_URI_SRC;
</span><span class="lines">@@ -703,57 +673,6 @@
</span><span class="cx"> return TRUE;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-#else
-static GstURIType webKitWebSrcUriGetType(void)
-{
- return GST_URI_SRC;
-}
-
-static gchar** webKitWebSrcGetProtocols(void)
-{
- static gchar* protocols[] = {(gchar*) "http", (gchar*) "https", (gchar*) "blob", 0 };
- return protocols;
-}
-
-static const gchar* webKitWebSrcGetUri(GstURIHandler* handler)
-{
- WebKitWebSrc* src = WEBKIT_WEB_SRC(handler);
- gchar* ret;
-
- GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
- ret = g_strdup(src->priv->uri);
- return ret;
-}
-
-static gboolean webKitWebSrcSetUri(GstURIHandler* handler, const gchar* uri)
-{
- WebKitWebSrc* src = WEBKIT_WEB_SRC(handler);
- WebKitWebSrcPrivate* priv = src->priv;
-
- if (GST_STATE(src) >= GST_STATE_PAUSED) {
- GST_ERROR_OBJECT(src, "URI can only be set in states < PAUSED");
- return FALSE;
- }
-
- GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
-
- g_free(priv->uri);
- priv->uri = 0;
-
- if (!uri)
- return TRUE;
-
- URL url(URL(), uri);
- if (!urlHasSupportedProtocol(url)) {
- GST_ERROR_OBJECT(src, "Invalid URI '%s'", uri);
- return FALSE;
- }
-
- priv->uri = g_strdup(url.string().utf8().data());
- return TRUE;
-}
-#endif
-
</del><span class="cx"> static void webKitWebSrcUriHandlerInit(gpointer gIface, gpointer)
</span><span class="cx"> {
</span><span class="cx"> GstURIHandlerInterface* iface = (GstURIHandlerInterface *) gIface;
</span><span class="lines">@@ -901,15 +820,13 @@
</span><span class="cx">
</span><span class="cx"> GstBuffer* buffer = gst_buffer_new_and_alloc(requestedSize);
</span><span class="cx">
</span><del>-#ifdef GST_API_VERSION_1
</del><span class="cx"> mapGstBuffer(buffer);
</span><del>-#endif
</del><span class="cx">
</span><span class="cx"> GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
</span><span class="cx"> priv->buffer = adoptGRef(buffer);
</span><span class="cx"> locker.unlock();
</span><span class="cx">
</span><del>- actualSize = getGstBufferSize(buffer);
</del><ins>+ actualSize = gst_buffer_get_size(buffer);
</ins><span class="cx"> return getGstBufferDataPointer(buffer);
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -938,11 +855,7 @@
</span><span class="cx"> priv->size = length >= 0 ? length : 0;
</span><span class="cx"> priv->seekable = length > 0 && g_ascii_strcasecmp("none", response.httpHeaderField("Accept-Ranges").utf8().data());
</span><span class="cx">
</span><del>-#ifdef GST_API_VERSION_1
</del><span class="cx"> GstTagList* tags = gst_tag_list_new_empty();
</span><del>-#else
- GstTagList* tags = gst_tag_list_new();
-#endif
</del><span class="cx"> String value = response.httpHeaderField("icy-name");
</span><span class="cx"> if (!value.isEmpty()) {
</span><span class="cx"> g_free(priv->iradioName);
</span><span class="lines">@@ -977,15 +890,6 @@
</span><span class="cx"> // notify size/duration
</span><span class="cx"> if (length > 0) {
</span><span class="cx"> gst_app_src_set_size(priv->appsrc, length);
</span><del>-
-#ifndef GST_API_VERSION_1
- if (!priv->haveAppSrc27) {
- gst_segment_set_duration(&GST_BASE_SRC(priv->appsrc)->segment, GST_FORMAT_BYTES, length);
- gst_element_post_message(GST_ELEMENT(priv->appsrc),
- gst_message_new_duration(GST_OBJECT(priv->appsrc),
- GST_FORMAT_BYTES, length));
- }
-#endif
</del><span class="cx"> } else
</span><span class="cx"> gst_app_src_set_size(priv->appsrc, -1);
</span><span class="cx">
</span><span class="lines">@@ -1005,13 +909,9 @@
</span><span class="cx">
</span><span class="cx"> // notify tags
</span><span class="cx"> if (gst_tag_list_is_empty(tags))
</span><del>-#ifdef GST_API_VERSION_1
</del><span class="cx"> gst_tag_list_unref(tags);
</span><del>-#else
- gst_tag_list_free(tags);
-#endif
</del><span class="cx"> else
</span><del>- notifyGstTagsOnPad(GST_ELEMENT(src), priv->srcpad, tags);
</del><ins>+ gst_pad_push_event(priv->srcpad, gst_event_new_tag(tags));
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> void StreamingClient::handleDataReceived(const char* data, int length)
</span><span class="lines">@@ -1021,14 +921,12 @@
</span><span class="cx">
</span><span class="cx"> GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
</span><span class="cx">
</span><del>- GST_LOG_OBJECT(src, "Have %d bytes of data", priv->buffer ? getGstBufferSize(priv->buffer.get()) : length);
</del><ins>+ GST_LOG_OBJECT(src, "Have %ld bytes of data", priv->buffer ? gst_buffer_get_size(priv->buffer.get()) : length);
</ins><span class="cx">
</span><span class="cx"> ASSERT(!priv->buffer || data == getGstBufferDataPointer(priv->buffer.get()));
</span><span class="cx">
</span><del>-#ifdef GST_API_VERSION_1
</del><span class="cx"> if (priv->buffer)
</span><span class="cx"> unmapGstBuffer(priv->buffer.get());
</span><del>-#endif
</del><span class="cx">
</span><span class="cx"> if (priv->seekID) {
</span><span class="cx"> GST_DEBUG_OBJECT(src, "Seek in progress, ignoring data");
</span><span class="lines">@@ -1041,7 +939,7 @@
</span><span class="cx"> if (!priv->buffer)
</span><span class="cx"> priv->buffer = adoptGRef(createGstBufferForData(data, length));
</span><span class="cx"> else
</span><del>- setGstBufferSize(priv->buffer.get(), length);
</del><ins>+ gst_buffer_set_size(priv->buffer.get(), static_cast<gssize>(length));
</ins><span class="cx">
</span><span class="cx"> GST_BUFFER_OFFSET(priv->buffer.get()) = priv->offset;
</span><span class="cx"> if (priv->requestedOffset == priv->offset)
</span><span class="lines">@@ -1058,11 +956,7 @@
</span><span class="cx"> locker.unlock();
</span><span class="cx">
</span><span class="cx"> GstFlowReturn ret = gst_app_src_push_buffer(priv->appsrc, priv->buffer.leakRef());
</span><del>-#ifdef GST_API_VERSION_1
</del><span class="cx"> if (ret != GST_FLOW_OK && ret != GST_FLOW_EOS)
</span><del>-#else
- if (ret != GST_FLOW_OK && ret != GST_FLOW_UNEXPECTED)
-#endif
</del><span class="cx"> GST_ELEMENT_ERROR(src, CORE, FAILED, (0), (0));
</span><span class="cx"> }
</span><span class="cx">
</span></span></pre></div>
<a id="trunkSourceWebKitChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/ChangeLog (159729 => 159730)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/ChangeLog        2013-11-23 11:05:53 UTC (rev 159729)
+++ trunk/Source/WebKit/ChangeLog        2013-11-23 14:35:26 UTC (rev 159730)
</span><span class="lines">@@ -1,3 +1,12 @@
</span><ins>+2013-11-23 Xabier Rodriguez Calvar <calvaris@igalia.com>
+
+ [GStreamer] Remove 0.10 codepath
+ https://bugs.webkit.org/show_bug.cgi?id=124534
+
+ Reviewed by Philippe Normand.
+
+ * PlatformEfl.cmake: Removed FullscreenVideoControllerEfl.cpp.
+
</ins><span class="cx"> 2013-11-21 Alex Christensen <achristensen@webkit.org>
</span><span class="cx">
</span><span class="cx"> Remove ANGLEGenerated from Windows build.
</span></span></pre></div>
<a id="trunkSourceWebKitPlatformEflcmake"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/PlatformEfl.cmake (159729 => 159730)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/PlatformEfl.cmake        2013-11-23 11:05:53 UTC (rev 159729)
+++ trunk/Source/WebKit/PlatformEfl.cmake        2013-11-23 14:35:26 UTC (rev 159730)
</span><span class="lines">@@ -113,7 +113,6 @@
</span><span class="cx"> efl/WebCoreSupport/EditorClientEfl.cpp
</span><span class="cx"> efl/WebCoreSupport/FrameLoaderClientEfl.cpp
</span><span class="cx"> efl/WebCoreSupport/FrameNetworkingContextEfl.cpp
</span><del>- efl/WebCoreSupport/FullscreenVideoControllerEfl.cpp
</del><span class="cx"> efl/WebCoreSupport/IconDatabaseClientEfl.cpp
</span><span class="cx"> efl/WebCoreSupport/InspectorClientEfl.cpp
</span><span class="cx"> efl/WebCoreSupport/NavigatorContentUtilsClientEfl.cpp
</span></span></pre></div>
<a id="trunkSourceWebKiteflChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/efl/ChangeLog (159729 => 159730)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/efl/ChangeLog        2013-11-23 11:05:53 UTC (rev 159729)
+++ trunk/Source/WebKit/efl/ChangeLog        2013-11-23 14:35:26 UTC (rev 159730)
</span><span class="lines">@@ -1,3 +1,12 @@
</span><ins>+2013-11-23 Xabier Rodriguez Calvar <calvaris@igalia.com>
+
+ [GStreamer] Remove 0.10 codepath
+ https://bugs.webkit.org/show_bug.cgi?id=124534
+
+ Reviewed by Philippe Normand.
+
+ * WebCoreSupport/FullscreenVideoControllerEfl.cpp: Removed.
+
</ins><span class="cx"> 2013-11-21 Peter Molnar <pmolnar.u-szeged@partner.samsung.com>
</span><span class="cx">
</span><span class="cx"> Remove ENABLE_WORKERS
</span></span></pre></div>
<a id="trunkSourceWebKiteflWebCoreSupportFullscreenVideoControllerEflcpp"></a>
<div class="delfile"><h4>Deleted: trunk/Source/WebKit/efl/WebCoreSupport/FullscreenVideoControllerEfl.cpp (159729 => 159730)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/efl/WebCoreSupport/FullscreenVideoControllerEfl.cpp        2013-11-23 11:05:53 UTC (rev 159729)
+++ trunk/Source/WebKit/efl/WebCoreSupport/FullscreenVideoControllerEfl.cpp        2013-11-23 14:35:26 UTC (rev 159730)
</span><span class="lines">@@ -1,193 +0,0 @@
</span><del>-/*
- * Copyright (C) 2010 Igalia S.L
- * Copyright (C) 2010 Samsung Electronics
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public License
- * along with this library; see the file COPYING.LIB. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#include "config.h"
-
-#if ENABLE(VIDEO) && !defined(GST_API_VERSION_1)
-
-#include "FullscreenVideoControllerEfl.h"
-
-#include "MediaPlayer.h"
-#include "NotImplemented.h"
-
-#include <gst/gst.h>
-
-using namespace std;
-using namespace WebCore;
-
-FullscreenVideoController::FullscreenVideoController()
- : m_hudTimeoutId(0)
- , m_progressBarUpdateId(0)
- , m_seekLock(false)
- , m_window(0)
- , m_hudWindow(0)
-{
-}
-
-FullscreenVideoController::~FullscreenVideoController()
-{
- exitFullscreen();
-}
-
-void FullscreenVideoController::setMediaElement(HTMLMediaElement* mediaElement)
-{
- if (mediaElement == m_mediaElement)
- return;
-
- m_mediaElement = mediaElement;
- if (!m_mediaElement) {
- // Can't do full-screen, just get out
- exitFullscreen();
- }
-}
-
-void FullscreenVideoController::showHud(bool /*autoHide*/)
-{
- notImplemented();
-}
-
-void FullscreenVideoController::hideHud()
-{
- notImplemented();
-}
-
-void FullscreenVideoController::enterFullscreen()
-{
- notImplemented();
-}
-
-void FullscreenVideoController::updateHudPosition()
-{
- notImplemented();
-}
-
-void FullscreenVideoController::exitOnUserRequest()
-{
- notImplemented();
-}
-
-void FullscreenVideoController::exitFullscreen()
-{
- notImplemented();
-}
-
-bool FullscreenVideoController::canPlay() const
-{
- notImplemented();
- return false;
-}
-
-void FullscreenVideoController::play()
-{
- notImplemented();
-}
-
-void FullscreenVideoController::pause()
-{
- notImplemented();
-}
-
-void FullscreenVideoController::playStateChanged()
-{
- notImplemented();
-}
-
-void FullscreenVideoController::togglePlay()
-{
- notImplemented();
-}
-
-float FullscreenVideoController::volume() const
-{
- notImplemented();
- return 0;
-}
-
-bool FullscreenVideoController::muted() const
-{
- notImplemented();
- return false;
-}
-
-void FullscreenVideoController::setVolume(float /*volume*/)
-{
- notImplemented();
-}
-
-void FullscreenVideoController::volumeChanged()
-{
- notImplemented();
-}
-
-void FullscreenVideoController::muteChanged()
-{
- notImplemented();
-}
-
-float FullscreenVideoController::currentTime() const
-{
- notImplemented();
- return 0;
-}
-
-void FullscreenVideoController::setCurrentTime(float /*value*/)
-{
- notImplemented();
-}
-
-float FullscreenVideoController::duration() const
-{
- notImplemented();
- return 0;
-}
-
-float FullscreenVideoController::percentLoaded() const
-{
- notImplemented();
- return 0;
-}
-
-void FullscreenVideoController::beginSeek()
-{
- notImplemented();
-}
-
-void FullscreenVideoController::doSeek()
-{
- notImplemented();
-}
-
-void FullscreenVideoController::endSeek()
-{
- notImplemented();
-}
-
-bool FullscreenVideoController::updateHudProgressBar()
-{
- notImplemented();
- return false;
-}
-
-void FullscreenVideoController::createHud()
-{
- notImplemented();
-}
-
-#endif
</del></span></pre></div>
<a id="trunkSourcecmakeOptionsEflcmake"></a>
<div class="modfile"><h4>Modified: trunk/Source/cmake/OptionsEfl.cmake (159729 => 159730)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/cmake/OptionsEfl.cmake        2013-11-23 11:05:53 UTC (rev 159729)
+++ trunk/Source/cmake/OptionsEfl.cmake        2013-11-23 14:35:26 UTC (rev 159730)
</span><span class="lines">@@ -158,7 +158,7 @@
</span><span class="cx"> if (ENABLE_VIDEO OR ENABLE_WEB_AUDIO)
</span><span class="cx"> set(GSTREAMER_COMPONENTS app pbutils)
</span><span class="cx"> set(WTF_USE_GSTREAMER 1)
</span><del>- add_definitions(-DWTF_USE_GSTREAMER=1 -DGST_API_VERSION_1=1)
</del><ins>+ add_definitions(-DWTF_USE_GSTREAMER=1)
</ins><span class="cx">
</span><span class="cx"> if (ENABLE_VIDEO)
</span><span class="cx"> list(APPEND GSTREAMER_COMPONENTS video)
</span></span></pre>
</div>
</div>
</body>
</html>