doughbeat is a very minimal livecoding editor. Principles:
- Minimal API
- Bring your own abstractions
- Just a single HTML file
You can use it here: https://felixroos.github.io/doughbeat/
The application is very simple, you just have to write a dsp
function that uses its only argument t
(time in seconds) to calculate a number between -1 and 1.
The returned number represents the speaker position for that moment in time: 0 is the resting position while -1 and 1 are maximum in / out.
The dsp
function will be called 44100 times per second! Example:
Example:
function dsp(t) {
return (110 * t) % 1 - 0.5;
}
This is a simple sawtooth wave... The returned numbers will rise from -0.5 to 0.5 at a frequency of 110Hz. This is just a very basic example. You can actually write full music pieces with this abstraction.
The following examples are all shamelessly copied from wavepot, all rights / credits go to the respective authors! I will first have to learn how to use this tool myself to add some of my own tunes -_- This is just to give some inspiration of what's possible
- stagas - early morning
- potasmic - go to sleep
- stagas - got some 303
- stagas - icecream
- stagas - late morning
- stagas - mind swift
- stagas - mind swift seutje mix
- stagas - morning
- stagas - need more 303
- stagas - on the verge
- stagas - on the verge tech mix
- stagas - polytropon
- stagas - polytropon astral mix
- stagas - rooftop unvisited
- ? - subwah
- unexpected token
- justaboutdead - YAY!
- potasmic - afternoon walk
- potasmic - dubstep dawn
To understand more about making music with maths, read my blog post series:
- https://loophole-letters.netlify.app/buffers/
- https://loophole-letters.netlify.app/real-time-synthesis/
- https://loophole-letters.netlify.app/real-time-synthesis2/
- htmlbytebeat
- wavepot inspired the
dsp
function (before it was just at
expression)