2022-01-02

Following on from yesterday’s sketch, today I’ve added a custom SynthDef with some of the characteristics from Andrew Huang’s video. He uses a Make Noise Dynamix to apply an exponential envelope to the amplitude and cutoff frequency of a filter. In SuperCollider I’ve done this

SynthDef(\pulse, { |outbus = 0, freq = 440, amp = 0.1|
  var out;

  out = EnvGen.ar(Env.perc(0.01, 1), doneAction: 2) * amp *
  Pulse.ar(freq, 0.3);
  out = LPF.ar(out, EnvGen.ar(Env.perc(0.1, 1, 7000*amp)));

  Out.ar(outbus, out ! 2);
}).add;

I’ve used a slightly longer attack time on the filter (LPF) frequency envelope and scaled the peak cutoff frequency using the amplitude passed in (so louder notes are a little brighter).

The generative sequence is similar to yesterday but a little simpler

(
TempoClock.default.tempo = 80/60;

Pbind(
  \instrument, \pulse,
  \scale, Scale.minorPentatonic,
  \amp, Prand(#[0.2, 0.3, 0.4, 0.5], inf),
  \degree, Pwrand(
	list: [
	  -5,
	  Prand((0..9)),
	  Prand((10..14)),
	  Rest()
	],
	weights: [3, 10, 2, 5].normalizeSum,
	repeats: inf),
).play()
)

I felt like choosing random notes from a minor scale was a little too random, so experimented today with using a minor pentatonic scale and making sure that the bass note was always the root/tonic to centre things a bit more.

The whole thing passes through Simon Stockhausen’s “Ethereal Wall” ValhallaDelay preset (20% wet).