Dear all,

Here is a patch which fixes the use of gstvolume in gstreamer1.0-plugins-base-1.4.1.
The patch has been submitted to gstreamer1.0 master branch

https://bugzilla.gnome.org/show_bug.cgi?id=745667
http://cgit.freedesktop.org/gstreamer/gst-plugins-base/commit/?id=40f4daffd12b84dceb23942a992815e11b5a0839

Best regards.

Stéphane

-------- Forwarded Message --------
Subject: Re: [meta-freescale] GstVolume with dizzy is not working when changing to a value inferior to 1
Date:   Thu, 5 Mar 2015 10:39:28 -0300
From:   Otavio Salvador <[email protected]>
To:     scerveau <[email protected]>
CC: Carlos Rafael Giani <[email protected]>, [email protected] <[email protected]>



On Thu, Mar 5, 2015 at 10:34 AM, scerveau<[email protected]>  wrote:
Dear all,

Here is the patch who can be merged in meta-freescale concerning gstvolume.c
in gstreamer1.0-plugins-base
I guess this patch should be merged in poky and not in meta-freescale seen
that the bug is also on raspberry pi 2 by example.

A bug entry has been submitted to gcc bug tracker system:

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65325

Yes; this should be done in OE-Core so it fixes the problem in the
base. We shouldn't handle this in the BSP.

--
Otavio Salvador                             O.S. Systems
http://www.ossystems.com.br         http://code.ossystems.com.br
Mobile: +55 (53) 9981-7854            Mobile: +1 (347) 903-9750





>From d48ce237e7641d896948b75eb5867be78037a5d3 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?St=C3=A9phane=20Cerveau?= <[email protected]>
Date: Thu, 5 Mar 2015 17:20:19 +0100
Subject: [PATCH] GSTVolume: setting volume to less than 1.0
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

The volume element in gstreamer1.0-plugins-base was not working
properly on arm platform if the volume is less 1.0.

https://bugzilla.gnome.org/show_bug.cgi?id=745667

Signed-off-by: Stéphane Cerveau <[email protected]>
---
 ...olume_explicitely_cast_integers_to_double.patch |   23 ++++++++++++++++++++
 .../gstreamer/gstreamer1.0-plugins-base_1.4.1.bb   |    1 +
 2 files changed, 24 insertions(+)
 create mode 100644 meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/volume_explicitely_cast_integers_to_double.patch

diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/volume_explicitely_cast_integers_to_double.patch b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/volume_explicitely_cast_integers_to_double.patch
new file mode 100644
index 0000000..f67a840
--- /dev/null
+++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/volume_explicitely_cast_integers_to_double.patch
@@ -0,0 +1,23 @@
+diff --git a/gst/volume/gstvolume.c b/gst/volume/gstvolume.c
+index 0f5b362..94d03a3 100644
+--- a/gst/volume/gstvolume.c
++++ b/gst/volume/gstvolume.c
+@@ -250,10 +250,14 @@ volume_update_volume (GstVolume * self, const GstAudioInfo * info,
+     self->current_mute = FALSE;
+     self->current_volume = volume;
+ 
+-    self->current_vol_i8 = volume * VOLUME_UNITY_INT8;
+-    self->current_vol_i16 = volume * VOLUME_UNITY_INT16;
+-    self->current_vol_i24 = volume * VOLUME_UNITY_INT24;
+-    self->current_vol_i32 = volume * VOLUME_UNITY_INT32;
++    self->current_vol_i8 =
++        (gint) ((gdouble) volume * (gdouble) VOLUME_UNITY_INT8);
++    self->current_vol_i16 =
++        (gint) ((gdouble) volume * (gdouble) VOLUME_UNITY_INT16);
++    self->current_vol_i24 =
++        (gint) ((gdouble) volume * (gdouble) VOLUME_UNITY_INT24);
++    self->current_vol_i32 =
++        (gint) ((gdouble) volume * (gdouble) VOLUME_UNITY_INT32);
+ 
+     passthrough = (self->current_vol_i16 == VOLUME_UNITY_INT16);
+   }
diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.4.1.bb b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.4.1.bb
index 0db42ce..4198b1a 100644
--- a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.4.1.bb
+++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.4.1.bb
@@ -7,6 +7,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=c54ce9345727175ff66d17b67ff51f58 \
 
 SRC_URI += "file://do-not-change-eos-event-to-gap-event-if.patch \
             file://get-caps-from-src-pad-when-query-caps.patch \
+            file://volume_explicitely_cast_integers_to_double.patch \
 "
 
 SRC_URI[md5sum] = "a825628225bd0a58c0df87cdd2a5db91"
-- 
1.7.9.5


-- 
_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.openembedded.org/mailman/listinfo/openembedded-core

Reply via email to