sonic-pi
sonic-pi copied to clipboard
Add FFT based vocoder effect
This works by using the left channel as the modulator and the right channel as the carrier. A parameter for adding white noise helps to improve intelligibility for spoken/sung texts. Another parameter for gating the carrier helps reduce low level signals causing continuous output.
Audio demo: https://www.dropbox.com/s/rqnuif7zp2vm652/vocoder_demo.wav?dl=0
# example usage
live_loop :foo do
with_fx :vocoder, noise_ratio: 0.25 do
pth = :loop_amen
sample pth, pan: -1
x = synth :dsaw, pan: 1, note: :a3, sustain: sample_duration(pth), note_slide: 0.1
32.times do
control(x, note: [scale(:a3, :minor_pentatonic, num_octaves: 1).choose])
sleep sample_duration(pth) / 32
end
end
end