Thanks for the feedback! The WebAudio plugins support with the faust IDE is indeed the simplest way, however, keep in mind that things like the GUI Builder/exporter with GUI are very young/beta. We will work again on the GUI Builder soon + lots of things need to be done yet... Don't hesitate to contact me if you need help or if you would like to contribute.
Good luck ! Le ven. 28 févr. 2020 à 11:00, Laurent Di Biase <ldibi...@hotmail.com> a écrit : > Hi, > > I am very please to receive all of your information on this fascinating > subject. Thank you very much Casey, Stéphane and especially Michel, all of > your work is really impressive. The WebAudio plugins building method with > the Faust IDE represent the easiest way to create what I need. This is > really encouraging for my project. I won’t forget to get back to you for > the future. > > Let's do it now ! 🙂 > > I thank you. > Regards > Laurent > > ------------------------------ > *De :* michel buffa <micbu...@gmail.com> > *Envoyé :* mercredi 26 février 2020 21:41 > *À :* Julius Smith <julius.sm...@gmail.com> > *Cc :* faudiostream-users@lists.sourceforge.net < > faudiostream-users@lists.sourceforge.net> > *Objet :* Re: [Faudiostream-users] Faust and Web Audio > > We even managed to get low latencies on windows with both chrome and FF on > windows 10, but it's a bit of a nightmare... not all sound cards are > compatible with the IAudio3 high definition drivers, windows sometimes > installs by itself the wrong generic driver, low latency worked only at > 16bits/44.1Khz, etc. You need a 10 steps checklist and there is no way > except by making measures of playing guitar fast, to check that the correct > driver is being used... > Check this video (win 10 + FF) of one of my students shredding with our > WebAudio amp sim: https://youtu.be/sSO2kbHaKLg?t=87, or check other > videos from my YT channel for other examples with pro guitar players. > > With MacOS all sound cards worked out of the box without any driver, > except one by Steinberg (made by Yamaha), that required a driver. > > We will try on Linux soon... > > Le mer. 26 févr. 2020 à 22:33, michel buffa <micbu...@gmail.com> a écrit : > > Just in case you'd be interested, we measured the end to end latency using > Chrome and FF on Mac OSX, with something like 15 different sound cards from > 12 euros to 160 euros. Latency from a guitar to speakers is from 14Ms (FF > nightly) to 19ms (Chrome), and the cheapest sound cards are not the ones > with the worse latency. We will publish the results soon, we will do the > same measures on Windows 10 and Linux as well... > Embedded sound cards indeed give latency around 10ms. > > An end to end latency (guitar to speaker) of 14ms is equivalent to what we > can get with the same audio buffer size, with native apps. For info, we > initialized the AudioContext with this code : > audioContext = new AudioContext({ latencyHint: 0.00001}); > > and this gives a baseLatency of 3ms on Google Chrome (FF does not return > this property) > > AudioContext {baseLatency: 0.0029024943310657597, destination: > AudioDestinationNode, currentTime: 0, sampleRate: 44100.....} > > This corresponds to an audio buffer of 128 samples. We cannot get lower > than this with current implementations. > > This value is just a computed value, this is why we decided to measure > "end to end latencies" using a digital recorder with a Y cable, left > channel recording the guitar input, right channel the corresponding output > from the speakers (of course, we had no bypassed sound on the sound cards). > > You can really shred on a guitar using WebAudio amp sims and FX > plugins.... :-) > > > > > Le mer. 26 févr. 2020 à 21:52, Julius Smith <julius.sm...@gmail.com> a > écrit : > > I just want to add that I measured the latency from button-press to > sound in the Chrome browser (default settings) on my humble old > MacBook, and saw about 10 ms! I was amazed - better than iOS apps! > > On Wed, Feb 26, 2020 at 12:37 AM michel buffa <micbu...@gmail.com> wrote: > > > > Hi all, you also use the Faust IDE and generate dirrectly easy to reuse > WebAudio plugins. This is the easiest way to add some AudioWorklet nodes to > a WebAudio graph. You can even design the GUI directly in the IDE (using an > experimental version of the IDE). See my presentation at the PAW 2020 and > the workshop (a tutorial that will teach you step by step how to write and > reuse a faust based webaudio plugin: > > > > Slides : > https://docs.google.com/presentation/d/1LA3pDAcFiqsJt4a9hlVxg2yjp-g7qpFhkz8yzy0p3E4/edit?usp=sharing > > Tutorial : > https://docs.google.com/document/d/1IzXN-t6pTtc9yzMqK3EJTLhjtx2BTeg3ctv5VhaA-i4/edit?usp=sharing > the link to the experimental FAUST IDE that comes with the GUI Builder for > WebAudio plugins in in there... Follow the tuto and you'll get all you need > to reuse WebAudio code compiled from FAUST, including GUIs if needed. > > > > Please send me feedback in case of troubles or comments. You need Google > Chrome recent or soon FireFox Nightly (a matter of days before they have > 100% support for Audio Worklets) > > > > About the WebAudio plugin format we designed, we wrote several papers > (look for WebAudio plugins on google scholar), and here is a presentation > we gave in 2018, some examples might break now I need to update them, but > this will give you a good idea of what we have done : > > > > > https://docs.google.com/presentation/d/1i629cpj8a5txjCg8MDtqQvERyrQXD7Q0exgIiu_0bmU/edit?usp=sharing > > > > Michel Buffa > > > > Le mer. 26 févr. 2020 à 09:17, Stéphane Letz <l...@grame.fr> a écrit : > >> > >> 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 > > > > _______________________________________________ > > Faudiostream-users mailing list > > Faudiostream-users@lists.sourceforge.net > > https://lists.sourceforge.net/lists/listinfo/faudiostream-users > > > > -- > "Anybody who knows all about nothing knows everything" -- Leonard Susskind > >
_______________________________________________ Faudiostream-users mailing list Faudiostream-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/faudiostream-users