Skip to content

Instantly share code, notes, and snippets.

@rbnpi
Created June 6, 2018 14:48
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save rbnpi/664f47ab49cb312ff828ca8ce3179595 to your computer and use it in GitHub Desktop.
Save rbnpi/664f47ab49cb312ff828ca8ce3179595 to your computer and use it in GitHub Desktop.
Bach's Suite in D major BWV 1068 2nd movement arranged for Sonic Pi (Air on a G string) Listen to it here https://youtu.be/qnzlH02SSqU
#BWV1068 arranged for Sonic Pi by Robin Newman, June 2018
#play it using run_file "path/to/file/BWV2018mix.rb"
s=0 #set starting tempo index Used for adjusting final rit timings,set to 1
with_fx :level,amp: 0.8 do
with_fx :reverb, room: 0.6,mix: 0.7 do
use_synth :tri
#Tune part
a1=[]
b1=[]
a1[0]=[:Fs4,:B4,:G4,:Fs4,:E4,:D4,:Cs4,:D4,:Cs4,:B3,:A3,:A4,:Fs4,:C4,:B3,:E4,:Ds4,:A4,:G4,:G4,:E4,:B3,:A3,:D4,:Cs4,:G4,:Fs4,:Fs4,:Gs4,:A4,:D4,:D4,:E4,:Fs4,:E4,:E4,:D4,:Cs4,:B3,:B3,:Cs4,:D4,:Cs4,:B3,:A3,:Fs4,:B4,:G4,:Fs4,:E4,:D4,:Cs4,:D4,:Cs4,:B3,:A3,:A4,:Fs4,:C4,:B3,:E4,:Ds4,:A4,:G4,:G4,:E4,:B3,:A3,:D4,:Cs4,:G4,:Fs4,:Fs4,:Gs4,:A4,:D4,:D4,:E4,:Fs4,:E4,:E4,:D4,:Cs4,:B3,:B3,:Cs4,:D4,:Cs4,:B3,:A3,:Cs4,:D4,:Cs4,:B3,:Cs4,:A3,:A4,:C4,:B3,:B4,:A4,:G4,:G4,:Fs4,:G4,:Fs4,:G4,:r,:Fs4,:E4,:D4,:Cs4,:B3,:As3,:B3,:Cs4,:D4,:E4,:Fs4,:G4,:Fs4,:E4,:D4,:Cs4,:B3,:Cs4,:D4,:E4,:D4,:Cs4,:B3,:D4,:Fs4,:E4,:D4,:B4,:A4,:Gs4,:Fs4,:E4,:A4,:A3,:B3,:Cs4,:D4,:Cs4,:B3,:A3,:D4,:Fs4,:E4,:E4,:G4,:Fs4,:Fs4,:A4,:G4,:G4,:A3,:Cs4,:E4,:G4,:G4,:E4,:Fs4,:Fs4,:G4,:A4,:D4,:Fs4,:A4,:C5,:B4,:D4,:Cs4,:E4,:G4,:D4,:A3,:E4,:Fs4,:G4,:Fs4,:E4,:D4,:Cs4,:B3,:Cs4,:D4,:Cs4,:D4,:Cs4,:D4,:Cs4,:D4,:Cs4,:D4,:Cs4,:D4,:Cs4,:D4,:E4,:D4,:Cs4,:D4,:Cs4,:B3,:Cs4,:A3,:A4,:C4,:B3,:B4,:A4,:G4,:G4,:Fs4,:G4,:Fs4,:G4,:r,:Fs4,:E4,:D4,:Cs4,:B3,:As3,:B3,:Cs4,:D4,:E4,:Fs4,:G4,:Fs4,:E4,:D4,:Cs4,:B3,:Cs4,:D4,:E4,:D4,:Cs4,:B3,:D4,:Fs4,:E4,:D4,:B4,:A4,:Gs4,:Fs4,:E4,:A4,:A3,:B3,:Cs4,:D4,:Cs4,:B3,:A3,:D4,:Fs4,:E4,:E4,:G4,:Fs4,:Fs4,:A4,:G4,:G4,:A3,:Cs4,:E4,:G4,:G4,:E4,:Fs4,:Fs4,:G4,:A4,:D4,:Fs4,:A4,:C5,:B4,:D4,:Cs4,:E4,:G4,:D4,:A3,:E4,:Fs4,:G4,:Fs4,:E4]
b1[0]=[4.5,0.25,0.25,0.041666668,0.20833334,0.25,0.25,0.25,1.0,0.25,0.75,2.25,0.25,0.25,0.25,0.25,0.25,0.25,0.25,2.25,0.25,0.25,0.25,0.25,0.25,0.25,0.25,1.5,0.25,0.25,0.5,0.125,0.125,0.5,0.25,0.25,0.25,0.25,0.25,0.125,0.125,0.75,0.25,0.25,2.0,4.5,0.25,0.25,0.041666668,0.20833334,0.25,0.25,0.25,1.0,0.25,0.75,2.25,0.25,0.25,0.25,0.25,0.25,0.25,0.25,2.25,0.25,0.25,0.25,0.25,0.25,0.25,0.25,1.5,0.25,0.25,0.5,0.125,0.125,0.5,0.25,0.25,0.25,0.25,0.25,0.125,0.125,0.75,0.25,0.25,2.0,1.25,0.125,0.125,0.125,0.125,0.25,1.5,0.5,0.5,0.75,0.25,0.25,0.0625,0.0625,0.0625,0.0625,1.0,0.125,0.125,0.125,0.125,0.25,0.25,0.25,0.25,0.75,0.25,0.75,0.25,1.0,0.5,0.25,0.25,0.25,0.25,0.25,0.125,0.125,0.5,0.5,1.5,1.25,0.25,0.25,0.25,1.5,0.25,0.25,0.041666668,0.20833334,0.25,0.5,0.75,0.125,0.125,0.75,0.25,1.0,1.5,0.25,0.25,1.5,0.25,0.25,1.5,0.25,0.25,2.0,1.25,0.25,0.25,0.25,0.25,0.25,1.0,0.25,0.125,0.125,1.25,0.25,0.25,0.25,1.5,0.5,0.25,0.25,1.0,0.5,0.5,0.25,0.125,0.375,0.5,0.25,0.125,0.125,0.5,0.25,0.0625,0.0625,0.0625,0.0625,0.0625,0.0625,0.0625,0.0625,0.0625,0.0625,0.0625,0.0625,0.125,0.125,2.0,1.25,0.125,0.125,0.125,0.125,0.25,1.5,0.5,0.5,0.75,0.25,0.25,0.0625,0.0625,0.0625,0.0625,1.0,0.125,0.125,0.125,0.125,0.25,0.25,0.25,0.25,0.75,0.25,0.75,0.25,1.0,0.5,0.25,0.25,0.25,0.25,0.25,0.125,0.125,0.5,0.5,1.5,1.25,0.25,0.25,0.25,1.5,0.25,0.25,0.041666668,0.20833334,0.25,0.5,0.75,0.125,0.125,0.75,0.25,1.0,1.5,0.25,0.25,1.5,0.25,0.25,1.5,0.25,0.25,2.0,1.25,0.25,0.25,0.25,0.25,0.25,1.0,0.25,0.125,0.125,1.25,0.25,0.25,0.25,1.5,0.5,0.25,0.25,1.0,0.5,0.5,0.25,0.125,0.375,0.5,0.25]
a1[1]=[:D4]
b1[1]=[0.125]
a1[2]=[:Cs4]
b1[2]=[0.125]
a1[3]=[:B3]
b1[3]=[0.5]
a1[4]=[:Cs4]
b1[4]=[0.25]
a1[5]=[:D4,:Cs4,:D4,:Cs4,:D4,:Cs4,:D4,:Cs4,:D4,:Cs4,:D4,:Cs4,:D4,:Cs4,:D4,:Cs4]
b1[5]=[0.03125,0.03125,0.03125,0.03125,0.03125,0.03125,0.03125,0.03125,0.03125,0.03125,0.03125,0.03125,0.03125,0.03125,0.03125,0.03125]
a1[6]=[:D4,:Cs4,:D4,:Cs4,:D4,:Cs4,:D4,:Cs4,:D4,:E4]
b1[6]=[0.03125,0.03125,0.03125,0.03125,0.03125,0.03125,0.03125,0.03125,0.125,0.125]
a1[7]=[:D4]
b1[7]=[2.0]
c1=[34,33,32,31,28,27,23,22]
in_thread do
for i in s..a1.length-1
use_bpm c1[i]
for j in 0..a1[i].length-1
play a1[i][j],sustain: b1[i][j]*0.9,release: b1[i][j]*0.1,amp: 0.5
sleep b1[i][j]
end
end
end
end #reverb
end #level
#accompanying piano parts
use_synth :piano
use_synth_defaults vel: 0.19,hard: 0.4,spread: 0.5#adjust piano synth settings
#fx calls to set smooth blended output. Lots of settings possible. I liked this one
with_fx :normaliser,level: 0.3,pre_mix: 0.7 do
with_fx :level,amp: 0.5 do
with_fx :reverb,room: 0.8,mix: 0.3 do
r=1 # setting for piano release time multiplier
a2=[]
b2=[]
a2[0]=[:D5,:r,:r,:r,[:E4,:B4],[:B4,:E5],:D5,:E5,:Fs5,:G5,:E5,[:E4,:A4],:r,:A4,:r,:Gs4,:r,:D5,[:E4,:B4],:A4,[:Ds4,:C5],:B4,:C5,:E4,:A5,:C5,[:Fs4,:B4],:r,[:E4,:B4],[:B4,:E5],:D5,:E5,:Fs5,:G5,:E5,[:E4,:A4],:r,:A4,:r,[:E4,:A4],[:Fs4,:A4],:B3,[:E4,:Gs4],[:A3,:E4],:A4,:B4,[:Ds4,:C5],:E4,:Fs4,:B4,:A4,:G4,:Fs4,:G4,:A4,:Fs4,:Ds4,[:B4,:Ds5],[:B4,:E5],:B3,:Cs4,:D4,:E4,:Fs4,:G4,:Fs4,:G4,:E4,[:Fs4,:E5],:D5,[:E4,:Cs5],[:D4,:B4],[:Cs4,:As4],:B4,[:Fs4,:Cs5],[:Fs4,:B4],[:E4,:B4],:D4,[:G4,:B4],[:Fs4,:As4],:E4,[:D4,:Fs4],[:B3,:E4],:B4,:A4,:Gs4,:A4,[:B3,:Gs4],:E4,:Fs4,[:E4,:Gs4],:A4,:B4,:Gs4,[:E4,:B4],[:E4,:A4],:Fs4,[:E4,:Gs4],[:E4,:A4],:D4,:Cs4,:D4,:E4,:Cs4,[:A3,:A4],[:D4,:B4],:C5,[:G4,:B4],:Cs5,:D5,[:E4,:Cs5],:B4,:Cs5,:Ds5,:E5,[:Fs4,:Ds5],:Cs5,:Ds5,:E5,:Fs5,:Ds5,:E5,:B4,:E4,:B4,:G4,:E4,[:E4,:A4],:Cs4,[:E4,:G4],:A4,[:Fs4,:Cs5],[:E4,:A4],:D4,:Cs5,:D5,:A4,[:E4,:G4],[:Fs4,:A4],:D4,:E4,:B3,[:E4,:B4],:G4,[:B4,:E5],:A4,:G4,:Fs4,:E4,:D5,[:A4,:Cs5],:B4,:A4,[:G4,:B4],[:Fs4,:A4],[:E4,:G4],:Fs4,[:Cs4,:G4],[:A3,:Fs4],:A4,:B4,[:Ds4,:C5],:E4,:Fs4,:B4,:A4,:G4,:Fs4,:G4,:A4,:Fs4,:Ds4,[:B4,:Ds5],[:B4,:E5],:B3,:Cs4,:D4,:E4,:Fs4,:G4,:Fs4,:G4,:E4,[:Fs4,:E5],:D5,[:E4,:Cs5],[:D4,:B4],[:Cs4,:As4],:B4,[:Fs4,:Cs5],[:Fs4,:B4],[:E4,:B4],:D4,[:G4,:B4],[:Fs4,:As4],:E4,[:D4,:Fs4],[:B3,:E4],:B4,:A4,:Gs4,:A4,[:B3,:Gs4],:E4,:Fs4,[:E4,:Gs4],:A4,:B4,:Gs4,[:E4,:B4],[:E4,:A4],:Fs4,[:E4,:Gs4],[:E4,:A4],:D4,:Cs4,:D4,:E4,:Cs4,[:A3,:A4],[:D4,:B4],:C5,[:G4,:B4],:Cs5,:D5,[:E4,:Cs5],:B4,:Cs5,:Ds5,:E5,[:Fs4,:Ds5],:Cs5,:Ds5,:E5,:Fs5,:Ds5,:E5,:B4,:E4,:B4,:G4,:E4,[:E4,:A4],:Cs4,[:E4,:G4],:A4,[:Fs4,:Cs5],[:E4,:A4],:D4,:Cs5,:D5,:A4,[:E4,:G4],[:Fs4,:A4],:D4,:E4,:B3,[:E4,:B4],:G4,[:B4,:E5],:A4,:G4,:Fs4,:E4,:D5,[:A4,:Cs5],:B4,:A4,[:G4,:B4]]
b2[0]=[5.0,1.0,2.0,4.0,0.5,0.25,0.25,0.25,0.25,0.25,0.25,1.0,1.0,3.0,0.5,0.5,4.0,5.0,1.0,2.5,0.25,0.25,0.25,0.25,0.25,0.25,1.0,1.0,0.5,0.25,0.25,0.25,0.25,0.25,0.25,1.0,1.0,3.0,1.0,0.5,0.5,0.5,0.5,2.0,2.25,0.25,0.25,0.25,0.25,0.25,0.25,0.25,0.25,0.25,0.25,0.25,0.5,0.5,1.0,1.0,0.25,0.25,0.25,0.25,0.25,0.25,0.25,0.25,0.25,0.25,0.25,0.25,0.25,0.25,0.5,0.5,0.25,0.25,0.5,0.25,0.25,2.0,0.5,0.5,0.25,0.25,0.5,0.5,0.25,0.25,0.25,0.25,0.25,0.25,0.5,0.5,0.5,0.5,0.75,0.25,0.25,0.25,0.25,0.25,0.5,0.25,0.25,0.25,0.25,1.0,0.25,0.25,0.25,0.25,1.0,0.25,0.25,0.25,0.25,0.75,0.25,0.25,0.25,0.25,0.25,0.25,0.25,0.25,0.25,0.25,0.25,0.5,0.5,0.5,0.25,0.25,1.5,0.5,1.0,2.0,0.25,0.25,0.25,0.25,0.25,0.25,0.25,0.25,0.25,0.25,0.25,0.25,0.5,0.5,1.0,0.25,0.25,0.5,2.0,2.25,0.25,0.25,0.25,0.25,0.25,0.25,0.25,0.25,0.25,0.25,0.25,0.5,0.5,1.0,1.0,0.25,0.25,0.25,0.25,0.25,0.25,0.25,0.25,0.25,0.25,0.25,0.25,0.25,0.25,0.5,0.5,0.25,0.25,0.5,0.25,0.25,2.0,0.5,0.5,0.25,0.25,0.5,0.5,0.25,0.25,0.25,0.25,0.25,0.25,0.5,0.5,0.5,0.5,0.75,0.25,0.25,0.25,0.25,0.25,0.5,0.25,0.25,0.25,0.25,1.0,0.25,0.25,0.25,0.25,1.0,0.25,0.25,0.25,0.25,0.75,0.25,0.25,0.25,0.25,0.25,0.25,0.25,0.25,0.25,0.25,0.25,0.5,0.5,0.5,0.25,0.25,1.5,0.5,1.0,2.0,0.25,0.25,0.25,0.25,0.25,0.25,0.25,0.25,0.25,0.25,0.25,0.25,0.5,0.5]
a2[1]=[[:Fs4,:A4]]
b2[1]=[1.03] #bodge timings for rit.
a2[2]=[[:E4,:G4]]
b2[2]=[1.1] #bodge timings for rit.
a2[3]=[[:A3,:D4,:Fs4]]
b2[3]=[2.0]
c2=[34,33,27,20]
in_thread do
for i in s..a2.length-1
r2=r
r2=2 if i>0 #adjust release multiplier for ending
use_bpm c2[i]
for j in 0..a2[i].length-1
play a2[i][j],sustain: b2[i][j]*0.9,release: b2[i][j]*r2
sleep b2[i][j]
end
end
end
a3=[]
b3=[]
a3[0]=[:r,:r,:r,:r,:r,:r,:r,:B4,:B3,:r,:E4,:r,:r,:r,:r,:r,:r,:E4,:r,:r,:r,:r,:r,:r,:r,:r,:r,:r,:B4,:r,:r,:r,:r,:r,:D4,:r,:r,:r,:r,:r,:E4,:r,:r,:r,:r,:r,:r,:r,:r,:r,:r,:B4,:r,:r,:r,:r,:r,:D4,:r,:r,:r,:r]
b3[0]=[4.0,4.0,4.0,4.0,4.0,4.0,2.0,2.0,1.0,1.0,2.5,0.5,2.0,1.0,4.0,4.0,4.0,2.25,0.25,0.5,1.0,4.0,4.0,4.0,4.0,4.0,1.0,0.5,1.0,0.5,1.0,4.0,2.0,1.0,1.5,0.5,1.0,2.0,4.0,4.0,2.25,0.25,0.5,1.0,4.0,4.0,4.0,4.0,4.0,1.0,0.5,1.0,0.5,1.0,4.0,2.0,1.0,1.5,0.5,1.0,2.0,4.0]
a3[1]=[:r]
b3[1]=[4.0]
c3=[34,33]
in_thread do
for i in s..a3.length-1
use_bpm c3[i]
for j in 0..a3[i].length-1
play a3[i][j],sustain: b3[i][j]*0.9,release: b3[i][j]*r
sleep b3[i][j]
end
end
end
a4=[]
b4=[]
a4[0]=[:A4,:B4,:B3,[:E4,:B4],:A4,[:Ds4,:C5],:B4,:C5,:E4,:A5,:C5,[:Fs4,:B4],:r,:r,:D4,:r,[:E4,:Gs4],:Fs4,[:D4,:Gs4],:A4,[:B3,:B4],:E4,[:Fs4,:A4],:B3,[:E4,:Gs4],[:A3,:E4],:A4,:r,:r,:r,:r,:D4,:r,[:E4,:Gs4],:Fs4,[:D4,:Gs4],:A4,[:B3,:B4],[:E4,:Gs4],:r,:r,:r,:r,:r,:r,:r,:r,:r,:r,:r,:G4,:r,:r,:r,:r,:r,:r,:r,:r,:r,:r,:r,:r,:r,:G4,:r,:r]
b4[0]=[2.0,2.0,1.0,1.0,2.5,0.25,0.25,0.25,0.25,0.25,0.25,1.0,1.0,4.0,1.0,0.5,0.5,0.5,0.25,0.25,0.5,1.0,0.5,0.5,0.5,2.0,2.0,2.0,4.0,4.0,4.0,1.0,0.5,0.5,0.5,0.25,0.25,0.5,0.5,4.0,4.0,4.0,4.0,4.0,4.0,4.0,4.0,4.0,4.0,2.0,3.0,1.0,2.0,4.0,4.0,4.0,4.0,4.0,4.0,4.0,4.0,4.0,4.0,2.0,3.0,1.0,2.0]
a4[1]=[:r]
b4[1]=[4.0]
c4=[34,33]
in_thread do
for i in s..a4.length-1
use_bpm c4[i]
for j in 0..a4[i].length-1
play a4[i][j],sustain: b4[i][j]*0.9,release: b4[i][j]*r
sleep b4[i][j]
end
end
end
a5=[]
b5=[]
a5[0]=[:r,:r,:E4,:r,:r,:r,:r,:r,:A4,:r,:r,:r,:r,:r,:r,:r,:r,:r,:r,:r,:r,:r,:r,:r,:r,:r,:r,:r,:r,:r,:r,:r,:r,:r,:r,:r,:r,:r,:r,:r,:r]
b5[0]=[4.0,2.0,2.5,0.5,1.0,2.0,4.0,4.0,0.5,0.5,1.0,2.0,4.0,4.0,4.0,4.0,4.0,4.0,4.0,4.0,4.0,4.0,4.0,4.0,4.0,4.0,4.0,4.0,4.0,4.0,4.0,4.0,4.0,4.0,4.0,4.0,4.0,4.0,4.0,4.0,4.0]
a5[1]=[:r]
b5[1]=[4.0]
c5=[34,33]
in_thread do
for i in s..a5.length-1
use_bpm c5[i]
for j in 0..a5[i].length-1
play a5[i][j],sustain: b5[i][j]*0.9,release: b5[i][j]*r
sleep b5[i][j]
end
end
end
a6=[]
b6=[]
a6[0]=[:D3,:D4,:Cs4,:Cs3,:B2,:B3,:A3,:A2,:G2,:G3,:Gs3,:Gs2,:A2,:A3,:G3,:G2,:Fs2,:Fs3,:E3,:E2,:Ds2,:Ds3,:B2,:B3,:E2,:E3,:D3,:D2,:Cs2,:Cs3,:A2,:A3,:r,:D4,:r,:A3,:D3,:E3,:E2,:A2,:B2,:Cs3,:D3,:E3,:G3,:Fs3,:E3,:D3,:D4,:Cs4,:Cs3,:B2,:B3,:A3,:A2,:G2,:G3,:Gs3,:Gs2,:A2,:A3,:G3,:G2,:Fs2,:Fs3,:E3,:E2,:Ds2,:Ds3,:B2,:B3,:E2,:E3,:D3,:D2,:Cs2,:Cs3,:A2,:A3,:r,:D4,:r,:A3,:D3,:E3,:E2,:A2,:A2,:A3,:G3,:G2,:Fs2,:Fs3,:E3,:E2,:Ds2,:Ds3,:Fs3,:B2,:E3,:E4,:D4,:D3,:Cs3,:Cs4,:B3,:B2,:As2,:B2,:Cs3,:As2,:B2,:G3,:E3,:Fs3,:B2,:B3,:A3,:A2,:Gs2,:Gs3,:Fs3,:Fs2,:E2,:E3,:D3,:D2,:Cs2,:Cs3,:D3,:E3,:A2,:A3,:G3,:G2,:Fs2,:Fs3,:G3,:G2,:Gs2,:Gs3,:A3,:A2,:As2,:As3,:B3,:B2,:E3,:E4,:D4,:D3,:Cs3,:Cs4,:A3,:Cs4,:D4,:D3,:Cs3,:Cs4,:B3,:B2,:A2,:A3,:G3,:G2,:Fs2,:Fs3,:E3,:E2,:D2,:D3,:Cs3,:A2,:D3,:G3,:A3,:G3,:A3,:A2,:D3,:A2,:A3,:G3,:G2,:Fs2,:Fs3,:E3,:E2,:Ds2,:Ds3,:Fs3,:B2,:E3,:E4,:D4,:D3,:Cs3,:Cs4,:B3,:B2,:As2,:B2,:Cs3,:As2,:B2,:G3,:E3,:Fs3,:B2,:B3,:A3,:A2,:Gs2,:Gs3,:Fs3,:Fs2,:E2,:E3,:D3,:D2,:Cs2,:Cs3,:D3,:E3,:A2,:A3,:G3,:G2,:Fs2,:Fs3,:G3,:G2,:Gs2,:Gs3,:A3,:A2,:As2,:As3,:B3,:B2,:E3,:E4,:D4,:D3,:Cs3,:Cs4,:A3,:Cs4,:D4,:D3,:Cs3,:Cs4,:B3,:B2,:A2,:A3,:G3,:G2,:Fs2,:Fs3,:E3,:E2,:D2,:D3,:Cs3,:A2,:D3,:G3]
b6[0]=[0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,1.5,2.0,0.5,0.5,0.5,0.5,0.25,0.25,0.25,0.25,0.25,0.25,0.25,0.25,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,1.5,2.0,0.5,0.5,0.5,0.5,2.0,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,2.0,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5]
a6[1]=[:A3] #rit starts
b6[1]=[0.5]
a6[2]=[:G3]
b6[2]=[0.5]
a6[3]=[:A3]
b6[3]=[0.5]
a6[4]=[:A2]
b6[4]=[0.5]
a6[5]=[:D2]
b6[5]=[2.0]
c6=[34,33,30,27,23,20]
in_thread do
for i in s..a6.length-1
use_bpm c6[i]
for j in 0..a6[i].length-1
play a6[i][j],sustain: b6[i][j]*0.9,release: b6[i][j]*r
sleep b6[i][j]
end
end
end
a7=[]
b7=[]
a7[0]=[:r,:r,:r,:r,:D3,:Cs4,:Cs3,:B2,:B3,:Gs3,:E3,:r,:r,:r,:r,:r,:D3,:Cs4,:Cs3,:B2,:B3,:Gs3,:E3,:r,:r,:r,:r,:r,:r,:r,:r,:r,:r,:r,:r,:r,:r,:r,:r,:r,:r,:r,:r,:r,:r,:r,:r]
b7[0]=[4.0,4.0,4.0,4.0,1.0,0.5,0.5,0.5,0.5,0.5,0.5,4.0,4.0,4.0,4.0,4.0,1.0,0.5,0.5,0.5,0.5,0.5,0.5,4.0,4.0,4.0,4.0,4.0,4.0,4.0,4.0,4.0,4.0,4.0,4.0,4.0,4.0,4.0,4.0,4.0,4.0,4.0,4.0,4.0,4.0,4.0,4.0]
a7[1]=[:r]
b7[1]=[4.0]
c7=[34,33]
in_thread do
for i in s..a7.length-1
r7=r #adjust release multiplier for ending
r7=2 if i>1
use_bpm c7[i]
for j in 0..a7[i].length-1
play a7[i][j],sustain: b7[i][j]*0.9,release: b7[i][j]*r7,amp: 0.5
sleep b7[i][j]
end
end
end
end #reverb
end #normalizer
end #level
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment