-- seqr-n (rd) module Sound.SC3.Graph.RD_seqr_n where import Sound.SC3 {- hsc3 -} import Sound.SC3.Lang.Control.OverlapTexture {- hsc3-lang -} import Sound.SC3.UGen.External.RDU {- sc3-rdu -} seqr_f :: UGen -> UGen -> UGen seqr_f f e = let n = constant (mceDegree e) / 2 in select (mulAdd (lfSaw KR f 0) n n) e seqr_n :: Int -> UGen seqr_n n = let f = iRand 'α' 9 18 / constant n o1 = let f1 = seqr_f f (midiCPS (iRandN n 'β' 72 96)) f2 = seqr_f f (midiCPS (iRandN n 'γ' 72 84)) h1 = seqr_f f (randN n 'δ' 1 3) h2 = seqr_f f (randN n 'ε' 3 6) in blip AR (mce2 f1 f2) (mce2 h1 h2) o2 = mce2 (seqr_f f (randN n 'ζ' 0.05 0.10)) (seqr_f f (randN n 'η' 0.05 0.15)) in o1 * o2 main :: IO () main = overlapTextureU (6,6,3,maxBound) (seqr_n 13)