I am trying to find a nice clean solution to this problem since some days now, and couldn't make myself to stick to a solution.
I need to develop some stream and block processing for audio, including cascaded biquad, FT and iFT, FIR, dynamic correction. The whole audio chain will be embedded either in a DSP or on a ARM running Xenomai Linux.
What I am looking for is a way to quickly compile and test bits of codes, getting audio in and out, and in a language that will allow me to target a broad range of devices. (Would be C or Cpp surely).
I don't want to choose the definitive platform now because I don't know yet how much processing power will be required to make my full project runs.
Here are some tought:
- I am using Gnu Octave but afaik it will not compile a real-time pipeline and the code is hardly portable.
- I tried Audio Weaver from DSP Concepts (which is great) but the targets DSP are limited and the engine is proprietary.
- I looked at Faust which is a very promising framework for audio (even able to generate Cpp code), but unfortunately it was designed with stream processing in mind and not meant to process blocks of data
- I looked at some LabView + FPGA solution but the price and licensing is just WOW !
- I looked at some IDE from Ti and AD but there also the price is too high.
- Using a simple VST or ALSA framework might be ok but I don't really know where to start.