-- reso-pulse (jmcc) #1 module Sound.SC3.Graph.JMCC_reso_pulse where import Sound.SC3 {- hsc3 -} import Sound.SC3.Lang.Control.OverlapTexture {- hsc3-lang -} rand2 :: ID a => a -> UGen -> UGen rand2 k n = rand k (-n) n reso_pulse :: UGen reso_pulse = let f = midiCPS (lchoose 'α' [25,30,34,37,41,42,46,49,53,54,58,61,63,66]) f' = 2 * f + rand2 'β' 0.5 in (lfPulse AR f 0 0.2 + lfPulse AR f' 0 0.2) * 0.02 -- > let g = reso_pulse_pp (silent 1) reso_pulse_pp :: UGen -> UGen reso_pulse_pp z = let lfoFreq = 6 lfo = lfNoise0 'γ' KR lfoFreq * 1000 + 1200 x = mouseX KR 0.2 0.02 Exponential 0.2 left = rlpf z lfo x delayTime = 2 / lfoFreq right = delayN left delayTime delayTime in mce2 left right main :: IO () main = overlapTextureU_pp (4,2,4,maxBound) reso_pulse 1 reso_pulse_pp