new blog post: sending custom OSC messages with Tidal (or rather, hosc)

https://pulusound.fi/blog/tidal-custom-osc

#TidalCycles

sending custom OSC messages with Tidal (or rather, hosc)

TidalCycles communicates with its audio engine (normally SuperDirt) via OSC. message construction and socket I/O is handled behind the scenes, freeing the musician from having to think about it. but sometimes you may want to send custom, one-shot OSC messages from the Tidal environment. maybe you want to activate a complex effects chain in SuperCollider, or tell a visualizer to change scenes, or something, without leaving the Tidal code window.

https://uzu.lurk.org/t/challenge-non-linear-time-transform/6171 an interesting challenge was posted, I did a #TidalCycles thing with #MoebiusTransformation in response, but I don't have tidal fully running (only tidal-core and tidal-mondo, nothing hooked up to making sound) so i haven't been able to listen...

the idea is that for time outside the arc (0, 2) time advances linearly as normal, but inside it smoothly speeds up and slows down, fitting in 4 cycles in the usual time for two.

I used the computer algebra system #Maxima to solve for the coefficients given values/slopes (3 per transform).

Challenge: non-linear time transform

most (?) library functions that modify time, do this by applying a linear transformation. Example: fast https://hackage-content.haskell.org/package/tidal-core-1.10.2/docs/src/Sound.Tidal.Pattern.html#_fast ... withResultTime (/ rate) $ withQueryTime (* rate) pat Example: rev is piece-wise linear. implementation https://hackage-content.haskell.org/package/tidal-core-1.10.2/docs/src/Sound.Tidal.Pattern.html#rev looks a bit funny but the transformation really (?) is r :: Time -> Time r t = let...

Uzu

Supercollider's SC Synth and visualization capabilities are really useful. With a little tinkering, this tune and animation emerged.

#supercollider #livecoding #algorave #scsynth #creativecoding #generativeart #creativity #tidalcycles #tidalcyclesmusic #experimentalmusic #minimaltechno #synthprogramming

Strudel REPL

Strudel is a music live coding environment for the browser, porting the TidalCycles pattern language to JavaScript.