Hi Laurent and Casey,

Thanks Casey for the extensive summary.

Laurent, as explained in the 
https://github.com/grame-cncm/faust/tree/master-dev/architecture/webaudio page, 
you can basically either 1) compile Faust DSP to wasm + WebAaudio in advance 
then customise and deploy the result or 2) embed the full compilation chain in 
the Web page to do dynamic compilation.

MIDI handling is done using the standard WebMIDI API, which is only implemented 
in Chrome for now.

Nose that Web export can also be tested from the Faust IDE Web 
https://faust.grame.fr/ide/, choosing « Web » in the « Platform » category.  
Those scripts basically do the same commands explained in 
https://github.com/grame-cncm/faust/tree/master-dev/architecture/webaudio, that 
this they are using « faust2wasm », «  faust2webaudiowasm » etc.

Stéphane 

> Le 25 févr. 2020 à 23:51, Casey Primozic <ca...@cprimozic.net> a écrit :
> 
> Hi Laurent,
> 
> I've done a good bit of work with Faust in WebAudio.  In between the time I 
> started my project which makes use of it and now, some other people have done 
> what looks like extensive work in developing the Faust WebAudio scene; all of 
> their code is in the main Github repository: 
> https://github.com/grame-cncm/faust/tree/master-dev/architecture/webaudio
> 
> There is code for using `AudioWorkletNode`, working with polyphonic MIDI 
> signals (although I don't know if that means it works WebMIDI or some 
> manual/custom implementation), and it seems to automatically generate the 
> wrapper JavaScript code for it as well.  There are even what look to be 
> pretty complete and detailed docs about how to compile Faust to Wasm from 
> scratch in various different configurations.
> 
> I created my own end-to-end Faust to Wasm toolchain as a part of my web audio 
> experiment project.  It features a server to dynamically compile Faust code 
> to Wasm, generate `AudioWorkletNode` code with an automatically created 
> `parameterDescriptors()` static getter allowing all of the Faust parameters 
> to be modulated as part of a normal WebAudio graph.  It also automatically 
> generates a connected UI using the `react-control-panel` library.
> 
> ----
> 
> That all being said, there's a surprisingly large amount of support out there 
> for compiling Faust to Wasm and doing non-trivial things with it.  I suggest 
> you start with that subdirectory of the official Faust Github repo I linked; 
> everything I've done is very much custom and specific to my use-case.  If you 
> had a specific goal in mind that you wanted to accomplish using Faust + Wasm, 
> I'd be happy to chat about it as well.
> 
> I hope that helped answer what you were looking for!
> 
> On Tue, Feb 25, 2020 at 2:34 PM Laurent Di Biase <ldibi...@hotmail.com> wrote:
> Hi all,
> 
> Newer faust user, please some questions about Faust and compatibility with 
> web development. Not a new subject but somebody could to provide some advise 
> to me about the recent implementation methods of faust code in javascript and 
> nodejs ? Are there recent publications on the subject and the WebAudio API ? 
> For exemple is it possible to use the AudioWorlet interface and how ?
> 
> Thanks a lot,
> 
> regards
> 
> Laurent Di Biase
> Artiste sonore
> Chercheur doctorant
> EA-1572 Musidanse-CICM EDESTA Paris 8
> site web: http://laurentdibiase.free.fr
> 
> _______________________________________________
> Faudiostream-users mailing list
> Faudiostream-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/faudiostream-users
> _______________________________________________
> Faudiostream-users mailing list
> Faudiostream-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/faudiostream-users



_______________________________________________
Faudiostream-users mailing list
Faudiostream-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/faudiostream-users

Reply via email to