AsciiPeaks
ASCII Design
Playertdfgcvbxyz & Hydra were used for the ascii animation and for Re-Creation, I updated a previously Sonicpi composition meant to remake the meal of Almond Crusted Salmon with Honey Garlic through sound
Coded in #SonicPi #Hydra #Playertdfgcvbxyz
Poetry
Peaks and dips
Growth and slips
Flips and tweaks
Tweaks to sleep
Sleeping that is deep
In depth as the peaks
That tend to dips
Video
VIDEO
Code
import { length } from '/src/modules/vec2.js'
export var settings = {
backgroundColor : 'black' ,
color : 'gold' ,
fontWeight : 'bold' ,
lineHeight : 2.5 ,
fps : 1
}
export function main (coord, context, cursor, buffer ) {
const counter = context.time
const aspectRatio = cursor.pressed ? 1 : context.metrics.aspect
const m = Math .min(context.cols * aspectRatio, context.rows)
const st = {
x : (counter % 10 + 1 ) % 5 * (coord.x - context.cols / 2 ) / m * aspectRatio,
y :(counter % 15 + 1 ) % 7.5 * (coord.y - context.rows / 2 ) / m
}
const l = length(st)
if (counter % 45 > 30 )
{
return l < (counter % 25 + 1 )/20 ? 'Xo++oX' : '__'
}
else if (counter % 45 < 15 )
{
return l < (counter % 20 + 1 )/20 ? 'AbcCdA' : '++++'
}
else
{
return l < (counter % 30 + 1 )/45 ? '+_+-+_+' : '0-0-0-0'
}
}
Hydra
s0.initScreen()
src(s0).scale(0.85 ).diff(src(s0).modulateRotate(osc(3 ,1 ,1 ))).out()
speed = 0.25
SonicPi - 60% Slowdown Post Code + Filter
require 'csv'
Dip = CSV.parse(File.read("C:/Colorscape/DipInCode/SonicPi_CodeBase/Model/DipInCode_FirstService.csv" ), headers: true )
Almond = Dip[0 ]
Crust = Dip[1 ]
Salmon = Dip[2 ]
Honey = Dip[3 ]
Garlic = Dip[4 ]
live_loop :Salmon do
use_random_seed Math.cbrt(Time.now.to_i)
with_fx :ping_pong do
with_fx :ixi_techno , mix: Salmon["x2" ] do
with_fx :vowel ,voice: Salmon["Key" ] ,mix: Salmon["y2" ].to_f do
use_bpm Salmon["Red" ].to_f
sample [:ambi_sauna ,:ambi_glass_hum ].choose, beat_stretch: Salmon["Hue" ].to_f if spread(Salmon["Lightness" ].to_f,Salmon["Saturation2" ].to_f).tick
sample :drum_bass_soft , beat_stretch: Salmon["CIE-C" ].to_f / Salmon["CIE-U" ].to_f, amp: dice(Salmon["CIE-H" ].to_f - Salmon["CIE-V" ].to_f) if spread(Salmon["Mangeta" ].to_f,Salmon["Yellow" ].to_f).tick
sleep [Salmon["H-Lab2" ].to_f/Salmon["H-Lab3" ].to_f,Salmon["Blue%" ].to_f/Salmon["X" ].to_f].choose
end
end
end
end
live_loop :Crust do
use_random_seed Time.now.to_i
with_fx :ping_pong do
with_fx :flanger , mix: Crust["x2" ] do
with_fx :whammy , pre_amp: Crust["CIE-A" ],mix: Crust["y2" ].to_f do
use_bpm Crust["Red" ].to_f
sample :elec_bong , rate: Crust["Yellow" ].to_f/Crust["Mangeta" ].to_f, beat_stretch: Crust["Red%" ].to_f / Crust["Hue" ].to_f if spread(Crust["Saturation2" ].to_f,Crust["Lightness" ].to_f).tick
sample :tabla_dhec , beat_stretch: Crust["CIE-C" ].to_f / Crust["CIE-U" ].to_f, amp: dice(Crust["CIE-H" ].to_f / Crust["CIE-V" ].to_f) if spread(Crust["Mangeta" ].to_f,Crust["Yellow" ].to_f).tick
sleep [Crust["H-Lab2" ].to_f.abs/Crust["H-Lab3" ].to_f,Crust["Blue%" ].to_f/Crust["X" ].to_f].choose
end
end
end
end
live_loop :Almond do
use_random_seed Math.cbrt(Time.now.to_i)
with_fx [:distortion ,:gverb ].tick do
with_fx :ping_pong , mix: Almond["x2" ] do
with_fx :vowel ,amp: dice(Almond["CIE-B" ].to_f),mix: Almond["y2" ].to_f do
use_bpm Almond["Red" ].to_f
sample :bd_808 , rate: Almond["Hue" ].to_f / Almond["Saturation" ].to_f, decay: Almond["Key" ].to_f if spread(Almond["Saturation" ].to_f,Almond["Lightness" ].to_f).tick
sample :perc_bell2 , beat_stretch: Almond["CIE-C" ].to_f / Almond["CIE-U" ].to_f, amp: dice(Almond["CIE-H" ].to_f / Almond["CIE-V" ].to_f) if spread(Almond["Mangeta" ].to_f,Almond["Yellow" ].to_f).tick
sleep [(Almond["H-Lab2" ].to_f.abs**2 )*7 /Almond["H-Lab3" ].to_f,Math.hypot(Almond["Blue%" ].to_f,Almond["H-Lab3" ].to_f)/(Almond["X" ].to_f)**6 ].choose
end
end
end
end
live_loop :Garlic do
use_random_seed Math.sqrt(Time.now.to_i)
with_fx :bitcrusher do
with_fx :whammy , mix: Garlic["x2" ] do
use_bpm Garlic["Red" ].to_f
sample :bd_ada , beat_stretch: Garlic["Hue" ].to_f if spread(Garlic["Lightness" ].to_f,Garlic["Saturation2" ].to_f).tick
sample :ambi_piano , beat_stretch: Garlic["CIE-C" ].to_f / Garlic["CIE-U" ].to_f, amp: dice(Garlic["CIE-H" ].to_f - Garlic["CIE-V" ].to_f) if spread(Garlic["Mangeta" ].to_f,Garlic["Yellow" ].to_f).tick
sleep [Garlic["H-Lab2" ].to_f.abs/Garlic["H-Lab3" ].to_f,Garlic["Blue%" ].to_f/Garlic["X" ].to_f].choose
end
end
end
live_loop :Honey do
use_random_seed Math.hypot(Time.now.to_i,Time.now.to_i % 12 )
with_fx [:distortion ,:whammy ].tick, mix: Honey["x2" ] do
with_fx :ixi_techno ,mix: Honey["y2" ].to_f do
use_bpm Honey["Red" ].to_f
sample :guit_harmonics , beat_stretch: Honey["Hue" ].to_f if spread(Honey["Lightness" ].to_f,Honey["Saturation2" ].to_f).tick
sample :elec_fuzz_tom , beat_stretch: Honey["CIE-C" ].to_f / Honey["CIE-U" ].to_f, amp: dice(Honey["CIE-H" ].to_f - Honey["CIE-V" ].to_f) if spread(Honey["Mangeta" ].to_f,Honey["Yellow" ].to_f).tick
sleep [Honey["H-Lab3" ].to_f/Honey["H-Lab2" ].to_f].choose
end
end
end