RELEASE 0.7 ready
January 14th, 2006Release 0.7 is ready! Check the Downloads section.
- SSE filter implementation
- Silence bug fixed in the FPU filter implementation
- Bugfixes
Release 0.7 is ready! Check the Downloads section.
- SSE filter implementation
- Silence bug fixed in the FPU filter implementation
- Bugfixes
Just to clarify that the silence bug happens in all x86 processors using the standard i387 FP code (because of the way underflow exceptions are handled). If somebody has a clever trick to avoid underflow exceptions or knows a solution please drop me a line.
When playing files with ‘’silence” sections the CPU usage goes to 100%. This is because of continous floating point underflow exceptions when equalizing samples with value 0.
CPU’s supporting the SSE instruction set have a flush-to-zero mode where instead of generating an exception (required by the IEEE standard) it flushes the result to zero and this is the fix that is in the CVS tree now.
For non-SSE code the fix is still pending. It seems that AMD CPU’s are not affected (if you have an AMD CPU and have this problem please send me a line).
The SSE implementation of the equalizer (which uses ~70% less CPU) is up in the CVS repository. This implementation can only be selected at compilation time. If your CPU supports the SSE instruction set then the configure script will automatically use it. If you want to disable it and use the normal implementation pass the “–enable-sse-filters=no” parameter to the configure script.
Enjoy
Before posting a bug report due to a SEGFAULT please try compiling the plugin from the CVS source tree.
This is the shadow mode using the Blizzard skin

Equalizer configured for 15 bands

Equalizer configured for 31 bands

You can access the latest development code using a CVS client
cvs -d '':pserver:anonymous@cvs.sourceforge.net:/cvsroot/equ'' login
At the CVS password: prompt just hit enter and type the following next
cvs -z3 -d '':pserver:anonymous@cvs.sourceforge.net:/cvsroot/equ'' co eq-xmms
Once you have the source code in your computer you can follow the usual compilation process
cd eq-xmms && ./configure && make && su -c "make install"
If you already have done the above and just want to update your source tree do the following
cvs update -d && make && su -c "make install"
that I”ll reorganize the code to put the filters in a library together with the code that calculates the coefficients so it becomes more easy for people to use the filters in any project (A couple of projects using the filters are Xine-lib and the Beep Media Player).
PS: I really like this WordPress thing, kudos to its developers ![]()