Suite aux premières essais de projection spatialisée et de spatialization sonore, nous avons voulu combiner les deux composantes et faire un présentation de nos résultats. Un premier prototype combiné a été mis en place pour ouvrir le projet de résidence dans un échange avec quelques personnes du milieu trad (voir ici pour plus de détails), de la mise en scène et des arts numériques. La scénographie consistait à une projection visuelle sur trois surfaces et une spatialisation sonore à quatre hauts parleurs.
Le Moniteur de contrôle est un interface qui sert à la fois à calibrer et à comprendre le fonctionnement de la planche qui présente de 3 façons différentes les données obtenues par ses 12 senseurs. La spatialisation sonore, quant à elle, consiste à diriger le son captés par le micro analogique de type piezo intégré à la planche dans un seul des quatre hauts-parleurs, selon où la planche a été frappée.
Outils
- Planche de podorythmie 5
- Carte son Behring XR18
- Haut-parleurs (4)
- Projecteurs (3)
- Ordinateurs (2)
Logiciels
Flux de données
Dans le cadre de la rencontre, deux pipelines de spatialisation fonctionnaient en parallèle : un pour la projection et un pour le son.
- Image :
- Planche 5 → usb → ordinateur 1 → Processing → ethernet → ordinateur SAT → splash → projecteurs
Les données de 12 senseurs (8 FSR, 4 Piezo) sont lues par un Teensy et envoyées à l’ordinateur par signal MIDI via USB dans Processing. Les données sont ensuite analysées par Processing et utilisées pour générer des éléments visuels dans le canevas. Le canevas Processing est ensuite capté par OBS et envoyé via Ethernet au serveur local par un plugiciel NDI. L’image reçue par l’ordinateur SAT est spatialisée avec 3 projecteurs via le logiciel Splash.
Son :
- Planche 5 → jack audio → carte son → usb → ordinateur → QjackCTL → Satie → usb → carte son → haut-parleurs
Un micro de surface piezo est installé au centre de la planche et connecté à un fil auxiliaire. Le fil auxiliaire est branché à un booster d’impédance et ensuite connecté à la carte son. La carte son envoie par USB le signal du micro qui est ensuite reconnu par QjackCtl. Satie reçoit un signal OSC envoyé par Processing pour déterminer quel haut-parleur sortira l’entrée de son du micro.
Défis
Jusqu’à ce jour, la spatialisation sonore et la spatialisation visuelle avaient été testées séparément. Le défi de cette installation était donc de les faire fonctionner ensemble, pour démontrer les agencements technologiques possibles dans un contexte scénographique.
La projection fut aussi adaptée à deux nouveaux aspects :
- Projeter au sol en plus du coin de mur
- Découper un nouveau programme Processing dans la surface de projection
Ces changements ont requis plus de temps que prévu compte tenu le manque de familiarité avec Splash et Blender, deux logiciels qui fonctionnent de pair pour la spatialisation de l’image. Après un peu de familiarisation et l’aide de l’équipe du Metalab, notre interface graphique était spatialisée sur les surfaces de projection.
Pour ce qui en est de la spatialisation sonore, une interférence de signal a été constatée, rendant impossible la scénographie imaginée avec le flux de signal imaginé. Elle était causée par le fait que Processing lisait déjà le signal MIDI envoyé par la planche et empêchait Supercollider de recevoir le signal par la suite. Pour adresser ce problème, un peu de code a du être écrit dans le programme Processing, afin de relayer le signal à Satie, en format OSC. Ce processus a par contre contraint l’équipe à augmenter le délai de la sortie du son capté par le micro, ce qui a fait en sorte que le son parvient un peu trop tard à l’oreille, donnant un mini effet d’écho. Dans le futur, ce sera donc le script d’analyse du midi de la planche qui servira à envoyer à la fois un signal à Processing et un à la spatialisation sonore, permettant de rétablir la performance obtenue en contexte d’expérimentation.
Constats et apprentissages
Dans le but de maximiser l’usage des données captées par les senseurs de la planche 5, nous avons voulu diversifier le traitement à travers différents logiciels et outils. D’un point de vue externe (et interne), le nombre élevé de composantes du pipeline peut sembler mélangeant. Pour relier les logiciels ensemble, il a fallu ajouter des plugiciels et utiliser des protocoles de communication compatibles. C’est souvent la stratégie adoptée quand on travaille dans un système composé de logiciels libres. L’équipe du Metalab ainsi que la communauté web fait preuve de créativité pour adapter les fonctions des logiciels selon le cas. La mentalité open source encourage les usagers à réutiliser les outils des autres, par conséquences la communauté développent des logiciels flexibles et adaptables. Dans notre cas, la planche émet un signal MIDI qui est par la suite transformé en OSC dans Processing. Satie intègre facilement les signaux OSC et peut directement être modulé à travers ceux-ci si le message est envoyé au bon endroit. Pour ce qui en est de Splash, il reçoit la capture d’écran OBS qui utilise un plugiciel NDI pour envoyer l’image sur le réseau par ethernet. Par la suite, il spatialize l’image en fonction d’un modèle 3d fait dans Blender en communicant par shmdata. La méthode que l’on utilise peut sembler compliquée, mais exige moins de travail technique de notre côté. Plutôt que de coder entièrement les outils que nous utilisons, nous faisons usage des outils déjà existant. D’une part, cela permet de passer moins de temps à mettre en place des protocoles de communication, mais aussi de ce familiariser avec la méthode des autres.
Pour résumé, le pipeline requière que l’on pense en termes des besoins de chaque logiciels: c’est à dire quelle format de signal/donné il peut produire et recevoir.
Logiciel / outil | Entrée | Sortie |
Planche 5 | – | MIDI, XLR |
Behring XR18 | XLR, Jack | USB |
QJackCtl | USB, Jack | son |
Processing | Serial, MIDI, OSC | Serial, MIDI, OSC |
Satie | USB, Jack, OSC, MIDI | Son |
OBS | Capture d’écran | NDI |
LivePose | capture caméra | OSC |
Splash | capture d’écran, shmdata | Projection spatialisée |
Blender | – | shmdata |
Prochaines étapes
Suite à l’échange avec les participant·e·s de la rencontre, voici quelques pistes d’amélioration côté scénographie :
- Améliorer l’algorithme de détection des pas en utilisant davantage les données des senseurs piezo
- Ajouter de livePose au flux de données afin d’augmenter le nombre de signaux utilisables. Ces dernières pourront par exemple être utilisées notamment pour transformer la texture des images.