Mots clés
audio communication compiler composition dataflow Domain Specific Language DSP ecosystem Elody FAUST functional graphic inscore interaction language lock-free MIDI MidiShare music music score musicale musique operating processing programming real-time score signal synchronization systems
2015 |
Letz, Stéphane; Denoux, Sarah; Orlarey, Yann; Fober, Dominique Faust audio DSP language in the Web (Inproceeding) Proceedings of the Linux Audio Conference, pp. 29–36, GRAME 2015. (Abstract | Links | BibTeX | Étiquettes: Domain Specific Language, DSP, FAUST, real-time, Web Audio API) @inproceedings{letz15a,
title = {Faust audio DSP language in the Web}, author = {Stéphane Letz and Sarah Denoux and Yann Orlarey and Dominique Fober}, url = {Faust-web-lac.pdf}, year = {2015}, date = {2015-04-10}, booktitle = {Proceedings of the Linux Audio Conference}, pages = {29–36}, organization = {GRAME}, abstract = {With the advent of both HTML5 and the Web Audio API (a high-level JavaScript API for audio process- ing and synthesis) interesting audio applications can now be developed for the Web. The Web Audio API offers a set of fast predefined audio nodes as well as customizable ScriptProcessor node, allowing developers to add their own javascript audio processing code. Several projects are developing abstractions on top of the Web Audio API to extend its capabilities, and offer more complex unit generators, DSP effects libraries, or adapted syntax. This paper brings an- other approach based on the use of the Faust audio DSP language to develop additional nodes to be used as basic audio DSP blocks in the Web Audio graph. Different methods have been explored: going from an experimental version that embeds the complete Faust native compilation chain (based on libfaust + LLVM) in the browser, to more portable solutions using JavaScript or the much more efficient asm.js version. Embedding the Faust compiler it- self as a pure JavaScript library (produced using Emscripten) will also be described.The advantages and issues of each approach will be discussed and some benchmarks will be given.}, keywords = {Domain Specific Language, DSP, FAUST, real-time, Web Audio API}, pubstate = {published}, tppubtype = {inproceedings} } With the advent of both HTML5 and the Web Audio API (a high-level JavaScript API for audio process- ing and synthesis) interesting audio applications can now be developed for the Web. The Web Audio API offers a set of fast predefined audio nodes as well as customizable ScriptProcessor node, allowing developers to add their own javascript audio processing code. Several projects are developing abstractions on top of the Web Audio API to extend its capabilities, and offer more complex unit generators, DSP effects libraries, or adapted syntax. This paper brings an- other approach based on the use of the Faust audio DSP language to develop additional nodes to be used as basic audio DSP blocks in the Web Audio graph. Different methods have been explored: going from an experimental version that embeds the complete Faust native compilation chain (based on libfaust + LLVM) in the browser, to more portable solutions using JavaScript or the much more efficient asm.js version. Embedding the Faust compiler it- self as a pure JavaScript library (produced using Emscripten) will also be described.The advantages and issues of each approach will be discussed and some benchmarks will be given.
|