image par Desaxismundi
image (extraite d'une animation) créée avec VVVV par Desaxismundi


VVVV est un environnement de programmation dédié à la synthèse visuelle en temps réel, il permet la manipulation et le traitement de données textuelles, sonores, graphiques ou vidéo. Les programmes VVVV sont conçus sous forme visuelle, en reliant des « boîtes » (les « nodes ») qui remplissent chacune une fonction précise (on retrouve ce type de programmation dans pure-data ou max-msp). VVVV est également conçu pour relier des interfaces physiques (capteurs divers, joysticks, écrans tactiles, etc.) avec des données audiovisuelles.

VVVV, exemple d'un patch
exemple d'un patch avec VVVV, à droite le programme, à gauche le résultat


VVVV se base sur la technologie DirectX, propre à Microsoft et ne fonctionne que sur les plateformes windows. Cette technologie fut développée à l'origine pour donner une base commune aux fabricants de cartes graphiques, et faciliter la tache des programmeurs de jeux vidéo, qui peuvent alors coder sans se préoccuper des caractéristiques de chaque carte graphique. VVVV permet de programmer directement les unités de calcul des cartes graphiques, et de profiter au mieux de leurs capacités 3D en utilisant les shaders.

Bien que doté de capacités sonores, VVVV n'est pas adapté à la synthèse audio, par contre certains composants permettent d'analyser le son en temps réel et de créer des animations graphiques synchronisées, réagissant aux changements de la musique. C'est donc un environnement adapté aux pratiques de création visuelle des VJ (visual-jockey).

Parmi les autres points forts de VVVV : l'analyse vidéo en temps réel, à partir de webcam ou de caméras qui permet, via les extensions freeframe de détecter les mouvements, de suivre des objets ; l'utilisation de plusieurs écrans pour diffuser ou de plusieurs ordinateurs pour répartir la charge de calcul (« boygrouping ») ; la simulation physique (gravité, collision, etc.) en temps réel pour les animations 3D (basée sur la librairie open-source Open Dynamics Engine) ; une palette étendue de protocoles de communications (série, RS232, MIDI, DMX, OSC, etc.) qui permet d'y relier de nombreux appareils : lecteurs DVD, écrans tactiles, équipement MIDI, joysticks, et divers capteurs et montages électroniques réalisés sur mesure.

VVVV est développé en Allemagne par une équipe de 4 personnes, il n'est pas en open-source mais son utilisation est gratuite dans un cadre non-commercial. Des licences sont proposées pour les usages commerciaux, l'appréciation est laissée à chaque utilisateur selon quelques règles établies par les développeurs.

image par Sanch
image (extraite d'une animation) créée avec VVVV par Sanch


Pour en savoir plus sur VVVV : site principal VVVV, documentation, galerie

Des images et des vidéos réalisées avec VVVV : les sites de Sanch et Desaxismundi dont les images illustrent ce billet, le groupe flickr consacré à VVVV, un groupe VVVV sur youtube.

Et pour finir une vidéo que l'on doit à Elmeiero, qui fait dialoguer piano solo et animation :