WAM-studio, une station de travail audio-numérique pour le Web
Journées d’Informatique Musicales 2023
24-26 Mai 2023
(Lien de la présentation : �https://tinyurl.com/3jv6rhpa)
Michel Buffa, Antoine Vidal-Mazuy
Université Côte d’Azur / Laboratoire I3S / INRIA, WIMMICS group,
michel.buffa@univ-cotedazur.fr, @micbuffa�
Qui suis-je ?
WebAudio, WebMidi, etc.
Concepts de l’API WebAudio
Opérations audio dans un Audio Context
let ctx = new AudioContext();
Conception modulaire :
let osc1 = ctx.createOscillator();
osc1.frequency.value = 440;
let gain1 = ctx.createGain();
gain1.gain.value = 0.1;
osc1.connect(gain1).connect(ctx.destination);
Architecture interne
WebAudioModules (WAM)
audio plugins pour le Web
WAMs dans des logiciels hôtes
DAWs commerciaux
Soundtrap.com (spotify)
Ampedstudio.com
Bandlab.com
Soundation.com
DAWs: le photoshop de l’audio
Enregistrer, éditer, mixer des pistes audio et MIDI
Pistes associées à des plugins (effets audio, instruments)
Automation des paramètres
Gérer le temps-réel et la latence!
WAM-Studio: un DAW open source compatible WAM !
Motivation:
Challenge 1: concevoir un framework host/plugin Web
Challenge 2 : host/plugin communication (i.e 44.1Khz)
Contrôle bas-niveau de la lecture nécessaire.�Chaque piste est un AudioWorklet (WAMNode+WAMProcessor)
No need to schedule ahead in time like in the famous article “A tale of two clocks” by C.Wilson.
Challenge 3 : gérer la latence
Latence = RETARD !
1 - Latency Round-trip: la durée qu'il faut pour qu'un signal, tel qu'une voix chantée ou un solo de guitare, passe d'une entrée analogique sur une interface audio, à travers les convertisseurs analogique-numérique, jusqu'au DAW, puis retourne ressorte par l'interface audio. Si cette durée est élevée, cela impacte négativement la capacité du musicien à jouer en rythme, par exemple. Elle devrait être < 20 ms.
2 - Latence de sortie : temps mis à un son émis par le DAW pour atteindre la sortie audio
3 - latence d’entrée : temps écoulé avant que l'enregistrement ne démarre dans le DAW lorsque l'on joue d'un instrument ou que l'on chante dans un microphone. Doit être prise en compte lors de l'enregistrement !
Latence d’entrée = latence round-trip - latence de sortie
Challenge 3: compenser la latence d’entrée
SOLUTION INTÉGRÉE DANS LE DAW !
Challenge 4: enregistrer plusieurs pistes en même temps de manière robuste, pendant la lecture d’autres pistes…
A small projet from recording to mixing
CONCLUSION + WAM-Studio disponibilité
WAM-Studio est en développement mais fonctionnel et stable
WAM-Studio a des mises à jour hebdomadaires…�
WAM-Studio travail en cours…
Bientôt disponible:
Plus tard: