Live data from Hacker News

Ask HN: How to get started with audio programming?

news.ycombinator.com

51–60 of 123 posts

Re: Ask HN: How to get started with audio programming?

#54
I've been working on a little synthesizer as a means of learning rust. https://github.com/jimktrains/synth

Sound on sound has a series on synthesizer concepts. https://www.soundonsound.com/series/synth-secrets

Dsp guide is a great resource. http://dspguide.com/

Music dsp also has some good information and implementations. https://www.musicdsp.org/en/latest/index.html

Re: Ask HN: How to get started with audio programming?

#55
If you're new to programming, it might also help you to get started with Max/MSP and YouTube videos that already show you how to make the mini-synth you're after (terrible as a programming environment but great as a learning/prototyping tool).

The Computer Music Tutorial by Curtis Roads is a good companion here if you want inner workings. You might be able to snag a PDF copy online to see if it's for you.

Audio Programming Book is entirely in C and can be a bit of a pain to get things working in C if you're new to programming (although highly worth the initial struggle if you're looking at it with a career in mind), although I'd still recommend stepping from Max/MSP into MATLAB/Python, which focuses on functionality rather than programming itself.

Python is also bit more beginner friendly, although C++ will probably end up being your long term bet.

I'd pick up the Pyo library for python, and/or a tutorial like this one, after dabbling with Max/MSP a bit: https://python.plainenglish.io/build-your-own-python-synthes...

Then if you want to get even deeper into the DSP, you could go with pretty much any of the other resources the others have mentioned here. My personal faves are the Steven Smith DSP book, Julius Smith's resources (with its runnable MATLAB scripts), and DAFX book by Udo Zolzer.

Re: Ask HN: How to get started with audio programming?

#56
post #17

You can try to build an visual audio editor and learn everything else from there, step by step.

That is how I learned the very basics of web audio and modular synthesizers at once (here's the result https://github.com/spectrome/patchcab). Setting a clear goal makes the learning much easier.

Re: Ask HN: How to get started with audio programming?

#57
Solid Gold List! I got into audio with ChucK: Strongly-timed, Concurrent, and On-the-fly Music Programming Language. Concurrency primitives are built right into the language spec, so it's easy for programmers to grok per sample digital sound. Powers laptop orchestras, but simple enough that you can build a laptop synthesizer in 100 lines of code

http://chuck.stanford.edu/

Re: Ask HN: How to get started with audio programming?

#58
It might not be inline with your exact goals, but I've really been enjoying doing audio visualization lately.

I'm using the Unity game engine, and am leaning heavily on already-implemented FFT algorithms available on the Unity AudioSource component, but the fun part is taking the spectrum data, dividing it up into bands, and doing visuals with those.

Here is a short video showing a simple audio visualization demo I created: https://www.youtube.com/watch?v=kYt0dcUY3i8

It led me down a bit of a rabbit hole with watching videos about Fast Fourier Transforms, and learning more about audio specific programming.

Re: Ask HN: How to get started with audio programming?

#59

Browsers have a very accessible API for audio programming now[0]. Comes with the benefits of being platform independent, using JS(okay, this as a benefit is arguable to some), and easily distributable(perhaps too easy since you can't hide your source code either, unless you do some form of SaaS and introduce latency). [0] - https://developer.mozilla.org/en-US/docs/Web/API/Web_Audio_A...

It is surprisingly good, though programming per sample seemed unusable on my plenty fast enough machine.

Re: Ask HN: How to get started with audio programming?

#60
I manage a team in this field presently; the answer to your question depends on whether you want to be gainfully employed doing so, or not.

Web Audio API and JUCE are the modern building blocks for mostly everything out there; if you're familiar with these, that's a really good place to start.

If you're looking for something accessible, SOUL is an excellent domain-specific scripting language that leverages JUCE underneath; see https://github.com/julianstorer for more context.

I'm not as sold on Max/MSP or Pd, though they're fun to play with for a brief moment.

Post reply on HN