The Black Dog's New EP Seclusion released as code using Elixir and Luerl

Hi everyone,

just thought that some of you might be interested in a new experimental live coding system I co-developed with the University of Sheffield.

It doesn’t quite have a name yet, but we developed it in collaboration with the band The Black Dog who have used it to release a number of tracks of their latest EP Seclusion as code.

http://bleep.sheffield.ac.uk/artist/seclusion

The live coding system was built using Phoenix LiveView, Luerl and WebAudio. It was a huge amount of fun and it was amazing how much power the tools gave me to build it. Soooo much nicer than Qt and C++ :wink:

If you want to know a little more about how it works, we gave a workshop recently and the material we used is here:

https://bleep.sheffield.ac.uk/artist/tbd

Also, the source code is available here:

I’m going to use ideas and experiences from this project to build the next version of Sonic Pi.

20 Likes

This is wonderful!

1 Like

Thanks for bumping this!

I’ve wondered about using the web audio api in combination with LV/Phoenix. Thanks for sharing Sam! In the past I’ve done some work on the crossroad of (very modest) audio processing and Qt. Nowhere near as fun as Elixir development. I can imagine how much more fun this other stack is for this kind of domain.

I’ve seen you present your work about Sonic Pi a few years ago in Londen. Till today it still stands as one of the most energetic and inspiring presentations I’ve seen. :smiling_face:

1 Like

I haven’t yet found any direct benefits from WebAudio + LiveView, but WebAudio + Phoenix Channels opens up a huge set of opportunities for collaborative jamming.

I plan to consolidate my learning from this project and fold it back into Tau5, a ground-up rewrite of Sonic Pi, which will drop Ruby and switch to Luerl + Elixir. I also plan to switch to Phoenix/LiveView for the GUI - working simultaneously with an embedded Qt WebEngine for a standard app feel and web browsers for a more web-approach.

I still plan on using SuperCollider for the standalone desktop app, but will definitely explore integrating the WebAudio engine from the project with The Black Dog to enable pure web-based audio possibilities. Note that the Web Audio engine was written by Guy Brown from Sheffield University and can be found here (still quite rough around the edges): GitHub - guyjbrown/synth-designer: A system for designing synthesizers with WebAudio, and a synthesis engine that underpins software for live coding.

My plans for Tau5 can be found here: https://www.patreon.com/posts/112605951

Also, thanks for your kind words regarding my talks. It’s always wonderful to share the joy of programming with others!

5 Likes