Tuesday, November 30, 2004

The Devil is in the details

Some quick facts about Audio Engines:
- Audio signals are important.
- Control Signals are ultra important! They eat cpu time for breakfast and are quite hard to manage in a clean, flexible and userfriendly way.
- A correct Midi implementation for a synth is anything but trivial if you want to handle all the standard events: damping pedal, all the CCs, PitchBend, release samples, etc.
- Voice management can also become quite complicated and push us to make big sacrifices: memory allocations at runtime for dynamic voices creation vs. static polyphony.
- FXs are much harder on the DSP code but have an much simpler infrastructure. Corrolary: synth control code tends to become very complicated once you add all the features and is a very good place to search when looking for a sample of typical Spaghetti code!

No comments: