WCCC_Liquids

PuddlesInGray

For this week's Creative Code challenge by @sableRaph: Liquids, PuddlesInGray is Coded with Hydra & SonicPi.

Digital Splashes and Puddles are visualized through the Hydra sketch.

As Beverages are liquids & Some are colours, Sonified through SonicPi are the following drinks: Merlot Red & Burgundy Wine. Modified from their original DipInCode form.

Poetry

Liquids spilling
As they are,
One of the physical states
Oozing & cruising
Engulfing & infusing
Infused with aroma
With a hint of charisma
As the liquids are filling
Denser than air
With the puddles, they create

Video

Code

Hydra

noise(2,4,4).
modulateRotate(gradient(()=> (time % 10 + 0.1)/5),()=> (time % 12 + 0.2)/6).
kaleid(4).modulatePixelate(voronoi(1,2,3).kaleid([30,7,12,22,2].smooth())).
modulateScale(src(o0).scale(0.25).scrollX(0.5).luma(0.45)).
modulateHue(osc(1,0.5,1).kaleid(2)).repeat([2,2.5,1.8,1.94],[2,2.3,1.2]).
modulateScale(src(o0).blend(noise(1,1,1)),0.2).out(o0)


speed = 0.123

SonicPi

#reading of the DipInCodeFirstService
#for csvs larger than 10 mbs use the for reach


require 'csv'



#naming the Dataset DipInCode and going to read the file
Dip = CSV.parse(File.read("C:/Colorscape/DipInCode/SonicPi_CodeBase/Model/DipInCode_FirstService.csv"), headers: true)

#Getting the Ingredients
Burgundy = Dip[6]
Wine = Dip[7]
#Dip[foodname][column].to_f , need to.f as it is to float
#0s and other ratios might have to be switch out to give flow to that track and make it run

with_fx [:whammy,:ixi_techno,:flanger].choose do
  live_loop :Burgundy1 do
    use_random_seed Time.now.to_i
    use_bpm Burgundy["Red"].to_f
    sample :ambi_choir, rate: dice(Burgundy["Yellow"].to_f/Burgundy["Hue"].to_f)  if spread(Burgundy["Blue%"].to_f,Burgundy["Red%"].to_f).tick
    sample :perc_snap2,rate: rrand(Burgundy["y2"].to_f,Burgundy["Red"].to_f/Burgundy["Blue"].to_f)  if spread(Burgundy["H-Lab1"].to_f,Burgundy["CIE-L"].to_f).reverse.mirror
    sleep [Burgundy["x2"].to_f,Burgundy["Yellow"].to_f/Burgundy["Mangeta"].to_f,Burgundy["Saturation2"].to_f/Burgundy["Lightness"].to_f].choose
  end
end

with_fx [:krush,:ping_pong,:distortion].choose, mix: Wine["x2"].to_f  do
  live_loop :Wine2 do
    use_random_seed Time.now.to_i / 2
    use_bpm Wine["Blue"].to_f
    with_fx :reverb do
      sample :perc_snap2, rate: rrand(Wine["y2"].to_f,Wine["Red"].to_f/Wine["Blue"].to_f) if spread(Wine["H-Lab1"].to_f,Wine["CIE-L"].to_f).reverse.mirror
      sleep [Wine["x2"].to_f,Wine["Green%"].to_f/Wine["Blue%"].to_f].choose
    end
  end
end

with_fx :ping_pong do
  live_loop :Wine3 do
    use_random_seed Time.now.to_i / 3
    use_bpm Wine["Green"].to_f
    sample :drum_bass_soft, rate: dice(Wine["Yellow"].to_f/Wine["Hue"].to_f)  if spread(Wine["Blue%"].to_f,Wine["Green%"].to_f).tick
    sample :ambi_choir, decay: Wine["H-Lab2"].to_f, rate: rrand(Wine["y2"].to_f,Wine["Red"].to_f/Wine["Blue"].to_f)  if spread(Wine["H-Lab1"].to_f,Wine["CIE-L"].to_f).reverse.mirror
    sleep [Wine["x2"].to_f,Wine["Yellow"].to_f/Wine["Mangeta"].to_f,Wine["Saturation2"].to_f/Wine["Lightness"].to_f].choose
  end
end

#.ceil to round up

with_fx :vowel,voice: dice(Burgundy["Z"].to_f.ceil()) do
  live_loop :Burgundy4 do

    use_random_seed Time.now.to_i / 4

    use_bpm Burgundy["Red"].to_f
    with_fx :reverb do
      sample :perc_snap2, rate: rrand(Burgundy["y2"].to_f,Burgundy["Red"].to_f/Burgundy["Blue"].to_f) if spread(Burgundy["H-Lab1"].to_f,Burgundy["CIE-L"].to_f).reverse.mirror
      sample :ambi_choir, rate: dice(Burgundy["Yellow"].to_f/Burgundy["Hue"].to_f)  if spread(Burgundy["Blue%"].to_f,Burgundy["Red%"].to_f).tick
      sleep [Burgundy["x2"].to_f,Burgundy["Red%"].to_f/Burgundy["Blue%"].to_f].choose
    end
  end
end


#Getting the Ingredients
Merlot = Dip[24]

#Dip[foodname][column].to_f , need to.f as it is to float

with_fx :vowel do
  live_loop :Merlot1 do

    use_random_seed Time.now.to_i

    use_bpm Merlot["Red"].to_f
    sample :ambi_piano, rate: dice(Merlot["Yellow"].to_f/Merlot["Key"].to_f)  if spread(Merlot["Blue%"].to_f,Merlot["Green%"].to_f).tick
    sample :ambi_dark_woosh,rate: rrand(Merlot["y2"].to_f,Merlot["Red"].to_f/Merlot["Blue"].to_f)  if spread(Merlot["H-Lab1"].to_f,Merlot["CIE-L"].to_f).reverse.mirror
    sleep [Merlot["x2"].to_f,Merlot["Yellow"].to_f/Merlot["Mangeta"].to_f,Merlot["Saturation2"].to_f/Merlot["Lightness"].to_f].choose
  end
end

with_fx :ixi_techno do
  live_loop :Merlot2 do

    use_random_seed Time.now.to_i / 2

    use_bpm Merlot["Blue"].to_f
    with_fx :reverb do
      sample :ambi_choir, rate: rrand(Merlot["y2"].to_f,Merlot["Red"].to_f/Merlot["Blue"].to_f) if spread(Merlot["H-Lab1"].to_f,Merlot["CIE-L"].to_f).reverse.mirror
      sleep [Merlot["x2"].to_f,Merlot["Green%"].to_f/Merlot["Blue%"].to_f].choose
    end
  end
end

with_fx :gverb do
  live_loop :Merlot3 do

    use_random_seed Time.now.to_i / 3

    use_bpm Merlot["Green"].to_f
    sample :elec_blip, rate: dice(Merlot["Yellow"].to_f/Merlot["Key"].to_f)  if spread(Merlot["Blue%"].to_f,Merlot["Green%"].to_f).tick
    sample :ambi_dark_woosh,rate: rrand(Merlot["y2"].to_f,Merlot["Red"].to_f/Merlot["Blue"].to_f)  if spread(Merlot["H-Lab1"].to_f,Merlot["CIE-L"].to_f).reverse.mirror
    sleep [Merlot["x2"].to_f,Merlot["Yellow"].to_f/Merlot["Mangeta"].to_f,Merlot["Saturation2"].to_f/Merlot["Lightness"].to_f].choose
  end
end

with_fx :distortion do
  live_loop :Merlot4 do

    use_random_seed Time.now.to_i / 4

    use_bpm Merlot["Red"].to_f
    with_fx :reverb do
      sample :ambi_choir, rate: rrand(Merlot["y2"].to_f,Merlot["Red"].to_f/Merlot["Blue"].to_f) if spread(Merlot["H-Lab1"].to_f,Merlot["CIE-L"].to_f).reverse.mirror
      sleep [Merlot["x2"].to_f,Merlot["Green%"].to_f/Merlot["Blue%"].to_f].choose
    end
  end
end
0
Subscribe to my newsletter

Read articles from Kofi / Illestpreacha directly inside your inbox. Subscribe to the newsletter, and don't miss out.

Written by

Kofi / Illestpreacha
Kofi / Illestpreacha