hdf-0.15: gr/lfo-modulation-buf-m.hs
import Control.Monad
import Sound.DF.Uniform.GADT {- hdf -}
import Sound.OSC {- hosc -}
import qualified Sound.SC3 as S {- hsc3 -}
main :: IO ()
main = audition_rju lfo_modulation_buf_msg =<< lfo_modulation_buf_m
lfo_modulation_buf_msg :: [Message]
lfo_modulation_buf_msg = [S.b_alloc 0 44100 1, S.b_alloc 1 44100 1]
-- > drawM lfo_modulation_buf_m
lfo_modulation_buf_m :: (Functor m,UId m) => m (DF ())
lfo_modulation_buf_m = do
let dpl f p q = liftM2 (,) (f p) (f q)
mk_p f = fmap (mul_add 3600.0 4000.0) (sin_osc_m f 0.0)
s <- fmap (mul_add 80.0 160.0) (sin_osc_m 0.05 0.0)
(p1, p2) <- dpl mk_p 0.6 0.7
l <- fmap (* 0.05) (lf_pulse_m s 0 0.4)
(r1, r2) <- dpl (\x -> rlpf_m l x 0.2) p1 p2
c1 <- buf_comb_n_m 0 r1 0.20 2.0
c2 <- buf_comb_n_m 1 r2 0.25 2.0
return (out2 c1 c2)