Published July 6, 2022
| Version v1
Conference paper
Modernized Toolchains to Create JSPatcher Objects and WebAudioModules from Faust Code
Contributors
Others:
- Université Jean Monnet [Saint-Étienne] (UJM)
- Etudes du contemporain en littératures, langues, arts (ECLLA) ; Université Jean Monnet [Saint-Étienne] (UJM)-École nationale supérieure d'architecture de Saint-Étienne (ENSASE)
- University of Shanghai [Shanghai]
- Centre national de création musicale (GRAME) ; Centre National de Création Musicale
- CITI Centre of Innovation in Telecommunications and Integration of services (CITI) ; Institut National des Sciences Appliquées de Lyon (INSA Lyon) ; Université de Lyon-Institut National des Sciences Appliquées (INSA)-Université de Lyon-Institut National des Sciences Appliquées (INSA)-Institut National de Recherche en Informatique et en Automatique (Inria)
- Systèmes Embarqués audio programmables (EMERAUDE) ; CITI Centre of Innovation in Telecommunications and Integration of services (CITI) ; Institut National des Sciences Appliquées de Lyon (INSA Lyon) ; Université de Lyon-Institut National des Sciences Appliquées (INSA)-Université de Lyon-Institut National des Sciences Appliquées (INSA)-Institut National de Recherche en Informatique et en Automatique (Inria)-Institut National des Sciences Appliquées de Lyon (INSA Lyon) ; Université de Lyon-Institut National des Sciences Appliquées (INSA)-Université de Lyon-Institut National des Sciences Appliquées (INSA)-Institut National de Recherche en Informatique et en Automatique (Inria)- Centre national de création musicale (GRAME) ; Centre National de Création Musicale-Centre National de Création Musicale-Inria Lyon ; Institut National de Recherche en Informatique et en Automatique (Inria)
- Web-Instrumented Man-Machine Interactions, Communities and Semantics (WIMMICS) ; Inria Sophia Antipolis - Méditerranée (CRISAM) ; Institut National de Recherche en Informatique et en Automatique (Inria)-Institut National de Recherche en Informatique et en Automatique (Inria)-Scalable and Pervasive softwARe and Knowledge Systems (Laboratoire I3S - SPARKS) ; Laboratoire d'Informatique, Signaux, et Systèmes de Sophia Antipolis (I3S) ; Université Nice Sophia Antipolis (1965 - 2019) (UNS) ; COMUE Université Côte d'Azur (2015-2019) (COMUE UCA)-COMUE Université Côte d'Azur (2015-2019) (COMUE UCA)-Centre National de la Recherche Scientifique (CNRS)-Université Côte d'Azur (UCA)-Université Nice Sophia Antipolis (1965 - 2019) (UNS) ; COMUE Université Côte d'Azur (2015-2019) (COMUE UCA)-COMUE Université Côte d'Azur (2015-2019) (COMUE UCA)-Centre National de la Recherche Scientifique (CNRS)-Université Côte d'Azur (UCA)-Laboratoire d'Informatique, Signaux, et Systèmes de Sophia Antipolis (I3S) ; Université Nice Sophia Antipolis (1965 - 2019) (UNS) ; COMUE Université Côte d'Azur (2015-2019) (COMUE UCA)-COMUE Université Côte d'Azur (2015-2019) (COMUE UCA)-Centre National de la Recherche Scientifique (CNRS)-Université Côte d'Azur (UCA)-Université Nice Sophia Antipolis (1965 - 2019) (UNS) ; COMUE Université Côte d'Azur (2015-2019) (COMUE UCA)-COMUE Université Côte d'Azur (2015-2019) (COMUE UCA)-Centre National de la Recherche Scientifique (CNRS)-Université Côte d'Azur (UCA)
Description
Faust, as an audio domain specific language (DSL) for DSP, has different compilation targets including WebAudio nodes. An AudioWorklet processor wrapping a WebAssembly DSP can be generated statically from native platform compilers as a JavaScript module with wasm files, or dynamically in a browser using a WebAssembly version of the compiler. The WebAssembly compiler has been used in various WebAudio projects through a JavaScript module faust2webaudio, such as the Faust IDE and JSPatcher.In the paper, we present recent work on a new version of the FaustWebAssembly compiler for the WebAssembly target and its JavaScript wrapper module: faustwasm. Using modern JavaScript tools, the module is designed to be cross platform and runnable under both Node.js and browser environment to generate, compile, and instantiate WebAssembly binary code from Faust code and wrap the binary as an AudioWorklet Processor. Based on this module, we created faust2wam, a WebAudio plugin generator for the WebAudioModule standard with an automatically generated user interface. We also created a tool as an external package for JSPatcher to generate JSPatcher DSP objects in bulk.
Abstract
International audienceAdditional details
Identifiers
- URL
- https://hal.inria.fr/hal-03812938
- URN
- urn:oai:HAL:hal-03812938v1
Origin repository
- Origin repository
- UNICA