What is the most popular audio DSP language?

DSP, Plugin and Host development discussion.
Post Reply New Topic
RELATED
PRODUCTS

Post

I'm getting into audio DSP and I'm having trouble choosing a language to learn. Python and MatLab seem to be the most established in audio DSP, but languages like MaxMSP and Pure Data seem to be more intuitive and built for audio processing. Which languages have the most existing audio work done on them?

Post

Most popular I think is C++ (not on your shortlist)
But in your position whatever you pick will work out if you put in a lot of work.
We are the KVR collective. Resistance is futile. You will be assimilated. Image
My MusicCalc is served over https!!

Post

Csound, Chuck, APE, Cabbage.

Post

joelh7 wrote:Python and MatLab seem to be the most established in audio DSP
if you look into academic dsp-textbooks and research papers then, yes, matlab tends to pop up a lot. but from what i have heard, recently there's a shift in the general scientific community from matlab to python. so, for personal research, i'd go with python nowadays (for convenience). but if you want to build actual products for musicians, then C++ is the language of choice (for performance)
My website: rs-met.com, My presences on: YouTube, GitHub, Facebook

Post

ah, by the way - python has 0-based array indexing and matlab 1-based. that means, with python, textbook dsp-equations will translate more directly to python-code and any python prototype/research code will also translate more directly to c++, should you want to turn it into a product someday later. (having to convert between 0-based and 1-based array indexing is inconvenient and error-prone)
My website: rs-met.com, My presences on: YouTube, GitHub, Facebook

Post

If you're going to be a professional audio DSP programmer for creation software and games on desktop computers, consoles or mobile phones, you're going to do lots of C++. Other languages are fine for prototyping, tooling and so forth, but the shipped product will be C++.

C++ is used because of high constant speed, and generally this speed comes from the lack of dynamic typing (the cpu just does every operation directly instead of checking for types first) and lack of garbage collector (GC induced pauses = not good).

Post

I think Python should replace Matlab as a DSP prototyping platform.

However C++ is currently needed for (many) real-time implementations, because it runs fast enough.

Post

Fluky wrote:I think Python should replace Matlab as a DSP prototyping platform.
huh? I hope not^^
would be a pain in the ass :D
like.. read a WAV, upsample 4x via cubic, process-with-your-code, FIR filter, donwsample 4x, measure THD on output... is about 5 commands in matlab.
In python I would still be busy with searching for a lib that can do cubic resample, FIR, THD .... while I can look at first results on matlab already :D

(Ofc there are DSP libs available for python too, but matlabs only purpose is to test/prototyping/simulate mathematical systems. And it is really good on that IMHO. Python is no out-of-the-box environment, but you need to setup the environment on your own first ==> annoying for rapid prototyping).

Post

Just get proper scientific distribution, then it's better than Matlab. Of course, if you don't know anything, it's different, but then similar than Matlab: which toolbox to use?

Post

PurpleSunray wrote:
Fluky wrote:I think Python should replace Matlab as a DSP prototyping platform.
huh? I hope not^^
would be a pain in the ass :D
like.. read a WAV, upsample 4x via cubic, process-with-your-code, FIR filter, donwsample 4x, measure THD on output... is about 5 commands in matlab.

I've been gauging the Signal processing toolbox for Matlab, but since it's expensive, like the other packs, I don't think it's reasonable for someone wanting to develop at home and not in some company.

I find Scipy reasonable (http://docs.scipy.org/doc/scipy/reference/signal.html). I'm using it as part of Sage. But there's also the Enthought distribution.

I also dislike Matlab's language. It's not as fun as Python.

Post

At best, it's a dialect, Matlab is not a real language.

Post Reply

Return to “DSP and Plugin Development”