Transformer le navigateur web en station de travail audio

Encadrants : 

Occurrences : 

2016

Nombre d'étudiants minimum: 

3

Nombre d'étudiants maximum: 

5

Nombre d'instances : 

1

Une station de travail audio a pour objectifs :

  • enregister des pistes audio
  • rejouer une ou plusieurs pistes tout en enregistrant d'autres
  • effectuer sur les pistes enregistrées les opérations de post-production telles que : fade in, fade out, mixage, filtrage des pistes (passe-haut, passe-bas, égalisation), ajout d'effets (flanger, phaser, réverberation).

En utilisant les possibilités offertes par HTML5 et javascript sur le plan multimédia et celle offertes par python pour le traitement du signal, ce projet propose de réaliser une station de travail fonctionnant dans un navigateur web.

Un premier démonstrateur devra permettre de mesurer la réponse de la chaine haut-parleur → microphone :

  • fabriquer un signal audio (codes de Golay ou sinusoïde wobulée),
  • via l'interface HTML, l'envoyer vers le haut-parleur et enregistrer le signal microphone,
  • sous python, estimer la fonction de transfert et la réponse impulsionnelle,
  • sous HTML, visualiser le résultat.

Une variante de ce démonstrateur pourra aussi être construite en pur javascript au lieu de traiter sous python.

Le second démonstrateur ajoutera la visualisation des pistes audio et les éléments de post-production ainsi que la restitution du mix. L'ambition de ce démonstrateur sera ajustée à l'investissement des étudiants.

La réalisation de ce projet nécessite la mise en œuvre de compétences sur HTML5, javascript et les API telles que WebAudio ainsi que du traitement du signal de base (filtrage, FFT).