patchlore · @paul
699 followers · 8266 posts · Server post.lurk.org

Tomorrow is the deadline for the , and I think my track is in a good enough place for it.

For those of you just joining in, for the past month, I've been making a synthwave track from scratch: no DAW, no plugins. Just C code and some scripting languages on top of that. In other words, I'm using my and projects.

The code for the song can be found here:

git.sr.ht/~pbatch/gest/tree/ma

...if you don't believe me, compile and render it yourself ;)

#gest #sndkit #synthwavefromscratch #LibreMusicChallenge

Last updated 3 years ago

patchlore · @paul
699 followers · 8266 posts · Server post.lurk.org

At this point in my track, I'm pretty much down to finishing up the sequencing and doing the final mixing.

The whole thing is written as a program that works with DSP algorithms for sound synthesis and Gest doing the sequencing and automation.

When it's all done, the script to generate the whole track will be available in the Gest repository. The current iteration has ~500 lines of LIL code which is used to render a single WAV file.

#sndkit #synthwavefromscratch

Last updated 3 years ago

patchlore · @paul
699 followers · 8266 posts · Server post.lurk.org

I hope it's not cheating to use hard sync for the . It's giving my bass sound some teeth in my track, so I'm keeping it.

#synthwavefromscratch #LibreMusicChallenge

Last updated 3 years ago

patchlore · @paul
699 followers · 8266 posts · Server post.lurk.org

lots of unexpected little bugs have been uncovered in thanks to the challenge I've been making for myself.

Incredibly thankful for GDB and Valgrind. Also very thankful that I only have to troubleshoot single-threaded offline-rendering programs right now.

#synthwavefromscratch #sndkit

Last updated 3 years ago

patchlore · @paul
699 followers · 8266 posts · Server post.lurk.org

More progress with my track today for the ! (I am building a synthwave track without a DAW, using just low-level C code with a small scripting language on top.)

Starting to use my gesture sequencer to work out melodies and make automation curves. Also added some a delay-throw on the melody.

I'm up to a 8-16 bar loop now. Hoping to add a little bit more. Another section perhaps? I need to leave enough time to make sure I can publish all the source code before the deadline!

#LibreMusicChallenge #synthwavefromscratch

Last updated 3 years ago

patchlore · @paul
699 followers · 8266 posts · Server post.lurk.org

Here's a classic subtractive 3osc synth bass sound.

set key 36;env [metro [expr (4 * 96) / 60]] 0.001 0.01 0.12;blsaw [mtof $key];blsaw [mtof [expr $key - 11.8]];add zz zz;blsaw [mtof [expr $key + 11.9]];add zz zz;mul zz 0.2;chorus zz 1.0 0.5 0.02 0.1;dcblocker zz;butlp zz 1000;butlp zz 1000;mul zz zz;wavout zz "synthbass.wav";computes 10;

#sndkit #synthwavefromscratch

Last updated 3 years ago

patchlore · @paul
699 followers · 8266 posts · Server post.lurk.org

hihat sounds!

env [metro 8] 0.001 0.01 0.01;mul [noise] 0.5;butlp zz 4000;buthp zz 8000;mul zz zz;wavout zz "hh.wav";computes 10;

#synthwavefromscratch

Last updated 3 years ago

patchlore · @paul
699 followers · 8266 posts · Server post.lurk.org

synthesized snare with gated reverb. also for

metro 1;hold zz;regset zz 0;regget 0;env zz 0.001 0.07 0.07;mul [noise] 0.1;butlp zz 5000;peakeq zz 8000 8000 2;peakeq zz 200 1000 5;buthp zz 200;mul zz zz;dup;dup dup;bigverb zz zz 0.97 10000;drop;dcblocker zz;regget 0;env zz 0.001 0.08 0.1;mul zz zz;add zz zz;wavout zz "snare.wav";regget 0;unhold;computes 10;

#synthwavefromscratch

Last updated 3 years ago

patchlore · @paul
699 followers · 8266 posts · Server post.lurk.org

synthesized kick drum sound using and . This will be used track.

metro 2;hold zz;regset zz 0;gensine [tabnew 8192];regget 0;dup;expon zz 1 0.1 0.001;scale zz 60 500;tphasor zz zz 0;phasewarp zz 0.2;oscfext zz zz;mul zz 0.5;regget 0;env zz 0.001 0.1 0.1;mul zz zz;regget 0;modalres zz 3000 3;add zz zz;wavout zz "kik.wav";computes 10;regget 0;unhold zz;

#synthwavefromscratch #LIL #sndkit

Last updated 3 years ago

patchlore · @paul
699 followers · 8266 posts · Server post.lurk.org

Continuations on my Synthwave From Scratch project, where I build a Synthwave track from "scratch" without a DAW, using open source DSP code in C, with some scripting languages on top.

I've added an initial lead sound to my track, but I haven't programmed the melody so it's just a single note. The lead is a particularly distinct feature with the synthwave genre, so it's important to get this one right. Both in timbre and in feel.

It seems the base of this sound is typically a modulated pulse oscillator put through some kind of chorus. I have a really nice sounding bandlimited square wave oscillator that worked quite well, but it goes against the rules of this month's (wavetable synthesis only). So, I went with a wavetable oscillator that uses phase distortion synthesis. It has a similar characteristic.

The way vibrato and pulse modulation behaves in the lead sound is key to getting it to feel right. This also influences the kinds of melodies that work. So actually sequencing will come next.

It also helps to dunk the lead in a very bright very large artificial reverb.

#synthwavefromscratch #LibreMusicChallenge

Last updated 3 years ago