home/ atoms/ sonic-pi-web-collaborative-jamming

A browser Sonic Pi can drive collaborative jamming by streaming server events to each client's Web Audio synth

Sam Aaron describes an experimental web version of Sonic Pi (sonic-pi.net) whose goal is collaborative jamming — everyone opening a browser and jamming together. The architecture runs code on an Erlang BEAM server and, using Phoenix LiveView, gives every connected user a WebSocket connection; the server generates sound events and sends them to all clients, which trigger the browser’s built-in Web Audio API. That API turned out to be a surprise: not just a few beeps but a full-blown synthesizer system built into Chrome and Safari, which makes the approach viable. The design principle is that removing the installation barrier — no app to install, just a browser — widens access, a barrier that blocks Sonic Pi adoption even though its desktop installer is signed and free.

Examples

Audience members scanning a QR code to open a WebSocket connection and jam from their phones; the server pushing events to 60 simultaneous browser clients that synthesize the sound locally via Web Audio.

Assessment

Name the technologies that let a browser act as a Sonic Pi client, and explain how sound reaches the user. What barrier does the web version remove that the desktop app cannot?

“will get a websocket connection to their browsers”
corpus · sam-aaron-sonic-pi-how-to-live-code-an-orchestra-goto-2023 · chunk 3