Sites


Performance audiovisuelle et pratique du VJing

Flux vidéo en réseau et inter-applicatifs

Considérons maintenant d'autres sources d'images pour la création audiovisuelle live : la possibilité d'utiliser des flux vidéos issus d'Internet, d'un "media center" ou d'une caméra réseau en live streaming, et la possibilité de combiner deux logiciels pour nourrir l'un avec la sortie de l'autre et bénéficier ainsi des possibilités de création de plusieurs outils à la fois.

Utiliser de la vidéo en direct en streaming

Si à l'époque où les premiers programmes multimédias sont apparus, le réseau ne permettait pas réellement de diffuser (streamer) de la vidéo, les progrès des techniques de compression comme la croissance continue du débit de l'Internet et des réseaux locaux permettent aujourd’hui d'intégrer la vidéo issue d'un réseau local, d'Internet aussi bien que de son disque dur. Certains programmes évoqués dans ce manuel (les bibliothèques  pour Pure data Gem et PDP par exemple) permettent en effet de ne pas avoir à télécharger préalablement des contenus vidéo et de les utiliser directement en les appelant sur les serveurs où ils sont hébergés pendant le temps de la performance. Cela n'a d'intérêt que s'il s'agit d'utiliser des flux vidéos en direct, sinon, il est préférable de télécharger préalablement les vidéos voulues pour éviter toute déconvenue pendant la performance due à une congestion du réseau.

Dans un registre voisin, des artistes ont utilisé des flux vidéos issus de satellites pour les rejouer et transformer en direct, à l'image du projet "Signal Sever" réalisé durant les nuits blanches 2004, connecté avec le Festival Art+Communication à Riga.

Performance "Signal Sever !" réalisée par Projekt Atol - Nuit Blanche à Paris en 2004

Les serveurs de médias

On peut aussi appuyer une performance sur un serveur de médias qui "servira" les vidéos au fur et à mesure des besoins d'un live dans un réseau local. De plus en plus de lieux de spectacles sont équipés de serveurs de medias. Ces serveurs sont généralement utilisés pour la diffusion de contenus vidéo-projetés ou diffusés sur téléviseurs. Souvent peu transformables et "bidouillables" car basés sur des solutions propriétaires.

Il est possible de se constituer un serveur de médias avec des outils libres. il existe des distributions linux de type "media center", plutôt développées pour un usage à domicile, ou des serveurs plus spécifiques qui peuvent être montés avec des outils comme VLC ou GStreamer.

Les caméras IP

Autre source de vidéo en réseau, celle transmise par les caméras IP. Ce sont des caméras dont la sortie est une prise réseau (comme un réseau informatique local câblé en RJ45) et qui transmettent leurs images via ce réseau à l'ordinateur connecté.

Ce type de caméra présente l'avantage de pouvoir être déportée sur de grandes distances, il est en effet relativement facile de faire transiter sur de longues distances des quantités d'images à travers des câbles et switchs réseau. Aujourd'hui, ce type de caméra et de transmission d'images se retrouve plutôt dans le monde industriel, on peut donc être amené à utiliser ce type de matériel lorsque l'on a des besoins spécifiques : caméra infrarouge industrielle, caméra à vitesse rapide, caméra pilotable à distance ou intégrant un algorithme de vision par ordinateur directement dans son électronique.

Caméra Elphel NC353L développée sur le modèle du matériel libre (voir http://www3.elphel.com/), discussions à ce propos à retrouver sur le forum http://www.openipcam.com 

Combiner plusieurs logiciels

Il peut être tout à fait intéressant de combiner plusieurs logiciels pour bénéficier des potentiels créatifs de chacun. La méthode la plus simple est d'utiliser plusieurs ordinateurs et de faire en sorte que l'ordinateur "source" sorte le signal vidéo dans un format que le deuxième ordinateur puisse acquérir, soit un signal vidéo analogique envoyé sur une carte d'acquisition pour faire au plus simple. Cette configuration n'est pas des plus pratiques car elle nécessite beaucoup de matériel et ne permet pas de garder de grandes résolutions d'image.

Heureusement il existe d'autres solutions plus légères et performantes mais bien différentes d'un système d'exploitation à l'autre. La combinaison de logiciels sur un même ordinateur peut être fortement consommatrice de ressources, puisqu'à l'activité des deux logiciels il faut en plus ajouter les ressources nécessaires pour transférer les images de l'un à l'autre, mais elle permet par exemple de répartir automatiquement les calculs entre les différents cœurs du CPU*.

Sous GNU/Linux

Plusieurs possibilités sont offertes, on peut utiliser par exemple un logiciel comme Webcamstudio (http://www.ws4gl.org/) qui permet de capturer une partie de l'écran et restituer ces images sous la forme d'un périphérique type webcam dans n'importe quel autre logiciel capable d'afficher l'image d'une caméra. Notons que sa configuration est plutôt simple, qu'il est assez performant et qu'il permet également de streamer de la vidéo vers un serveur Icecast.

Autre possibilité sous Linux, utiliser Gstreamer qui est en quelque sorte le "couteau suisse" de la vidéo et qui permet de faire des pipes, des tuyaux vidéo entre des applications. Pour cela les applications doivent être compatibles avec Gstreamer.

C'est le cas de Pure Data qui comprend dans les dernières version de la librairie GEM un objet spécifique (PdGST) qui donne accès à toutes les fonctions du logiciel : appeler des images issues d'un autre logiciel visuel compatible avec GStreamer ou encore streamer la sortie de Pure Data. Cet objet doit être compilé à part, pour cela voir les instructions sur cette page : http://wiki.labomedia.org/index.php/Pure_Data_vs_GStreamer#Installation_PdGst

Plus d'informations sur GStreamer (GNU/Linux) : http://gstreamer.freedesktop.org/ et http://fr.wikipedia.org/wiki/GStreamer

Webcamstudio envoyant une image du bureau de l'ordinateur dans Pure Data/GEM mise en abîme.

Sous Mac OS X

Depuis août 2010, la technologie libre Syphon, développée par Tom Butterworth et Anton Marini, permet de faire passer des visuels d'un logiciel à l'autre en temps réel, en utilisant l'accélération matérielle de la carte graphique de l'ordinateur.

À l'heure actuelle, une vingtaine de logiciels de vidéo temps réel ou de programmation multimédia intègrent les fonctionnalités client et serveur rendues possible par Syphon. L'implémentation est en cours de développement dans une demi-douzaine d'autres applications.

Dans le logiciel source, le serveur Syphon apparaît comme une sortie, au même titre qu'un deuxième écran. Dans le logiciel cible, on sélectionne le client Syphon comme n'importe quel autre type de contenu source (séquence vidéo, image fixe, camera, etc) et on le place sur le calque désiré pour le mixer avec les autres médias.

Si le client ou le serveur Syphon n'est pas encore implémenté dans le logiciel utilisé, il suffit d'utiliser l'un des  plugins proposés (Quartz Composer, FreeFrame GL, Max 6 et Unity 3D Pro)

Des tutoriaux vidéo sont disponibles (entre autres pour l'utilisation des plugins Quartz Composer et FreeFrame GL) sur le site http://syphon.v002.info

En bas, l'image de l'animation générée avec Processing, envoyée au logiciel de mix vidéo par Syphon. En haut, le résultat de cette animation mixée avec un autre contenu dans la fenêtre de sortie du logiciel VJing.

Sous windows

Cette opération est apparemment possible sous Windows depuis Windows Vista en utilisant DirectX, voir à ce sujet la discussion "directx shared resources on windows" sur le forum de Syphon : http://v002.info/forums. Un utilisateur semble avoir réussi à utiliser cette technique avec le logiciel vvvv.

Il y a une erreur de communication avec le serveur Booktype. Nous ne savons pas actuellement où est le problème.

Vous devriez rafraîchir la page.