More lo-fi / tinkly stuff

Eli…

use_bpm 90

notes = [0,2,4,9,7,5,12,11]
change = (ring :c3, :d4, :e3)
start = (knit true, 1, false, 3)

live_loop :loopy do
  cue :loop
  sleep 1
end

with_fx :level, amp: 0.5 do
  with_fx :reverb do
    live_loop :drone do
      inversions = range(0,3,1).choose
      atk = [0.0, 0.125, 0.25].choose
      64.times do
        tick
        synth :beep, note: (chord change.look, :minor, invert: range(-1,1,1).choose), sustain: 8 if (spread 1,32).look
        sleep 0.25
      end
    end
  end
end

sleep 16

with_fx :level, amp: 1 do
  with_fx :reverb,mix: 0.5, damp: 0.5, room: 0.25 do
    live_loop :bells do
      sample :perc_bell, rpitch: [0.25,0.5,0.75,1,1.25,1.5,1.75,2,2.25,2.5,2.75,3].choose, amp: [0,0.25,0.125].choose
      sleep [0.125,0.25,0.333,0.5,0.666,0.75,1].choose
      sleep 0.25
    end
  end
end

sleep 8

with_fx :level, amp: 0.5 do
  with_fx :reverb,mix: 0.5, damp: 0.5, room: 1 do
    with_fx :echo, mix: 0.25, decay: 4 do
      
      live_loop :one do
        use_synth :sine
        x = rand_i(8)
        y = notes[x] + 60
        play y, release: 0.75, pan: 0.333, amp: [0,0.25,0,0.5,0.75,0,1].choose
        sleep 0.5
      end
      
      live_loop :two do
        use_synth :sine
        x = rand_i(8)
        y = notes[x] + 48
        play y, release: 0.75, pan: 0, amp: [0,0.25,0,0.5,0.75,0,1].choose
        sleep 1
      end
      
      live_loop :three do
        
        use_synth :sine
        x = rand_i(8)
        y = notes[x] + 36
        play y, release: 0.75, pan: -0.333, amp: [0,0.25,0,0.5,0.75,0,1].choose
        sleep 2
      end
      
      
    end
  end
end

live_loop :notes_change do
  sleep 12
  cue :change
end

live_loop :switch_notes do
  sync :change
  switch =  [0,1].ring.tick
  if switch == 1 then
    notes = [0,2,4,9,7,5,12,11]
  else
    notes = [0,2,4,5,7,9,11,12]
  end
end

sleep 8

with_fx :mono, mix: 1 do
  with_fx :rlpf, res: 0.7, cutoff: 130 do
    with_fx :distortion, distort_slide: 2, distort: 0.3, mix: 1.0 do
      live_loop :drums do
        sync :loop
        tick
        
        if start.look
          with_fx :rhpf, cutoff: 110, amp: 0.3 do
            with_fx :flanger do
              with_fx :echo, decay: 4 do
                sample :elec_cymbal, amp: 0.25
              end
              
            end
          end
        end
        
        at [0.0, 0.5, 1.5, 1.75, 2.25, 2.5, 4.0,
        4.5, 5.5, 5.75, 6.25, 6.5, 6.76] do
          sample [:drum_bass_hard, :drum_heavy_kick].choose, pan: 0, amp: 1
        end
        
        with_fx :echo, decay: 2, mix: 0.4 do
          use_random_seed 1234
          32.times do
            sample :drum_cymbal_closed, pan: -0.7, amp: 0.5 if one_in(2)
            sleep 0.25
          end
        end
      end
    end
  end
end



3 Likes

Nice and tinkly as you say :grinning: