Web audio modules - VST for web

257 views
Skip to first unread message

Oliver Larkin

unread,
Nov 19, 2017, 1:24:35 PM11/19/17
to Web Music Developers JP
Hello,

I'm sorry I don't speak Japanese. We have developed an API for implementing VST style synthesisers and FX in the web browser, allowing to reuse existing C++ code bases for the DSP.

We have created a community site:


Developer documentation is here:


You can try the latest WASM / AudioWorklet implementation in chrome Canary 64 on Mac



We hope to develop a community around this API and create lots of great instruments to run in the web browser!

best regards

oli larkin

Takashi Toyoshima

unread,
Nov 20, 2017, 2:46:30 AM11/20/17
to Oliver Larkin, Web Music Developers JP
Hey, Oliver.

I'm really excited to see a framework to have VST-like things on the top of Web Audio + WebAssembly technologies.
I was thinking about having a Web MIDI + Web Audio collaborating API that allows to register Web Audio based synth to be used among other Web MIDI based applications and native MIDI applications. But it has been suspended in order to wait for other browsers to catch up with. Let me keep getting in touch with you. Some people are thinking about similar things, and I want to discuss it together to have the best polished one when we are ready to start discussion at WICG.

Writing a synth in the worklet would be reasonable for everyone, but the way to have a corresponding GUI for each synth would have many technical choices, and room to discuss.

Thanks,


--
このメールは Google グループのグループ「Web Music Developers JP」に登録しているユーザーに送られています。
このグループから退会し、グループからのメールの配信を停止するには web-music-developers-jp+unsub...@googlegroups.com にメールを送信してください。
その他のオプションについては https://groups.google.com/d/optout にアクセスしてください。

Takashi Toyoshima

unread,
Dec 19, 2017, 1:09:32 AM12/19/17
to Oliver Larkin, Web Music Developers JP
Hi Oliver,

I overlooked an important thing you mentioned in the last mail.
You said you tried using wasm in AudioWorklet, but I noticed that it should not be so easy.
How did you plumb the wasm module and AudioWorklet to work together?

Do you post a wasm in ArrayBuffer to AudioWorklet? But current wasm toolchains such as Emscripten generates many JavaScript runtime code that is needed to load the wasm binary. So, it will require many hacks.

If you can share how-to, that would be great.

On Mon, Nov 20, 2017 at 4:46 PM, Takashi Toyoshima <toyo...@gmail.com> wrote:
Hey, Oliver.

I'm really excited to see a framework to have VST-like things on the top of Web Audio + WebAssembly technologies.
I was thinking about having a Web MIDI + Web Audio collaborating API that allows to register Web Audio based synth to be used among other Web MIDI based applications and native MIDI applications. But it has been suspended in order to wait for other browsers to catch up with. Let me keep getting in touch with you. Some people are thinking about similar things, and I want to discuss it together to have the best polished one when we are ready to start discussion at WICG.

Writing a synth in the worklet would be reasonable for everyone, but the way to have a corresponding GUI for each synth would have many technical choices, and room to discuss.

Thanks,
On Mon, Nov 20, 2017 at 3:24 AM, 'Oliver Larkin' via Web Music Developers JP <web-music-developers-jp@googlegroups.com> wrote:
Hello,

I'm sorry I don't speak Japanese. We have developed an API for implementing VST style synthesisers and FX in the web browser, allowing to reuse existing C++ code bases for the DSP.

We have created a community site:


Developer documentation is here:


You can try the latest WASM / AudioWorklet implementation in chrome Canary 64 on Mac



We hope to develop a community around this API and create lots of great instruments to run in the web browser!

best regards

oli larkin

--
このメールは Google グループのグループ「Web Music Developers JP」に登録しているユーザーに送られています。
このグループから退会し、グループからのメールの配信を停止するには web-music-developers-jp+unsubscr...@googlegroups.com にメールを送信してください。
その他のオプションについては https://groups.google.com/d/optout にアクセスしてください。


jari kleimola

unread,
Dec 21, 2017, 7:40:20 AM12/21/17
to Web Music Developers JP

Hi Takashi,

 

Please see https://github.com/jariseon/webdx7 for instructions on how to build and get webDX7 running. The example passes WASM in an ArrayBuffer like you suspected. Another option would be to use base64, although at the time of writing AudioWorkletGlobalScope does not seem to expose atob. Note that once ProcessorOptions will become available, WASM can be passed straight into the processor constructor. For now ArrayBuffer (or base64) is the way to go.


best,
Jari
このグループから退会し、グループからのメールの配信を停止するには web-music-developers-jp+unsub...@googlegroups.com にメールを送信してください。
その他のオプションについては https://groups.google.com/d/optout にアクセスしてください。


Takashi Toyoshima

unread,
Dec 22, 2017, 12:58:59 AM12/22/17
to jari kleimola, Web Music Developers JP
On Thu, Dec 21, 2017 at 9:40 PM, jari kleimola <jari.k...@gmail.com> wrote:

Hi Takashi,

 

Please see https://github.com/jariseon/webdx7 for instructions on how to build and get webDX7 running. The example passes WASM in an ArrayBuffer like you suspected. Another option would be to use base64, although at the time of writing AudioWorkletGlobalScope does not seem to expose atob. Note that once ProcessorOptions will become available, WASM can be passed straight into the processor constructor. For now ArrayBuffer (or base64) is the way to go.


Thanks, your repository is very informative. build/loader.js looks a great example to load an Emscripten-generated wasm in a worklet with a minimum runtime.
Hope we have many exciting progress on this area in 2018.

Have a nice holiday!
 

best,
Jari
このグループから退会し、グループからのメールの配信を停止するには web-music-developers-jp+unsubscr...@googlegroups.com にメールを送信してください。
その他のオプションについては https://groups.google.com/d/optout にアクセスしてください。


Reply all
Reply to author
Forward
0 new messages