Community + Forum Compositions — A/B Inspector

Summary

48 community + in-thread-forum fixtures · 30s each · post + + AMP=2.

Captures succeeded: 48/48 · in-band RMS (0.6×–1.5×): 32/47 of those that produced WAVs.

Median RMS× 0.61× · median peak× 0.65×.

poolcaptures ok
community28/28
in-thread-forum20/20
All fixtures table (48)
fixturepoolRMS×peak×MFCCcapture
01_tilburg_2community0.63×0.67×107ok
02_shufflitcommunity0.61×0.90×133ok
03_blimp_zonescommunity0.58×0.55×186ok
04_blip_rhythmcommunity0.62×0.85×111ok
05_time_machinecommunity0.59×0.57×136ok
06_bachcommunity0.47×0.59×90ok
07_driving_pulsecommunity0.61×0.74×89ok
08_monday_bluescommunity0.60×0.61×76ok
09_acidcommunity0.59×0.59×132ok
10_idm_breakbeatcommunity0.60×0.61×101ok
11_ambientcommunity0.95×0.93×83ok
12_echo_dramacommunity0.62×0.65×97ok
13_tron_bikecommunity0.60×0.59×150ok
14_wob_rhythcommunity0.65×0.66×109ok
15_rerezzedcommunity0.61×0.62×91ok
16_minimal_mixercommunity0.69×0.73×126ok
17_top_arp_basscommunity0.83×0.91×160ok
18_piano_layerscommunity0.72×0.86×70ok
19_ambient_leadcommunity0.79×0.66×43ok
20_noise_drums_sawcommunity0.64×0.73×97ok
21_electronic_experimentcommunity0.60×0.58×230ok
22_recursive_sproutcommunity1.00×0.74×122ok
23_bass_distortioncommunity0.69×0.92×134ok
24_bhairav_tablacommunity0.27×0.49×156ok
25_piano_exercisecommunity0.27×0.36×137ok
26_note_duration_pairscommunity0.61×0.58×77ok
27_hydra_jamcommunity0.60×1.00×131ok
28_snowflight_inspiredcommunity0.27×0.24×74ok
29_sacramento_stormin-thread-forumok
30_atmospheric_dronein-thread-forum0.36×0.34×119ok
31_bass_noise_jamin-thread-forum0.68×1.00×155ok
32_morning_vibein-thread-forum0.27×0.27×227ok
33_dub_reverbin-thread-forum1.79×0.72×149ok
34_kx5_escape_coverin-thread-forum0.68×0.90×103ok
35_evolving_arpin-thread-forum0.71×0.95×97ok
36_fun_with_functionsin-thread-forum0.55×0.58×150ok
37_semitone_arrayin-thread-forum0.60×0.59×85ok
38_synthwavein-thread-forum0.62×0.68×133ok
39_blues_machinein-thread-forum0.52×0.38×142ok
40_choose_generatorin-thread-forum0.61×0.61×138ok
41_ocean_ambiencein-thread-forum0.60×0.61×115ok
42_first_musicin-thread-forum0.60×0.57×168ok
43_exploring_tb303in-thread-forum0.63×0.97×116ok
44_blues_bandin-thread-forum0.21×0.38×207ok
45_sick_drummerin-thread-forum0.94×0.82×258ok
46_lofi_hip_hopin-thread-forum0.59×0.60×131ok
47_fibonacci_zoomiesin-thread-forum1.39×2.06×109ok
48_lullabyin-thread-forum1.03×1.63×177ok
community (28 fixtures)

01_tilburg_2 community

RMS× 0.63× peak× 0.67× MFCC 107 L2 dB 11.3
HIGH 73.4/100

Desktop

audio not hosted (WAVs excluded from web deploy)
peak 0.958 · RMS 0.1888 · 31.37s @ 48000Hz

Web

audio not hosted (WAVs excluded from web deploy)
peak 0.643 · RMS 0.1184 · 29.70s @ 48000Hz

Spectrogram (mel-dB · 3 panels: desktop / web / |Δ|)

community__01_tilburg_2 spectrogram

Per-beat divergence (RMS, peak, MFCC distance per beat window)

no per-beat chart
Source (community/01_tilburg_2.rb)
use_debug false

live_loop :low do
 tick
 synth :zawa, wave: 1, phase: 0.25, release: 5, note: (knit :e1, 12, :c1, 4).look, cutoff: (line 60, 120, steps: 6).look
 sleep 4
end

with_fx :reverb, room: 1 do
 live_loop :lands, auto_cue: false do
 use_synth :dsaw
 use_random_seed 310003
 ns = (scale :e2, :minor_pentatonic, num_octaves: 4).take(4)
 16.times do
 play ns.choose, detune: 12, release: 0.1, amp: 2, cutoff: rrand(70, 120)
 sleep 0.125
 end
 end
end

live_loop :fietsen do
 sleep 0.25
 sample :guit_em9, rate: -1
 sleep 7.75
end

live_loop :tijd do
 sample :bd_haus, amp: 2.5, cutoff: 100
 sleep 0.5
end

live_loop :ind do
 sample :loop_industrial, beat_stretch: 1
 sleep 1
end

02_shufflit community

RMS× 0.61× peak× 0.90× MFCC 133 L2 dB 13.1
HIGH 73.7/100

Desktop

audio not hosted (WAVs excluded from web deploy)
peak 1.000 · RMS 0.3556 · 16.37s @ 48000Hz

Web

audio not hosted (WAVs excluded from web deploy)
peak 0.902 · RMS 0.2169 · 14.68s @ 48000Hz

Spectrogram (mel-dB · 3 panels: desktop / web / |Δ|)

community__02_shufflit spectrogram

Per-beat divergence (RMS, peak, MFCC distance per beat window)

no per-beat chart
Source (community/02_shufflit.rb)
use_debug false
use_random_seed 667

live_loop :travelling do
 use_synth :beep
 notes = scale(:e3, :minor_pentatonic, num_octaves: 1)
 use_random_seed 679
 tick_reset_all
 with_fx :echo, phase: 0.125, mix: 0.4, reps: 16 do
 sleep 0.25
 play notes.choose, attack: 0, release: 0.1, pan: (range -1, 1, step: 0.125).tick, amp: rrand(2, 2.5)
 end
end

live_loop :shuff, auto_cue: false do
 with_fx :hpf, cutoff: 10, reps: 8 do
 tick
 sleep 0.25
 sample :bd_tek, amp: factor?(look, 8) ? 6 : 4
 sleep 0.25
 use_synth :tb303
 play (knit :e2, 24, :c2, 8).look, release: 1.5, cutoff: (range 70, 90).look, amp: 2 if factor?(look, 2)
 sample :sn_dub, rate: -1, sustain: 0, release: (knit 0.05, 3, 0.5, 1).look
 end
end

03_blimp_zones community

RMS× 0.58× peak× 0.55× MFCC 186 L2 dB 19.8
MID 60.6/100

Desktop

audio not hosted (WAVs excluded from web deploy)
peak 0.742 · RMS 0.1389 · 16.37s @ 48000Hz

Web

audio not hosted (WAVs excluded from web deploy)
peak 0.408 · RMS 0.0805 · 14.68s @ 48000Hz

Spectrogram (mel-dB · 3 panels: desktop / web / |Δ|)

community__03_blimp_zones spectrogram

Per-beat divergence (RMS, peak, MFCC distance per beat window)

no per-beat chart
Source (community/03_blimp_zones.rb)
use_debug false
use_random_seed 667

live_loop :foo do
 with_fx :reverb, kill_delay: 0.2, room: 0.3 do
 4.times do
 use_random_seed 4000
 8.times do
 sleep 0.25
 play chord(:e3, :m7).choose, release: 0.1, pan: rrand(-1, 1), amp: 1
 end
 end
 end
end

live_loop :baz, auto_cue: false do
 tick
 sleep 0.25
 cue :beat, count: look
 sample :bd_haus, amp: factor?(look, 8) ? 3 : 2
 sleep 0.25
 use_synth :fm
 play :e2, release: 1, amp: 1 if factor?(look, 4)
 synth :noise, release: 0.051, amp: 0.5
end

04_blip_rhythm community

RMS× 0.62× peak× 0.85× MFCC 111 L2 dB 11.0
HIGH 75.8/100

Desktop

audio not hosted (WAVs excluded from web deploy)
peak 1.000 · RMS 0.1490 · 31.37s @ 48000Hz

Web

audio not hosted (WAVs excluded from web deploy)
peak 0.850 · RMS 0.0927 · 29.70s @ 48000Hz

Spectrogram (mel-dB · 3 panels: desktop / web / |Δ|)

community__04_blip_rhythm spectrogram

Per-beat divergence (RMS, peak, MFCC distance per beat window)

no per-beat chart
Source (community/04_blip_rhythm.rb)
use_bpm 100
use_random_seed 100

with_fx :reverb, mix: 0.6, room: 0.8 do
 with_fx :echo, decay: 8, phase: 1, mix: 0.4 do
 live_loop :blip do
 n = [:e2, :e2, :a3].choose

 with_synth :dsaw do
 with_transpose -12 do
 in_thread do
 2.times do
 play n, attack: 0.6, release: 0.8, detune: rrand(0, 0.1), cutoff: rrand(80, 120)
 sleep 3
 end
 end
 end
 end

 sleep 4

 with_synth :tri do
 play chord(n, :m7), amp: 5, release: 0.8
 end

 sleep 2
 end
 end
end

with_fx :echo, decay: 8, phase: 0.25, mix: 0.4 do
 live_loop :rhythm do
 sample :drum_heavy_kick, amp: 0.5
 sample :elec_plip, rate: [0.5, 2, 1, 4].choose * [1, 2, 3, 10].choose, amp: 0.6
 sleep 2
 end
end

05_time_machine community

RMS× 0.59× peak× 0.57× MFCC 136 L2 dB 13.8
MID 67.5/100

Desktop

audio not hosted (WAVs excluded from web deploy)
peak 0.990 · RMS 0.1724 · 31.37s @ 48000Hz

Web

audio not hosted (WAVs excluded from web deploy)
peak 0.563 · RMS 0.1022 · 29.70s @ 48000Hz

Spectrogram (mel-dB · 3 panels: desktop / web / |Δ|)

community__05_time_machine spectrogram

Per-beat divergence (RMS, peak, MFCC distance per beat window)

no per-beat chart
Source (community/05_time_machine.rb)
use_debug false

live_loop :time do
 synth :tb303, release: 8, note: :e1, cutoff: (range 90, 60, step: -10).tick
 sleep 8
end

live_loop :machine do
 sample :loop_garzul, rate: (knit 1, 3, -1, 1).tick
 sleep 8
end

live_loop :vortex, auto_cue: false do
 use_synth [:pulse, :beep].choose
 sleep 0.125 / 2
 play scale(:e1, :minor_pentatonic).tick, attack: 0.125, release: 0, amp: 2, cutoff: (ring 70, 90, 100, 130).look
 sleep 0.125 / 2
end

live_loop :moon_bass, auto_cue: false do
 sample :bd_haus, amp: 1.5
 sleep 0.5
end

06_bach community

RMS× 0.47× peak× 0.59× MFCC 90 L2 dB 10.6
MID 67.2/100

Desktop

audio not hosted (WAVs excluded from web deploy)
peak 0.395 · RMS 0.0740 · 31.37s @ 48000Hz

Web

audio not hosted (WAVs excluded from web deploy)
peak 0.233 · RMS 0.0349 · 29.70s @ 48000Hz

Spectrogram (mel-dB · 3 panels: desktop / web / |Δ|)

community__06_bach spectrogram

Per-beat divergence (RMS, peak, MFCC distance per beat window)

no per-beat chart
Source (community/06_bach.rb)
use_bpm 60
use_synth_defaults release: 0.5, amp: 0.7, cutoff: 90
use_synth :beep

in_thread do
 play_chord [55,59]
 sleep 1
 play_pattern_timed [57],[0.5]
 play_pattern_timed [59],[1.5]
 play_pattern_timed [60],[1.5]
 play_pattern_timed [59],[1.5]
 play_pattern_timed [57],[1.5]
 play_pattern_timed [55],[1.5]
 play_pattern_timed [62,59,55],[0.5]
 play_pattern_timed [62],[0.5]
 play_pattern_timed [50,60,59,57],[0.25]
end

play_pattern_timed [74],[0.5]
play_pattern_timed [67,69,71,72],[0.25]
play_pattern_timed [74,67,67],[0.5]
play_pattern_timed [76],[0.5]
play_pattern_timed [72,74,76,78],[0.25]
play_pattern_timed [79,67,67],[0.5]
play_pattern_timed [72],[0.5]
play_pattern_timed [74,72,71,69],[0.25]
play_pattern_timed [71],[0.5]
play_pattern_timed [72,71,69,67],[0.25]
play_pattern_timed [66],[0.5]
play_pattern_timed [67,69,71,67],[0.25]
play_pattern_timed [71,69],[0.5,1]

07_driving_pulse community

RMS× 0.61× peak× 0.74× MFCC 89 L2 dB 11.1
HIGH 74.8/100

Desktop

audio not hosted (WAVs excluded from web deploy)
peak 0.304 · RMS 0.0752 · 31.37s @ 48000Hz

Web

audio not hosted (WAVs excluded from web deploy)
peak 0.225 · RMS 0.0456 · 29.70s @ 48000Hz

Spectrogram (mel-dB · 3 panels: desktop / web / |Δ|)

community__07_driving_pulse spectrogram

Per-beat divergence (RMS, peak, MFCC distance per beat window)

no per-beat chart
Source (community/07_driving_pulse.rb)
live_loop :drums do
 sample :drum_heavy_kick, rate: 0.75
 sleep 0.5
 sample :drum_heavy_kick
 sleep 0.5
end

live_loop :synths do
 use_synth :mod_pulse
 use_synth_defaults amp: 1, mod_range: 15, cutoff: 80, pulse_width: 0.2, attack: 0.03, release: 0.6, mod_phase: 0.25, mod_invert_wave: 1
 play 30
 sleep 0.25
 play 38
 sleep 0.25
end

08_monday_blues community

RMS× 0.60× peak× 0.61× MFCC 76 L2 dB 8.9
HIGH 74.5/100

Desktop

audio not hosted (WAVs excluded from web deploy)
peak 0.506 · RMS 0.0859 · 31.37s @ 48000Hz

Web

audio not hosted (WAVs excluded from web deploy)
peak 0.308 · RMS 0.0517 · 29.70s @ 48000Hz

Spectrogram (mel-dB · 3 panels: desktop / web / |Δ|)

community__08_monday_blues spectrogram

Per-beat divergence (RMS, peak, MFCC distance per beat window)

no per-beat chart
Source (community/08_monday_blues.rb)
use_debug false

live_loop :drums do
 puts "slow drums"
 6.times do
 sample :drum_heavy_kick, rate: 0.8
 sleep 0.5
 end

 puts "fast drums"
 8.times do
 sample :drum_heavy_kick, rate: 0.8
 sleep 0.125
 end
end

live_loop :synths do
 puts "how does it feel?"
 use_synth :mod_saw
 use_synth_defaults amp: 0.5, attack: 0, sustain: 1, release: 0.25, mod_range: 12, mod_phase: 0.5, mod_invert_wave: 1
 notes = (ring :F, :C, :D, :D, :G, :C, :D, :D)
 notes.each do |n|
 tick
 play note(n, octave: 1), cutoff: (line 90, 130, steps: 16).look
 play note(n, octave: 2), cutoff: (line 90, 130, steps: 32).look
 sleep 1
 end
end

live_loop :snare do
 sample :drum_snare_soft
 sleep 1
end

09_acid community

RMS× 0.59× peak× 0.59× MFCC 132 L2 dB 14.0
MID 67.9/100

Desktop

audio not hosted (WAVs excluded from web deploy)
peak 0.993 · RMS 0.1557 · 31.37s @ 48000Hz

Web

audio not hosted (WAVs excluded from web deploy)
peak 0.585 · RMS 0.0923 · 29.70s @ 48000Hz

Spectrogram (mel-dB · 3 panels: desktop / web / |Δ|)

community__09_acid spectrogram

Per-beat divergence (RMS, peak, MFCC distance per beat window)

no per-beat chart
Source (community/09_acid.rb)
use_debug false

live_loop :drums do
 sample :bd_fat, amp: 5
 sleep 0.5
end

live_loop :acid do
 4.times do |i|
 use_random_seed 667
 16.times do
 use_synth :tb303
 play chord(:e3, :minor).choose, attack: 0, release: 0.1, cutoff: rrand_i(50, 90) + i * 10
 sleep 0.125
 end
 end

 32.times do |i|
 use_synth :tb303
 play chord(:a3, :minor).choose, attack: 0, release: 0.05, cutoff: rrand_i(70, 98) + i, res: rrand(0.9, 0.95)
 sleep 0.125
 end

 with_fx :reverb, mix: 0.3 do
 32.times do
 use_synth :prophet
 play chord(:e3, :minor).choose, attack: 0, release: 0.08, cutoff: rrand_i(110, 130)
 sleep 0.125
 end
 end

 in_thread do
 use_random_seed 668
 with_fx :echo, phase: 0.125 do
 16.times do
 use_synth :tb303
 play chord(:e3, :minor).choose, attack: 0, release: 0.1, cutoff: rrand(50, 100)
 sleep 0.25
 end
 end
 end

 sleep 4
end

10_idm_breakbeat community

RMS× 0.60× peak× 0.61× MFCC 101 L2 dB 10.4
HIGH 72.4/100

Desktop

audio not hosted (WAVs excluded from web deploy)
peak 0.630 · RMS 0.0713 · 31.37s @ 48000Hz

Web

audio not hosted (WAVs excluded from web deploy)
peak 0.384 · RMS 0.0430 · 29.70s @ 48000Hz

Spectrogram (mel-dB · 3 panels: desktop / web / |Δ|)

community__10_idm_breakbeat spectrogram

Per-beat divergence (RMS, peak, MFCC distance per beat window)

no per-beat chart
Source (community/10_idm_breakbeat.rb)
live_loop :idm_bb do
 n = [1,2,4,8,16].choose
 sample :drum_heavy_kick, amp: 2
 sample :ambi_drone, rate: [0.25, 0.5, 0.125, 1].choose, amp: 0.25 if one_in(8)
 sample :ambi_lunar_land, rate: [0.5, 0.125, 1, -1, -0.5].choose, amp: 0.25 if one_in(8)
 sample :loop_amen, attack: 0, release: 0.05, start: 1 - (1.0 / n), rate: [1,1,1,1,1,1,-1].choose
 sleep sample_duration(:loop_amen) / n
end

11_ambient community

RMS× 0.95× peak× 0.93× MFCC 83 L2 dB 9.3
HIGH 88.3/100

Desktop

audio not hosted (WAVs excluded from web deploy)
peak 0.168 · RMS 0.0266 · 31.37s @ 48000Hz

Web

audio not hosted (WAVs excluded from web deploy)
peak 0.155 · RMS 0.0252 · 29.70s @ 48000Hz

Spectrogram (mel-dB · 3 panels: desktop / web / |Δ|)

community__11_ambient spectrogram

Per-beat divergence (RMS, peak, MFCC distance per beat window)

no per-beat chart
Source (community/11_ambient.rb)
with_fx :reverb, mix: 0.8 do
 live_loop :foo do
 sp_name = [:ambi_choir, :ambi_dark_woosh, :ambi_drone, :ambi_glass_hum, :ambi_glass_rub, :ambi_haunted_hum, :ambi_lunar_land, :ambi_piano, :ambi_sauna, :ambi_swoosh].choose
 sp_time = [1, 2].choose
 sp_rate = 1

 s = sample sp_name, cutoff: rrand(70, 130), rate: sp_rate * [0.5, 1].choose, pan: rrand(-1, 1), pan_slide: sp_time
 control s, pan: rrand(-1, 1)
 sleep sp_time
 end
end

12_echo_drama community

RMS× 0.62× peak× 0.65× MFCC 97 L2 dB 10.4
HIGH 73.8/100

Desktop

audio not hosted (WAVs excluded from web deploy)
peak 0.776 · RMS 0.1387 · 31.37s @ 48000Hz

Web

audio not hosted (WAVs excluded from web deploy)
peak 0.504 · RMS 0.0857 · 29.70s @ 48000Hz

Spectrogram (mel-dB · 3 panels: desktop / web / |Δ|)

community__12_echo_drama spectrogram

Per-beat divergence (RMS, peak, MFCC distance per beat window)

no per-beat chart
Source (community/12_echo_drama.rb)
use_synth :tb303
use_bpm 45
use_random_seed 3
use_debug false

with_fx :reverb do
 with_fx :echo, delay: 0.5, decay: 4 do
 live_loop :echoes do
 play chord([:b1, :b2, :e1, :e2, :b3, :e3].choose, :minor).choose, cutoff: rrand(40, 100), amp: 0.5, attack: 0, release: rrand(1, 2)
 sleep [0.25, 0.5, 0.5, 0.5, 1, 1].choose
 end
 end
end

13_tron_bike community

RMS× 0.60× peak× 0.59× MFCC 150 L2 dB 16.1
MID 66.3/100

Desktop

audio not hosted (WAVs excluded from web deploy)
peak 0.696 · RMS 0.1410 · 31.37s @ 48000Hz

Web

audio not hosted (WAVs excluded from web deploy)
peak 0.411 · RMS 0.0852 · 29.70s @ 48000Hz

Spectrogram (mel-dB · 3 panels: desktop / web / |Δ|)

community__13_tron_bike spectrogram

Per-beat divergence (RMS, peak, MFCC distance per beat window)

no per-beat chart
Source (community/13_tron_bike.rb)
use_random_seed 10
notes = (ring :b1, :b2, :e1, :e2, :b3, :e3)

live_loop :tron do
 with_synth :dsaw do
 with_fx :slicer, phase: [0.25, 0.125].choose do
 with_fx :reverb, room: 0.5, mix: 0.3 do
 n1 = chord(notes.choose, :minor).choose
 n2 = chord(notes.choose, :minor).choose
 p = play n1, amp: 2, release: 8, note_slide: 4, cutoff: 30, cutoff_slide: 4, detune: rrand(0, 0.2)
 control p, note: n2, cutoff: rrand(80, 120)
 end
 end
 end
 sleep 8
end

14_wob_rhyth community

RMS× 0.65× peak× 0.66× MFCC 109 L2 dB 11.0
HIGH 74.0/100

Desktop

audio not hosted (WAVs excluded from web deploy)
peak 0.475 · RMS 0.0716 · 31.37s @ 48000Hz

Web

audio not hosted (WAVs excluded from web deploy)
peak 0.313 · RMS 0.0463 · 29.70s @ 48000Hz

Spectrogram (mel-dB · 3 panels: desktop / web / |Δ|)

community__14_wob_rhyth spectrogram

Per-beat divergence (RMS, peak, MFCC distance per beat window)

no per-beat chart
Source (community/14_wob_rhyth.rb)
use_debug false

with_fx :reverb do
 live_loop :choral do
 r = (ring 0.5, 0.333, 0.6).choose
 8.times do
 sample :ambi_choir, rate: r, pan: rrand(-1, 1)
 sleep 0.5
 end
 end
end

live_loop :wub_wub do
 with_fx :wobble, phase: 2, reps: 16 do
 with_fx :echo, mix: 0.6 do
 sample :drum_heavy_kick
 sample :bass_hit_c, rate: 0.8, amp: 0.4
 sleep 1
 end
 end
end

15_rerezzed community

RMS× 0.61× peak× 0.62× MFCC 91 L2 dB 11.1
HIGH 72.9/100

Desktop

audio not hosted (WAVs excluded from web deploy)
peak 1.000 · RMS 0.2054 · 31.37s @ 48000Hz

Web

audio not hosted (WAVs excluded from web deploy)
peak 0.618 · RMS 0.1255 · 29.70s @ 48000Hz

Spectrogram (mel-dB · 3 panels: desktop / web / |Δ|)

community__15_rerezzed spectrogram

Per-beat divergence (RMS, peak, MFCC distance per beat window)

no per-beat chart
Source (community/15_rerezzed.rb)
use_debug false
notes = (scale :e1, :minor_pentatonic, num_octaves: 2).shuffle

live_loop :rerezzed do
 tick_reset
 with_fx :bitcrusher do
 s = synth :dsaw, note: :e3, sustain: 8, note_slide: 0.04, release: 0
 64.times do
 sleep 0.125
 control s, note: notes.tick
 end
 end
end

live_loop :industry do
 sample :loop_industrial, beat_stretch: 1
 sleep 1
end

live_loop :drive do
 sample :bd_haus, amp: 3
 sleep 0.5
end

16_minimal_mixer community

RMS× 0.69× peak× 0.73× MFCC 126 L2 dB 13.3
HIGH 74.5/100

Desktop

audio not hosted (WAVs excluded from web deploy)
peak 1.000 · RMS 0.1280 · 31.37s @ 48000Hz

Web

audio not hosted (WAVs excluded from web deploy)
peak 0.733 · RMS 0.0889 · 29.70s @ 48000Hz

Spectrogram (mel-dB · 3 panels: desktop / web / |Δ|)

community__16_minimal_mixer spectrogram

Per-beat divergence (RMS, peak, MFCC distance per beat window)

no per-beat chart
Source (community/16_minimal_mixer.rb)
# Community example: minimal mixer with saw bass, beep arp, kick
set_volume! 1
use_bpm 45

set :mixer, [1, 1, 1]

live_loop :mixer do
 tick
 k = 32
 prog = knit(1, k*0.5, 2, k*0.5, 3, k, 4, k*2).look

 case prog
 when 0
 set :mixer, [0,0,0]
 when 1
 set :mixer, [0,1,0]
 when 2
 set :mixer, [0,2,1]
 when 3
 set :mixer, [1,2,1]
 when 4
 set :mixer, [1,1,1]
 end

 sleep 0.25
end

with_fx :ping_pong do |pp|
 live_loop :a1 do
 tick

 density [1,1,1,1,1,1,2,4].choose do
 control pp, mix: [0,0.2,0.4].choose
 if get(:mixer)[0] == 1
 use_synth :saw
 use_synth_defaults release: [0.1,0.2,0.3].choose+0.2, cutoff: 80
 play :f2 if spread(2,7).look
 end

 control pp, mix: [0,0.2,0.4,0.6].choose
 if get(:mixer)[1] == 1
 use_synth :beep
 use_synth_defaults release: [0.1,0.2,0.4].choose, cutoff: 80
 play [:f5, :f4].choose if spread(6,7).look
 end

 control pp, mix: [0,0.2].choose
 if get(:mixer)[2] == 1
 sample :bd_fat, amp: 3 if spread(2,4).look
 end

 sleep 0.25
 end
 end
end

17_top_arp_bass community

RMS× 0.83× peak× 0.91× MFCC 160 L2 dB 17.2
HIGH 76.6/100

Desktop

audio not hosted (WAVs excluded from web deploy)
peak 0.895 · RMS 0.1361 · 31.37s @ 48000Hz

Web

audio not hosted (WAVs excluded from web deploy)
peak 0.813 · RMS 0.1126 · 29.70s @ 48000Hz

Spectrogram (mel-dB · 3 panels: desktop / web / |Δ|)

community__17_top_arp_bass spectrogram

Per-beat divergence (RMS, peak, MFCC distance per beat window)

no per-beat chart
Source (community/17_top_arp_bass.rb)
# Community example: top arp + bass + noise mixer
set_volume! 0.75
use_bpm 55

set :mixer, [1, 1, 1]

with_fx :ping_pong do |pp|
 live_loop :a1 do
 tick

 density [1,1,1,1,1,1,2,4].choose do
 control pp, mix: [0,0.2,0.4,0.6].choose
 if get(:mixer)[0] == 1
 use_synth :beep
 play :c6, release: [0.03,0.5].choose, pan: rdist(1) if spread(2,7).shuffle.look
 play :c5, release: 0.1, pan: rdist(0.75) if spread(11,16).look
 play :c4, release: 0.5, pan: rdist(0.5) if spread(7,16).look
 end

 control pp, mix: [0,0.2].choose
 if get(:mixer)[1] == 1
 use_synth :saw
 use_synth_defaults release: 0.4, cutoff: line(70, 99, steps: 16).mirror.look
 k = 32
 play :c3 + knit(0, k*2, -2, k, -4, k).look, amp: 1.25 if spread(7,12).rotate(2).look
 end

 control pp, mix: [0,0.2,0.4,0.6].choose
 if get(:mixer)[2] == 1
 use_synth :noise
 use_synth_defaults release: 0.03, cutoff: 120
 play :c4, amp: 1, pan: rdist(0.5)
 end

 sleep 0.25
 end
 end
end

18_piano_layers community

RMS× 0.72× peak× 0.86× MFCC 70 L2 dB 9.4
HIGH 82.0/100

Desktop

audio not hosted (WAVs excluded from web deploy)
peak 0.145 · RMS 0.0281 · 31.37s @ 48000Hz

Web

audio not hosted (WAVs excluded from web deploy)
peak 0.125 · RMS 0.0201 · 29.70s @ 48000Hz

Spectrogram (mel-dB · 3 panels: desktop / web / |Δ|)

community__18_piano_layers spectrogram

Per-beat divergence (RMS, peak, MFCC distance per beat window)

no per-beat chart
Source (community/18_piano_layers.rb)
# Community example: piano with layered voices
use_bpm 60
use_synth :piano

melody = [:c4, :e4, :g4, :b4, :a4, :g4, :e4, :c4]
durations = [1, 1, 1, 1, 1, 1, 1, 2]

soft_melody = [:e3, :g3, :b3, :c4, :d4, :b3, :g3, :e3]

live_loop :soft_melody do
 with_fx :reverb, mix: 0.5, room: 1 do
 melody.each do |note|
 play note, amp: 0.5
 sleep 1
 end
 end
end

live_loop :background_melody do
 with_fx :reverb, mix: 0.7, room: 1 do
 soft_melody.each do |note|
 play note, amp: 0.2
 sleep 1
 end
 end
end

live_loop :drone_continu do
 use_synth :hollow
 scale_notes = scale(:c2, :minor_pentatonic, num_octaves: 1)
 play scale_notes.tick, sustain: 0.1, release: 0, amp: 0.9
 sleep 0.1
end

19_ambient_lead community

RMS× 0.79× peak× 0.66× MFCC 43 L2 dB 5.9
HIGH 84.8/100

Desktop

audio not hosted (WAVs excluded from web deploy)
peak 0.076 · RMS 0.0112 · 31.37s @ 48000Hz

Web

audio not hosted (WAVs excluded from web deploy)
peak 0.050 · RMS 0.0089 · 29.70s @ 48000Hz

Spectrogram (mel-dB · 3 panels: desktop / web / |Δ|)

community__19_ambient_lead spectrogram

Per-beat divergence (RMS, peak, MFCC distance per beat window)

no per-beat chart
Source (community/19_ambient_lead.rb)
# Community example: evolving ambient lead with echo and reverb
live_loop :ambient_lead do
 use_bpm 60

 notes = scale(:e3, :minor, num_octaves: 3)
 n = notes.choose

 with_fx :reverb, room: 0.9, mix: 0.6 do
 with_fx :echo, phase: [0.75, 0.5, 1, 1.5].choose, decay: [6, 8, 12].choose, mix: [0.35, 0.65].choose do
 with_fx :lpf, cutoff: rrand(40, 90) do
 with_synth [:prophet, :blade, :fm, :saw, :pulse].choose do
 play n,
 attack: [4.0, 2.0, 3.0].choose,
 sustain: [2.0, 5.0, 8.0].choose,
 release: [6.0, 4.0, 9.0].choose,
 amp: [0.0625, 0.125, 0.25].choose,
 pan: rrand(-0.4, 0.4)
 end
 end
 end
 end

 sleep [1, 2, 4, 6].choose
end

20_noise_drums_saw community

RMS× 0.64× peak× 0.73× MFCC 97 L2 dB 11.2
HIGH 75.4/100

Desktop

audio not hosted (WAVs excluded from web deploy)
peak 0.837 · RMS 0.1339 · 31.37s @ 48000Hz

Web

audio not hosted (WAVs excluded from web deploy)
peak 0.615 · RMS 0.0857 · 29.70s @ 48000Hz

Spectrogram (mel-dB · 3 panels: desktop / web / |Δ|)

community__20_noise_drums_saw spectrogram

Per-beat divergence (RMS, peak, MFCC distance per beat window)

no per-beat chart
Source (community/20_noise_drums_saw.rb)
# Community example: noise drums + square bass + beep + saw melody
set_volume! 0.5
use_bpm 83

with_fx :ping_pong do |pp|
 with_fx :krush do |krush|
 with_fx :bitcrusher do |bit|
 with_fx :reverb do |rev|

 live_loop :a1 do
 tick

 sample :bd_haus, cutoff: 110, amp: 2 if spread(1,12).look
 sample :sn_generic, finish: 0.01, cutoff: 130, amp: 0.7 if spread(4,12).rotate(2).look

 mk = 32
 myfx = knit(0, mk, 1, mk, 2, mk, 1, mk).look

 case myfx
 when 0
 control pp, mix: 0.4
 control krush, mix: 0.1
 control rev, mix: 0.4
 control bit, mix: 0.1
 when 1
 use_random_seed 230
 control pp, mix: 0.2
 control krush, mix: 0.2
 end

 use_synth :chipnoise
 use_synth_defaults release: 0.2
 play :c2 if spread(1,10).look

 use_synth :bnoise
 use_synth_defaults release: line(0.01, 0.3, steps: 16).choose
 play :c2, cutoff: 70, pan: rdist(0.25) if bools(1,1,1,1,0,0,1,0,0,1,0,0).look

 sleep 0.25
 end

 live_loop :a2 do
 tick
 use_synth :beep
 use_synth_defaults release: 1
 play :c5, amp: 0.7 if spread(1,16).rotate(5).look

 k = 32
 use_synth :square
 use_synth_defaults cutoff: 70
 play :c3 + knit(0, k, -2, k).look, amp: 1 if bools(1,0,1,0).look

 sleep 0.25
 end

 live_loop :a3 do
 tick
 use_synth :saw
 use_synth_defaults release: 0.3, cutoff: line(90, 120, steps: 32).mirror.look
 k = 32
 play :c4 + knit(0, k, 2, k*0.5, 3, k*0.25, 5, k*0.25).look, pan: rdist(1) if spread(3,5).look
 sleep 0.25
 end

 end
 end
 end
end

21_electronic_experiment community

RMS× 0.60× peak× 0.58× MFCC 230 L2 dB 23.0
MID 57.5/100

Desktop

audio not hosted (WAVs excluded from web deploy)
peak 0.895 · RMS 0.1472 · 31.37s @ 48000Hz

Web

audio not hosted (WAVs excluded from web deploy)
peak 0.516 · RMS 0.0876 · 29.70s @ 48000Hz

Spectrogram (mel-dB · 3 panels: desktop / web / |Δ|)

community__21_electronic_experiment spectrogram

Per-beat divergence (RMS, peak, MFCC distance per beat window)

no per-beat chart
Source (community/21_electronic_experiment.rb)
# Community example: simple electronic track with drums, bass, melody
use_bpm 120

live_loop :drums do
 sample :bd_haus, amp: 2
 sleep 0.5
 sample :sn_dub, amp: 1.5, rate: 1.5
 sleep 0.5
end

live_loop :bass, sync: :drums do
 use_synth :tb303
 play :e2, release: 0.3, cutoff: rrand(70, 130), amp: 1.5
 sleep 0.25
 play :e2, release: 0.3, cutoff: rrand(70, 130), amp: 1.5
 sleep 0.25
 play :g2, release: 0.3, cutoff: rrand(70, 130), amp: 1.5
 sleep 0.5
end

live_loop :melody, sync: :drums do
 use_synth :prophet
 play_pattern_timed scale(:e4, :minor_pentatonic).shuffle.take(8), 0.25, release: 0.2, amp: 0.7
 sleep 2
end

22_recursive_sprout community

RMS× 1.00× peak× 0.74× MFCC 122 L2 dB 12.7
HIGH 83.0/100

Desktop

audio not hosted (WAVs excluded from web deploy)
peak 0.026 · RMS 0.0045 · 31.37s @ 48000Hz

Web

audio not hosted (WAVs excluded from web deploy)
peak 0.019 · RMS 0.0045 · 29.70s @ 48000Hz

Spectrogram (mel-dB · 3 panels: desktop / web / |Δ|)

community__22_recursive_sprout spectrogram

Per-beat divergence (RMS, peak, MFCC distance per beat window)

no per-beat chart
Source (community/22_recursive_sprout.rb)
# Community example: recursive thread-spawning note complex
define :play_complex do |note_in, velocity|
 weight = 0.8
 release = weight * 1.66

 amp1 = 0.1 * weight * (0.5 + velocity)
 amp2 = amp1 * 0.5
 amp3 = amp2 * 0.5

 notes = [note_in, note_in+12, note_in+19, note_in+24]
 amps = [amp1, amp2, amp3, amp3*0.5]
 pans = [-1, 1, -0.5, 0.5]

 notes.length.times do |i|
 play notes[i], amp: amps[i], pan: pans[i], release: release
 end
end

define :play_and_sprout do |timing, root|
 play_complex root, 0.4
 sleep timing * 0.5
end

with_fx :reverb, room: 0.8 do
 live_loop :sprouting do
 use_bpm 96
 chords_ring = (ring :c2, :c3, :g3, :f3, :c3, :f2)
 root = chords_ring.tick
 play_and_sprout 1, root
 sleep 2
 end
end

23_bass_distortion community

RMS× 0.69× peak× 0.92× MFCC 134 L2 dB 14.1
HIGH 75.8/100

Desktop

audio not hosted (WAVs excluded from web deploy)
peak 1.000 · RMS 0.1839 · 31.37s @ 48000Hz

Web

audio not hosted (WAVs excluded from web deploy)
peak 0.917 · RMS 0.1265 · 29.70s @ 48000Hz

Spectrogram (mel-dB · 3 panels: desktop / web / |Δ|)

community__23_bass_distortion spectrogram

Per-beat divergence (RMS, peak, MFCC distance per beat window)

no per-beat chart
Source (community/23_bass_distortion.rb)
# Community example: distorted bass jam with noise layers
set_volume! 2

with_fx :distortion do |d|
 with_fx :krush do |kr|
 with_fx :reverb do |r|

 live_loop :a1 do
 tick
 control kr, mix: knit(0.2, 32, 0.6, 32).look
 control d, distort: [0,0.2,0.4,0.8].choose
 control r, room: [0,0.2,0.4,0.8].choose

 ki = 16
 kick = knit(0, ki*3, 1, ki, 2, ki*4).look
 case kick
 when 0
 when 1
 sample :bd_fat, amp: 2 if spread(1,12).look
 when 2
 sample :bd_fat, amp: 2 if spread(11,32).look
 end

 k = 16
 n = :c2 + knit(0, k*2, -2, k*2).look
 n1 = n + 12
 n2 = :c5

 use_synth :sine
 use_synth_defaults release: 0.5
 play n if spread(1,16).look

 use_synth_defaults release: 0.2
 play n1, pan: rdist(0.6) if spread(7,16).look
 play n2, pan: rdist(0.6), amp: 0.25 if spread(11,16).look

 use_synth :bnoise
 use_synth_defaults release: 0.2, cutoff: rrand_i(50, 90)
 play n, pan: rdist(0.4), amp: 0.4 if spread(11,16).look

 sleep 0.25
 end
 end
 end
end

24_bhairav_tabla community

RMS× 0.27× peak× 0.49× MFCC 156 L2 dB 11.6
LOW 49.2/100

Desktop

audio not hosted (WAVs excluded from web deploy)
peak 1.000 · RMS 0.3072 · 31.37s @ 48000Hz

Web

audio not hosted (WAVs excluded from web deploy)
peak 0.485 · RMS 0.0834 · 29.70s @ 48000Hz

Spectrogram (mel-dB · 3 panels: desktop / web / |Δ|)

community__24_bhairav_tabla spectrogram

Per-beat divergence (RMS, peak, MFCC distance per beat window)

no per-beat chart
Source (community/24_bhairav_tabla.rb)
# Community example: bhairav scale with tabla rhythms
use_random_seed 15

tablas = [:tabla_tas1, :tabla_tas3, :tabla_tas2, :tabla_na, :tabla_re]

define :tabla_pattern do
 8.times.map { tablas.choose }.ring
end

define :melody_pattern do
 8.times.map { scale(:c4, :bhairav).choose }.ring
end

live_loop :tabla do
 p = tabla_pattern
 64.times do
 what = p.tick
 sample what, amp: rrand(0.7, 1.2)
 sleep 0.125
 end
end

live_loop :drone do
 use_synth [:dark_ambience, :hollow].choose
 play [:c4, :c3].choose, amp: [2,4].choose, sustain: 4, decay: 1
 sleep 4
end

live_loop :bhairav do
 use_synth :pluck
 p = melody_pattern
 8.times do
 my_length = [0.25, 0.5, 1].choose
 play p.tick, amp: rrand(2.0, 3.0), sustain: my_length, decay: my_length / 2.0
 sleep my_length
 end
end

25_piano_exercise community

RMS× 0.27× peak× 0.36× MFCC 137 L2 dB 6.7
LOW 49.8/100

Desktop

audio not hosted (WAVs excluded from web deploy)
peak 1.000 · RMS 0.3798 · 31.37s @ 48000Hz

Web

audio not hosted (WAVs excluded from web deploy)
peak 0.360 · RMS 0.1029 · 29.70s @ 48000Hz

Spectrogram (mel-dB · 3 panels: desktop / web / |Δ|)

community__25_piano_exercise spectrogram

Per-beat divergence (RMS, peak, MFCC distance per beat window)

no per-beat chart
Source (community/25_piano_exercise.rb)
# Community example: piano exercise with layered FX
use_bpm 120

with_fx :reverb, room: 0.4, mix: 0.67 do
 with_fx :distortion, distort: 0.3 do
 notes1 = (ring :c3, :e3, :f3, :g3, :a3, :g3, :f3, :e3)
 live_loop :ex1 do
 play notes1.tick, release: 0.5, amp: 0.6, pan: 0.7
 sleep 0.25
 end
 end

 with_fx :distortion, distort: 0.3 do
 notes2 = (ring :c3, :e3, :a3, :g3, :f3, :g3, :f3, :e3)
 live_loop :ex2 do
 play notes2.tick, release: 0.5, amp: 0.6, pan: -0.8
 sleep 0.25
 end
 end
end

with_fx :octaver do
 notes3 = (ring :c3, :e3, :a3, :g3).take(2)
 live_loop :ex3 do
 play notes3.tick, release: 0.72, amp: 0.16, pan: 0.25
 sleep 0.333333
 end
end

with_fx :ping_pong, mix: 0.7 do
 notes4 = (ring :c3, :d3, :c3, :e3, :a3, :g3, :f3, :e3).reverse
 live_loop :ex4 do
 play notes4.tick, release: 0.7, amp: 0.18, pan: -0.25
 sleep 0.5
 end
end

with_fx :rhpf, cutoff: 30, res: 0.3 do
 live_loop :ex5 do
 notes5 = (ring :c3, :a3, :g3, :a3, :f3, :g3, :e3, :f3).stretch(16)
 play notes5.tick, attack: 0.02, release: 0.68, amp: 0.78
 sleep 0.5
 end
end

26_note_duration_pairs community

RMS× 0.61× peak× 0.58× MFCC 77 L2 dB 8.0
HIGH 74.7/100

Desktop

audio not hosted (WAVs excluded from web deploy)
peak 0.240 · RMS 0.0354 · 31.37s @ 48000Hz

Web

audio not hosted (WAVs excluded from web deploy)
peak 0.138 · RMS 0.0216 · 29.70s @ 48000Hz

Spectrogram (mel-dB · 3 panels: desktop / web / |Δ|)

community__26_note_duration_pairs spectrogram

Per-beat divergence (RMS, peak, MFCC distance per beat window)

no per-beat chart
Source (community/26_note_duration_pairs.rb)
# Community example: iterating over note/duration pairs
a = [[:c4, 1], [:cs5, 1], [:db4, 1], [:g4, 2], [:r, 1], [[:c4, :e4, :g4, :c5], 0.75], [[:d4, :fs4, :a4, :d5], 1.25]]

a.each do |pair|
 i = pair[0]
 j = pair[1]
 play i
 sleep j
end

27_hydra_jam community

RMS× 0.60× peak× 1.00× MFCC 131 L2 dB 14.0
HIGH 74.1/100

Desktop

audio not hosted (WAVs excluded from web deploy)
peak 1.000 · RMS 0.4268 · 31.37s @ 48000Hz

Web

audio not hosted (WAVs excluded from web deploy)
peak 1.000 · RMS 0.2575 · 29.70s @ 48000Hz

Spectrogram (mel-dB · 3 panels: desktop / web / |Δ|)

community__27_hydra_jam spectrogram

Per-beat divergence (RMS, peak, MFCC distance per beat window)

no per-beat chart
Source (community/27_hydra_jam.rb)
# Community example: sonic pi jam with density and spread
set_volume! 2
use_bpm 55

with_fx :reverb, room: 0.8 do

 live_loop :a1 do
 tick
 density [1,2,1,1,2,1].choose do
 p = 16
 use_synth :saw
 use_synth_defaults release: [0.1,0.2,0.3,0.4].choose, cutoff: [70,80,90,100,110].choose, pan: rdist(0.25)

 play :c3
 play :c4 + knit(0, p, -2, p, -4, p, -5, p).look

 sleep 0.25
 end
 end

 live_loop :a2 do
 tick

 use_synth :beep
 play :c2, amp: 3 if spread(1,11).look

 p = 16
 use_synth :prophet
 use_synth_defaults cutoff: line(70, 100, steps: 5).mirror.look
 play :c5 + knit(0, p, -2, p, -4, p, -5, p).look, amp: 2 if spread(1,11).rotate(5).look

 sleep 0.25
 end

 live_loop :a3 do
 tick
 density [2,2,2,1,2].look do
 sample :sn_generic, finish: rrand(0.01, 0.2), amp: 1, pan: rdist(0.5) if spread(3,5).look
 sleep 0.25
 end
 end

end

live_loop :kick do
 tick
 sample :bd_fat, amp: 4 if spread(1,2).look
 sleep 0.25
end

28_snowflight_inspired community

RMS× 0.27× peak× 0.24× MFCC 74 L2 dB 11.5
LOW 45.9/100

Desktop

audio not hosted (WAVs excluded from web deploy)
peak 0.580 · RMS 0.1042 · 31.37s @ 48000Hz

Web

audio not hosted (WAVs excluded from web deploy)
peak 0.140 · RMS 0.0279 · 29.70s @ 48000Hz

Spectrogram (mel-dB · 3 panels: desktop / web / |Δ|)

community__28_snowflight_inspired spectrogram

Per-beat divergence (RMS, peak, MFCC distance per beat window)

no per-beat chart
Source (community/28_snowflight_inspired.rb)
# Community example: arpeggiated pattern with knit-based chord progression
set_volume! 1.5

set :a1synth, :saw
set :a1octav, 0
set :pan_a1, 0.75
set :a1_amp, 1

use_bpm 88

with_fx :reverb, room: 0.7 do
 live_loop :a1 do
 tick
 use_synth get[:a1synth]
 use_synth_defaults release: 0.3 + line(0, 0.2, steps: 16).look, cutoff: line(70, 110, steps: 128).mirror.look

 n = :c3
 k = 6
 n1 = [0, 7, 11]
 n2 = [2, 9, 11]
 n3 = [4, 7, 11]

 npat = knit(n1, k, n2, k, n3, k).look

 play n + npat.look + get[:a1octav], pan: get[:pan_a1], amp: get[:a1_amp]
 sleep 0.25
 end
end
in-thread-forum (20 fixtures)

29_sacramento_storm in-thread-forum

RMS× peak× MFCC L2 dB
INCONCLUSIVE /100

Desktop

audio not hosted (WAVs excluded from web deploy)
peak 0.000 · RMS 0.0000 · 31.37s @ 48000Hz

Web

audio not hosted (WAVs excluded from web deploy)
peak 0.000 · RMS 0.0000 · 29.70s @ 48000Hz

Spectrogram (mel-dB · 3 panels: desktop / web / |Δ|)

in-thread-forum__29_sacramento_storm spectrogram

Per-beat divergence (RMS, peak, MFCC distance per beat window)

no per-beat chart
Source (in-thread-forum/29_sacramento_storm.rb)
# Source: https://in-thread.sonic-pi.net/t/a-piece-from-gemini-google-a-i/9970
# Author: hitsware
# Title: A piece from Gemini (Google A.I.)
# Captured: 2026-04-24

# Randomly introduce a burst of tension
if (one_in 6)

 # Step A: The Static (396Hz, Perfect 5th)
 # Simulates the build of electrical charge
 with_fx :bitcrusher do
 use_synth :square
 play 64, release: 0.1, amp: 0.3 # Sharp, bright, stable
 sleep 0.1
 end

 # Step B: The Hail "Clean Slate" Sweep
 # Releasing the mathematical tension into microtones
 use_synth :prophet # A synth with rich harmonics

 # Play a series of 12 notes, rapidly ascending,
 # but each one is randomly detuned by up to 120 cents.
 tick_reset
 12.times do
 # Notes 60 (C) up to 71 (B), with random microtonal offsets.
 play (60 + tick), detune: rrand(-120, 120), release: 0.05, amp: 0.15
 sleep 0.0625 # Very fast 1/16th notes
 end

 # A quiet, stable release back to our fundamental
 # representing the ground covered in hail.
 use_synth :tri
 play 57, release: 10, amp: 0.2

end

# Most of the time, the storm is just building (empty space)
sleep rrand(2, 8)

30_atmospheric_drone in-thread-forum

RMS× 0.36× peak× 0.34× MFCC 119 L2 dB 9.0
MID 54.5/100

Desktop

audio not hosted (WAVs excluded from web deploy)
peak 0.481 · RMS 0.0674 · 31.37s @ 48000Hz

Web

audio not hosted (WAVs excluded from web deploy)
peak 0.162 · RMS 0.0240 · 29.70s @ 48000Hz

Spectrogram (mel-dB · 3 panels: desktop / web / |Δ|)

in-thread-forum__30_atmospheric_drone spectrogram

Per-beat divergence (RMS, peak, MFCC distance per beat window)

no per-beat chart
Source (in-thread-forum/30_atmospheric_drone.rb)
# Source: https://in-thread.sonic-pi.net/t/evolving-atmospheric-drone-with-harmonized-melodies-in-sonic-pi/9934
# Author: Blitzfury
# Title: Evolving Atmospheric Drone with Harmonized Melodies in Sonic Pi
# Captured: 2026-04-24

use_bpm 60
use_synth :piano

melody = [:c4, :e4, :g4, :b4, :a4, :g4, :e4, :c4]
durations = [1, 1, 1, 1, 1, 1, 1, 2]

soft_melody = [:e3, :g3, :b3, :c4, :d4, :b3, :g3, :e3]
soft_durations = [1, 1, 1, 1, 1, 1, 1, 2]

third_voice = [:g2, :a2, :b2, :c3, :d3, :b2, :a2, :g2]
third_durations = durations

notes_played_main = 0
notes_played_bg = 0
notes_played_third = 0

amp_min_main = 0.2
amp_max_main = 1.0
amp_min_bg = 0.1
amp_max_bg = 0.3
amp_third = 0.15

live_loop :soft_melody do
 with_fx :reverb, mix: 0.5, room: 1 do
 melody.zip(durations).each do |note, dur|
 amp_range = (amp_max_main - amp_min_main) / 2.0
 amp_offset = amp_min_main + amp_range
 amp = amp_offset + amp_range * Math.sin(notes_played_main * Math::PI / 8)
 play note, amp: amp
 sleep dur
 notes_played_main += 1
 end
 end
end

live_loop :background_melody do
 with_fx :reverb, mix: 0.7, room: 1 do
 soft_melody.zip(soft_durations).each do |note, dur|
 amp_range = (amp_max_bg - amp_min_bg) / 2.0
 amp_offset = amp_min_bg + amp_range
 amp = amp_offset + amp_range * Math.sin(notes_played_bg * Math::PI / 12)
 play note, amp: amp
 sleep dur
 notes_played_bg += 1
 end
 end
end

live_loop :third_voice do
 sleep durations.sum / 2
 with_fx :reverb, mix: 0.4, room: 0.7 do
 third_voice.zip(third_durations).each do |note, dur|
 play note, amp: amp_third, sustain: dur * 0.9, release: dur * 0.1
 sleep dur
 notes_played_third += 1
 end
 end
end

live_loop :drone_continu do
 use_synth :hollow
 base_note = 36
 dur = 0.1
 tick_count = tick

 scale_notes = scale(base_note, :minor_pentatonic, num_octaves: 1)
 note = scale_notes[tick_count % scale_notes.length]
 amp_mod = 0.9 + 0.1 * Math.sin(tick_count * Math::PI / 150 + Math::PI / 3)

 play note, sustain: dur, release: 0, amp: amp_mod
 sleep dur
end

31_bass_noise_jam in-thread-forum

RMS× 0.68× peak× 1.00× MFCC 155 L2 dB 16.0
HIGH 74.2/100

Desktop

audio not hosted (WAVs excluded from web deploy)
peak 1.000 · RMS 0.3150 · 31.37s @ 48000Hz

Web

audio not hosted (WAVs excluded from web deploy)
peak 1.000 · RMS 0.2138 · 29.70s @ 48000Hz

Spectrogram (mel-dB · 3 panels: desktop / web / |Δ|)

in-thread-forum__31_bass_noise_jam spectrogram

Per-beat divergence (RMS, peak, MFCC distance per beat window)

no per-beat chart
Source (in-thread-forum/31_bass_noise_jam.rb)
# Source: https://in-thread.sonic-pi.net/t/bass-and-noise-jam-in-sonic-pi/9878
# Author: Relaxnow
# Title: Bass and noise jam in Sonic Pi
# Captured: 2026-04-24

set_volume! 2

with_fx :distortion do |d|
 with_fx :krush do |kr|
 with_fx :reverb do |r|

 live_loop :a1 do
 tick
 kn = 32
 control kr, res: [0,0,0,0,0.2,0.4,0.8].choose, pre_mix: [0,0,0,0.2,0.4,0.8].choose, mix: knit(0.2,kn, 0.6,kn).look
 control d, distort: [0,0.2,0.4,0.8].choose, pre_mix: [0.2,0.4,0.8].choose
 control r, room: [0,0.2,0.4,0.8].choose, pre_mix: [0.2,0.4,0.8].choose

 ki = 16
 kick = knit(0,ki*3, 1,ki, 2,ki*4).look
 case kick
 when 0
 when 1
 sample :bd_fat, amp: 2 if (spread(1,12)*1+spread(3,4).rotate(1)).look
 when 2
 sample :bd_fat, amp: 2 if spread(11,32).look
 end

 k = 16
 n = :c2+knit(0,k*2,-2,k*2).look
 n1 = n+12

 hi = 16
 highnotes = 0
 highnotes = knit(0,hi*3, 1,hi*4,2, hi*4).look
 case highnotes
 when 0
 when 1
 n2 = :c5
 when 2
 nn = 4
 n2 = :c5+knit(0,nn*6, 7,nn*2, 5,nn, -2,nn).look
 end

 use_synth :sine
 use_synth_defaults release: [0.1,0.2,0.4].choose+0.4
 play n if spread(1,16).look

 use_synth_defaults release: [0.1,0.2,0.4].choose
 play n1+line(0,0.4,steps: 8).choose, pan: rdist(0.6) if spread(7,16).look

 use_synth_defaults release: [0.1,0.2,0.4].choose
 play n2+line(0,0.3,steps: 8).choose, pan: rdist(0.6), amp: 0.25 if spread(11,16).look

 use_synth :bnoise
 use_synth_defaults release: [0.1,0.2,0.4].choose, cutoff: rrand_i(50,90)
 play n+line(0,0.2,steps: 8).choose, pan: rdist(0.4), amp: 0.4 if spread(11,16).look

 sleep 0.25
 end

 end
 end
end

32_morning_vibe in-thread-forum

RMS× 0.27× peak× 0.27× MFCC 227 L2 dB 21.0
LOW 33.4/100

Desktop

audio not hosted (WAVs excluded from web deploy)
peak 0.768 · RMS 0.1120 · 31.37s @ 48000Hz

Web

audio not hosted (WAVs excluded from web deploy)
peak 0.205 · RMS 0.0303 · 29.78s @ 48000Hz

Spectrogram (mel-dB · 3 panels: desktop / web / |Δ|)

in-thread-forum__32_morning_vibe spectrogram

Per-beat divergence (RMS, peak, MFCC distance per beat window)

no per-beat chart
Source (in-thread-forum/32_morning_vibe.rb)
# Source: https://in-thread.sonic-pi.net/t/morning-vibe-morning-motivation-gratitude-manifestation/9872
# Author: LwinLwin
# Title: Morning Vibe, morning motivation, gratitude, manifestation
# Captured: 2026-04-24

use_bpm 98
use_synth :piano

#Chord progression
define :chords do
 play chord(:C4, :major)
 sleep 1
 play chord(:A3, :minor)
 sleep 1
 play chord(:F4, :major)
 sleep 1
 play chord(:G3, :major)
 sleep 1
end

#Drum pattern
define :drums do
 sample :bd_haus, amp: 1
 sleep 0.5
 sample :sn_dolf, amp: 0.6
 sleep 0.5
 sample :bd_haus, amp: 1
 sleep 0.5
 sample :sn_dolf, amp: 0.6
 sleep 0.5
end

#Melody pattern
define :melody do
 use_synth :pluck
 play_pattern_timed [:E5, :G5, :A5, :G5, :F5, :E5, :D5], [0.5,0.5,0.5,0.5,0.5,0.5,1]
end

#Background pad
define :pad_bg do
 use_synth :hollow
 play :C4, sustain: 4, amp: 0.3
 sleep 4
end

#Main Loop
live_loop :morning do
 in_thread { chords }
 in_thread { drums }
 in_thread { melody }
 in_thread { pad_bg }
 sleep 4
end

33_dub_reverb in-thread-forum

RMS× 1.79× peak× 0.72× MFCC 149 L2 dB 15.2
MID 67.2/100

Desktop

audio not hosted (WAVs excluded from web deploy)
peak 1.000 · RMS 0.0633 · 31.37s @ 48000Hz

Web

audio not hosted (WAVs excluded from web deploy)
peak 0.717 · RMS 0.1135 · 29.70s @ 48000Hz

Spectrogram (mel-dB · 3 panels: desktop / web / |Δ|)

in-thread-forum__33_dub_reverb spectrogram

Per-beat divergence (RMS, peak, MFCC distance per beat window)

no per-beat chart
Source (in-thread-forum/33_dub_reverb.rb)
# Source: https://in-thread.sonic-pi.net/t/trying-to-make-dub-reverb-from-underdog-tutorial/9867
# Author: Relaxnow
# Title: Trying to make Dub reverb from Underdog tutorial
# Captured: 2026-04-24

set :mysynth, :saw
set :mysynth, :beep

set_volume! 0.5

with_fx :gverb do |gv|

 with_fx :ping_pong do |pp|
 live_loop :a1 do
 use_synth get[:mysynth]

 tick
 control gv, pre_mix: [0,0,0,0.74].look
 control pp, pre_mix: [0,0,0,0.75].look
 r = s = d = [0.01,0.1,0.05].choose
 play :c5+[0,3,7,-2].choose, release: r, sustain: s, decay: d, pan: rdist(0.75), amp: 0.8
 sleep [0.25,0.125,0.5,1].choose
 end
 end

 live_loop :a2 do
 use_synth get[:mysynth]
 tick
 control gv, mix: [0,0,0,0,0.4].look
 r = s = d = [0.01,0.1,0.05].choose+0.02
 play :c3+knit(0,16, -5,16, -4,8, 0,8).look, release: r, sustain: s, decay: d, pan: rdist(0.25), amp: 0.75
 sleep [0.25,0.125,0.5,1].choose
 end
end

live_loop :a3 do
 tick
 sample :bd_fat, amp: 2 if spread(2,4).look
 sleep 0.25
end

34_kx5_escape_cover in-thread-forum

RMS× 0.68× peak× 0.90× MFCC 103 L2 dB 11.5
HIGH 78.4/100

Desktop

audio not hosted (WAVs excluded from web deploy)
peak 1.000 · RMS 0.2561 · 31.37s @ 48000Hz

Web

audio not hosted (WAVs excluded from web deploy)
peak 0.899 · RMS 0.1738 · 29.70s @ 48000Hz

Spectrogram (mel-dB · 3 panels: desktop / web / |Δ|)

in-thread-forum__34_kx5_escape_cover spectrogram

Per-beat divergence (RMS, peak, MFCC distance per beat window)

no per-beat chart
Source (in-thread-forum/34_kx5_escape_cover.rb)
# Source: https://in-thread.sonic-pi.net/t/quick-cover-of-kx5-escape-feat-hayla-official-lyric-video/9861
# Author: Relaxnow
# Title: Quick cover of "Kx5 - Escape (feat. Hayla) [Official Lyric Video]"
# Captured: 2026-04-24

set_volume! 2
use_bpm 126-10
with_fx :reverb, room: 0.5 do

 live_loop :a1 do
 tick
 sample :bd_fat, amp: 1.5 if spread(1,4).look
 sample :perc_snap, finish: 0.09, amp: 0.5 if bools(0,0,0,0,1,0,0,0).look
 sample :hat_cab, rpitch: 12+12+12, amp: 0.75 if bools(0,0,1,0,0,0,1,0).look

 cho = 1
 a = 4
 cho = knit(1,5*a, 2,2*a, 3,4*a, 4,2*a, 5,2*a, 6,7*a).look
 case cho
 when 1
 c = [:f3,:a3,:c4]
 when 2
 c = [:d3,:g3,:b3]
 when 3
 c = [:e3,:a3,:c4]
 when 4
 c = [:d3,:f3,:a3]
 when 5
 c = [:e3,:g3,:b3]
 when 6
 c = [:f3,:a3,:c4]
 end

 mysynth = 2
 case mysynth
 when 1
 use_synth :piano
 use_synth_defaults release: 4, sustain: 2
 play c if spread(cho,32).look
 when 2
 use_synth :saw
 use_synth_defaults release: line(0.5,1.2, steps: 16+12).mirror.look, cutoff: line(40,120,steps: 64).mirror.look
 play c, pan: rdist(0.25) if spread(11,32).look

 use_synth :square
 use_synth_defaults release: line(0.5,0.7, steps: 16+12).mirror.look, cutoff: line(40,120,steps: 64+16).mirror.look
 k = 32
 play c.look+12, amp: 0.5, pan: rdist(0.5) if spread(22,32).look and one_in(knit(0,k, 4,k, 1,k*3).look)

 use_synth :square
 use_synth_defaults release: line(0.7,0.9,steps: 12).look, cutoff: line(60,90,steps: 128).look
 play c.take(1).look-12+0.01, pan: 0.25, amp: 0.7 if spread(11,32).look
 use_synth :saw
 play c.take(1).look-12-12-0.01, pan: -0.25 if spread(11,32).look
 end

 sleep 0.25
 end
end

35_evolving_arp in-thread-forum

RMS× 0.71× peak× 0.95× MFCC 97 L2 dB 11.5
HIGH 80.3/100

Desktop

audio not hosted (WAVs excluded from web deploy)
peak 1.000 · RMS 0.2000 · 31.37s @ 48000Hz

Web

audio not hosted (WAVs excluded from web deploy)
peak 0.948 · RMS 0.1418 · 29.70s @ 48000Hz

Spectrogram (mel-dB · 3 panels: desktop / web / |Δ|)

in-thread-forum__35_evolving_arp spectrogram

Per-beat divergence (RMS, peak, MFCC distance per beat window)

no per-beat chart
Source (in-thread-forum/35_evolving_arp.rb)
# Source: https://in-thread.sonic-pi.net/t/250514-evolving-arp-sketch-yt/9690
# Author: Relaxnow
# Title: 250514 Evolving arp sketch YT
# Captured: 2026-04-24

set_volume! 2

with_fx :reverb, room: 0.9 do

 live_loop :a1 do
 tick

 # kick
 sample :bd_fat, amp: 2 if spread(1,4).look

 # bass
 use_synth :saw
 use_synth_defaults cutoff: 80+line(-10,50,steps: 64).mirror.look, release: 0.1+line(-0.05,0.1,steps: 32).mirror.look
 j = 32
 play :c3+knit(0,j*2, -2,j, -5,j, -4,j).look if spread(5,7).rotate(rrand_i(0,5)).look

 # arp
 use_synth knit(:saw, 128, :square, 128, :pluck, 128, :dtri,128).look

 i = 32
 r = 16
 play :c5+[0,knit(3,i,2,i,5,i,3,i).look,7].look, pan: rdist(knit(0,r, 0.25,r, 0.5,r,0.75,r, 1,r).mirror.look) if spread(3,5).rotate(rrand_i(0,0)).look

 sleep 0.125

 end

 live_loop :a2 do
 tick
 use_synth_defaults cutoff: 80+line(-10,50,steps: 64).mirror.look, release: 0.1+line(-0.05,0.1,steps: 32).mirror.look
 n = :c6

 s = 0.125
 q = s*4

 pat = 0
 p = 4
 pat = knit(1,p,2,p,3,p,4,p).look
 pat = knit(0,p*4, 1,p,2,p,3,p,4,p).look

 case pat
 when 0
 when 1
 notes = [n, n, n+2]
 play notes.look
 when 2
 notes = [n, n, n+3]
 play notes.look
 when 3
 notes = [n, n, n+7]
 play notes.look
 when 4
 notes = [n, n, n+5]
 play notes.look
 end
 sleep [q*4-s*2,s*4,q*8-s*2].look
 end
end

36_fun_with_functions in-thread-forum

RMS× 0.55× peak× 0.58× MFCC 150 L2 dB 17.3
MID 63.4/100

Desktop

audio not hosted (WAVs excluded from web deploy)
peak 0.295 · RMS 0.0703 · 31.37s @ 48000Hz

Web

audio not hosted (WAVs excluded from web deploy)
peak 0.171 · RMS 0.0388 · 29.78s @ 48000Hz

Spectrogram (mel-dB · 3 panels: desktop / web / |Δ|)

in-thread-forum__36_fun_with_functions spectrogram

Per-beat divergence (RMS, peak, MFCC distance per beat window)

no per-beat chart
Source (in-thread-forum/36_fun_with_functions.rb)
# Source: https://in-thread.sonic-pi.net/t/fun-with-functions/9641
# Author: brendanmac
# Title: Fun With Functions
# Captured: 2026-04-24

use_synth :piano

define :cars do |nn, dd|
 play_pattern_timed [nn, nn, nn+7], [dd, dd, dd*2]
end

t = 0 #change me +/-

live_loop :alex1 do
 cars 60+t, 0.5
end

live_loop :alex2, delay: 8.25 do
 cars 65+t, 0.5
end

37_semitone_array in-thread-forum

RMS× 0.60× peak× 0.59× MFCC 85 L2 dB 10.5
HIGH 72.6/100

Desktop

audio not hosted (WAVs excluded from web deploy)
peak 0.180 · RMS 0.0178 · 31.37s @ 48000Hz

Web

audio not hosted (WAVs excluded from web deploy)
peak 0.105 · RMS 0.0107 · 29.70s @ 48000Hz

Spectrogram (mel-dB · 3 panels: desktop / web / |Δ|)

in-thread-forum__37_semitone_array spectrogram

Per-beat divergence (RMS, peak, MFCC distance per beat window)

no per-beat chart
Source (in-thread-forum/37_semitone_array.rb)
# Source: https://in-thread.sonic-pi.net/t/simple-semitone-array-for-the-rate-opt/9634
# Author: brendanmac
# Title: Simple semitone array for the rate opt
# Captured: 2026-04-24

a = []
13.times do
 y = tick
 x = 2**(y/12.0)
 a.push(x)
end
puts a
sleep 1
tick_reset

8.times do
 maj = [0,2,4,5,7,9,11,12].tick
 sample :bass_thick_c, onset: 0, sustain: 0.4, rate: a[maj]
 sleep 0.5
end

38_synthwave in-thread-forum

RMS× 0.62× peak× 0.68× MFCC 133 L2 dB 14.8
HIGH 70.1/100

Desktop

audio not hosted (WAVs excluded from web deploy)
peak 0.748 · RMS 0.1015 · 31.37s @ 48000Hz

Web

audio not hosted (WAVs excluded from web deploy)
peak 0.509 · RMS 0.0633 · 29.70s @ 48000Hz

Spectrogram (mel-dB · 3 panels: desktop / web / |Δ|)

in-thread-forum__38_synthwave spectrogram

Per-beat divergence (RMS, peak, MFCC distance per beat window)

no per-beat chart
Source (in-thread-forum/38_synthwave.rb)
# Source: https://in-thread.sonic-pi.net/t/a-synthwave-music/9617
# Author: Tianjh
# Title: A synthwave music
# Captured: 2026-04-24

use_bpm 140
live_loop :metronome do
 cue :tick
 sleep 1
end

live_loop :drum do
 sample :bd_zum
 sleep 1
 sample :hat_zild
 sleep 1
 sample :sn_zome, amp: 3
 sleep 1
 sample :hat_zild
 sleep 1
end

live_loop :chor do
 use_synth :prophet
 play chord(:f3, :M), release: 3, amp: 3
 sleep 3
 play chord(:a3, :m), release: 5, amp: 3
 sleep 5
 play chord(:c4, :M), release: 3, amp: 3
 sleep 3
 play chord(:g3, :M), release: 5, amp: 3
 sleep 5
end

live_loop :chor2 do
 use_synth :saw
 play chord(:f3, :M), release: 3, amp: 1
 sleep 3
 play chord(:a3, :m), release: 5, amp: 1
 sleep 5
 play chord(:c4, :M), release: 3, amp: 1
 sleep 3
 play chord(:g3, :M), release: 5, amp: 1
 sleep 5
end

live_loop :arp, delay: 32 do
 use_synth :chiplead
 nooote = [:c4, :e4, :g4, :e4]
 nooote.each do |n|
 play n
 sleep 0.5
 end
end

live_loop :whatisthis, delay: 64 do
 use_synth :square
 sleep 5
 play :c6, release: 1.5, amp: 1.5
 sleep 1
 play :b5, release: 1.5, amp: 1.5
 sleep 1
 play :c6, release: 1.5, amp: 1.5
 sleep 4
 play :d6, release: 1.5, amp: 1.5
 sleep 2
 play :c6, release: 1.5, amp: 1.5
 sleep 1
 play :b5, release: 1.5, amp: 1.5
 sleep 1
 play :c6, release: 1.5, amp: 1.5
 sleep 1
end

39_blues_machine in-thread-forum

RMS× 0.52× peak× 0.38× MFCC 142 L2 dB 14.5
MID 59.8/100

Desktop

audio not hosted (WAVs excluded from web deploy)
peak 1.000 · RMS 0.1219 · 31.37s @ 48000Hz

Web

audio not hosted (WAVs excluded from web deploy)
peak 0.381 · RMS 0.0639 · 29.70s @ 48000Hz

Spectrogram (mel-dB · 3 panels: desktop / web / |Δ|)

in-thread-forum__39_blues_machine spectrogram

Per-beat divergence (RMS, peak, MFCC distance per beat window)

no per-beat chart
Source (in-thread-forum/39_blues_machine.rb)
# Source: https://in-thread.sonic-pi.net/t/blues-machine-12-bar-blues-variations/9619
# Author: rothen_s
# Title: Blues Machine - 12-Bar-Blues-Variations
# Captured: 2026-04-24

use_bpm 80
use_random_seed 70

# Chord diffs relative to the root (halftone steps)
g_chord_diffs = [0, [0,5], 0, 0,
 5, 5, 0, 0,
 7, 5, 0, [0,7]]
g_licks = {
 lick_pause:
 [[:r],[4]],
 lick_cjamblues_1:
 [[3,0,3,0], [0.5,0.5,0.5,2.5]],
 lick_cjamblues_2:
 [[7,5,3,0],[0.5,0.5,0.5,2.5]],
 lick_cjamblues_3:
 [[:r, 0],[2,2]],
 lick_cjamblues_4:
 [[5,3,0,:r],[1,0.5,1.5,1]],
 lick_cjamblues_5:
 [[-2,-2,0,3,0,-2, 0],[0.5,0.5,1.0,0.5,0.5,0.5,0.5]]
}

g_max = g_licks.length - 1

g_sleep = 4
g_times = 1
g_grundton = :C3
g_note = g_grundton

# Drums
with_fx :reverb, room: 0.6, mix: 0.3 do
 live_loop :ll_drums do
 with_fx :compressor, threshold: 0.2, slope_above: 0.5 do
 sample :drum_bass_hard, amp: [1.3,1.5,1.7].choose
 sleep 0.5
 p_times = 1
 if one_in 4 then
 p_times = [1,2,3].choose
 end
 p_times.times do
 sample [:drum_snare_soft, :drum_snare_hard].choose, amp: [1.1,1.4,1.6].choose
 sleep 0.5 / p_times
 end
 end
 end
end

# Chords
live_loop :ll_chords, delay: 8 do
 use_synth :piano
 use_synth_defaults decay: g_sleep, amp: 2

 g_chord_diffs.each do |p_diff|
 if p_diff.kind_of?(Array) then
 l_diff = p_diff.choose
 else
 l_diff = p_diff
 end
 g_note = g_grundton + l_diff
 if l_diff == 0 then
 l_chord = (chord g_note, '6')
 else
 l_chord = (chord g_note, '7')
 end
 g_times.times do
 play l_chord
 sleep g_sleep
 end
 end
end

# Licks
with_fx :reverb, room: 0.6, mix: 0.3 do
 live_loop :ll_licks, delay: 8 do
 use_synth :pluck
 use_synth_defaults amp: 4, coef: [0.2,0.3,0.4].choose, sustain: 0.5
 temp_num = rrand_i(0, g_max)
 p_lick = g_licks.values[temp_num]
 l_notes = p_lick[0].map {|a| a + 12 + note_info(g_note).midi_note}
 play_pattern_timed l_notes, p_lick[1]
 end
end

# Bass
live_loop :ll_bass, delay: 4 do
 use_synth :bass_foundation
 l_note = g_note - 24
 play l_note, release: 0.5, amp: 1.5
 sleep 0.5
 play l_note + 7, release: 0.5, amp: 1.2
 sleep 0.5
 play l_note + 12, release: 0.5, amp: 1
 sleep 0.5
 play l_note + 7, release: 0.5, amp: 1.3
 sleep 0.5
end

40_choose_generator in-thread-forum

RMS× 0.61× peak× 0.61× MFCC 138 L2 dB 18.5
MID 65.7/100

Desktop

audio not hosted (WAVs excluded from web deploy)
peak 0.539 · RMS 0.1265 · 31.37s @ 48000Hz

Web

audio not hosted (WAVs excluded from web deploy)
peak 0.327 · RMS 0.0766 · 29.70s @ 48000Hz

Spectrogram (mel-dB · 3 panels: desktop / web / |Δ|)

in-thread-forum__40_choose_generator spectrogram

Per-beat divergence (RMS, peak, MFCC distance per beat window)

no per-beat chart
Source (in-thread-forum/40_choose_generator.rb)
# Source: https://in-thread.sonic-pi.net/t/a-choose-based-automatic-music-generator/9594
# Author: Tianjh
# Title: A "Choose"-Based Automatic Music Generator
# Captured: 2026-04-24

use_random_seed 0
use_bpm rrand(90, 130)
synths = [:piano, :saw, :square, :tri, :supersaw]
use_synth choose(synths)
m = [:g3, :a3, :b3, :c4, :d4, :e4, :f4, :g4]
times = [0.5, 1]
c = choose(m)
t = choose(times)

in_thread do
 loop do
 sample :bd_ada
 sleep 1
 end
end

loop do
 play c
 if c == :c4 || c == :e4 || c == :g3 || c == :g4 then
 c = choose([m[0], m[3], m[5], m[7]])
 elsif c == :f4 || c == :d4 || c == :b3
 c = choose([m[5], m[4], m[2]])
 elsif c == :a3
 c = choose([m[0], m[2], m[3]])
 end
 sleep choose(times)
end

41_ocean_ambience in-thread-forum

RMS× 0.60× peak× 0.61× MFCC 115 L2 dB 12.5
HIGH 70.4/100

Desktop

audio not hosted (WAVs excluded from web deploy)
peak 0.261 · RMS 0.0428 · 31.37s @ 48000Hz

Web

audio not hosted (WAVs excluded from web deploy)
peak 0.158 · RMS 0.0258 · 29.70s @ 48000Hz

Spectrogram (mel-dB · 3 panels: desktop / web / |Δ|)

in-thread-forum__41_ocean_ambience spectrogram

Per-beat divergence (RMS, peak, MFCC distance per beat window)

no per-beat chart
Source (in-thread-forum/41_ocean_ambience.rb)
# Source: https://in-thread.sonic-pi.net/t/ocean-ambience-danks-first-submission/9580
# Author: dank
# Title: Ocean Ambience - Dank's First Submission
# Captured: 2026-04-24

use_debug false
use_bpm 70

# Ambient background
live_loop :ocean_ambience do
 sample :ambi_lunar_land, rate: 0.5, amp: 0.4
 sleep 16
end

# Bubbling sounds
live_loop :bubbles, delay: 4 do
 use_synth :beep
 use_synth_defaults attack: 0.01, release: 0.2, amp: 0.2

 with_fx :reverb, room: 0.8, mix: 0.6 do
 with_fx :echo, mix: 0.3, phase: 0.5 do
 note = scale(:e3, :minor_pentatonic).choose
 pan_value = rrand(-0.8, 0.8)
 sleep_time = [0.25, 0.5, 0.75].choose

 play note, pan: pan_value
 sleep sleep_time
 end
 end
end

# Pulsating rhythm
live_loop :jellyfish_pulse do
 use_synth :dtri

 with_fx :slicer, phase: 0.5, wave: 1, mix: 0.3 do
 with_fx :reverb, room: 0.9, mix: 0.5 do
 chords = [
 chord(:e3, :m9),
 chord(:c3, :maj9),
 chord(:a2, :m9),
 chord(:d3, :maj9)
 ]
 play_chord chords.tick, attack: 0.1, release: 4, amp: 0.5
 sleep 4
 end
 end
end

# Flowing tendrils
live_loop :tendrils, delay: 8 do
 use_synth :blade
 use_synth_defaults attack: 2, release: 6, amp: 0.3

 notes = (scale :e4, :minor_pentatonic, num_octaves: 2)
 current_note = notes.choose
 pan_value = rrand(-0.5, 0.5)
 sleep_duration = [4, 6, 8].choose

 with_fx :hpf, cutoff: 60 do
 with_fx :reverb, room: 0.9, mix: 0.7 do
 play current_note, pan: pan_value
 sleep sleep_duration
 end
 end
end

# Gentle bass current
live_loop :deep_current, delay: 16 do
 use_synth :fm
 use_synth_defaults attack: 0.5, release: 7, amp: 0.6

 bass_notes = [:e2, :c2, :a1, :d2]

 with_fx :lpf, cutoff: 80 do
 play bass_notes.tick, release: 7
 sleep 8
 end
end

# Occasional shimmer
live_loop :shimmer, delay: 24 do
 use_synth :pretty_bell

 with_fx :reverb, room: 0.9, mix: 0.8 do
 with_fx :gverb, mix: 0.6 do
 sleep 16
 play_pattern_timed scale(:e5, :minor_pentatonic, num_octaves: 1),
 [0.25, 0.5, 0.25], amp: 0.2, pan: rrand(-0.7, 0.7)
 sleep 16
 end
 end
end

# Water droplets
live_loop :droplets, delay: 32 do
 sample :drum_cymbal_soft, rate: 1.5, amp: 0.1 if one_in(4)
 sample :elec_blip, rate: 1.2, amp: 0.1 if one_in(3)
 sample :elec_blip2, rate: 1.5, amp: 0.1 if one_in(5)
 sleep 0.5
end

42_first_music in-thread-forum

RMS× 0.60× peak× 0.57× MFCC 168 L2 dB 19.2
MID 63.2/100

Desktop

audio not hosted (WAVs excluded from web deploy)
peak 0.292 · RMS 0.0280 · 31.37s @ 48000Hz

Web

audio not hosted (WAVs excluded from web deploy)
peak 0.168 · RMS 0.0169 · 29.70s @ 48000Hz

Spectrogram (mel-dB · 3 panels: desktop / web / |Δ|)

in-thread-forum__42_first_music spectrogram

Per-beat divergence (RMS, peak, MFCC distance per beat window)

no per-beat chart
Source (in-thread-forum/42_first_music.rb)
# Source: https://in-thread.sonic-pi.net/t/the-first-music-i-made-by-sonic-pi/9572
# Author: Tianjh
# Title: The first music i made by sonic pi
# Captured: 2026-04-24

use_bpm 120
use_synth :saw

live_loop :metronome do
 cue :tick
 sleep 1
end

live_loop :sawchord do
 play chord(:c4, :m7), amp: 0.5
 sleep 1.5
 play chord(:c4, :m7), amp: 0.5
 sleep 0.5
 play chord(:g3, :m7), amp: 0.5
 sleep 0.75
 play chord(:g3, :m7), amp: 0.5
 sleep 0.75
 play chord(:f3, :m7), amp: 0.5
 sleep 2
 play chord(:f3, :m7), amp: 0.5
 sleep 0.5
 play chord(:g3, :m7), amp: 0.5
 sleep 1
 play chord(:g3, :m7), amp: 0.5
 sleep 1
end

live_loop :drums, delay: 32 do
 sample :bd_ada, rate: 1.3
 sample :hat_snap, amp: 0.3
 sleep 0.5
 sample :hat_snap, amp: 0.6
 sleep 0.5
 sample :sn_zome, amp: 0.7, rate: 1.2
 sample :hat_snap, amp: 0.3
 sleep 0.5
 sample :hat_snap, amp: 0.6
 sleep 0.5
end

m = [:bb4, :g4, :f4, :eb4]

live_loop :meldy, delay: 32 do
 use_synth :chiplead
 4.times do
 play m[0], amp: 0.5
 sleep 0.5
 end
 2.times do
 play m[2], amp: 0.5
 sleep 0.5
 end
 play m[1], amp: 0.5
 sleep 0.5
 play m[3], amp: 0.5
 sleep 1
 3.times do
 play m[3], amp: 0.5
 sleep 0.5
 end
 2.times do
 play m[2], amp: 0.5
 sleep 1
 end
end

live_loop :padd, delay: 64 do
 use_synth :chipbass
 play m[0], release: 2, amp: 0.8
 sleep 2
 play m[2], release: 1.5, amp: 0.8
 sleep 1.5
 play m[3], release: 2.5, amp: 0.8
 sleep 2.5
 play m[2], release: 2, amp: 0.8
 sleep 2
end

43_exploring_tb303 in-thread-forum

RMS× 0.63× peak× 0.97× MFCC 116 L2 dB 12.6
HIGH 76.4/100

Desktop

audio not hosted (WAVs excluded from web deploy)
peak 1.000 · RMS 0.3060 · 31.37s @ 48000Hz

Web

audio not hosted (WAVs excluded from web deploy)
peak 0.972 · RMS 0.1931 · 29.70s @ 48000Hz

Spectrogram (mel-dB · 3 panels: desktop / web / |Δ|)

in-thread-forum__43_exploring_tb303 spectrogram

Per-beat divergence (RMS, peak, MFCC distance per beat window)

no per-beat chart
Source (in-thread-forum/43_exploring_tb303.rb)
# Source: https://in-thread.sonic-pi.net/t/exploring-tb303/9451
# Author: Relaxnow
# Title: Exploring tb303
# Captured: 2026-04-24

set_volume! 2

use_bpm 77

with_fx :reverb, room: 0.75 do
 with_fx :krush do |krush|

 live_loop :a1 do
 tick

 control krush, mix: line(0,0.8,steps: 64).look

 sample :bd_fat, amp: 4 if spread(1,9).look
 sample :bd_fat, rpitch: 24, amp: 6 if spread(1,5).look

 sample :sn_generic, finish: 0.01, amp: 2 if spread([1,1,1, 1,1,1, 5,1,1, 1,1,1].look, 9).look

 k = 64

 use_synth :tb303

 n = :f2+knit(0,k,-2,k).look

 use_synth_defaults release: [0.1,0.2,0.4,0.8].choose, cutoff: [70,90,110].look+knit(-20,k,-10,k).look
 play n+[0,0,0,0,12].look, pan: rdist(0.25) if spread(9,12).look

 use_synth_defaults release: [0.1,0.2,0.3,0.4,0.8].choose, cutoff: [70,90,110].look+knit(-20,k,-10,k).look
 play n+[0,0,0,0,12].look+24, amp: 0.5, pan: rdist(0.5) if spread(5,12).rotate(5).look


 use_synth [:noise,:gnoise].choose
 density [1,2,1,1,4,1,1,1,1,1,1,1,1,].choose do
 use_synth_defaults release: 0.001, cutoff: rrand_i(90,130)
 play :c2, pan: rdist(1) if spread(rrand_i(14,15),16).look
 sleep 0.25
 end

 end
 end

 live_loop :a2 do
 tick
 use_synth :beep
 play :a5+knit(0,32,1,32,1,32,0,32).look, amp: 0.6 if spread(1,32).rotate(5).look
 sleep 0.25
 end

end

44_blues_band in-thread-forum

RMS× 0.21× peak× 0.38× MFCC 207 L2 dB 16.3
LOW 39.4/100

Desktop

audio not hosted (WAVs excluded from web deploy)
peak 1.000 · RMS 0.2733 · 31.37s @ 48000Hz

Web

audio not hosted (WAVs excluded from web deploy)
peak 0.379 · RMS 0.0578 · 29.70s @ 48000Hz

Spectrogram (mel-dB · 3 panels: desktop / web / |Δ|)

in-thread-forum__44_blues_band spectrogram

Per-beat divergence (RMS, peak, MFCC distance per beat window)

no per-beat chart
Source (in-thread-forum/44_blues_band.rb)
# Source: https://in-thread.sonic-pi.net/t/blues-band-with-swinging-drums-bass-and-piano-my-first-creation/9441
# Author: adrianco
# Title: Blues band with swinging drums, bass and piano - my first creation
# Captured: 2026-04-24

use_bpm 140
swing = 0.15 # set to 0 for straight beats, 0.15 for a shuffle
key = :Eb3 # E flat is a common blues key

with_fx :reverb do

 live_loop :drums do
 sample :hat_tap, amp: 0.9
 sample :drum_bass_hard, amp: 0.9
 sleep 0.5+swing
 sample :hat_tap, amp: 0.7
 sample :drum_bass_hard, amp: 0.8
 sleep 0.5-swing
 sample :drum_snare_hard, amp: 0.8
 sample :hat_tap, amp: 0.8
 sleep 0.5+swing
 sample :hat_tap, amp: 0.7
 sleep 0.5-swing
 end

 blues_scale = (ring key, key, key+12, key+12, key+10, key+10, key+5, key+3)
 durs = (ring 0.5,0.5, 0.5,0.5, 0.5,0.5, 0.5,0.5)
 twelvebar = (ring 0, 0, 0, 0, 5, 5, 0, 0, 7, 5, 0, 7)

 live_loop :bass do
 use_synth :fm
 use_transpose twelvebar.tick(:bar)
 4.times do
 use_synth_defaults release: 0.5+swing, amp: 1.0, pan: 0.3
 play blues_scale.tick(:note)
 sleep durs.look(:note)+swing
 use_synth_defaults release: 0.5-swing, amp: 0.8, pan: 0.3
 play blues_scale.tick(:note)
 sleep durs.look(:note)-swing
 end
 end

 live_loop :chords do
 use_synth :piano
 use_synth_defaults pan: -0.30, amp: 1.0, stereo_width: 0.3
 play_chord chord(key+24+twelvebar.tick(:chords), :minor), decay: 2, release: 2
 sleep 4
 end

 live_loop :solo do
 use_synth :piano
 use_synth_defaults pan: -0.30, amp: 1.0, stereo_width: 0.3
 sleep 2
 pattern1 = shuffle(scale(key+12*dice(2)+twelvebar.look(:chords), :minor_pentatonic))
 pattern2 = shuffle(scale(key+24+twelvebar.look(:chords), :minor_pentatonic))
 play_pattern_timed pattern1, 0.25
 play_pattern_timed pattern2, 0.5
 play_pattern_timed pattern2, 0.25
 end
end

45_sick_drummer in-thread-forum

RMS× 0.94× peak× 0.82× MFCC 258 L2 dB 23.7
MID 69.5/100

Desktop

audio not hosted (WAVs excluded from web deploy)
peak 1.000 · RMS 0.3117 · 31.37s @ 48000Hz

Web

audio not hosted (WAVs excluded from web deploy)
peak 0.822 · RMS 0.2944 · 29.70s @ 48000Hz

Spectrogram (mel-dB · 3 panels: desktop / web / |Δ|)

in-thread-forum__45_sick_drummer spectrogram

Per-beat divergence (RMS, peak, MFCC distance per beat window)

no per-beat chart
Source (in-thread-forum/45_sick_drummer.rb)
# Source: https://in-thread.sonic-pi.net/t/sick-drummer-a-metal-drummer-bot-with-snare-fills/9372
# Author: Sunk
# Title: Sick Drummer - a metal drummer bot with snare fills
# Captured: 2026-04-24

rudiments =
 [[[1,0,1,1],[0,1,0,0]],
 [[0,1,0,0],[1,0,1,1]],
 [[1,0,1,0],[0,1,0,1]],
 [[0,1,0,1],[1,0,1,0]],
 [[1,1,0,0],[0,0,1,1]],
 [[0,0,1,1],[1,1,0,0]],
 [[0,0,0,0],[1,1,1,1]],
 [[1,1,1,1],[0,0,0,0]],
 [[1,0,0,1],[0,1,1,0]],
 [[0,1,1,0],[1,0,0,1]],
 [[1,1,1,0],[0,0,0,1]],
 [[0,0,0,1],[1,1,1,0]]]

kit =
 [[:drum_snare_hard, 0.33],
 [:drum_roll, 1.75],
 [:drum_heavy_kick, 1]]

bd_patterns =
 [[1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],
 [1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0],
 [1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0],
 [1,1,1,0,1,1,1,0,1,1,1,0,1,1,1,0],
 [1,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0],
 [1,1,1,0,1,0,1,0,1,0,1,0,1,0,1,0]]

sn_patterns =
 [[0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0],
 [0,0,0,0,1,0,0,0,0,0,0,0,1,0,0,0]]

cy_patterns =
 [[1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
 [1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0],
 [1,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0],
 [1,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0]]

len = 0.25

use_bpm 180

with_fx :gverb, room: 50, mix: 0.5 do
 with_fx :compressor, mix: 1, amp: 1 do
 with_fx :eq, high_shelf: 0.25, high: 0, mid: 0.25, low: -1.5, low_shelf: 1 do

 live_loop :fill do

 beat = 0

 bd = choose(bd_patterns)
 sn = choose(sn_patterns)
 cy = choose(cy_patterns)

 7.times do
 count = 0
 16.times do
 if bd[count] == 1
 sample :drum_heavy_kick, sustain: len
 sample :drum_heavy_kick, sustain: len * 0.0125
 end
 if sn[count] == 1
 sample :drum_snare_hard, sustain: len
 sample :drum_snare_hard, sustain: len * 0.0125
 end
 if cy[count] == 1
 sample :drum_cymbal_open, amp: 0.33, sustain: len
 end
 sleep len
 count += 1
 end
 end
 end
 end
 end
end

46_lofi_hip_hop in-thread-forum

RMS× 0.59× peak× 0.60× MFCC 131 L2 dB 14.8
MID 67.9/100

Desktop

audio not hosted (WAVs excluded from web deploy)
peak 0.391 · RMS 0.0525 · 31.37s @ 48000Hz

Web

audio not hosted (WAVs excluded from web deploy)
peak 0.236 · RMS 0.0312 · 29.70s @ 48000Hz

Spectrogram (mel-dB · 3 panels: desktop / web / |Δ|)

in-thread-forum__46_lofi_hip_hop spectrogram

Per-beat divergence (RMS, peak, MFCC distance per beat window)

no per-beat chart
Source (in-thread-forum/46_lofi_hip_hop.rb)
# Source: https://in-thread.sonic-pi.net/t/lofi-hip-hop-creation/9432
# Author: boda
# Title: Lofi hip hop creation
# Captured: 2026-04-24

# lo-fi
use_bpm 60

chords =
 [
 (chord_degree :iv, :C4, :major),
 (chord_degree :iii, :C4, :major),
 (chord_degree :ii, :C4, :major),
 chord(:C4, :major7),
 chord(:C4, :major7),
 ]

live_loop :chord do
 use_synth :piano
 play chords.tick, decay: 2
 sleep 2
 play chords.tick, decay: 2
 sleep 2
 play chords.tick, decay: 2
 sleep 2
 play chords.tick, decay: 1
 sleep 1
 play chords.tick, decay: 1
 sleep 1
end

with_fx :distortion do
 with_fx :lpf do

 live_loop :bass do
 use_synth :subpulse
 play chords.tick[-1], decay: 2, amp: 0.1
 sleep 2
 play chords.tick[-1], decay: 2, amp: 0.1
 sleep 2
 play chords.tick[-1], decay: 2, amp: 0.1
 sleep 2
 play chords.tick[-1], decay: 1, amp: 0.1
 sleep 1
 play chords.tick[-1], decay: 1, amp: 0.1
 sleep 1
 end
 end
end

hats = [1,0,1,0] * 4
live_loop :hats do
 sample :hat_bdu if hats.tick == 1
 sleep 0.25
end

tom = [1,0,0,0,0,0,1,0,0,0,0,1,0,0,1,0]
live_loop :clap do
 sample :tabla_ghe1, amp: 0.5 if tom.tick == 1
 sleep 0.5 / 2
end

pattern = [1,0,1,1]
live_loop :test do
 sample :perc_snap2, amp: 0.5 if pattern.tick == 1
 sleep 1
end

with_fx :bitcrusher do
 live_loop :melody do
 use_synth :kalimba
 use_random_seed 4
 for _ in 1..8 do
 play chord(:F, :major7), amp: 5
 sleep [0.25, 0.25, 0.5, 1].choose
 end
 end
end

47_fibonacci_zoomies in-thread-forum

RMS× 1.39× peak× 2.06× MFCC 109 L2 dB 12.8
HIGH 72.0/100

Desktop

audio not hosted (WAVs excluded from web deploy)
peak 0.378 · RMS 0.0627 · 31.37s @ 48000Hz

Web

audio not hosted (WAVs excluded from web deploy)
peak 0.779 · RMS 0.0870 · 29.70s @ 48000Hz

Spectrogram (mel-dB · 3 panels: desktop / web / |Δ|)

in-thread-forum__47_fibonacci_zoomies spectrogram

Per-beat divergence (RMS, peak, MFCC distance per beat window)

no per-beat chart
Source (in-thread-forum/47_fibonacci_zoomies.rb)
# Source: https://in-thread.sonic-pi.net/t/the-fibonacci-sequence-sounds-like-a-cat-with-the-zoomies-on-a-piano/9357
# Author: Sunk
# Title: The fibonacci sequence sounds like a cat with the zoomies on a piano
# Captured: 2026-04-24

# The fibonacci sequence creates beautiful images
# Does it sound good when applied to equal temperment?
# notes
fib = [1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89]

# lengths - truncated because we don't have enough time
fiblen = [1, 1, 2, 3, 5, 8, 13, 21]

# shift to bring notes into audible range
aud = 21

use_bpm 233 # also in the sequence

use_synth :piano

with_fx :gverb, amp: 1, room: 233 do
 with_fx :compressor do
 live_loop :loop do

 len = choose(fiblen) * 0.5

 play choose(fib)+aud, attack: len * 0.1, decay: len * 0.1, sustain: len * 0.5, amp: 0.5
 play choose(fib)+aud, attack: len * 0.1, decay: len * 0.1, sustain: len * 0.3, amp: 0.5
 play choose(fib)+aud, attack: len * 0.2, decay: len * 0.2, sustain: len * 0.2, amp: 0.5
 play choose(fib)+aud, attack: len * 0.3, decay: len * 0.3, sustain: len * 0.1, amp: 0.5
 play choose(fib)+aud, attack: len * 0.5, decay: len * 0.5, sustain: len * 0.1, amp: 0.5

 sleep len
 end
 end
end

48_lullaby in-thread-forum

RMS× 1.03× peak× 1.63× MFCC 177 L2 dB 15.6
HIGH 75.9/100

Desktop

audio not hosted (WAVs excluded from web deploy)
peak 0.062 · RMS 0.0035 · 31.37s @ 48000Hz

Web

audio not hosted (WAVs excluded from web deploy)
peak 0.101 · RMS 0.0036 · 29.70s @ 48000Hz

Spectrogram (mel-dB · 3 panels: desktop / web / |Δ|)

in-thread-forum__48_lullaby spectrogram

Per-beat divergence (RMS, peak, MFCC distance per beat window)

no per-beat chart
Source (in-thread-forum/48_lullaby.rb)
# Source: https://in-thread.sonic-pi.net/t/slaapliedje-lullaby/9339
# Author: R2L
# Title: Slaapliedje (Lullaby)
# Captured: 2026-04-24

freqs = [27.5, 28.122, 28.758, 29.408, 30.073, 30.753, 31.448, 32.159, 32.887, 33.63, 34.391, 35.168, 35.963, 36.777, 37.608, 38.459, 39.328, 40.217, 41.127, 42.057, 43.008, 43.98, 44.975, 45.991, 47.031, 48.095, 49.182, 50.294, 51.432, 52.595, 53.784, 55.0, 56.244, 57.515, 58.816, 60.146, 61.506, 62.897, 64.319, 65.773, 67.26, 68.781, 70.336, 71.927, 73.553, 75.216, 76.917, 78.656, 80.435, 82.253, 84.113, 86.015, 87.96, 89.949, 91.983, 94.063, 96.19, 98.365, 100.589, 102.863, 105.189, 107.568, 110.0, 112.487, 115.031, 117.632, 120.292, 123.012, 125.793, 128.637, 131.546, 134.521, 137.562, 140.673, 143.853, 147.106, 150.433, 153.834, 157.312, 160.869, 164.507, 168.227, 172.031, 175.92, 179.898, 183.966, 188.126, 192.38, 196.729, 201.178, 205.727, 210.379, 215.135, 220.0, 224.975, 230.062, 235.264, 240.583, 246.023, 251.586, 257.275, 263.092, 269.041, 275.124, 281.345, 287.707, 294.212, 300.865, 307.668, 314.625, 321.739, 329.014, 336.453, 344.061, 351.841, 359.796, 367.932, 376.251, 384.759, 393.459, 402.356, 411.453, 420.757, 430.271, 440.0, 449.949, 460.123, 470.527, 481.166, 492.046, 503.172, 514.55, 526.184, 538.082, 550.249, 562.691, 575.414, 588.425, 601.73, 615.336, 629.25, 643.478, 658.028, 672.907, 688.122, 703.682, 719.593, 735.864, 752.503, 769.518, 786.918, 804.711, 822.907, 841.514, 860.542, 880.0]
set :offset, 119

define :get_midi do |note|
 midi_note = hz_to_midi(freqs[get[:offset] + note])
 return midi_note
end

live_loop :basic_beat do
 cue :start7tellen
 2.times do
 cue :maatvan2
 sample :perc_bell, beat_stretch: 0.35
 sleep 0.5
 sample :perc_bell, beat_stretch: 0.15, amp: 0.5
 sleep 0.5
 end
 cue :maatvan3
 sample :perc_bell, beat_stretch: 0.3
 sleep 0.5
 sample :perc_bell, beat_stretch: 0.2, amp: 0.5
 sleep 0.5
 sample :perc_bell, beat_stretch: 0.25, amp: 0.4
 sleep 0.5
end

live_loop :ritme3tegen2 do
 sync :maatvan2
 3.times do
 sample :perc_bell, amp: 0.4, beat_stretch: 0.2
 sleep 1.0 / 3
 end
 sleep -0.2
end

live_loop :ritme5tegen3 do
 sync :maatvan3
 5.times do
 sample :perc_bell, amp: 0.4, beat_stretch: 0.2
 sleep 1.5 / 5
 end
 sleep -0.2
end

live_loop :ritme11tegen7 do
 sync :start7tellen
 use_synth :saw
 n1 = get_midi(31)
 n2 = get_midi(0)
 n3 = get_midi(18)
 n4 = get_midi(14)
 n5 = get_midi(8)
 n6 = get_midi(26)
 n7 = get_midi(21)
 with_fx :reverb, room: 0.99, damp: 0.3, mix: 0.6 do
 11.times do
 play [n1,n2,n3,n4,n5,n6,n7].pick + [0,31,62].pick, amp: 0.06, pan: rrand(-1,1), attack: 0.01, sustain: 0.05, decay: 0, release: 0.05 if one_in(1)
 sleep 3.5 / 11
 end
 end
 sleep -0.2
end

live_loop :lange_noot do
 sync :start7tellen
 use_synth :supersaw
 with_fx :reverb, room: 0.99, damp: 0.2, mix: 0.8 do
 n = [0, 0, 0, 8, 14, 21, 26, 31].choose
 play get_midi(n), amp: 0.04, attack: 1, sustain: 0, release: 9, pan: rrand(-0.7,0.7) if one_in(2)
 end
end