Hello community,

here is the log from the commit of package gstreamer-0_10-plugins-base for 
openSUSE:Factory checked in at 2012-11-20 13:07:51
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/gstreamer-0_10-plugins-base (Old)
 and      /work/SRC/openSUSE:Factory/.gstreamer-0_10-plugins-base.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "gstreamer-0_10-plugins-base", Maintainer is 
"[email protected]"

Changes:
--------
--- 
/work/SRC/openSUSE:Factory/gstreamer-0_10-plugins-base/gstreamer-0_10-plugins-base.changes
  2012-02-24 12:04:47.000000000 +0100
+++ 
/work/SRC/openSUSE:Factory/.gstreamer-0_10-plugins-base.new/gstreamer-0_10-plugins-base.changes
     2012-11-20 13:07:53.000000000 +0100
@@ -1,0 +2,5 @@
+Mon Nov 19 19:55:20 UTC 2012 - [email protected]
+
+- Add gstreamer-0_10-plugins-base-0.10.36-kde_302652.patch. Fixes kde#302652.
+
+-------------------------------------------------------------------

New:
----
  gstreamer-0_10-plugins-base-0.10.36-kde_302652.patch

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ gstreamer-0_10-plugins-base.spec ++++++
--- /var/tmp/diff_new_pack.LssOb4/_old  2012-11-20 13:07:54.000000000 +0100
+++ /var/tmp/diff_new_pack.LssOb4/_new  2012-11-20 13:07:54.000000000 +0100
@@ -31,6 +31,8 @@
 Source2:        baselibs.conf
 # PATCH-FIX-UPSTREAM gstreamer-0_10-plugins-base-missing-return-value.patch 
bgo#670548 [email protected] -- Fix missing return value
 Patch0:         gstreamer-0_10-plugins-base-missing-return-value.patch
+# PATCH-FIX-UPSTREAM gstreamer-0_10-plugins-base-0.10.36-kde_302652.patch 
kde#302652 [email protected] -- Fix problem in Amarok when changing between 
streams. Gstreamer doesn't seem to care about the 0.10.x branch any more.
+Patch1:         gstreamer-0_10-plugins-base-0.10.36-kde_302652.patch
 BuildRequires:  alsa-devel
 BuildRequires:  cdparanoia-devel
 BuildRequires:  check-devel
@@ -99,7 +101,8 @@
 # Nanes of splitted subpackages (<=10.2 and ==SLE10):
 Provides:       gstreamer010-plugins-base-oil = %{version}-%{release}
 Provides:       gstreamer010-plugins-base-visual = %{version}-%{release}
-Obsoletes:      gstreamer010-plugins-base-oil < %{version}-%{release} 
gstreamer010-plugins-base-visual < %{version}-%{release}
+Obsoletes:      gstreamer010-plugins-base-oil < %{version}-%{release}
+Obsoletes:      gstreamer010-plugins-base-visual < %{version}-%{release}
 BuildRoot:      %{_tmppath}/%{name}-%{version}-build
 
 %description
@@ -232,6 +235,7 @@
 %setup -q -n %{_name}-%{version}
 translation-update-upstream po gst-plugins-base-0.10
 %patch0 -p1
+%patch1 -p1
 
 %build
 export CFLAGS="$RPM_OPT_FLAGS -fno-strict-aliasing"


++++++ gstreamer-0_10-plugins-base-0.10.36-kde_302652.patch ++++++
>From 38803239c026163589dde04259b00c5fe33ad706 Mon Sep 17 00:00:00 2001
From: Alessandro Decina <[email protected]>
Date: Wed, 04 Apr 2012 18:43:23 +0000
Subject: audiodecoder: don't discard timestamps when consecutive input buffers 
have the same ts

Avoid pushing out buffers with the same timestamp only if the out buffers are
decoded from the same input buffer. Instead keep the timestamps when upstream
pushes consecutive buffers with the same ts.
---
diff --git a/gst-libs/gst/audio/gstaudiodecoder.c 
b/gst-libs/gst/audio/gstaudiodecoder.c
index 5dfd278..6bc054d 100644
--- a/gst-libs/gst/audio/gstaudiodecoder.c
+++ b/gst-libs/gst/audio/gstaudiodecoder.c
@@ -220,6 +220,7 @@ struct _GstAudioDecoderPrivate
   GstAdapter *adapter;
   /* tracking input ts for changes */
   GstClockTime prev_ts;
+  guint64 prev_distance;
   /* frames obtained from input */
   GQueue frames;
   /* collected output data */
@@ -445,6 +446,7 @@ gst_audio_decoder_reset (GstAudioDecoder * dec, gboolean 
full)
   dec->priv->out_ts = GST_CLOCK_TIME_NONE;
   dec->priv->out_dur = 0;
   dec->priv->prev_ts = GST_CLOCK_TIME_NONE;
+  dec->priv->prev_distance = 0;
   dec->priv->drained = TRUE;
   dec->priv->base_ts = GST_CLOCK_TIME_NONE;
   dec->priv->samples = 0;
@@ -977,6 +979,7 @@ gst_audio_decoder_push_buffers (GstAudioDecoder * dec, 
gboolean force)
     if (G_LIKELY (av)) {
       gint len;
       GstClockTime ts;
+      guint64 distance;
 
       /* parse if needed */
       if (klass->parse) {
@@ -1016,12 +1019,13 @@ gst_audio_decoder_push_buffers (GstAudioDecoder * dec, 
gboolean force)
         len = av;
       }
       /* track upstream ts, but do not get stuck if nothing new upstream */
-      ts = gst_adapter_prev_timestamp (priv->adapter, NULL);
-      if (ts == priv->prev_ts) {
+      ts = gst_adapter_prev_timestamp (priv->adapter, &distance);
+      if (ts != priv->prev_ts || distance <= priv->prev_distance) {
+        priv->prev_ts = ts;
+        priv->prev_distance = distance;
+      } else {
         GST_LOG_OBJECT (dec, "ts == prev_ts; discarding");
         ts = GST_CLOCK_TIME_NONE;
-      } else {
-        priv->prev_ts = ts;
       }
       buffer = gst_adapter_take_buffer (priv->adapter, len);
       buffer = gst_buffer_make_metadata_writable (buffer);
--
cgit v0.9.0.2-2-gbebe
-- 
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to