rpms/gstreamer-plugins-good/devel pulsesink-relative-volume.patch, NONE, 1.1 gstreamer-plugins-good.spec, 1.108, 1.109

Bastien Nocera hadess at fedoraproject.org
Tue Nov 3 14:35:23 UTC 2009


Author: hadess

Update of /cvs/pkgs/rpms/gstreamer-plugins-good/devel
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv21239

Modified Files:
	gstreamer-plugins-good.spec 
Added Files:
	pulsesink-relative-volume.patch 
Log Message:
* Tue Nov 03 2009 Bastien Nocera <bnocera at redhat.com> 0.10.16-7
- Add patch from upstream to avoid volume lowering in PA < 0.9.20


pulsesink-relative-volume.patch:
 configure.ac          |    4 ++++
 ext/pulse/pulsesink.c |    8 ++++++--
 2 files changed, 10 insertions(+), 2 deletions(-)

--- NEW FILE pulsesink-relative-volume.patch ---
>From 3f541452c4916b31a222043b172b3398647b8091 Mon Sep 17 00:00:00 2001
From: Sebastian Dröge <sebastian.droege at collabora.co.uk>
Date: Fri, 30 Oct 2009 08:27:59 +0000
Subject: pulsesink: Only set the volume on stream connection if pulse >= 0.9.20 is available

In older versions the volume set during stream connection had
no defined sematic and usually it was a relative volume. What
was needed for our use case is an absolute volume though, otherwise
the volume will be always decreased on stream connection if it's
less than 100%.
Since pulse 0.9.20 that volume is always an absolute volume if
flat volumes are used and relative otherwise, which is the same
as for pa_context_set_sink_input_volume().

Relevant pulse changesets:
http://git.0pointer.de/?p=pulseaudio.git;a=commit;h=f27a50691c8fe45bac7dd6b21fac91a359def3a1
http://git.0pointer.de/?p=pulseaudio.git;a=commit;h=2501687579e359d5032a4d165b2ffc8f5b1b8ba6
---
diff --git a/configure.ac b/configure.ac
index 36b3884..0e6d63c 100644
--- a/configure.ac
+++ b/configure.ac
@@ -772,6 +772,10 @@ AG_GST_CHECK_FEATURE(PULSE, [pulseaudio plug-in], pulseaudio, [
   if test x$HAVE_PULSE_0_9_15 = xyes; then
     AC_DEFINE(HAVE_PULSE_0_9_15, 1, [defined if pulseaudio >= 0.9.15 is available])
   fi
+  AG_GST_PKG_CHECK_MODULES(PULSE_0_9_20, libpulse >= 0.9.20)
+  if test x$HAVE_PULSE_0_9_20 = xyes; then
+    AC_DEFINE(HAVE_PULSE_0_9_20, 1, [defined if pulseaudio >= 0.9.20 is available])
+  fi
 ])
 
 dnl *** dv1394 ***
diff --git a/ext/pulse/pulsesink.c b/ext/pulse/pulsesink.c
index f1907fe..45c3665 100644
--- a/ext/pulse/pulsesink.c
+++ b/ext/pulse/pulsesink.c
@@ -606,7 +606,10 @@ gst_pulseringbuffer_acquire (GstRingBuffer * buf, GstRingBufferSpec * spec)
   const pa_buffer_attr *actual;
   pa_channel_map channel_map;
   pa_operation *o = NULL;
-  pa_cvolume v, *pv;
+#if HAVE_PULSE_0_9_20
+  pa_cvolume v;
+#endif
+  pa_cvolume *pv = NULL;
   pa_stream_flags_t flags;
   const gchar *name;
   GstAudioClock *clock;
@@ -677,6 +680,7 @@ gst_pulseringbuffer_acquire (GstRingBuffer * buf, GstRingBufferSpec * spec)
   GST_INFO_OBJECT (psink, "prebuf:    %d", wanted.prebuf);
   GST_INFO_OBJECT (psink, "minreq:    %d", wanted.minreq);
 
+#if HAVE_PULSE_0_9_20
   /* configure volume when we changed it, else we leave the default */
   if (psink->volume_set) {
     GST_LOG_OBJECT (psink, "have volume of %f", psink->volume);
@@ -686,6 +690,7 @@ gst_pulseringbuffer_acquire (GstRingBuffer * buf, GstRingBufferSpec * spec)
   } else {
     pv = NULL;
   }
+#endif
 
   /* construct the flags */
   flags = PA_STREAM_INTERPOLATE_TIMING | PA_STREAM_AUTO_TIMING_UPDATE |
--
cgit v0.8.2


Index: gstreamer-plugins-good.spec
===================================================================
RCS file: /cvs/pkgs/rpms/gstreamer-plugins-good/devel/gstreamer-plugins-good.spec,v
retrieving revision 1.108
retrieving revision 1.109
diff -u -p -r1.108 -r1.109
--- gstreamer-plugins-good.spec	22 Oct 2009 15:09:53 -0000	1.108
+++ gstreamer-plugins-good.spec	3 Nov 2009 14:35:23 -0000	1.109
@@ -6,7 +6,7 @@
 
 Name: 		%{gstreamer}-plugins-good
 Version: 	0.10.16
-Release:  	5%{?dist}
+Release:  	7%{?dist}
 Summary: 	GStreamer plug-ins with good code and licensing
 
 Group: 		Applications/Multimedia
@@ -75,6 +75,8 @@ Obsoletes: gstreamer-plugins-farsight < 
 # http://bugzilla.gnome.org/show_bug.cgi?id=595231
 # and many others
 Patch2: pulsesink-lowering-volumes.patch
+# http://cgit.freedesktop.org/gstreamer/gst-plugins-good/commit/?id=3f541452c4916b31a222043b172b3398647b8091
+Patch3: pulsesink-relative-volume.patch
 
 %description
 GStreamer is a streaming media framework, based on graphs of filters which
@@ -111,9 +113,10 @@ This is a dummy package to make gstreame
 
 # Farsight plugins
 %patch0 -p1 -b .farsight
+%patch2 -p1 -b .volume-lowering
+%patch3 -p1 -b .relative-volume
 libtoolize -f
 autoreconf
-%patch2 -p1 -b .volume-lowering
 
 %build
 
@@ -277,6 +280,9 @@ export GCONF_CONFIG_SOURCE=`gconftool-2 
 gconftool-2 --makefile-install-rule %{_sysconfdir}/gconf/schemas/gstreamer-%{majorminor}.schemas > /dev/null || :
 
 %changelog
+* Tue Nov 03 2009 Bastien Nocera <bnocera at redhat.com> 0.10.16-7
+- Add patch from upstream to avoid volume lowering in PA < 0.9.20
+
 * Thu Oct 22 2009 Bastien Nocera <bnocera at redhat.com> 0.10.16-5
 - Update farsight plugins from -bad
 - Drop copy/pasted rtpmanager plugin, it's now in -good




More information about the fedora-extras-commits mailing list