Sc.wasm - SuperCollider for the web

Deployed a new version:

  • Play buffers from URLs - ~buffer = Buffer.read(s, "https://sc.dennis-scheiba.com/freqshiftfb.mp3") - pay attention to cross-origin headers of the server! You can load wav, ogg, mp3, flac and opus. The de/encoders add around 4 mb to sclang/scsynth, so doubling their size - I’ll therefore release 2 versions of the wasm build - w/ and w/o libsndfile support
  • add MouseX, MouseY, MouseButton and KeyState UGens

See e.g. https://sc.dennis-scheiba.com/c/2b1746cf177b892163f25941c28d49ce

There is also already the possibility to load quarks, but this is more for the curious ones who dig into the source code since I still need to figure some things out for that.

Next steps are:

  • Expose further WebAPI plugins - i.e. Pointer Events, Device Motion Events, Battery Status and Vibration API [sadly not supported by apple…]
  • Add dedicated buttons for eval/cmdperiod on mobile
  • Compatibility w/ strudel/tidalcycles
  • Share files between lang/server
  • LSP support… [bigger one]
  • Syncing of lang/server [bigger one]

btw - what is the consensus on deploying this website on code.supercollider.online once it has reached a more stable state?
I’d also like to collect some examples from the community which can be loaded at random via a button - should we use a repo to collect those?

5 Likes