After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 535656 - [equalizer] Static in Banshee even with eq checkbox disabled
[equalizer] Static in Banshee even with eq checkbox disabled
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: gst-plugins-good
0.10.8
Other Linux
: Normal normal
: NONE
Assigned To: Sebastian Dröge (slomo)
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2008-05-30 04:44 UTC by Gabriel Burt
Modified: 2009-02-19 12:05 UTC
See Also:
GNOME target: ---
GNOME version: 2.21/2.22



Description Gabriel Burt 2008-05-30 04:44:53 UTC
I was using the very latest Banshee, listening to mp3s on Last.fm, and after quite a long time of things working fine, I started hearing brief bursts of static every couple seconds on one song.
Comment 1 Gabriel Burt 2008-05-30 04:46:11 UTC
A bit more background: we had the equalizer enabled in Banshee before and this happened to me then too, didn't happen for the many weeks where we had it disabled, and now happened again w/ it re-enabled.  This is on Ubuntu Hardy.
Comment 2 Sebastian Dröge (slomo) 2008-05-30 07:38:00 UTC
Ok, some more details from asking on IRC:

- the fluendo mp3 decoder is used
- after some time ~1/2 second bursts of static (i.e. background white noise) were happening with everything ok between the bursts
- pulse is used as audio output sink
Comment 3 Sebastian Dröge (slomo) 2008-05-30 11:12:43 UTC
Gabriel, could you check if you can reproduce it with latest CVS of the equalizer?
Comment 4 Sebastian Dröge (slomo) 2008-05-31 08:38:01 UTC
Ok, with these two changes I see no way how the current equalizer could produce corrupted output anymore... please confirm that it works fine with latest CVS (you should be able to build latest CVS of the equalizer with core/base 0.10.18, if you need x86 binaries just ask me).

2008-05-31  Sebastian Dröge  <slomo@circular-chaos.org>

        * gst/equalizer/gstiirequalizer.c:
        (gst_iir_equalizer_transform_ip):
        Don't clip float/double samples, correctly unset passthrough mode
        and use better rounding for integer samples.

2008-05-30  Sebastian Dröge  <slomo@circular-chaos.org>

        * gst/equalizer/gstiirequalizer.c:
        (gst_iir_equalizer_band_set_property), (gst_iir_equalizer_init),
        (setup_filter), (set_passthrough), (update_coefficients),
        (gst_iir_equalizer_compute_frequencies),
        (gst_iir_equalizer_transform_ip):
        * gst/equalizer/gstiirequalizer.h:
        Update the filter coefficients only when needed in the transform_ip
        function and correctly set the element into passthrough mode if the
        gain of all bands is 0.
Comment 5 Sebastian Dröge (slomo) 2008-06-02 08:49:34 UTC
...and the clipping of float samples together with the 1dB bug in banshee's eq code could've caused this too. Witht the below change to banshee everything should be alright now:

2008-06-02  Sebastian Dröge  <slomo@circular-chaos.org>

	* src/Backends/Banshee.GStreamer/Banshee.GStreamer/PlayerEngine.cs:
	Rename local variable from db to scale as it holds a scale factor
	which was calculated from a db value and not the other way around.

	* src/Core/Banshee.Services/Banshee.Equalizer/EqualizerManager.cs:
	* src/Core/Banshee.Services/Banshee.Equalizer/EqualizerSetting.cs:
	0dB is passthrough and should be used as default value. 1dB will make
	the sound a bit louder and can already lead to clipping in rare
	situations.

	* src/Core/Banshee.ThickClient/Banshee.Equalizer.Gui/EqualizerView.cs:
	Make the preamp levels more consistent with the eq levels and don't
	always do (level / 10) * 10.
Comment 6 Tobias Mueller 2009-01-27 00:58:24 UTC
This doesn't seem to be an issue anymore. I am thus marking this bug as FIXED.