Thursday, January 8, 2026

Strudel — long, subtle, atmospheric, chill

// Strudel — long, subtle, atmospheric, chill (no harsh transients)

// Paste into strudel.cc


setcpm(82)


const root = "<a2 a2 a2 a2 a2 a2 a2 a2 a2 a2 a2 a2 a2 a2 a2 a2 a2 a2 a2 a2 a2 a2 a2 a2 a2 a2 a2 a2 a2 a2 a2 a2>"


// soft kick-ish thump + brushed hats

$: stack(

  // low thump (soft, sparse)

  s("bd ~ ~ ~ bd ~ ~ ~ ~ ~ bd ~  ~ ~ ~ ~")

    .gain("0.32 0.0 0.0 0.0  0.28 0.0 0.0 0.0  0.0 0.0 0.22 0.0  0.0 0.0 0.0 0.0")

    .lpf(170)

    .room(0.35).size(0.85),


  // whisper hats (very subtle movement)

  s("[~ hh:2]*16")

    .gain("0.06 0.04 0.05 0.03  0.06 0.04 0.05 0.03  0.06 0.04 0.05 0.03  0.07 0.04 0.05 0.03")

    .hpf(6500)

    .room(0.55).size(0.95)

    .delay(0.18).delayfb(0.22).delaytime(0.33)

)


// warm pad chord bed (slow harmonic drift)

$: n("<0 0 0 0  2 2 2 2  5 5 5 5  4 4 4 4>")

  .add(note(root))

  .add("<0 7 12 7>")

  .s("saw")

  .slow(8)

  .attack(1.2).release(6.8)

  .gain(0.12)

  .lpf("<900 1100 950 1200 1000 1300 980 1250>")

  .lpq(0.25)

  .room(0.8).size(0.98)

  .delay(0.25).delaytime(0.5).delayfb(0.28)


// high, glassy “air” layer (tiny notes, lots of space)

$: n("<12 14 16 19  16 14 12 11  12 14 16 19  21 19 16 14>")

  .add(note(root))

  .s("triangle")

  .slow(2)

  .attack(0.02).release(1.8)

  .gain(0.05)

  .hpf(2500)

  .room(0.9).size(0.99)

  .delay(0.33).delaytime("<0.375 0.5 0.625 0.75>").delayfb(0.35)


// gentle evolving bass (not punchy)

$: n("<0 0 0 0  0 -2 -2 -2  -5 -5 -5 -4  -4 -4 -2 -2>")

  .add(note(root))

  .s("sine")

  .slow(4)

  .attack(0.15).release(1.2)

  .gain(0.10)

  .lpf(220)

  .room(0.25).size(0.7)


// occasional texture swells (like distant noise / tape)

$: s("noise:2")

  .slow(16)

  .attack(2.5).release(6.5)

  .gain("<0.00 0.02 0.00 0.03 0.00 0.02 0.00 0.04>")

  .hpf(1800).lpf(9000)

  .room(0.95).size(0.99)

  .delay(0.5).delaytime(0.75).delayfb(0.22)




≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈



setcpm(82)

const root = "a2"

// soft pulse
$: s("bd ~ ~ ~ ~ ~ ~ ~")
  .slow(2)
  .gain(0.25)
  .lpf(160)
  .room(0.4).size(0.8)

// airy hats
$: s("~ hh*8")
  .gain("0.04 0.03 0.05 0.03")
  .hpf(6000)
  .room(0.7).size(0.95)
  .delay(0.2).delaytime(0.33).delayfb(0.25)

// warm drifting pad
$: n("0 0 2 5 4 2")
  .add(note(root))
  .add("0 7 12")
  .s("saw")
  .slow(8)
  .attack(1.5).release(7)
  .gain(0.12)
  .lpf("900 1100 1000 1200")
  .room(0.85).size(0.98)
  .delay(0.25).delaytime(0.5).delayfb(0.3)

// high shimmer
$: n("12 14 16 19 16 14")
  .add(note(root))
  .s("triangle")
  .slow(2)
  .attack(0.02).release(2)
  .gain(0.05)
  .hpf(2500)
  .room(0.9).size(0.99)
  .delay(0.33).delaytime("0.375 0.5 0.75").delayfb(0.35)

// gentle bass
$: n("0 0 -2 -5 -4")
  .add(note(root))
  .s("sine")
  .slow(4)
  .attack(0.2).release(1.4)
  .gain(0.1)
  .lpf(220)

// distant texture swell
$: s("noise")
  .slow(16)
  .attack(3).release(7)
  .gain("0 0.02 0 0.03")
  .hpf(2000)
  .room(0.95).size(1)
  .delay(0.5).delaytime(0.75).delayfb(0.2)

≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈

// ultra-chill, very slow, ambient Strudel
// safe strings, nothing fancy

setcpm(60)

const root = "a2"

// deep soft breath
$: n("0")
  .add(note(root))
  .s("sine")
  .slow(8)
  .attack(3)
  .release(10)
  .gain(0.12)
  .lpf(180)
  .room(0.7)
  .size(0.9)

// warm pad drift
$: n("0 3 5 7 5 3")
  .add(note(root))
  .s("saw")
  .slow(16)
  .attack(4)
  .release(14)
  .gain(0.08)
  .lpf(900)
  .room(0.85)
  .size(0.98)

// high air shimmer
$: n("12 14 16 14")
  .add(note(root))
  .s("triangle")
  .slow(12)
  .attack(1)
  .release(6)
  .gain(0.04)
  .hpf(3000)
  .room(0.9)
  .size(1)

// distant noise wash
$: s("noise")
  .slow(32)
  .attack(6)
  .release(18)
  .gain(0.025)
  .hpf(2000)
  .room(0.95)
  .size(1)


≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈



AI audio