GstVolume with dizzy is not working when changing to a value inferior to 1
A message that is not in the archive (sent off-list or not yet received): [email protected]
PATCH 1/1 GstVolume with dizzy is not working when changing to a value inferior to 1
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]>
Quoted 10 lines · scerveau
Dear all,
Here is the patch who can be merged in meta-freescale concerning
gstvolume.cin 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:
Yes; this should be done in OE-Core so it fixes the problem in the base. We shouldn't handle this in the BSP.
Signature · 3 lines
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
--- ...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
meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/volume_explicitely_cast_integers_to_double.patch new file +23 -0
@@ -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); + }
meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.4.1.bb +1 -0
@@ -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"
Signature · 1 line
1.7.9.5