-- lg-timed (rd) module Sound.SC3.Graph.RD_lg_timed_m where import Sound.SC3.Monad {- hsc3 -} lg_timed :: UId m => m UGen lg_timed = do let timed r y p = do d0 <- dser r p d1 <- dcons 0 d0 d2 <- dser r y let t = tDuty AR d1 0 RemoveSynth d2 1 return (latch t t) lg u = return (lag u 0.03) n = mce [52,76,66,67,68,69] a = mce [0.35,0.15,0.04,0.05,0.16,0.07] d = mce [0.1,0.5,0.09,0.08,0.07,0.3] x = mouseX KR 0.5 1.25 Linear 0.2 tn <- lg =<< timed dinf n (d * x) ta <- lg =<< timed dinf a (d * x) return (sinOsc AR (midiCPS tn) 0 * ta) main :: IO () main = audition . out 0 =<< lg_timed