Skip to content

Instantly share code, notes, and snippets.

@rbnpi
Created April 18, 2020 14:21
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/4325ea2e537c9bc6af35c8e7829be377 to your computer and use it in GitHub Desktop.
Save rbnpi/4325ea2e537c9bc6af35c8e7829be377 to your computer and use it in GitHub Desktop.
Sonic Pi plays Ode to Joy. Three versions.

There are three ways to use these files. OdeToJoy-RF.rb can be played in a single computer running Sonic Pi using the command.

run_file "path/to/location/of/odeToJoy-RF.rb"

Secondly files OdeToJoyBASS.rb OdeToJoyBASSOON.rb and OdeToJoyVIOLIN.rb can be loaded into three separate buffers on the same instance of Sonic Pi. Start the 2nd and third files running, then switch to the buffer containing OdeToJoyBASS.rb and run that to sync the whole sequence starting together.

Thirdly use three computers running Sonic Pi on the same local network preferrably hard wired and load the files OdeToJoyBASSOON.rb and OdeToJoyVIOLIN.rb into two of them, starting the programs running. Load the alternative file OdeToJoyBASSv2.rb into the third computer, and adjust the two IP addresses in lines 6 and 7 to point to the other two computers. Then run that file to start the whole sequence running.

#ode to joy
#arranged by Robin Newman for a Sonic Pi
#play this version using run_file "path/to/odeToJoy-RF.rb"
with_fx :reverb, room: 0.8 do
use_synth :saw
#Bassoon
a1=[: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,:Fs4,:D4,:E4,:Fs4,:B3,:A3,:G3,:Fs3,:A3,:D4,:Cs4,:r,:D4,:E4,:Fs4,:D4,:E4,:Fs4,:B3,:A3,:G3,:Fs3,:E4,:D4,:Cs4,:B3,:Cs4,:D4,:r,:r,:A3,:G3,:A3,:B3,:Cs4,:D4,:E4,:D4,:A3,:D4,:E4,:Fs4,:D4,:E4,:Fs4,:B3,:A3,:G3,:Fs3,:E4,:D4,:Cs4,:B3,:Cs4,:D4,:r,:r,:A3,:Fs3,:G3,:A3,:B3,:Cs4,:D4,:E4,:D4,:A3,:D4,:E4,:Fs4,:D4,:E4,:Fs4,:A3,:B3,:Cs4,:D4,:B3,:A3,:G3,:Fs3,:E3,:D3,:Cs3,:B2,:B3,:Cs4,:D4,:A3,:B3,:Cs4,:D4,:r,:r,:r,:D4,:E4,:Fs4,:Fs4,:E4,:E4,:r,:r,:D4,:E4,:Fs4,:E4,:D4,:D4,:r,:r,:E4,:Fs4,:G4,:Fs4,:E4,:D4,:E4,:A3,:Fs4,:r,:r,:D4,:E4,:Fs4,:E4,:D4,:D4,:r,:r,:E4,:Fs4,:G4,:Fs4,:E4,:D4,:E4,:A3,:Fs4,:r,:r,:D4,:E4,:Fs4,:E4,:D4,:D4]
b1=[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,2.0,1.0,1.0,1.5,0.5,1.0,2.0,1.0,1.0,2.0,1.0,1.0,1.0,1.0,2.0,0.5,0.5,1.5,0.5,1.0,2.0,0.5,0.5,0.5,0.5,0.5,0.5,1.0,1.0,1.0,1.0,4.0,3.0,0.5,0.5,2.0,2.0,1.0,2.0,1.5,0.5,1.5,0.5,1.5,0.5,1.0,1.0,2.0,0.5,0.5,0.5,0.5,0.5,0.5,1.0,1.0,1.0,1.0,4.0,2.5,0.5,0.5,0.5,2.0,2.0,1.0,2.0,1.5,0.5,1.5,0.5,1.5,0.5,1.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,1.0,0.5,0.5,0.5,0.5,0.5,0.5,1.0,1.0,2.0,4.0,2.0,1.0,1.0,1.5,0.5,2.0,4.0,4.0,2.0,1.0,1.0,1.5,0.5,2.0,4.0,4.0,1.0,0.5,0.5,1.0,1.0,1.0,1.0,1.0,1.0,4.0,4.0,2.0,1.0,1.0,1.5,0.5,2.0,4.0,4.0,1.0,0.5,0.5,1.0,1.0,1.0,1.0,1.0,1.0,4.0,4.0,2.0,1.0,1.0,1.5,0.5,2.0]
in_thread do
for i in 0..a1.length-1
play a1[i],sustain: b1[i]*0.9,release: b1[i]*0.1,pan: 0.3,amp: 0.3
sleep b1[i]
end
end
use_synth :blade
#violin1
a2=[: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,:r,:r,:r,:r,:r,:r,:r,:r,:r,:r,:r,:r,:r,:r,:r,:r,:Fs5,:G5,:A5,:A5,:G5,:Fs5,:E5,:D5,:E5,:Fs5,:Fs5,:E5,:E5,:Fs5,:G5,:A5,:A5,:G5,:Fs5,:E5,:D5,:E5,:Fs5,:E5,:D5,:D5,:E5,:Fs5,:D5,:E5,:Fs5,:G5,:Fs5,:D5,:E5,:Fs5,:G5,:Fs5,:E5,:D5,:E5,:A4,:Fs5,:Fs5,:G5,:A5,:A5,:G5,:Fs5,:E5,:D5,:E5,:Fs5,:E5,:D5,:D5,:E5,:Fs5,:D5,:E5,:Fs5,:G5,:Fs5,:D5,:E5,:Fs5,:G5,:Fs5,:E5,:D5,:E5,:A4,:Fs5,:Fs5,:G5,:A5,:A5,:G5,:Fs5,:E5,:D5,:E5,:Fs5,:E5,:D5,:D5]
b2=[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,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,2.0,1.0,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.5,0.5,2.0,2.0,1.0,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.5,0.5,2.0,2.0,1.0,1.0,1.0,0.5,0.5,1.0,1.0,1.0,0.5,0.5,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.5,0.5,2.0,2.0,1.0,1.0,1.0,0.5,0.5,1.0,1.0,1.0,0.5,0.5,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.5,0.5,2.0]
in_thread do
for i in 0..a2.length-1
play a2[i],sustain: b2[i]*0.9,release: b2[i]*0.1,pan: 0.9
sleep b2[i]
end
end
#violin2
a3=[: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,:r,:r,:r,:r,:r,:r,:r,:r,:r,:r,:r,:r,:r,:r,:r,:r,:r,:B4,:A4,:G4,:Fs4,:D4,:E4,:Fs4,:D4,:E4,:Fs4,:D4,:B3,:Cs4,:A3,:A4,:A4,:E4,:Cs4,:E4,:Fs4,:G4,:Fs4,:D4,:E4,:Fs4,:D4,:E4,:Fs4,:A4,:B4,:Cs5,:D5,:Cs5,:B4,:A4,:G4,:Fs4,:E4,:D4,:Cs4,:G4,:Fs4,:Fs4,:Fs4,:E4,:D4,:Cs4,:E4,:D4,:D5,:G4,:Fs4,:E4,:Fs4,:G4,:A4,:B4,:Cs5,:D5,:E5,:D5,:Cs5,:Cs4,:B4,:B3,:Bf3,:Bf4,:A4,:E4,:A4,:G4,:Fs4,:D5,:E5,:Fs5,:D5,:E5,:A4,:B4,:Cs5,:D5,:A4,:B4,:A4,:G4,:Fs4,:E4,:D4,:Cs4,:G4,:Fs4,:Fs4,:Fs4,:E4,:D4,:Cs4,:E4,:D4,:D5,:G4,:Fs4,:E4,:Fs4,:G4,:A4,:B4,:Cs5,:D5,:E5,:D5,:Cs5,:Cs4,:B4,:B3,:Bf3,:Bf4,:A4,:E4,:A4,:G4,:Fs4,:D5,:E5,:Fs5,:D5,:E5,:A4,:B4,:Cs5,:D5,:A4,:B4,:A4,:G4,:Fs4,:E4,:D4,:Cs4,:G4,:Fs4,:Fs4]
b3=[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,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,2.0,0.5,0.5,0.5,0.5,1.0,1.0,1.0,1.0,1.5,0.5,0.5,0.5,0.5,0.5,1.0,2.0,2.0,1.0,0.5,0.5,0.5,0.5,1.0,1.0,1.0,1.0,1.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.0,0.5,0.5,0.5,0.5,0.5,0.5,0.5,1.0,1.0,1.0,1.0,1.0,0.5,0.5,1.0,0.5,0.5,0.5,0.5,0.5,0.5,1.0,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,1.0,1.0,1.0,1.0,1.0,1.0,1.0,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,1.0,0.5,0.5,0.5,0.5,0.5,0.5,0.5,1.0,1.0,1.0,1.0,1.0,0.5,0.5,1.0,0.5,0.5,0.5,0.5,0.5,0.5,1.0,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,1.0,1.0,1.0,1.0,1.0,1.0,1.0,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,1.0,0.5,0.5,0.5,2.0]
in_thread do
for i in 0..a3.length-1
play a3[i],sustain: b3[i]*0.9,release: b3[i]*0.1,pan: 0.6
sleep b3[i]
end
end
#viola
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,:Fs4,:G4,:A4,:A4,:G4,:Fs4,:E4,:D4,:E4,:Fs4,:Fs4,:E4,:E4,:Fs4,:G4,:A4,:A4,:G4,:Fs4,:E4,:D4,:E4,:Fs4,:E4,:D4,:D4,:E4,:Fs4,:D4,:E4,:Fs4,:G4,:Fs4,:D4,:E4,:Fs4,:G4,:Fs4,:E4,:D4,:E4,:A3,:Fs4,:Fs4,:G4,:A4,:A4,:G4,:Fs4,:E4,:D4,:E4,:Fs4,:E4,:D4,:D4,:E4,:Fs4,:D4,:E4,:Fs4,:G4,:Fs4,:D4,:E4,:Fs4,:G4,:Fs4,:E4,:D4,:E4,:A3,:Fs4,:Fs4,:G4,:A4,:A4,:G4,:Fs4,:E4,:D4,:E4,:Fs4,:E4,:D4,:D4,:A4,:D4,:B3,:Cs4,:D4,:G4,:Fs4,:E4,:D4,:Cs4,:B3,:A3,:A4,:D4,:B3,:Cs4,:D4,:G4,:Fs4,:E4,:D4,:Cs4,:B3,:A3,:G3,:A3,:Fs3,:Fs4,:G4,:A4,:B3,:Cs4,:D4,:E4,:Fs4,:G4,:A4,:A3,:As3,:B3,:Cs4,:D4,:A4,:C4,:B3,:Cs4,:D4,:G4,:Fs4,:E4,:D4,:Cs4,:B3,:A3,:G3,:A3,:Fs3,:Fs4,:G4,:A4,:B3,:Cs4,:D4,:E4,:Fs4,:G4,:A4,:A3,:As3,:B3,:Cs4,:D4,:A4,:C4,:B3,:Cs4,:D4,:G4,:Fs4,:E4,:D4,:Cs4,:B3,:A3,:G3,:A3,:Fs3]
b4=[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,2.0,1.0,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.0,1.0,2.0,2.0,1.0,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.5,0.5,2.0,2.0,1.0,1.0,1.0,0.5,0.5,1.0,1.0,1.0,0.5,0.5,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.5,0.5,2.0,2.0,1.0,1.0,1.0,0.5,0.5,1.0,1.0,1.0,0.5,0.5,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.5,0.5,2.0,2.0,2.0,1.5,0.5,1.0,2.0,1.0,1.0,2.0,1.0,1.0,1.0,2.0,2.0,1.5,0.5,1.0,2.0,0.5,0.5,0.5,0.5,0.5,0.5,1.0,1.0,1.0,1.0,2.0,1.0,1.0,2.0,1.0,0.5,0.5,2.0,0.5,0.5,1.0,1.0,2.0,1.0,2.0,2.0,1.5,0.5,1.0,2.0,0.5,0.5,0.5,0.5,0.5,0.5,1.0,1.0,1.0,1.0,2.0,1.0,1.0,2.0,1.0,0.5,0.5,2.0,0.5,0.5,1.0,1.0,2.0,1.0,2.0,2.0,1.5,0.5,1.0,2.0,0.5,0.5,0.5,0.5,0.5,0.5,1.0,1.0,2.0]
in_thread do
for i in 0..a4.length-1
play a4[i],sustain: b4[i]*0.9,release: b4[i]*0.1,pan:-0.3,amp: 0.6
sleep b4[i]
end
end
#cello
a5=[:Fs3,:G3,:A3,:A3,:G3,:Fs3,:E3,:D3,:E3,:Fs3,:Fs3,:E3,:E3,:Fs3,:G3,:A3,:A3,:G3,:Fs3,:E3,:D3,:E3,:Fs3,:E3,:D3,:D3,:E3,:Fs3,:D3,:E3,:Fs3,:G3,:Fs3,:D3,:E3,:Fs3,:G3,:Fs3,:E3,:D3,:E3,:A2,:Fs3,:Fs3,:G3,:A3,:A3,:G3,:Fs3,:E3,:D3,:E3,:Fs3,:E3,:D3,:D3,:E3,:Fs3,:D3,:E3,:Fs3,:G3,:Fs3,:D3,:E3,:Fs3,:G3,:Fs3,:E3,:D3,:E3,:A2,:Fs3,:Fs3,:G3,:A3,:A3,:G3,:Fs3,:E3,:D3,:E3,:Fs3,:E3,:D3,:D3,:A3,:Fs4,:G4,:A4,:A4,:G4,:Fs4,:E4,:D4,:E4,:Fs4,:Fs4,:E4,:E4,:Fs4,:G4,:A4,:A4,:G4,:Fs4,:E4,:D4,:E4,:Fs4,:E4,:D4,:D4,:E4,:Fs4,:D4,:E4,:Fs4,:G4,:Fs4,:D4,:E4,:Fs4,:G4,:Fs4,:E4,:D4,:E4,:A3,:Fs4,:Fs4,:G4,:A4,:A4,:G4,:Fs4,:E4,:D4,:E4,:Fs4,:E4,:D4,:D4,:E4,:Fs4,:D4,:E4,:Fs4,:G4,:Fs4,:D4,:E4,:Fs4,:G4,:Fs4,:E4,:D4,:E4,:A3,:Fs4,:Fs4,:G4,:A4,:A4,:G4,:Fs4,:E4,:D4,:E4,:Fs4,:E4,:D4,:D4,:A4,:D4,:B3,:Cs4,:D4,:G4,:Fs4,:E4,:D4,:Cs4,:B3,:A3,:A4,:D4,:B3,:Cs4,:D4,:G4,:Fs4,:E4,:D4,:Cs4,:B3,:A3,:G3,:A3,:Fs3,:Fs4,:G4,:A4,:B3,:Cs4,:D4,:E4,:Fs4,:G4,:A4,:A3,:As3,:B3,:Cs4,:D4,:A4,:C4,:B3,:Cs4,:D4,:G4,:Fs4,:E4,:D4,:Cs4,:B3,:A3,:G3,:A3,:Fs3,:Fs4,:G4,:A4,:B3,:Cs4,:D4,:E4,:Fs4,:G4,:A4,:A3,:As3,:B3,:Cs4,:D4,:A4,:C4,:B3,:Cs4,:D4,:G4,:Fs4,:E4,:D4,:Cs4,:B3,:A3,:G3,:A3,:Fs3]
b5=[2.0,1.0,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.5,0.5,2.0,2.0,1.0,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.5,0.5,2.0,2.0,1.0,1.0,1.0,0.5,0.5,1.0,1.0,1.0,0.5,0.5,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.5,0.5,2.0,2.0,1.0,1.0,1.0,0.5,0.5,1.0,1.0,1.0,0.5,0.5,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.5,0.5,1.0,1.0,2.0,1.0,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.0,1.0,2.0,2.0,1.0,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.5,0.5,2.0,2.0,1.0,1.0,1.0,0.5,0.5,1.0,1.0,1.0,0.5,0.5,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.5,0.5,2.0,2.0,1.0,1.0,1.0,0.5,0.5,1.0,1.0,1.0,0.5,0.5,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.5,0.5,2.0,2.0,2.0,1.5,0.5,1.0,2.0,1.0,1.0,2.0,1.0,1.0,1.0,2.0,2.0,1.5,0.5,1.0,2.0,0.5,0.5,0.5,0.5,0.5,0.5,1.0,1.0,1.0,1.0,2.0,1.0,1.0,2.0,1.0,0.5,0.5,2.0,0.5,0.5,1.0,1.0,2.0,1.0,2.0,2.0,1.5,0.5,1.0,2.0,0.5,0.5,0.5,0.5,0.5,0.5,1.0,1.0,1.0,1.0,2.0,1.0,1.0,2.0,1.0,0.5,0.5,2.0,0.5,0.5,1.0,1.0,2.0,1.0,2.0,2.0,1.5,0.5,1.0,2.0,0.5,0.5,0.5,0.5,0.5,0.5,1.0,1.0,2.0]
in_thread do
for i in 0..a5.length-1
play a5[i],sustain: b5[i]*0.9,release: b5[i]*0.1,pan: -0.6,amp: 0.7
sleep b5[i]
end
end
#double-bass
a6=[:Fs2,:G2,:A2,:A2,:G2,:Fs2,:E2,:D2,:E2,:Fs2,:Fs2,:E2,:E2,:Fs2,:G2,:A2,:A2,:G2,:Fs2,:E2,:D2,:E2,:Fs2,:E2,:D2,:D2,:E2,:Fs2,:D2,:E2,:Fs2,:G2,:Fs2,:D2,:E2,:Fs2,:G2,:Fs2,:E2,:D2,:E2,:A1,:Fs2,:Fs2,:G2,:A2,:A2,:G2,:Fs2,:E2,:D2,:E2,:Fs2,:E2,:D2,:D2,:E2,:Fs2,:D2,:E2,:Fs2,:G2,:Fs2,:D2,:E2,:Fs2,:G2,:Fs2,:E2,:D2,:E2,:A1,:Fs2,:Fs2,:G2,:A2,:A2,:G2,:Fs2,:E2,:D2,:E2,:Fs2,:E2,:D2,:D2,:A2,:D2,:B1,:Cs2,:D2,:G2,:G2,:Fs2,:E2,:D2,:Cs2,:B1,:A1,:A2,:D2,:B1,:Cs2,:D2,:G2,:Fs2,:E2,:D2,:Cs2,:B1,:A1,:G1,:A1,:Fs1,:Fs2,:G2,:A2,:B2,:Cs2,:D2,:E2,:Fs2,:G2,:A2,:As2,:B2,:Cs3,:D3,:A2,:C2,:B1,:Cs2,:D2,:G2,:Fs2,:E2,:D2,:Cs2,:B1,:A1,:G1,:A1,:Fs1,:Fs2,:G2,:A2,:B2,:Cs2,:D2,:E2,:Fs2,:G2,:A2,:As2,:B2,:Cs3,:D3,:A2,:C2,:B1,:Cs2,:D2,:G2,:Fs2,:E2,:D2,:Cs2,:B1,:A1,:G1,:A1,:Fs1,:G2,:Fs2,:E2,:D2,:D2,:Cs2,:B1,:A1,:G2,:Fs2,:E2,:D2,:E3,:D3,:Cs3,:B2,:A2,:G2,:Fs2,:A2,:A1,:D2,:A2,:Fs2,:B2,:G2,:Fs2,:E2,:D2,:E3,:D3,:Cs3,:B2,:A2,:G2,:Fs2,:A2,:A1,:D2,:A2,:A2,:Fs2,:B2,:G2,:Fs2,:E2,:D2,:E3,:D3,:Cs3,:B2,:A2,:G2,:Fs2,:A2,:A1,:D2]
b6=[2.0,1.0,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.5,0.5,2.0,2.0,1.0,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.5,0.5,2.0,2.0,1.0,1.0,1.0,0.5,0.5,1.0,1.0,1.0,0.5,0.5,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.5,0.5,2.0,2.0,1.0,1.0,1.0,0.5,0.5,1.0,1.0,1.0,0.5,0.5,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.5,0.5,1.0,3.0,2.0,1.5,0.5,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.0,2.0,2.0,1.5,0.5,1.0,2.0,0.5,0.5,0.5,0.5,0.5,0.5,1.0,1.0,1.0,1.0,2.0,1.0,1.0,2.0,1.0,0.5,0.5,2.0,1.0,1.0,1.0,2.0,1.0,2.0,2.0,1.5,0.5,1.0,2.0,0.5,0.5,0.5,0.5,0.5,0.5,1.0,1.0,1.0,1.0,2.0,1.0,1.0,2.0,1.0,0.5,0.5,2.0,1.0,1.0,1.0,2.0,1.0,2.0,2.0,1.5,0.5,1.0,2.0,0.5,0.5,0.5,0.5,0.5,0.5,1.0,1.0,0.5,0.5,0.5,0.5,9.0,1.0,1.0,1.0,2.5,0.5,0.5,0.5,8.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,1.0,1.0,1.0,12.0,1.0,1.0,2.0,0.5,0.5,8.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,1.0,1.0,1.0,1.0,11.0,1.0,1.0,2.0,0.5,0.5,8.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,1.0,1.0,2.0]
in_thread do
for i in 0..a6.length-1
play a6[i],sustain: b6[i]*0.9,release: b6[i]*0.1,pan: -0.9,amp: 0.7
sleep b6[i]
end
end
end #reverb
#ODE TO JOY: CELLO and DOUBLE-BASS
#arranged for Sonic Pi by Robin Newman, April 2020
#this version on a single computer using three buffers
use_osc "localhost",4560
osc "/start"
sync "/osc*/start"
use_bpm 140
use_synth :blade
with_fx :reverb,room: 0.8 do
#cello
a5=[:Fs3,:G3,:A3,:A3,:G3,:Fs3,:E3,:D3,:E3,:Fs3,:Fs3,:E3,:E3,:Fs3,:G3,:A3,:A3,:G3,:Fs3,:E3,:D3,:E3,:Fs3,:E3,:D3,:D3,:E3,:Fs3,:D3,:E3,:Fs3,:G3,:Fs3,:D3,:E3,:Fs3,:G3,:Fs3,:E3,:D3,:E3,:A2,:Fs3,:Fs3,:G3,:A3,:A3,:G3,:Fs3,:E3,:D3,:E3,:Fs3,:E3,:D3,:D3,:E3,:Fs3,:D3,:E3,:Fs3,:G3,:Fs3,:D3,:E3,:Fs3,:G3,:Fs3,:E3,:D3,:E3,:A2,:Fs3,:Fs3,:G3,:A3,:A3,:G3,:Fs3,:E3,:D3,:E3,:Fs3,:E3,:D3,:D3,:A3,:Fs4,:G4,:A4,:A4,:G4,:Fs4,:E4,:D4,:E4,:Fs4,:Fs4,:E4,:E4,:Fs4,:G4,:A4,:A4,:G4,:Fs4,:E4,:D4,:E4,:Fs4,:E4,:D4,:D4,:E4,:Fs4,:D4,:E4,:Fs4,:G4,:Fs4,:D4,:E4,:Fs4,:G4,:Fs4,:E4,:D4,:E4,:A3,:Fs4,:Fs4,:G4,:A4,:A4,:G4,:Fs4,:E4,:D4,:E4,:Fs4,:E4,:D4,:D4,:E4,:Fs4,:D4,:E4,:Fs4,:G4,:Fs4,:D4,:E4,:Fs4,:G4,:Fs4,:E4,:D4,:E4,:A3,:Fs4,:Fs4,:G4,:A4,:A4,:G4,:Fs4,:E4,:D4,:E4,:Fs4,:E4,:D4,:D4,:A4,:D4,:B3,:Cs4,:D4,:G4,:Fs4,:E4,:D4,:Cs4,:B3,:A3,:A4,:D4,:B3,:Cs4,:D4,:G4,:Fs4,:E4,:D4,:Cs4,:B3,:A3,:G3,:A3,:Fs3,:Fs4,:G4,:A4,:B3,:Cs4,:D4,:E4,:Fs4,:G4,:A4,:A3,:As3,:B3,:Cs4,:D4,:A4,:C4,:B3,:Cs4,:D4,:G4,:Fs4,:E4,:D4,:Cs4,:B3,:A3,:G3,:A3,:Fs3,:Fs4,:G4,:A4,:B3,:Cs4,:D4,:E4,:Fs4,:G4,:A4,:A3,:As3,:B3,:Cs4,:D4,:A4,:C4,:B3,:Cs4,:D4,:G4,:Fs4,:E4,:D4,:Cs4,:B3,:A3,:G3,:A3,:Fs3]
b5=[2.0,1.0,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.5,0.5,2.0,2.0,1.0,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.5,0.5,2.0,2.0,1.0,1.0,1.0,0.5,0.5,1.0,1.0,1.0,0.5,0.5,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.5,0.5,2.0,2.0,1.0,1.0,1.0,0.5,0.5,1.0,1.0,1.0,0.5,0.5,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.5,0.5,1.0,1.0,2.0,1.0,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.0,1.0,2.0,2.0,1.0,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.5,0.5,2.0,2.0,1.0,1.0,1.0,0.5,0.5,1.0,1.0,1.0,0.5,0.5,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.5,0.5,2.0,2.0,1.0,1.0,1.0,0.5,0.5,1.0,1.0,1.0,0.5,0.5,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.5,0.5,2.0,2.0,2.0,1.5,0.5,1.0,2.0,1.0,1.0,2.0,1.0,1.0,1.0,2.0,2.0,1.5,0.5,1.0,2.0,0.5,0.5,0.5,0.5,0.5,0.5,1.0,1.0,1.0,1.0,2.0,1.0,1.0,2.0,1.0,0.5,0.5,2.0,0.5,0.5,1.0,1.0,2.0,1.0,2.0,2.0,1.5,0.5,1.0,2.0,0.5,0.5,0.5,0.5,0.5,0.5,1.0,1.0,1.0,1.0,2.0,1.0,1.0,2.0,1.0,0.5,0.5,2.0,0.5,0.5,1.0,1.0,2.0,1.0,2.0,2.0,1.5,0.5,1.0,2.0,0.5,0.5,0.5,0.5,0.5,0.5,1.0,1.0,2.0]
in_thread do
for i in 0..a5.length-1
play a5[i],sustain: b5[i]*0.9,release: b5[i]*0.1,pan: -0.6,amp: 0.7
sleep b5[i]
end
end
#double-bass
a6=[:Fs2,:G2,:A2,:A2,:G2,:Fs2,:E2,:D2,:E2,:Fs2,:Fs2,:E2,:E2,:Fs2,:G2,:A2,:A2,:G2,:Fs2,:E2,:D2,:E2,:Fs2,:E2,:D2,:D2,:E2,:Fs2,:D2,:E2,:Fs2,:G2,:Fs2,:D2,:E2,:Fs2,:G2,:Fs2,:E2,:D2,:E2,:A1,:Fs2,:Fs2,:G2,:A2,:A2,:G2,:Fs2,:E2,:D2,:E2,:Fs2,:E2,:D2,:D2,:E2,:Fs2,:D2,:E2,:Fs2,:G2,:Fs2,:D2,:E2,:Fs2,:G2,:Fs2,:E2,:D2,:E2,:A1,:Fs2,:Fs2,:G2,:A2,:A2,:G2,:Fs2,:E2,:D2,:E2,:Fs2,:E2,:D2,:D2,:A2,:D2,:B1,:Cs2,:D2,:G2,:G2,:Fs2,:E2,:D2,:Cs2,:B1,:A1,:A2,:D2,:B1,:Cs2,:D2,:G2,:Fs2,:E2,:D2,:Cs2,:B1,:A1,:G1,:A1,:Fs1,:Fs2,:G2,:A2,:B2,:Cs2,:D2,:E2,:Fs2,:G2,:A2,:As2,:B2,:Cs3,:D3,:A2,:C2,:B1,:Cs2,:D2,:G2,:Fs2,:E2,:D2,:Cs2,:B1,:A1,:G1,:A1,:Fs1,:Fs2,:G2,:A2,:B2,:Cs2,:D2,:E2,:Fs2,:G2,:A2,:As2,:B2,:Cs3,:D3,:A2,:C2,:B1,:Cs2,:D2,:G2,:Fs2,:E2,:D2,:Cs2,:B1,:A1,:G1,:A1,:Fs1,:G2,:Fs2,:E2,:D2,:D2,:Cs2,:B1,:A1,:G2,:Fs2,:E2,:D2,:E3,:D3,:Cs3,:B2,:A2,:G2,:Fs2,:A2,:A1,:D2,:A2,:Fs2,:B2,:G2,:Fs2,:E2,:D2,:E3,:D3,:Cs3,:B2,:A2,:G2,:Fs2,:A2,:A1,:D2,:A2,:A2,:Fs2,:B2,:G2,:Fs2,:E2,:D2,:E3,:D3,:Cs3,:B2,:A2,:G2,:Fs2,:A2,:A1,:D2]
b6=[2.0,1.0,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.5,0.5,2.0,2.0,1.0,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.5,0.5,2.0,2.0,1.0,1.0,1.0,0.5,0.5,1.0,1.0,1.0,0.5,0.5,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.5,0.5,2.0,2.0,1.0,1.0,1.0,0.5,0.5,1.0,1.0,1.0,0.5,0.5,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.5,0.5,1.0,3.0,2.0,1.5,0.5,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.0,2.0,2.0,1.5,0.5,1.0,2.0,0.5,0.5,0.5,0.5,0.5,0.5,1.0,1.0,1.0,1.0,2.0,1.0,1.0,2.0,1.0,0.5,0.5,2.0,1.0,1.0,1.0,2.0,1.0,2.0,2.0,1.5,0.5,1.0,2.0,0.5,0.5,0.5,0.5,0.5,0.5,1.0,1.0,1.0,1.0,2.0,1.0,1.0,2.0,1.0,0.5,0.5,2.0,1.0,1.0,1.0,2.0,1.0,2.0,2.0,1.5,0.5,1.0,2.0,0.5,0.5,0.5,0.5,0.5,0.5,1.0,1.0,0.5,0.5,0.5,0.5,9.0,1.0,1.0,1.0,2.5,0.5,0.5,0.5,8.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,1.0,1.0,1.0,12.0,1.0,1.0,2.0,0.5,0.5,8.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,1.0,1.0,1.0,1.0,11.0,1.0,1.0,2.0,0.5,0.5,8.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,1.0,1.0,2.0]
in_thread do
for i in 0..a6.length-1
play a6[i],sustain: b6[i]*0.9,release: b6[i]*0.1,pan: -0.9,amp: 0.7
sleep b6[i]
end
end
end #reverb
#ODE TO JOY: BASSOON and VIOLA
#arranged for Sonic Pi by Robin Newman, April 2020
#this version on a single computer using three buffers
sync "/osc*/start"
use_bpm 140
with_fx :reverb, room: 0.8 do
use_synth :saw
#Bassoon
a1=[: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,:Fs4,:D4,:E4,:Fs4,:B3,:A3,:G3,:Fs3,:A3,:D4,:Cs4,:r,:D4,:E4,:Fs4,:D4,:E4,:Fs4,:B3,:A3,:G3,:Fs3,:E4,:D4,:Cs4,:B3,:Cs4,:D4,:r,:r,:A3,:G3,:A3,:B3,:Cs4,:D4,:E4,:D4,:A3,:D4,:E4,:Fs4,:D4,:E4,:Fs4,:B3,:A3,:G3,:Fs3,:E4,:D4,:Cs4,:B3,:Cs4,:D4,:r,:r,:A3,:Fs3,:G3,:A3,:B3,:Cs4,:D4,:E4,:D4,:A3,:D4,:E4,:Fs4,:D4,:E4,:Fs4,:A3,:B3,:Cs4,:D4,:B3,:A3,:G3,:Fs3,:E3,:D3,:Cs3,:B2,:B3,:Cs4,:D4,:A3,:B3,:Cs4,:D4,:r,:r,:r,:D4,:E4,:Fs4,:Fs4,:E4,:E4,:r,:r,:D4,:E4,:Fs4,:E4,:D4,:D4,:r,:r,:E4,:Fs4,:G4,:Fs4,:E4,:D4,:E4,:A3,:Fs4,:r,:r,:D4,:E4,:Fs4,:E4,:D4,:D4,:r,:r,:E4,:Fs4,:G4,:Fs4,:E4,:D4,:E4,:A3,:Fs4,:r,:r,:D4,:E4,:Fs4,:E4,:D4,:D4]
b1=[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,2.0,1.0,1.0,1.5,0.5,1.0,2.0,1.0,1.0,2.0,1.0,1.0,1.0,1.0,2.0,0.5,0.5,1.5,0.5,1.0,2.0,0.5,0.5,0.5,0.5,0.5,0.5,1.0,1.0,1.0,1.0,4.0,3.0,0.5,0.5,2.0,2.0,1.0,2.0,1.5,0.5,1.5,0.5,1.5,0.5,1.0,1.0,2.0,0.5,0.5,0.5,0.5,0.5,0.5,1.0,1.0,1.0,1.0,4.0,2.5,0.5,0.5,0.5,2.0,2.0,1.0,2.0,1.5,0.5,1.5,0.5,1.5,0.5,1.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,1.0,0.5,0.5,0.5,0.5,0.5,0.5,1.0,1.0,2.0,4.0,2.0,1.0,1.0,1.5,0.5,2.0,4.0,4.0,2.0,1.0,1.0,1.5,0.5,2.0,4.0,4.0,1.0,0.5,0.5,1.0,1.0,1.0,1.0,1.0,1.0,4.0,4.0,2.0,1.0,1.0,1.5,0.5,2.0,4.0,4.0,1.0,0.5,0.5,1.0,1.0,1.0,1.0,1.0,1.0,4.0,4.0,2.0,1.0,1.0,1.5,0.5,2.0]
in_thread do
for i in 0..a1.length-1
play a1[i],sustain: b1[i]*0.9,release: b1[i]*0.1,pan: 0.3,amp: 0.3
sleep b1[i]
end
end
use_synth :blade
#viola
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,:Fs4,:G4,:A4,:A4,:G4,:Fs4,:E4,:D4,:E4,:Fs4,:Fs4,:E4,:E4,:Fs4,:G4,:A4,:A4,:G4,:Fs4,:E4,:D4,:E4,:Fs4,:E4,:D4,:D4,:E4,:Fs4,:D4,:E4,:Fs4,:G4,:Fs4,:D4,:E4,:Fs4,:G4,:Fs4,:E4,:D4,:E4,:A3,:Fs4,:Fs4,:G4,:A4,:A4,:G4,:Fs4,:E4,:D4,:E4,:Fs4,:E4,:D4,:D4,:E4,:Fs4,:D4,:E4,:Fs4,:G4,:Fs4,:D4,:E4,:Fs4,:G4,:Fs4,:E4,:D4,:E4,:A3,:Fs4,:Fs4,:G4,:A4,:A4,:G4,:Fs4,:E4,:D4,:E4,:Fs4,:E4,:D4,:D4,:A4,:D4,:B3,:Cs4,:D4,:G4,:Fs4,:E4,:D4,:Cs4,:B3,:A3,:A4,:D4,:B3,:Cs4,:D4,:G4,:Fs4,:E4,:D4,:Cs4,:B3,:A3,:G3,:A3,:Fs3,:Fs4,:G4,:A4,:B3,:Cs4,:D4,:E4,:Fs4,:G4,:A4,:A3,:As3,:B3,:Cs4,:D4,:A4,:C4,:B3,:Cs4,:D4,:G4,:Fs4,:E4,:D4,:Cs4,:B3,:A3,:G3,:A3,:Fs3,:Fs4,:G4,:A4,:B3,:Cs4,:D4,:E4,:Fs4,:G4,:A4,:A3,:As3,:B3,:Cs4,:D4,:A4,:C4,:B3,:Cs4,:D4,:G4,:Fs4,:E4,:D4,:Cs4,:B3,:A3,:G3,:A3,:Fs3]
b4=[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,2.0,1.0,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.0,1.0,2.0,2.0,1.0,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.5,0.5,2.0,2.0,1.0,1.0,1.0,0.5,0.5,1.0,1.0,1.0,0.5,0.5,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.5,0.5,2.0,2.0,1.0,1.0,1.0,0.5,0.5,1.0,1.0,1.0,0.5,0.5,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.5,0.5,2.0,2.0,2.0,1.5,0.5,1.0,2.0,1.0,1.0,2.0,1.0,1.0,1.0,2.0,2.0,1.5,0.5,1.0,2.0,0.5,0.5,0.5,0.5,0.5,0.5,1.0,1.0,1.0,1.0,2.0,1.0,1.0,2.0,1.0,0.5,0.5,2.0,0.5,0.5,1.0,1.0,2.0,1.0,2.0,2.0,1.5,0.5,1.0,2.0,0.5,0.5,0.5,0.5,0.5,0.5,1.0,1.0,1.0,1.0,2.0,1.0,1.0,2.0,1.0,0.5,0.5,2.0,0.5,0.5,1.0,1.0,2.0,1.0,2.0,2.0,1.5,0.5,1.0,2.0,0.5,0.5,0.5,0.5,0.5,0.5,1.0,1.0,2.0]
in_thread do
for i in 0..a4.length-1
play a4[i],sustain: b4[i]*0.9,release: b4[i]*0.1,pan:-0.3,amp: 0.6
sleep b4[i]
end
end
end #fx
#ODE TO JOY: CELLO and DOUBLE-BASS
#arranged for Sonic Pi by Robin Newman, April 2020
#use this version to control three computers
#adjust IP addresses of other two machines in lines 6 and 7 to suit
use_osc "localhost",4560
osc_s£end "192.168.1.129",4560,"/start"
osc_send "192.168.1.131",4560,"/start"
osc "/start"
sync "/osc*/start"
use_bpm 140
use_synth :blade
with_fx :reverb,room: 0.8 do
#cello
a5=[:Fs3,:G3,:A3,:A3,:G3,:Fs3,:E3,:D3,:E3,:Fs3,:Fs3,:E3,:E3,:Fs3,:G3,:A3,:A3,:G3,:Fs3,:E3,:D3,:E3,:Fs3,:E3,:D3,:D3,:E3,:Fs3,:D3,:E3,:Fs3,:G3,:Fs3,:D3,:E3,:Fs3,:G3,:Fs3,:E3,:D3,:E3,:A2,:Fs3,:Fs3,:G3,:A3,:A3,:G3,:Fs3,:E3,:D3,:E3,:Fs3,:E3,:D3,:D3,:E3,:Fs3,:D3,:E3,:Fs3,:G3,:Fs3,:D3,:E3,:Fs3,:G3,:Fs3,:E3,:D3,:E3,:A2,:Fs3,:Fs3,:G3,:A3,:A3,:G3,:Fs3,:E3,:D3,:E3,:Fs3,:E3,:D3,:D3,:A3,:Fs4,:G4,:A4,:A4,:G4,:Fs4,:E4,:D4,:E4,:Fs4,:Fs4,:E4,:E4,:Fs4,:G4,:A4,:A4,:G4,:Fs4,:E4,:D4,:E4,:Fs4,:E4,:D4,:D4,:E4,:Fs4,:D4,:E4,:Fs4,:G4,:Fs4,:D4,:E4,:Fs4,:G4,:Fs4,:E4,:D4,:E4,:A3,:Fs4,:Fs4,:G4,:A4,:A4,:G4,:Fs4,:E4,:D4,:E4,:Fs4,:E4,:D4,:D4,:E4,:Fs4,:D4,:E4,:Fs4,:G4,:Fs4,:D4,:E4,:Fs4,:G4,:Fs4,:E4,:D4,:E4,:A3,:Fs4,:Fs4,:G4,:A4,:A4,:G4,:Fs4,:E4,:D4,:E4,:Fs4,:E4,:D4,:D4,:A4,:D4,:B3,:Cs4,:D4,:G4,:Fs4,:E4,:D4,:Cs4,:B3,:A3,:A4,:D4,:B3,:Cs4,:D4,:G4,:Fs4,:E4,:D4,:Cs4,:B3,:A3,:G3,:A3,:Fs3,:Fs4,:G4,:A4,:B3,:Cs4,:D4,:E4,:Fs4,:G4,:A4,:A3,:As3,:B3,:Cs4,:D4,:A4,:C4,:B3,:Cs4,:D4,:G4,:Fs4,:E4,:D4,:Cs4,:B3,:A3,:G3,:A3,:Fs3,:Fs4,:G4,:A4,:B3,:Cs4,:D4,:E4,:Fs4,:G4,:A4,:A3,:As3,:B3,:Cs4,:D4,:A4,:C4,:B3,:Cs4,:D4,:G4,:Fs4,:E4,:D4,:Cs4,:B3,:A3,:G3,:A3,:Fs3]
b5=[2.0,1.0,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.5,0.5,2.0,2.0,1.0,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.5,0.5,2.0,2.0,1.0,1.0,1.0,0.5,0.5,1.0,1.0,1.0,0.5,0.5,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.5,0.5,2.0,2.0,1.0,1.0,1.0,0.5,0.5,1.0,1.0,1.0,0.5,0.5,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.5,0.5,1.0,1.0,2.0,1.0,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.0,1.0,2.0,2.0,1.0,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.5,0.5,2.0,2.0,1.0,1.0,1.0,0.5,0.5,1.0,1.0,1.0,0.5,0.5,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.5,0.5,2.0,2.0,1.0,1.0,1.0,0.5,0.5,1.0,1.0,1.0,0.5,0.5,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.5,0.5,2.0,2.0,2.0,1.5,0.5,1.0,2.0,1.0,1.0,2.0,1.0,1.0,1.0,2.0,2.0,1.5,0.5,1.0,2.0,0.5,0.5,0.5,0.5,0.5,0.5,1.0,1.0,1.0,1.0,2.0,1.0,1.0,2.0,1.0,0.5,0.5,2.0,0.5,0.5,1.0,1.0,2.0,1.0,2.0,2.0,1.5,0.5,1.0,2.0,0.5,0.5,0.5,0.5,0.5,0.5,1.0,1.0,1.0,1.0,2.0,1.0,1.0,2.0,1.0,0.5,0.5,2.0,0.5,0.5,1.0,1.0,2.0,1.0,2.0,2.0,1.5,0.5,1.0,2.0,0.5,0.5,0.5,0.5,0.5,0.5,1.0,1.0,2.0]
in_thread do
for i in 0..a5.length-1
play a5[i],sustain: b5[i]*0.9,release: b5[i]*0.1,pan: -0.6,amp: 0.7
sleep b5[i]
end
end
#double-bass
a6=[:Fs2,:G2,:A2,:A2,:G2,:Fs2,:E2,:D2,:E2,:Fs2,:Fs2,:E2,:E2,:Fs2,:G2,:A2,:A2,:G2,:Fs2,:E2,:D2,:E2,:Fs2,:E2,:D2,:D2,:E2,:Fs2,:D2,:E2,:Fs2,:G2,:Fs2,:D2,:E2,:Fs2,:G2,:Fs2,:E2,:D2,:E2,:A1,:Fs2,:Fs2,:G2,:A2,:A2,:G2,:Fs2,:E2,:D2,:E2,:Fs2,:E2,:D2,:D2,:E2,:Fs2,:D2,:E2,:Fs2,:G2,:Fs2,:D2,:E2,:Fs2,:G2,:Fs2,:E2,:D2,:E2,:A1,:Fs2,:Fs2,:G2,:A2,:A2,:G2,:Fs2,:E2,:D2,:E2,:Fs2,:E2,:D2,:D2,:A2,:D2,:B1,:Cs2,:D2,:G2,:G2,:Fs2,:E2,:D2,:Cs2,:B1,:A1,:A2,:D2,:B1,:Cs2,:D2,:G2,:Fs2,:E2,:D2,:Cs2,:B1,:A1,:G1,:A1,:Fs1,:Fs2,:G2,:A2,:B2,:Cs2,:D2,:E2,:Fs2,:G2,:A2,:As2,:B2,:Cs3,:D3,:A2,:C2,:B1,:Cs2,:D2,:G2,:Fs2,:E2,:D2,:Cs2,:B1,:A1,:G1,:A1,:Fs1,:Fs2,:G2,:A2,:B2,:Cs2,:D2,:E2,:Fs2,:G2,:A2,:As2,:B2,:Cs3,:D3,:A2,:C2,:B1,:Cs2,:D2,:G2,:Fs2,:E2,:D2,:Cs2,:B1,:A1,:G1,:A1,:Fs1,:G2,:Fs2,:E2,:D2,:D2,:Cs2,:B1,:A1,:G2,:Fs2,:E2,:D2,:E3,:D3,:Cs3,:B2,:A2,:G2,:Fs2,:A2,:A1,:D2,:A2,:Fs2,:B2,:G2,:Fs2,:E2,:D2,:E3,:D3,:Cs3,:B2,:A2,:G2,:Fs2,:A2,:A1,:D2,:A2,:A2,:Fs2,:B2,:G2,:Fs2,:E2,:D2,:E3,:D3,:Cs3,:B2,:A2,:G2,:Fs2,:A2,:A1,:D2]
b6=[2.0,1.0,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.5,0.5,2.0,2.0,1.0,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.5,0.5,2.0,2.0,1.0,1.0,1.0,0.5,0.5,1.0,1.0,1.0,0.5,0.5,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.5,0.5,2.0,2.0,1.0,1.0,1.0,0.5,0.5,1.0,1.0,1.0,0.5,0.5,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.5,0.5,1.0,3.0,2.0,1.5,0.5,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.0,2.0,2.0,1.5,0.5,1.0,2.0,0.5,0.5,0.5,0.5,0.5,0.5,1.0,1.0,1.0,1.0,2.0,1.0,1.0,2.0,1.0,0.5,0.5,2.0,1.0,1.0,1.0,2.0,1.0,2.0,2.0,1.5,0.5,1.0,2.0,0.5,0.5,0.5,0.5,0.5,0.5,1.0,1.0,1.0,1.0,2.0,1.0,1.0,2.0,1.0,0.5,0.5,2.0,1.0,1.0,1.0,2.0,1.0,2.0,2.0,1.5,0.5,1.0,2.0,0.5,0.5,0.5,0.5,0.5,0.5,1.0,1.0,0.5,0.5,0.5,0.5,9.0,1.0,1.0,1.0,2.5,0.5,0.5,0.5,8.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,1.0,1.0,1.0,12.0,1.0,1.0,2.0,0.5,0.5,8.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,1.0,1.0,1.0,1.0,11.0,1.0,1.0,2.0,0.5,0.5,8.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,1.0,1.0,2.0]
in_thread do
for i iiflen 0..a6.length-1
play a6[i],sustain: b6[i]*0.9,release: b6[i]*0.1,pan: -0.9,amp: 0.7
sleep b6[i]
end
end
end #reverb
#ODE TO JOY: VIOLIN 1 and VIOLIN 2
#arranged for Sonic Pi by Robin Newman, April 2020
#this version on a single computer using three buffers
sync "/osc*/start"
use_bpm 140
with_fx :reverb, room: 0.8 do
use_synth :blade
#violin1
a2=[: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,:r,:r,:r,:r,:r,:r,:r,:r,:r,:r,:r,:r,:r,:r,:r,:r,:Fs5,:G5,:A5,:A5,:G5,:Fs5,:E5,:D5,:E5,:Fs5,:Fs5,:E5,:E5,:Fs5,:G5,:A5,:A5,:G5,:Fs5,:E5,:D5,:E5,:Fs5,:E5,:D5,:D5,:E5,:Fs5,:D5,:E5,:Fs5,:G5,:Fs5,:D5,:E5,:Fs5,:G5,:Fs5,:E5,:D5,:E5,:A4,:Fs5,:Fs5,:G5,:A5,:A5,:G5,:Fs5,:E5,:D5,:E5,:Fs5,:E5,:D5,:D5,:E5,:Fs5,:D5,:E5,:Fs5,:G5,:Fs5,:D5,:E5,:Fs5,:G5,:Fs5,:E5,:D5,:E5,:A4,:Fs5,:Fs5,:G5,:A5,:A5,:G5,:Fs5,:E5,:D5,:E5,:Fs5,:E5,:D5,:D5]
b2=[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,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,2.0,1.0,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.5,0.5,2.0,2.0,1.0,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.5,0.5,2.0,2.0,1.0,1.0,1.0,0.5,0.5,1.0,1.0,1.0,0.5,0.5,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.5,0.5,2.0,2.0,1.0,1.0,1.0,0.5,0.5,1.0,1.0,1.0,0.5,0.5,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,2.0,1.0,1.0,1.5,0.5,2.0]
in_thread do
for i in 0..a2.length-1
play a2[i],sustain: b2[i]*0.9,release: b2[i]*0.1,pan: 0.9
sleep b2[i]
end
end
#violin2
a3=[: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,:r,:r,:r,:r,:r,:r,:r,:r,:r,:r,:r,:r,:r,:r,:r,:r,:r,:B4,:A4,:G4,:Fs4,:D4,:E4,:Fs4,:D4,:E4,:Fs4,:D4,:B3,:Cs4,:A3,:A4,:A4,:E4,:Cs4,:E4,:Fs4,:G4,:Fs4,:D4,:E4,:Fs4,:D4,:E4,:Fs4,:A4,:B4,:Cs5,:D5,:Cs5,:B4,:A4,:G4,:Fs4,:E4,:D4,:Cs4,:G4,:Fs4,:Fs4,:Fs4,:E4,:D4,:Cs4,:E4,:D4,:D5,:G4,:Fs4,:E4,:Fs4,:G4,:A4,:B4,:Cs5,:D5,:E5,:D5,:Cs5,:Cs4,:B4,:B3,:Bf3,:Bf4,:A4,:E4,:A4,:G4,:Fs4,:D5,:E5,:Fs5,:D5,:E5,:A4,:B4,:Cs5,:D5,:A4,:B4,:A4,:G4,:Fs4,:E4,:D4,:Cs4,:G4,:Fs4,:Fs4,:Fs4,:E4,:D4,:Cs4,:E4,:D4,:D5,:G4,:Fs4,:E4,:Fs4,:G4,:A4,:B4,:Cs5,:D5,:E5,:D5,:Cs5,:Cs4,:B4,:B3,:Bf3,:Bf4,:A4,:E4,:A4,:G4,:Fs4,:D5,:E5,:Fs5,:D5,:E5,:A4,:B4,:Cs5,:D5,:A4,:B4,:A4,:G4,:Fs4,:E4,:D4,:Cs4,:G4,:Fs4,:Fs4]
b3=[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,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,2.0,0.5,0.5,0.5,0.5,1.0,1.0,1.0,1.0,1.5,0.5,0.5,0.5,0.5,0.5,1.0,2.0,2.0,1.0,0.5,0.5,0.5,0.5,1.0,1.0,1.0,1.0,1.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.0,0.5,0.5,0.5,0.5,0.5,0.5,0.5,1.0,1.0,1.0,1.0,1.0,0.5,0.5,1.0,0.5,0.5,0.5,0.5,0.5,0.5,1.0,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,1.0,1.0,1.0,1.0,1.0,1.0,1.0,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,1.0,0.5,0.5,0.5,0.5,0.5,0.5,0.5,1.0,1.0,1.0,1.0,1.0,0.5,0.5,1.0,0.5,0.5,0.5,0.5,0.5,0.5,1.0,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,1.0,1.0,1.0,1.0,1.0,1.0,1.0,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,1.0,0.5,0.5,0.5,2.0]
in_thread do
for i in 0..a3.length-1
play a3[i],sustain: b3[i]*0.9,release: b3[i]*0.1,pan: 0.6
sleep b3[i]
end
end
end#fx
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment