|
|
|
|
|
by flogoe
393 days ago
|
|
Very interesting. I work for a large (for the industry at least) company that builds audio effect plugins and virtual instruments. Me and most of my collegues have not touched Matlab since we left uni and when talking to devs from other companies I got the same impression. For prototyping and algorithm development we mainly use python, sometimes domain specific languages like Faust or CMajor but most of the time we go with C++ right away. |
|
Of course, there are valid reasons for why there is a difference in approaches taken by audio effects plugins/software/virtual instruments developers, and pro audio hardware manufacturers. We are targeting DSP’s designed very specifically for audio-related tasks - you (I assume, correct me if I’m wrong) are targeting the vast array of platforms which the audio plugin/virtual instrument market demand be supported. There is somewhat of a gap between these worlds - whereas we have dedicated DSP’s which only run our hand-crafted, carefully designed and tested code, you have to target a vast array of different systems (differing DAW’s, different plugin formats, different CPU architectures) and therefore take a different approach to solving similar problems. It’s no surprise that you don’t have exposure to Matlab in that context - it’s more important, I would wager, for your devs to know the differences between compilers and plugin architectures.
That being said, our DSP engineers definitely write C++ code too - just that for the embedded DSP use cases, it’s not as productive, nor as necessary to do so. C++-based audio algorithms enable a great deal of mobility in terms of platform ports; using Matlab to refine DSP algorithms prior to final implementations in DSP-based assembly (and C code) is more feasible because we control, in its entirety, the nature of our hardware platform.
There’s no VST vs. AU vs AAX requirements in our specs - but there are many of these kinds of thorny issues in your specs, I’d wager.