[erlang-questions] Building a DAW in Erlang

Fri Sep 1 02:22:07 CEST 2017

Hey Joe,

Great project! 

Sadly, for me, I can't help with the technical issues facing you. But, here are two wacky experiments that may or may not yield interesting results.

But first, some background:

Way back in my Stanford graduate student days friends and I got together for several sessions to play with audio recording. We were interested in creating the most far-our sounds possible--- anything goes from banging on oven racks to looping and messing with tape speeds. Pure play. We came out with a cacophony of eery sounds. A year later I produced a film on Robert Frost's childhood in San Francisco. But one scene defied our composer. We need something, but music didn't seem right. Then I remembered our cacophy tape. We found an interesting section, mixed it into the sound track at a low level, and it was perfect.

So, Experiment A:

1. Create a sample of N Erlang terms. 
2. Run them through erlang:term_to_binary/1.
3. Play them back through audio. 

You may need headers to play the audio, but you'd know more about that than I.

Thought (and maybe do) Experiment B:

1. Is it possible to write an Erlang term that generates an approximation of white noise?
2. Is it possible to write an Erlang term that generates short sequences of basic wave forms--- sine, triangle, square?
3. Is there a programmatic way to edit the generated binaries to improve aesthetic quality?

Love to hear if you come up with anything.

All the best,


-----Original Message-----
From: "Joe Armstrong" <erlang@REDACTED>
Sent: Thursday, August 31, 2017 7:11am
To: "Erlang" <erlang-questions@REDACTED>
Subject: [erlang-questions] Building a DAW in Erlang


I want to build a "proof of concept" DAW (Digital Audio Workstation)

Why? - just for fun.

DAWs involve complex GUIs, complex audio processing, and complex
man-machine interactions - I'd like to make the DAW from small well
defined isolated communicating components.

I was wondering about audio - has anybody ideas about this.

I want to build a synthesizer with as much Erlang as possible and
as little C as necessary - and even if I use C I'd like reference
algorithms in Erlang to validate the C. Has anybody implemented any
digital audio filters in Erlang?

The Synthesizer would have no GUI (The GUI is a separate issue).

Having got to the point where I can generate raw PCM samples
I need to output these - preferably send them to a socket,
with an audio server that reads and outputs the samples - has anybody
done this?

Initially I'll do this on mac but would eventually like it to run on
windows and linux.

All idea are very welcome

erlang-questions mailing list

More information about the erlang-questions mailing list