Skip to content

Instantly share code, notes, and snippets.

Embed
What would you like to do?
Sleeping With Fishes
use_random_seed(Time.now.nsec)
use_bpm(128)
arpTickRing = (ring 1,2,3,4,5)
arpTick = 0
scaleRing = (ring :ritusen, :shang, :jiao, :zhi, :gong, :yu, :neapolitan_minor, :chinese)
masterScale = :ritusen
masterRoot = :Eb3
arpInit = 1
sampleInit = 1
bubbleInit = 1
slowInit = 1
live_loop :fastsequencing do
sleep 128 if arpInit == 1
arpTick = arpTickRing.choose
sleep 4
end
with_fx :gverb, room: 10, spread: 0.9, mix: 0.15 do
with_fx :reverb, Mix: 1 do
with_fx :echo, phase: 0.1, mix: 0.8 do
live_loop :bubble do
bubbleSample = :elec_plip
sleep 32 if bubbleInit == 1
if one_in(10)
30.times do
sample bubbleSample, rate: rrand(0.1, 2) if one_in(3)
sleep rrand(0.1, 2)
end
end
bubbleInit = 0
sleep 16
end
end
use_synth :pretty_bell
live_loop :slowsequencing do
sleep 256 if slowInit == 1
use_octave +4
play masterRoot
arpInit = 1 if one_in(2)
sampleInit = 1 if one_in(20)
bubbleInit = 1 if one_in(30)
masterScale = scaleRing.choose
slowInit = 0
sleep (ring 128, 256, 64).choose
end
end
use_synth :fm
arpAmp = 0.6
arpAmpDirection = 0
with_fx :echo do
live_loop :arp do
sleep 128 if arpInit == 1
play (scale masterRoot, masterScale, num_octaves:2).tick(step: arpTick), release: 0.15, amp: arpAmp, pan: rrand(-0.75, 0.75)
if arpAmpDirection == 0
arpAmp = arpAmp - 0.025
else
arpAmp = arpAmp + 0.025
end
(arpAmpDirection = 1) if arpAmp <= 0.1
(arpAmpDirection = 0) if arpAmp >= 0.6
arpInit = 0
sleep 0.125
end
end
with_fx :lpf, cutoff: 64 do
live_loop :ambience do
sleep 64 if sampleInit == 1
ambienceSample = :ambi_sauna
sample ambienceSample, rate: 0.05
sampleInit = 0
sleep (sample_duration(ambienceSample) * 20)
end
end
end
use_synth :tri
use_octave -2
live_loop :bass do
play (scale masterRoot, masterScale, num_octaves:2).tick(step: 4), release: 18, pan: -0.5
play ((scale masterRoot, masterScale, num_octaves:2).tick(step: 3) + 0.25), release: 18, pan: 0.5
sleep 16
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.