GNOME Bugzilla – Bug 535656
[equalizer] Static in Banshee even with eq checkbox disabled
Last modified: 2009-02-19 12:05:26 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.
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.
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
Gabriel, could you check if you can reproduce it with latest CVS of the equalizer?
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.
...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.
This doesn't seem to be an issue anymore. I am thus marking this bug as FIXED.