

Ask HN: Audio Programming - aleo

Could you please point me in the right direction how should I get started with audio programming?<p>I&#x27;m a self-taught web developer without college degree. I know PHP, Python, and a little Scheme. I&#x27;m not a very good programmer to be honest.<p>But recently I became interested in creating audio apps for iphone, particularly I&#x27;m interested in virtual instruments, synthesizers and such. I use dozens of audio apps on my iphone all the time, so I thought why not try creating one?<p>Well, I purchased couple of books on audio programming but they are very difficult right from the start. Core Audio is also very complex.  And they use C or C++ which are very foreign to me. As far as I understand this is a difficult field in general, so it requires low level programming, math and all these advanced topics.<p>I was wondering if it&#x27;s possible to learn all these things by myself? For the last month I&#x27;ve been studying some math at Khan academy, and I also got Kernighan and Ritchie book on C, but I feel like there&#x27;s very little progress and it gets harder and harder (currently learning about pointers and memory for the first time).<p>I&#x27;m really looking for some sort of roadmap, so if anyone could recommend more gentle approach to audio programming, or some books for very beginners, or provide some guidance in this field I&#x27;d really, really appreciate it.
======
deanfranks
I would start with Octave. You can use it to quickly learn the math behind
music synthesis and experiment with the various methods. It is open source and
available for Windows,Linux,Mac and Android (at least, there are probably
other ports).

Then you can concurrently learn a programming language (IMHO based on your
post, Python might be a good place to start).

You might also take a look at CSound which is a dedicated environment and
programming language for sound synthesis. The CSound documentation pages also
have references to a wide variety of other available systems (like Max and
Reaktor).

If you are going to ultimately create audio apps for the iphone then I don't
think you can avoid C/C++/Objective C but you will have an easier time doing
the sound synthesis experimentation in an environment tailored to that
function.

------
T-A
Of the languages you already know, Python is definitely the best choice for
audio. There is a lot of code to learn from:

[https://wiki.python.org/moin/Audio/](https://wiki.python.org/moin/Audio/)

[https://wiki.python.org/moin/PythonInMusic](https://wiki.python.org/moin/PythonInMusic)

I would start there and learn the audio & music concepts. Once you understand
that part and know what you want to do, you will also be in a better position
to decide on programming language.

