Skip to content

Instantly share code, notes, and snippets.

@stereosteve
Created August 29, 2024 15:46
Show Gist options
  • Save stereosteve/3ccc1f182a7404515cafd99e5d13c5ea to your computer and use it in GitHub Desktop.
Save stereosteve/3ccc1f182a7404515cafd99e5d13c5ea to your computer and use it in GitHub Desktop.
So Much To Say
use_bpm 110
hits = "/Users/steve/code/so_much_to_say/samples/"
voices = File.readlines("/Users/steve/code/so_much_to_say/voices.txt").map {|line| line.chomp}
words = %w(so much to say)
puts "hello!!!!!"
live_loop :initial do
for voice in voices do
for word in words do
sample hits, "#{voice}-#{word}.aiff", rate: 2, amp: 2, start: 0.2
#sleep sample_duration hits, "#{voice}-#{word}.aiff"
sleep 1
end
end
end
sleep 4
live_loop :kick do |a|
with_fx :reverb, room: 1 do
sample :bd_tek, amp: 1, rate: 1
if a > 4 and a % 2 == 1
sample :sn_dub, amp: 0.3
end
end
sleep 1
a += 1
end
sleep 11
live_loop :yell1 do
for word in words do
voice = voices.sample
sample hits, "#{voice}-#{word}.aiff", rpitch: rand(-7..7), pan: rand(-1..1)
#sleep sample_duration hits, "#{voice}-#{word}.aiff"
sleep 3
end
end
sleep 2
# adapted from "tron" example
live_loop :tron do
with_synth :dsaw do
with_fx(:slicer, phase: [0.5].choose) do
with_fx(:reverb, room: 0.5, mix: 0.3) do
n1 = :b1
p = play n1, amp: 2, release: 8, note_slide: 4, cutoff: 30, cutoff_slide: 4, detune: rrand(0, 0.2)
##| control p, note: n2, cutoff: rrand(80, 120)
end
end
end
sleep 8
end
sleep 5
live_loop :yell2 do
for word in %w(to say so much) do
voice = voices.sample
sample hits, "#{voice}-#{word}.aiff", rpitch: rand(-4..4), pan: rand(-1..1)
#sleep sample_duration hits, "#{voice}-#{word}.aiff"
sleep 2
end
end
sleep 3
live_loop :boom3 do
for word in %w(to so) do
voice = voices.sample
sample hits, "#{voice}-#{word}.aiff", rpitch: rand(12..24), pan: rand(-1..1)
#sleep sample_duration hits, "#{voice}-#{word}.aiff"
sleep 1
end
end
#!/usr/bin/env fish
for line in (cat 'voices.txt')
echo "voice: $line"
for word in 'so' 'much' 'to' 'say'
say -o "samples/$line-$word.aiff" -v "$line" "$word"
end
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment