Tales and thoughts from the founder of NormSoft (maker of Pocket Tunes), working and living in St. Croix, USVI

Friday, January 23, 2004

Pocket Tunes 2.2 beta is now out.  http://www.pocket-tunes.com/beta.html

So now I'll tell you about the optimizing I was doing a few weeks back.  It was for the equalizer code.  We are now using a real equalizer, rather than the previous hack of tweaking the MP3 subbands.  The new equalizer has much better audio fidelity, but it's slower than tweaking MP3 subbands.

So the optimization was to get the equalizer to run as efficiently as possible without any tradeoff in audio quality.  We succeeded!  We can now claim to have the fastest equalizer on the Palm platform, and it sounds great, too!  To get the speed, I am using a fixed point integer with 28 bits of fraction.  Taking advantage of some of the properties of the digital filters I'm using, I managed to reduce the number of multiplications to 22 per sample for the equalizer, and just 3 per sample for the bass boost.  In order to ensure the best quality, I wrote some software to calculate the optimal band spacing and band widths to get a good, flat frequency response.

Try it out; tell me how you like it!

No comments: