packages feed

hsc3-graphs-0.8: src/bit-reduction.lhs

bit reduction (adc)

> import Sound.SC3.Monadic

> sample_rate_decrease =
>   do { f <- lfNoise2 kr 8
>      ; nh <- lfNoise2 kr 3
>      ; let { src = blip ar (f * 200 + 300) (nh * 10 + 20)
>            ; sr = mouseX kr 1000 (sampleRate * 0.1) Exponential 0.2 }
>        in audition (out 0 (latch src (impulse ar sr 0))) }

{ var f = LFNoise2.kr(8)
; var nh = LFNoise2.kr(3)
; var src = Blip.ar(f * 200 + 300, nh * 10 + 20)
; var sr = MouseX.kr(1000, s.sampleRate * 0.1, 'exponential', 0.2)
; Out.ar(0, Latch.ar(src, Impulse.ar(sr, 0))) }.play

> bit_rate_decrease =
>   do { f <- lfNoise2 kr 8
>      ; nh <- lfNoise2 kr 3
>      ; let { src = blip ar (f * 200 + 300) (nh * 10 + 20)
>            ; sr = mouseX kr 1000 (sampleRate * 0.1) Exponential 0.2
>            ; bit_sz = mouseY kr 1 24 Exponential 0.2
>            ; down_sample = latch src (impulse ar sr 0)
>            ; bit_redux = roundE down_sample (0.5 ** bit_sz) }
>        in audition (out 0 (mce2 down_sample bit_redux)) }

{ var f = LFNoise2.kr(8)
; var nh = LFNoise2.kr(3)
; var src = Blip.ar(f * 200 + 300, nh * 10 + 20)
; var sr = MouseX.kr(1000, s.sampleRate * 0.1, 'exponential', 0.2)
; var bit_sz = MouseY.kr(1, 24, 'exponential', 0.2) 
; var down_sample = Latch.ar(src, Impulse.ar(sr, 0))
; var bit_redux = down_sample.round(0.5 ** bit_sz)
; Out.ar(0, [down_sample, bit_redux]) }.play

> main = bit_rate_decrease