Skip to content

Instantly share code, notes, and snippets.

@AlexandreRangel
Created September 19, 2016 10:27
Show Gist options
  • Save AlexandreRangel/38e7d308e4cc3c4e73b4e465ead2e190 to your computer and use it in GitHub Desktop.
Save AlexandreRangel/38e7d308e4cc3c4e73b4e465ead2e190 to your computer and use it in GitHub Desktop.
Sonic Pi music code
# Alexandre rANGEL www.quasecinema.org
# 18-Sep-2016 Sonic Pi 2.11 dev
# sky on the eye v03
# bit crusher to death
use_bpm 144 #72
i1 = 0
i2 = 0
playhead = 128
##################################################
live_loop :count do
playhead = playhead + 1
puts '>>>>> #{playhead}'
sleep 1
end
with_fx :bitcrusher, sample_rate: 43000 do
live_loop :drums1 do
i1 = i1 + 1
if i1 > 128/4
myRate = 1.0
if one_in(32)
i1 = i1 - 1
myRate = rrand(0.8,0.9)
end
with_fx :bitcrusher, bits: (ring 12,10,12)[i1] do
sample :drum_tom_lo_hard, rate: myRate, amp: 0.3
if i1 > 64 and i1.odd?
sample :bd_zum,
rate: -myRate/3.5, amp: 0.75
sleep 0.25
sample :bd_pure, rate: rrand(-1.5,-8.5),
amp: 1.0 if one_in(2)
end
end
end
sleep 1.0/2
#sleep 16
end
##################################################
live_loop :drums2 do
i1 = i1 + 1
if i1 > 96/4
i2 = i2 + (1.0/8)
i2 = 0 if i2 > 4
with_fx :hpf , cutoff: (ring 90,120,90,60)[i1] do
if rrand(0,100) > (ring 10,33,70,40,90)[i2.to_int]
sample [:elec_blip,:elec_blip2].choose, amp: 0.8
end
end
end
sleep 1.0/4
#sleep 64
end
##################################################
live_loop :drums3 do
i1 = i1 + 1
with_fx :bitcrusher, bits: [5,6].choose,
sample_rate: rrand(8000,24000) do
sample :drum_heavy_kick
end #fx
sleep (ring 4,2,2,1,1,1,1,1,1,1,1,1).tick
#sleep 64
end
##################################################
live_loop :synth1 do
with_fx :bitcrusher, sample_rate: 6000 do
with_fx :echo, phase: 2, decay: 4 do
with_fx :slicer, phase: [0.25,0.25,0.5,0.5,1].choose do
with_fx :ixi_techno, phase: rrand_i(1,32),
res: rrand(0,0.5), mix: rrand(0,0.5) do
use_synth [:fm,:fm,:blade,:prophet].choose
play_chord scale(:a2, :minor),
release: [16,32].choose,
divisor: rrand_i(2,16),
depth: rrand_i(0,16),
amp: 0.8
sleep 8
use_synth [:fm,:fm,:blade,:prophet].choose
play_chord scale(:a2, :minor),
release: [4,8,16,24,32].choose,
divisor: rrand_i(2,8),
depth: rrand_i(0,8),
amp: 0.5
end #fx
end #fx
end #fx
end #fx
sleep 8
#sleep 64
end
end #bitcrusher
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment