packages feed

hsc3-graphs-0.14: Sound/SC3/Graph/F0_pkt_26.hs

-- http://www.fredrikolofsson.com/f0blog/?q=node/490 (f0)
module Sound.SC3.Graph.F0_pkt_26 where

import Sound.SC3 {- hsc3 -}

grid :: UGen -> UGen -> UGen
grid n i =
    let t = i / n
        a = abs (varSaw AR 0.02 t 0.5 * 7.5)
        b = varSaw AR 0.16 t (2/3) * a + 300
        c = varSaw AR 0.064 t 0.5 * 25 + 50
        d = varSaw AR 0.012 t 0.75 * c + 200
        e = varSaw AR 0.024 t 0.25 * 0.475 + 0.5
        f = varSaw AR (100 + i) t e
        g = varSaw AR 0.048 0 0.5 * 25 + 150
        h = varSaw AR ((i + 1) * g) t (1/3) * 150
        o = sinOsc AR h (f * pi) * d + b
        z = leakDC (varSaw AR o t 0.5) 0.995
    in pan2 z (varSaw AR 0.02 t 0.5) (1 / n)

main :: IO ()
main = audition (out 0 (mixFill 8 (grid 8)))