Sonic Pi chordarp OSC to Improviz YT

Sonic Pi

# 220826 2050 Sonic Pi chordarp OSC to Improviz YT
# YT https://youtu.be/bqw8IW06_Gc

use_osc "localhost", 5510  # Setup OSC to Improviz port

use_bpm 88

live_loop :time, delay: 0.01 do
  sleep 1
end

with_fx :level, amp: 4 do
  
  live_loop :beat1, sync: :time do
    10.times do
      sample :bd_haus, cutoff: 85 if spread(3,5).tick(:b)
      sleep 0.25
    end
    sleep 0.25*4
  end
  
  live_loop :beat2, sync: :time do
    sample :elec_blip, cutoff: rrand(85,115) if one_in(3)
    sleep 2
  end
  
  live_loop :noise, sync: :time do
    use_synth :noise
    10.times do
      play :c3, release: 0.01, amp: 0.5 if spread(5,7).tick(:n)
      sleep 0.25
    end
    sleep 0.25*4
  end
  
  live_loop :snare, sync: :time do
    sleep 1
    sample :elec_snare, rate: 1, finish: rrand(0.25,0.4), cutoff: 105
    sleep 1
  end
  
  
  
  live_loop :mel1, sync: :time do
    #stop
    use_synth :saw
    
    a= 4
    b= a/2
    c= a/4
    p = knit(0,a, 3,b, 5,c, 12,c, 0,b).tick(:p1)
    pOSC = knit(0,a, 3,b, 5,c, 9,c, 0,b).look(:p1)
    puts osc "/vars/tab1", pOSC  #if spread(a,b).look# OSC to Improviz in variable tab2 = 1
    #puts p
    
    in_thread do
      10.times do
        r= range(70,120,step: 2).tick(:r1)
        play :fs2, cutoff: r, release: rrand(0.25,0.4), pitch: p, pan: 0.5 if spread(3,5).tick(:b)
        sleep 0.25
      end
    end
    10.times do
      r= range(70,120,step: 2).tick(:r1)
      play :fs3, cutoff: r, release: rrand(0.25,0.4), pitch: p, pan: -0.5 if spread(3,5).tick(:b)
      sleep 0.25
    end
    
    #sleep 0.25*2
    sleep 0.25
    puts osc "/vars/tab1", 0
    sleep 0.25
  end
  
  
  live_loop :chordarp, sync: :time do
    #stop
    use_synth :pluck #:pluck
    r= range(70,120,step: 1).tick(:r1)
    3.times do
      notes = scale(:fs3, :minor_pentatonic, num_octaves: 3)
      play notes.tick(:n), cutoff: r, release: rrand(0.25,0.4), pitch: p, pan: rrand(0.5,-0.5) #if spread(11,16).tick(:b)
      puts osc "/vars/tab2", notes.look(:n)/15
      sleep 0.125
      puts osc "/vars/tab2", 0
      sleep 0.125
    end
  end
  
  live_loop :reset do
    puts osc "/vars/tab4", 20 # reset background in Improviz
    sleep 0.25
    puts   osc "/vars/tab4", 0
    sleep 0.25*64*2*2            # time before reset
    
  end
  
  
end #end fx :level

Improviz

paintOver()

# 220826 2050 Sonic Pi chordarp OSC to Improviz
# YT https://youtu.be/bqw8IW06_Gc


t = time/4
background(0)
strokeSize(2)
#noFill()
#stroke(255)  # nice
scale(0.7) # 1 0.8 2


a=0
#bd1 = ext(:bd1,a)
#bd2 = ext(:bd2,a)
#bd3 = ext(:bd3,a)

tab1 = ext(:tab1, a)#/100
tab2 = ext(:tab2, a)#/100
tab3 = ext(:tab3, a)/100
tab4 = ext(:tab4, 0)
#if (t%2)


b = 0.25 #thickness

# tab4
#rotate(0,0,t)
fill(0)
#move(1,0,0)
rectangle(tab4,tab4,tab4)

# tab1
rotate(0,0,t)
fill(255,150,0)
move(1,0,0)
rectangle(tab1,0.01,0.01)

#tab2
fill(255,0,0)
move(1,0,0)
rectangle(tab2,0.01,0.01)


## thin white lines
fill(255)  # white
move(-4,0,0)
rectangle(3,0.000125,0.000125)  # thin white lines

#delete black
#fill(0)  # white
#move(-4,0,0)
#rectangle(2,0.5,0.5)
#rectangle(2,0.05,0.05)
#rectangle(3,0.0125,0.0125)  # thin white lines



move(-2,0,0)
rotate(0,0,-t*0.25)


#rotate(t)

Sonic Pi to Improviz with textures

Sonic Pi

# 220826 2257 Sonic Pi to Improviz with textures
# YT https://youtu.be/G72rKJiSiU8

use_osc "localhost", 5510  # Setup OSC to Improviz port

live_loop :asd do
  r = ring(1,2).choose
  sample :elec_tick, rate: r, amp: 4 if spread(9,11).tick(:t1)
  
  puts osc "/vars/tab1", rrand_i(-1,-4) if spread(9,11).look(:t1) == true and r == 1
  puts osc "/vars/tab2", rrand_i(1,4) if spread(9,11).look(:t1) == true and r == 2
  puts osc "/vars/tab3", 1 if spread(9,11).look(:t1) == false
  
  sleep 0.125
  puts osc "/vars/tab1", 0
  puts osc "/vars/tab2", 0
  puts osc "/vars/tab3", 0
  sleep 0.125
  #  osc
end

live_loop :reset do
  puts osc "/vars/tab4", 20 # reset background in Improviz
  sleep 0.25
  puts   osc "/vars/tab4", 0
  sleep 0.25*64*2*2            # time before reset
  
end

Improviz

paintOver()

# 220826 2155 Sonic Pi OSC to Improviz  9 to 11.pz
# 220826 2257 Sonic Pi to Improviz with textures
# YT https://youtu.be/G72rKJiSiU8

t = time/2
background(0)
strokeSize(2)
#noFill()
#stroke(255)  # nice
scale(0.9) # 1 0.8 2


a=1
#bd1 = ext(:bd1,a)
#bd2 = ext(:bd2,a)
#bd3 = ext(:bd3,a)

tab1 = ext(:tab1, a)#/100
tab2 = ext(:tab2, a)#/100
tab3 = ext(:tab3, a)#/100
tab4 = ext(:tab4, 0)
#if (t%2)


b = 1/40 #thickness

# reset scene with tab4
fill(0)
#texture(:a1)
rectangle(tab4,tab4,tab4)

# tab1

rotate(0,0,t)
move(0,1,0)
stroke(255,0,0)
#fill(255)
texture(:a7)
scale(1.5*sin(t/4+5))
#noFill()
cube(b,tab1,b)
move(0,1,0)
#fill(255,0,0)
#stroke(255)
#texture(:a5)
cube(b,tab2,b)

#stroke(0,0,255)
#cube(tab3*,tab3,tab3)