Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Or just use FAUST: http://faudiostream.sf.net/

Seriously, check it out, it's awesome. Write your audio DSP in a language suited to it, compile to efficient C++ (among other languages) and optionally embed it in a (huge) variety of environments. (even Javascript for webaudio)

It's a functional description language that describes a DSP graph, and can generate block diagrams too. Not to mention, it has libraries containing any filter you can imagine. Highly recommended.



FAUST definitely is worth checking out. Its authors are concerned with "long-term preservation of music programs", which is a great idea ; FAUST allows you to do just that. One can write audio dsp code, without cluttering the actual audio computation code with implementation/performance stuff like SSE, VST, ... that will be obsolete one day.

Another key point is that FAUST doesn't let you manipulate individual samples or time, but instead, focuses on the dataflow, which means you don't have to start all your programs by a time loop ; for example, a simple 2-input mixer is just "process = +;". It's a huge improvement over "for(t=0;t < n;t++) out[t] = in1[t] + in1[t];".


You can do something similar (translate to fast C) with Pure Data (Pd) [0], a graphical audio programming language, by using Heavy [1].

[0] http://puredata.info/

[1] https://enzienaudio.com/


Cool, I hadn't heard of Heavy. It had me until "use our cloud-based service to instantly generate high-performance code for x86 and ARM platforms." The day I switch to using a hosted service to compile my code...

Still, nice idea.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: