packages feed

hsc3-graphs-0.11: src/tremulate.hs

-- tremulate (jmcc)

import Sound.SC3.ID
import Sound.SC3.Lang.Control.OverlapTexture

tremulate :: UGen
tremulate =
    let f = rand 'a' 500 900
        o = fSinOsc AR (f * mce [1,1.2,1.5,1.8]) 0
        r = uprotect 'a' (rand 'a' 30 90)
        a = max 0 (uclone 'a' 4 (lfNoise2 'a' KR r) * 0.1)
        l = udup 4 (rand 'a' (-1) 1)
    in mix (pan2 o l a)

tremulate_pp :: UGen -> UGen
tremulate_pp i = combN i 0.1 0.1 1

main :: IO ()
main = xfadeTextureU_pp (2,0.5,maxBound) tremulate 2 tremulate_pp

{-
audition (out 0 tremulate)
Sound.SC3.UGen.Dot.draw tremulate
-}