All This Static Under Clouded Skies
May 7, 2021 8:28 PM
Generative ambient piece.
Made in Sonic Pi.
posted by signal (3 comments total)
1 user marked this as a favorite
Made in Sonic Pi.
#All This Static Under Clouded Skies duration = 240.0 with_bpm 30 do with_fx :normaliser, level: 0.90 do chord1 = [:G2, :C3, :G3, :B4, :D4, :G5] embel1 = [:A5, :C4] chord2 = [:E3, :D4, :Fs4, :G4, :D5, :E5] embel2 = [:A5] chord3 = [:D3, :G3, :D4, :Fs4] embel3 = [:G4, :A4] chord4 = [:E2, :B3, :E4, :G4] embel4 = [:B4, :E4, :D4] chord5 = [:A3, :E3, :A4, :C4, :E4] embel5 = [:G4] pairs = [[chord1, embel1], [chord2, embel2], [chord3, embel3], [chord4, embel4], [chord5, embel5]] strumtimes = [4, 4, 2, 2, 4, 1, 1, 2] set :c, chord1 set :e, embel1 x=0 live_loop :strum do if vt > duration * 0.95 stop end if vt > duration * 0.01 cue :arp c,e = pairs.tick(:strum) set :e, e set :c, c x=0.1 l=0.1 v=0.125 vol = vt/duration*3 c.each do |n| with_fx :distortion, amp:1, distort:0.9 do with_synth :dark_ambience do if one_in(3) play n, amp:vol, release: 4, ring: 1, room: 15, reverb_time: 25 end end s = l +rand(0.02) sleep s x+=s end end with_fx :ixi_techno, res: vt/duration, cutoff_min: (1-vt/duration)*120 do if one_in(2) sample :loop_industrial end end end sleep strumtimes.tick(:strumtime)-x end arptimes = [0.25, 0.25, 0.25, 0.75] octaves = [0,0,0,0,0,12] live_loop :arpeggio do if vt > duration *0.8 stop end if vt > duration * 0.3 e = get[:e] c = get[:c] if one_in(4) notes = c else notes = e end with_fx :distortion, amp:1, distort:0.9 do with_synth :hollow do play notes.tick(:arpn)+octaves.tick(:oct), amp:0.5+0.5*(1-vt/duration), release: 4 end end end sleep arptimes.tick(:arp) end emb_pitch = 0 emb_times = [0.125, 0.125, 0.125, 1, 1] live_loop :embellish do if vt > duration*0.85 stop end if vt > duration * 0.01 e = get[:e] c = get[:c] if one_in(3) notes = e+c else notes = e end with_fx :ping_pong, mix:0.5 do with_synth :hollow do with_fx :flanger, phase: duration/20 do with_fx :ixi_techno, res: vt/duration, cutoff_min: (1-vt/duration)*120 do with_fx :reverb, room:0.7 do with_fx :distortion, amp:3 do play choose(notes)+emb_pitch*12, amp: 0.25+0.75*vt/duration, release: emb_times.look(:embtimes)*1.5 end end end end end end if one_in(12) emb_pitch += choose([-1,1,1]) if emb_pitch < -1 emb_pitch = 0 end if emb_pitch > 2 emb_pitch = 0 end end end sleep emb_times.tick(:embtimes)+choose([0,0,0,0,1,0.25]) end live_loop :bass do if vt > duration*0.9 stop end e = get[:e] n=e[0] with_swing do with_synth :piano do play n-24, release:8, attack:1, amp: 30 end end sleep 4 end beepnotes = [0,1] live_loop :beep do if vt > duration * 0.2 if vt > duration *0.9 stop end c = get[:c] with_synth :beep do play c[beepnotes.tick(:beepnotes)]-12, amp:3 end end sleep 0.25 end beattimes = [0.25, 1, 0.25, 1, 0.25] live_loop :beat do if vt > duration * 0.3 if vt > duration * 0.9 stop end sample :drum_bass_hard with_fx :ping_pong do end end sleep beattimes.tick(:beat) end live_loop :b1 do if vt > duration * 0.9 stop end with_fx :panslicer, phase:1, amp:0.5, mix:0.5 do sample :bass_thick_c, amp: (1-vt/duration) sleep 1 end end end end
0.0779104702821034
00:00
00:00
This is pretty cool, the soundscapes are nice and layered. Fun to look at the code as well and try to figure out what's doing what while listening. Honestly this is my kind of ambient music, as it feels melodic enough to take me on some kind of journey. Very nice! Definitely makes me interested in investigating Sonic Pi!
posted by edlundart at 10:05 PM on May 27, 2021 [1 favorite]
posted by edlundart at 10:05 PM on May 27, 2021 [1 favorite]
You are not logged in, either login or create an account to post comments
posted by signal at 8:44 PM on May 7, 2021