hsc3-0.5: Help/Graphs/thx.lhs
thx (perry cook)
> import Sound.SC3
> import System.Random
> let { rvb i rT
> = let { d = mce [0.0297, 0.0371, 0.0411, 0.0437]
> ; c = mix (combN i 0.05 d rT * 0.25)
> ; f = (allpassN c 0.01 0.005 0.096835) }
> in allpassN f 0.01 0.0017 0.032924
> ; mk_env z0 t0 z1 t1 t2 z2 t3 c
> = let { z = [z0, z1, z1, z2, z2]
> ; t = [t0, t1, t2, t3]
> ; e = env z t [c, c, c] (-1.0) (-1.0) }
> in envGen KR 1 1 0 1 RemoveSynth e
> ; mk_node t4 f0 f1 l
> = let { f = mk_env f0 t0 f0 t1 t2 f1 (t3 + t4 + t5 + t5) EnvLin
> ; g = mk_env 0 t0 0.1 (t1 + t2 + t3) t4 0.0 (t5 + t5) EnvLin
> ; s = saw AR f
> ; t0 = 0.035
> ; t1 = 0.2267573696
> ; t2 = 2.2675736061
> ; t3 = 6.8027210884
> ; t5 = 1.75 }
> in pan2 s l g
> ; thx
> = let { s = foldl1 (+) (zipWith3 (mk_node t4) f0 f1 l)
> ; t4 = 7.9365079365
> ; n = 30
> ; l = take n (randomRs (-1.0, 1.0) (mkStdGen 1))
> ; f = [29, 87.5, 116, 175, 233, 350, 524, 880, 1048, 1760]
> ; f0 = take n (randomRs (200.0, 800.0) (mkStdGen 2))
> ; f1 = take n (cycle f) }
> in out 0 (rvb (mce [s]) t4) }
> in audition thx
http://ccrma-mail.stanford.edu/pipermail/stk/2007-January/000327.html