notebook/strudel/Slow sine.md
2025-08-30 19:02:34 +09:00

3.6 KiB

setcps(60/60/4)

$:stack(
 note("<c2 e2>").sound("sine"),
 note("<c3 e3>").sound("sine").gain(0.5),
 note("<g3 b3>").sound("sine").gain(0.25),
 note("<e4 gs4>").sound("sine").gain(0.15),
 note("<<c2 e3> <e3 c2>>".late(1)).fast(2).sound("sine").gain(0.0625),
).postgain(0.4).delay(0.75).room(0.3).gain(0.3).fast(2)
  .fm(1).fmh(2)
  .lpf(sine.range(100,500).seg(4).slow(4))
  .lpq(10) 

$:stack(
 note("<c2 e2>").sound("sine"),
 note("<c3 e3>").sound("sine").gain(0.5),
 note("<g3 b3>").sound("sine").gain(0.25),
 note("<e4 gs4>").sound("sine").gain(0.15),
 note("<<c2 e3> <e3 c2>>".late(1)).fast(2).sound("sine").gain(0.0625),
).postgain(0.2).delay(0.75).room(0.3).gain(0.3)
  .penv(2)
  .lpf(sine.range(60,200).seg(14).fast(4))
  .lpq(15)

$:stack(
 note("<c2 e2>").sound("sine"),
 note("<c3 e3>").sound("sine").gain(0.5),
 note("<g3 b3>").sound("sine").gain(0.25),
 note("<e4 gs4>").sound("sine").gain(0.15),
 note("<<c2 e3> <e3 c2>>".late(1)).fast(2).sound("sine").gain(0.0625),
).postgain(0.6).delay(0.75).room(0.3).gain(0.3)
  .lpenv(4)
  .lpf(sine.range(200,300).seg(10).fast(2))
  .lpq(15)

$:sound("pink").decay(0.1).hpf(800)
setcps(60/60/4)
const base = stack(
 note("<c2 e2>").sound("sine"),
 note("<c3 e3>").sound("sine").gain(0.5),
 note("<g3 b3>").sound("sine").gain(0.25),
 note("<e4 gs4>").sound("sine").gain(0.15),
 note("<<c2 e3> <e3 c2>>".late(1)).fast(2).sound("sine").gain(0.0625),
).delay(0.75).room(0.3)

$_:base.postgain(sine.range(0.1,0.5).slow(3)).fast(4).jux(rev)
  .fm(2).fmh(2)
  .lpf(sine.range(100,600).seg(5).slow(2)).lpq(15)

$:base.postgain(0.2).fast(4).phaser(4)
  .penv(2)
  .lpf(tri.range(60,200).seg(14).fast(2)).lpq("<5 10 15 20 25>".fast(8))

$:base.postgain(0.2).fast(2).decay(16)
  .lpenv(2)
  .lpf(sine.range(200,400).seg(3).fast(8)).lpq(20)

$_:base.postgain(0.2).decay("<1 8>").fast(2)
  .lpf(perlin.range(400,900).seg(5).slow(3)).lpq(25)

all(x=>x._scope()
setcps(60/60/4)
const base = stack(
 note("<c2 e2>").sound("tri"),
 note("<c3 e3>").sound("tri").gain(0.5),
 note("<g3 b3>").sound("tri").gain(0.25),
 note("<e4 gs4>").sound("tri").gain(0.15),
 note("<<c2 e3> <e3 c2>>".late(1)).fast(2).sound("tri").gain(0.0625),
).delay(0.75).room(0.3)

$:base.postgain(0.2).fast(4).decay(0.5).transpose("<0 7 0 12>")
  .fm(2).fmh(2)
  .lpf(sine.range(300,600).slow(2)).lpq(15)
$:base.postgain(0.2).fast(2).decay(1).jux(rev)
  .lpf(400).lpq("<5 10 15>").penv(1)
$:base.postgain(0.2).fast(4).decay(2).lpenv(2)
  .lpf(sine.range(700,900).fast(7)).lpq(15)
$:base.postgain(0.2).fast(1).decay(1)
  .lpf(perlin.range(100,800).fast(7)).lpq(20).phaser(2)
all(x=>x._scope()
setcps(60/60/4)

const base = stack(
  stack(
  note("<a1 f1 c2 g1>").sound("saw"),
  note("<a2 f2 c3 g2>").sound("saw").gain(0.5),
  note("<e3 c3 g3 d3>").sound("saw").gain(0.25),
  note("<c4 a3 e4 b3>").sound("saw").gain(0.15)
  ).pan(sine.range(-0.4, 0.4).slow(8)),
  note("<[e5 c5] [c5 g5] [g5 d5] [d5 a5]>")
  .sometimes(x=>x.rev())
  .fast(1.5).sound("sqr")
  .late("<1 1.25 0.75 1.125>")  
  .early("<0 0.05 -0.05 0.02>") 
  .gain(perlin.range(0.15,0.5).slow(4)).pan("-0.8|0.8")
)

$:base
  .transpose("<0 2 7 5 12 0>".slow(2))
  .lpf(tri.range(300,400)).lpq(10)
  .sometimesBy(0.4,x=>x.mask("0"))
$:base.slow(2)
  .lpf(600).lpq(10).phaser(1.2).ply(4)
  .hpf(sine.range(80,120).slow(16)) 
  .sometimesBy(0.2,x=>x.mask("0"))
$:base.fast(1.5)
  .lpf(sine.range(200,300).slow(2)).lpq(15)
  .sometimesBy(0.3,x=>x.mask("0"))
$:base.fast(4)
  .lpf(perlin.range(300,400).fast(16)).lpq(15)
  .sometimesBy(0.3,x=>x.mask("0"))

all(x=>x.room(1/4).dist(0.05).postgain(1/4))