On the Other Lake

Geb

2.3K plays < 1K downloads
Released Oct 26, 2024
Plays 2.3K
Downloads 36
Favorites 6
On the Other Lake by Geb is licensed under a Attribution-ShareAlike 4.0 International License.
Contact artist

For more questions regarding usage, feel free to contact the artist directly.

Contact artist
Track info
Description

The piano part was made in Sonic Pi and the synth progression was made in Bespoke Synth. Both are free tools. It is better if you listen in Spanish.


use_synth :piano
use_bpm 60
trigger = false
scales = [:minor, :major]
allnotes = []

scales.each do |sc|
scale_notes = (scale [:C, :D, :A, :G, :E].choose, sc)
puts (scale_notes)
pat1 = []
pat2 = []
pat3 = []
pat4 = []
pat5 = []
pats = [pat1,pat2,pat3,pat4,pat5]
lengths = [7,3,5,4,6]
sleeps = [[0.25,0.5/3,0.5/3,0.5/3,0.125,0.125,0.125,0.125,0.5/3,0.125,0.5/3,0.125,0.5/3],[1.0/3,1.0/3,1.0/3,0.5/3,0.5/3,0.5/3,0.25,0.125,0.125],[0.125,0.125,0.25,1.0/3,1.0/3,1.0/3,0.125,0.125,0.125]]
lencount = 0
while lencount < lengths.size do
j = 0
if one_in(3)
sub = 12
else
sub = 0
end

while j < lengths[lencount] do
newnote = scale_notes.choose - sub
while newnote == pats[lencount][-1]
newnote = scale_notes.choose
end
pats[lencount].append(newnote)
j += 1
end

puts(pats[lencount])
lencount+=1
end

sleep 4

z = 1
32.times do
if z % 4 == 0
mult = 2
else
mult = 1
end

j = [0,1,2,3,4].choose
k = [0,1,2,3,4].choose
while k == j
k = [0,1,2,3,4].choose
end
pat = [pats[j] + pats[k], pats[k] + pats[j], pats[j].reverse + pats[k], pats[k].reverse + pats[j]].choose
sp = sleeps[j]
k = 0
t = 0
buffer = []
buffersize = [6,12,18].choose
bufferi = 0
spat = sleeps.choose
pat.each do |n|
s = spat[k%spat.size]
while n == allnotes[-1]
n = scale_notes.choose
end
if one_in(8)
if one_in(2)
if n = 48
n = n - 12
end
end
if s == 0.25
sleep 0.25 * mult
else
sleep 0.125 * mult
end
end

if z == 32 or z == 16
if n = 48
m = m - 12
end
end

play m, release: [1,2].choose
sleep [0.5/3,0.5/3,0.5/3,0.125,0.125,0.25].tick * mult
allnotes.append(m)
end
buffer = []
bufferi = 0
buffersize = [6,12,18].choose
trigger = false
end
if z % 3 == 0
play scale_notes[0] - 12, release: 4
play scale_notes[0] + 7 - 12, release: 4
else
play scale_notes[0], release: 4
play scale_notes[0] + 7, release: 4
end
if z % 6 == 0
sleep 0.5
play scale_notes[0] + 12, release: 4
play scale_notes[0] + 7 - 12, release: 4
end
sleep 0.125
if one_in(z)
if t == 0.25
sleep 0.75 * mult
else
sleep 0.875 * mult
end
end
z += 1
end
play scale_notes[0] + 7 - 12, release: 4
play scale_notes[0] - 12, release: 4
sleep 0.5
play scale_notes[0] + 7 - 12, release: 4
play scale_notes[0] - 12, release: 4
end

Album

Singles

Instrumental Yes
Explicit Radio-Safe
AI generated? No