commit 29b0a8d94480e04212ac4186e505a45919963f13
Author: Bastien Nocera <hadess(a)fedoraproject.org>
Date: Mon Jun 7 17:27:32 2010 +0000
- Add patch to fix download buffering in Totem
0001-queue2-don-t-wait-for-data-when-EOS.patch | 31 ++++++++++++++++++++++++++
gstreamer.spec | 9 +++++++-
2 files changed, 39 insertions(+), 1 deletion(-)
---
diff --git a/0001-queue2-don-t-wait-for-data-when-EOS.patch
b/0001-queue2-don-t-wait-for-data-when-EOS.patch
new file mode 100644
index 0000000..3b1b27e
--- /dev/null
+++ b/0001-queue2-don-t-wait-for-data-when-EOS.patch
@@ -0,0 +1,31 @@
+From 15141b3954fdfb46002783463f1cace148480fe9 Mon Sep 17 00:00:00 2001
+From: Wim Taymans <wim.taymans(a)collabora.co.uk>
+Date: Mon, 7 Jun 2010 10:16:04 +0200
+Subject: [PATCH] queue2: don't wait for data when EOS
+
+When in download mode and we need to provide data for an offset that we don't
+have, also perform a seek to the requested location when we are EOS. The reason
+why we shouldn't wait for more data is because after EOS, there simply will be
+no more data and we end up waiting forever.
+
+Fixes #620500
+---
+ plugins/elements/gstqueue2.c | 2 +-
+ 1 files changed, 1 insertions(+), 1 deletions(-)
+
+diff --git a/plugins/elements/gstqueue2.c b/plugins/elements/gstqueue2.c
+index d3e8e2c..df8aaea 100644
+--- a/plugins/elements/gstqueue2.c
++++ b/plugins/elements/gstqueue2.c
+@@ -1051,7 +1051,7 @@ gst_queue2_have_data (GstQueue2 * queue, guint64 offset, guint
length)
+ GST_INFO_OBJECT (queue, "not found in any range");
+ /* we don't have the range, see how far away we are, FIXME, find a good
+ * threshold based on the incomming rate. */
+- if (queue->current) {
++ if (!queue->is_eos && queue->current) {
+ if (offset < queue->current->writing_pos + 200000) {
+ update_cur_pos (queue, queue->current, offset + length);
+ GST_INFO_OBJECT (queue, "wait for data");
+--
+1.7.0.1
+
diff --git a/gstreamer.spec b/gstreamer.spec
index 2596634..5da174b 100644
--- a/gstreamer.spec
+++ b/gstreamer.spec
@@ -8,7 +8,7 @@
Name: %{gstreamer}
Version: 0.10.29
-Release: 1%{?dist}
+Release: 2%{?dist}
Summary: GStreamer streaming media framework runtime
Group: Applications/Multimedia
@@ -42,6 +42,9 @@ Patch1: gstreamer-inspect-rpm-format.patch
Source1: gstreamer.prov
Source2: macros.gstreamer
+#
https://bugzilla.gnome.org/show_bug.cgi?id=620500
+Patch2: 0001-queue2-don-t-wait-for-data-when-EOS.patch
+
### documentation requirements
BuildRequires: python2
BuildRequires: openjade
@@ -120,6 +123,7 @@ with different major/minor versions of GStreamer.
%setup -q -n gstreamer-%{version}
%patch1 -p1 -b .rpm-provides
+%patch2 -p1 -b .wait-eos
%build
# 0.10.0: manuals do not build due to an openjade error; disable for now
@@ -245,6 +249,9 @@ rm -rf $RPM_BUILD_ROOT
%doc %{_datadir}/gtk-doc/html/gstreamer-plugins-%{majorminor}
%changelog
+* Mon Jun 07 2010 Bastien Nocera <bnocera(a)redhat.com> 0.10.29-2
+- Add patch to fix download buffering in Totem
+
* Wed Apr 28 2010 Benjamin Otte <otte(a)redhat.com> 0.10.29-1
- Update to 0.10.29