I wanted to raise attention to a topic I’ve started working on - getting scsynth to compile with emscripten, targetting wasm (WebAssembly). Since my C(++) skills are very small, I won’t be able to do this by myself, so I’m looking for people who are more proficient here. What I managed so far, is make a branch off current HEAD and see how far I get. This is the status:
Basically, as far as I can see, emscripten pthread support might actually be good enough, we just have to patch some unsupported holes like getting and setting thread priority, and then the main work is to add another Audio API back-end for OpenAL (which seems to be the API supported by emscripten). While it might also be possible to bypass that and target WebAudio API directly (not sure). Edit: Or, as Claude mentions in the ticket from experience with PD and wasm, one might look at the SDL2 port in emscripten.
With QT and libsndfile disabled, I think there is few other things that would need to be worked on apart from this audio API bridge.
When the server boots, it registers such an endpoint (default port 57110), so you can send it a packet using Module.oscDriver.receive(<your-port>, <raw-data>).