summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndre Moreira Magalhaes <andre.magalhaes@collabora.co.uk>2013-11-12 14:18:20 +0100
committerThe Qt Project <gerrit-noreply@qt-project.org>2013-11-13 21:09:50 +0100
commit92e8d60fbd4bf8f710a460565db4662d4f259a2d (patch)
treeefa1cc4da3ea540e2fc8524b9208bc1d7ff36033
parent45ccf879f18ee0af0ab5f5cb3c5d520d2996806a (diff)
downloadqtwebkit-92e8d60fbd4bf8f710a460565db4662d4f259a2d.tar.gz
[GStreamer] cannot play live streams
https://bugs.webkit.org/show_bug.cgi?id=116831 Reviewed by Philippe Normand. Source/WebCore: Fix issues with rtsp streams embedded on <video> not loading. * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp: Do not reset pipeline to READY state on STATE_CHANGE_ASYNC when entering PAUSED state for live streams, otherwise we enter an endless loop of READY->PAUSED->READY->PAUSED when starting playback. Change-Id: Iec00e0f41ca6b55994524c9864336f765c0d56d3 git-svn-id: http://svn.webkit.org/repository/webkit/trunk@155024 268f45cc-cd09-0410-ab3c-d52691b4dbfc Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
-rw-r--r--Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp7
-rw-r--r--Tools/gtk/jhbuild.modules33
2 files changed, 26 insertions, 14 deletions
diff --git a/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp b/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp
index de27ee07d..9edf53df3 100644
--- a/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp
+++ b/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp
@@ -1167,13 +1167,6 @@ void MediaPlayerPrivateGStreamer::updateStates()
case GST_STATE_CHANGE_ASYNC:
LOG_MEDIA_MESSAGE("Async: State: %s, pending: %s", gst_element_state_get_name(state), gst_element_state_get_name(pending));
// Change in progress.
-
- // A live stream was paused, reset the pipeline.
- if (state == GST_STATE_PAUSED && pending == GST_STATE_PLAYING && isLiveStream()) {
- gst_element_set_state(m_playBin.get(), GST_STATE_NULL);
- gst_element_set_state(m_playBin.get(), GST_STATE_PLAYING);
- }
-
break;
case GST_STATE_CHANGE_FAILURE:
LOG_MEDIA_MESSAGE("Failure: State: %s, pending: %s", gst_element_state_get_name(state), gst_element_state_get_name(pending));
diff --git a/Tools/gtk/jhbuild.modules b/Tools/gtk/jhbuild.modules
index 71fc1a352..4144b0ae6 100644
--- a/Tools/gtk/jhbuild.modules
+++ b/Tools/gtk/jhbuild.modules
@@ -52,8 +52,8 @@
href="http://xorg.freedesktop.org"/>
<repository type="tarball" name="xmlsoft.org"
href="ftp://xmlsoft.org"/>
- <repository type="git" name="gstreamer"
- href="git://anongit.freedesktop.org/git/gstreamer/"/>
+ <repository type="tarball" name="gstreamer"
+ href="http://gstreamer.freedesktop.org/src/"/>
<repository type="tarball" name="savannah.gnu.org"
href="http://download.savannah.gnu.org/releases/"/>
@@ -269,35 +269,54 @@
</autotools>
<autotools id="gstreamer">
- <branch repo="gstreamer" module="gstreamer" checkoutdir="gstreamer" tag="1.0.8"/>
+ <branch module="gstreamer/gstreamer-1.0.8.tar.xz" version="1.0.8"
+ repo="gstreamer"
+ hash="sha256:ff70f45509566b88e35986971ace5e89cb6cb232e9ca249f84502abceef1762d"
+ md5sum="fb0c73470e8dd5dab01e5e9e62db9db9"/>
</autotools>
<autotools id="gst-plugins-base" autogenargs="--disable-examples">
<dependencies>
<dep package="gstreamer"/>
</dependencies>
- <branch repo="gstreamer" module="gst-plugins-base" checkoutdir="gst-plugins-base" tag="1.0.8"/>
+ <branch module="gst-plugins-base/gst-plugins-base-1.0.8.tar.xz" version="1.0.8"
+ repo="gstreamer"
+ hash="sha256:b55c9deea00acf789f82845c088b7c7c17b3ecef24a94831a819071b3dd8ef0d"
+ md5sum="c8b36678186e7d4fb1e6395ffcd1abb1"/>
</autotools>
<autotools id="gst-plugins-good" autogenargs="--disable-examples --disable-soup --disable-gst_v4l2 --without-libv4l2">
<dependencies>
<dep package="gst-plugins-base"/>
</dependencies>
- <branch repo="gstreamer" module="gst-plugins-good" checkoutdir="gst-plugins-good" tag="1.0.8"/>
+
+ <branch module="gst-plugins-good/gst-plugins-good-1.0.8.tar.xz" version="1.0.8"
+ repo="gstreamer"
+ hash="sha256:97831570ccdd8e15557f18858b965e54433d572d27fdabebb8b710cee276cfad"
+ md5sum="4969826043bbd3f76e4a0d49ea475736">
+ <patch file="udpsrc-improve-timeouts.patch" strip="1"/>
+ <patch file="rtspsrc-timeout-on-udpsrc-is-in-nanoseconds.patch" strip="1"/>
+ </branch>
</autotools>
<autotools id="gst-plugins-bad" autogenargs="--disable-examples">
<dependencies>
<dep package="gst-plugins-base"/>
</dependencies>
- <branch repo="gstreamer" module="gst-plugins-bad" checkoutdir="gst-plugins-bad" tag="1.0.8"/>
+ <branch module="gst-plugins-bad/gst-plugins-bad-1.0.8.tar.xz" version="1.0.8"
+ repo="gstreamer"
+ hash="sha256:6949b5532034fc37d5a874e4e3330107767238bc4def9f769b8193124e2420cc"
+ md5sum="a2fdf125ee2ae46047dcbcfc305949ee"/>
</autotools>
<autotools id="gst-libav" autogenargs="--with-libav-extra-configure='--disable-yasm'">
<dependencies>
<dep package="gst-plugins-base"/>
</dependencies>
- <branch repo="gstreamer" module="gst-libav" checkoutdir="gst-libav" tag="1.0.8"/>
+ <branch module="gst-libav/gst-libav-1.0.8.tar.xz" version="1.0.8"
+ repo="gstreamer"
+ hash="sha256:e6e538290e585c993609337761d894dd1b6b53ef625798b2a511d5314579995f"
+ md5sum="7c2e8db039efa1880a61a6982a6909d7"/>
</autotools>
<autotools id="xserver" autogenargs="--disable-xinerama --enable-glx --enable-composite --disable-xorg --disable-dmx --disable-xnest --disable-xquartz --disable-xwin --disable-xephyr --disable-xfake --disable-xfbdev --disable-install-setuid --disable-unit-tests --enable-unix-transport --enable-tcp-transport --enable-local-transport --with-xkb-path=/usr/share/X11/xkb --with-xkb-output=/var/lib/xkb --with-xkb-bin-directory=/usr/bin">