A new filter sweeps clean…

I’m breaking radio silence with a quick snippet of how filtering is sounding in the Pithesiser. Availability of time and the nitty gritty detail of the work needed for this haven’t yielded much worth putting onto the blog until now – i.e. something you can actually hear!

This is a “brassy” sound with envelope-driven filter sweeps on the attack and release, giving it a nice “swelling” effect as the “brass buzz” gradually cuts in. Like the previous post’s audio, this is raw capture from the synth code output.

I’ve spend a fair while working on the filter implementation in code, trying to get as optimal performance as I can with sufficient precision in the math to avoid glitches. Each voice gets its own filter and envelope, so the effect is properly polyphonic – hence the need for performance as there are up to eight active voices. The good news is I achieved this, however I wound up hand-coding ARM assembler code inner loops as I found I could improve on the GCC optimiser by up to 20% to 25% in some cases.

There’s a lot more that could be done on filtering, to refine the quality and increase the options available. I’m going to try a few more things over the next few weeks, and will post audible results as they happen!

(c) 2013 Nicholas Tuckett.