A piece from Gemini ( Google A . I . )

Sonic Pi 2026 Sacramento Storm (Clean Slate Drone)

Set your volume low! A-264 is powerful.

set_volume! 1

Fundamental: The Humidity (A 264 Hz)

with_fx :level, amp: 1 do
use_synth :tri

Play the root note (A3, but 264Hz)

play 57, attack: 5, release: 20, cutoff: 60, sustain: 200 # Sustains for over 3 mins
end

----------------------------------------------------

Thread 2: The Static and Hail Tension

----------------------------------------------------

live_loop :electric_hail do
with_fx :compressor do

# 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)

end
end

1 Like

set_volume! 1
use_bpm 120

----------------------------------------------------

Thread 1: The Pulsing Fundamental

Fixed: changed :low_pass_filter to :lpf

----------------------------------------------------

live_loop :ground_humidity do
use_synth :tri
with_fx :lpf, cutoff: 70 do

Creating a 4-bar phrase so it isn’t so repetitive

play 57, release: 0.8, amp: 0.5
sleep 1
play 57, release: 0.4, amp: 0.3
sleep 1
play 52, release: 0.6, amp: 0.4 # Variation: dropping to an E
sleep 2
end
end

----------------------------------------------------

Thread 2: The Static Shimmer (Expanded)

----------------------------------------------------

with_fx :reverb, room: 0.8, mix: 0.4 do
with_fx :echo, phase: 0.75, decay: 4 do # Longer echo for a bigger “space”
live_loop :static_shimmer do
use_synth :saw

A much longer sequence of notes (2 bars)

notes = (ring 57, 64, 69, 64, 62, 60, 64, 67)
play notes.tick, release: 0.4, amp: 0.1, cutoff: rrand(60, 90)
sleep 1 # Slower movement makes it feel more “noble” and less frantic
end
end
end

----------------------------------------------------

Thread 3: The Electric Hail (Dynamic Bursts)

----------------------------------------------------

live_loop :electric_hail, sync: :ground_humidity do

It only strikes every 8 beats now, making it a “surprise”

if one_in(3)
with_fx :bitcrusher, bits: 7 do
use_synth :fm

The “Hail” now has a melodic shape

12.times do
play (ring 72, 75, 79, 84).choose,
divisor: 1.618,
depth: rrand(1, 4),
release: 0.1,
amp: rrand(0.05, 0.15),
pan: rrand(-1, 1)
sleep 0.125
end
end
end
sleep 4
end

A whole new keyword from Gemini ………. Kernel.rand(n)

ACTUAL RANDOM ! ( rather than from list as rand_i