Created
May 11, 2025 19:19
-
-
Save camilajenny/c21de50333ceb7820ec1c8b5056d6f80 to your computer and use it in GitHub Desktop.
Stream downtempo w/ breathy pads
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
use_bpm 60 | |
define :rand_chord do | |
# A soft shifting chord from E minor, randomly voiced | |
root = [:e3, :g3, :b3].choose | |
chord(root, :minor7, num_octaves: 2).shuffle.take(3) | |
end | |
# === Breath Pad Layer === | |
live_loop :breathy_pad do | |
with_fx :reverb, mix: 0.6, room: 0.8 do | |
with_fx :slicer, phase: [4, 8].choose, pulse_width: 0.9 do | |
use_synth :dark_ambience | |
play rand_chord, attack: 2, release: 6, amp: 0.3, pan: rrand(-0.3, 0.3) | |
end | |
end | |
sleep [4, 6, 8].choose | |
end | |
# === Microdelay Echo Layer === | |
live_loop :echo_pad do | |
sync :breathy_pad | |
with_fx :echo, mix: 0.4, phase: 0.125, decay: 6 do | |
use_synth :hollow | |
play chord(:e4, :minor), release: 2, amp: 0.15, pan: rrand(-1, 1) | |
end | |
sleep [2, 4].choose | |
end | |
# === Glitch Pulse / Perc Layer === | |
live_loop :texture_plucks do | |
with_fx :distortion, distort: 0.2 do | |
with_fx :ping_pong, phase: 0.25 do | |
use_synth :pluck | |
play scale(:e4, :minor_pentatonic).choose + [-12, 0, 12].choose, amp: 0.1, release: 0.3 | |
end | |
end | |
sleep [0.5, 1.5, 2].choose | |
end | |
# === Low Kick Pulse === | |
live_loop :sub_kick do | |
sample :bd_haus, amp: 0.5 | |
sleep 4 | |
end |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
use_bpm 60 | |
# Define some instruments/samples | |
kick = :bd_haus | |
snare = :sn_dub | |
hat = :drum_cymbal_closed | |
live_loop :clock do | |
sleep 1 | |
end | |
# Global FX | |
with_fx :reverb, mix: 0.5 do | |
with_fx :echo, phase: 0.75, mix: 0.3 do | |
# === INTRO (bars 0–31) === | |
live_loop :intro_kick, sync: :clock do | |
32.times do | |
sample kick, amp: 0.5 | |
sleep 1 | |
end | |
stop | |
end | |
live_loop :intro_pad, sync: :clock do | |
32.times do | |
use_synth :hollow | |
play chord(:e3, :minor), attack: 1, release: 3, amp: 0.3 | |
sleep 4 | |
end | |
stop | |
end | |
# === BUILD (bars 32–63) === | |
live_loop :build_beat, sync: :clock do | |
sleep 32 | |
32.times do | |
sample kick, amp: 0.7 | |
sleep 1 | |
sample hat, amp: 0.2 | |
sleep 1 | |
end | |
stop | |
end | |
live_loop :build_chords, sync: :clock do | |
sleep 32 | |
32.times do | |
use_synth :prophet | |
play chord(:a3, :minor7), release: 2, amp: 0.4 | |
sleep 4 | |
end | |
stop | |
end | |
# === BREAK (bars 64–95) === | |
live_loop :break, sync: :clock do | |
sleep 64 | |
32.times do | |
use_synth :dark_ambience | |
play :e4, attack: 1, release: 6, amp: 0.3 | |
sleep 8 | |
end | |
stop | |
end | |
# === RELEASE (bars 96–127) === | |
live_loop :release_beat, sync: :clock do | |
sleep 96 | |
32.times do | |
sample kick, amp: 0.6 | |
sleep 1 | |
sample snare, amp: 0.4 if (spread 4,8).tick | |
sleep 1 | |
end | |
stop | |
end | |
live_loop :release_melody, sync: :clock do | |
sleep 96 | |
use_synth :blade | |
32.times do | |
play scale(:e4, :minor_pentatonic).choose, release: 1.5, amp: 0.3 | |
sleep 1.5 | |
end | |
stop | |
end | |
# === OUTRO (bars 128–end) === | |
live_loop :outro, sync: :clock do | |
sleep 128 | |
16.times do | |
use_synth :hollow | |
play chord(:e3, :minor), attack: 2, release: 4, amp: 0.2 | |
sleep 4 | |
end | |
stop | |
end | |
end | |
end |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment