[ Show control et synchronisation par timecode ] 2ème partie
Suite de l'article sur le show control et les environnements synchronisés par timecode.
Pour accéder à la partie "théorique" ⇒ Page 1 : partie théorique.
Les "vraies" solutions de show control dédiées
Le show control vient chapeauter tout ce petit monde, en contrôlant chaque appareil. Il peut servir à envoyer de simples commandes (marche/arrêt/lecture/stop/...) ou servir au pilotage complet, le tout en fonction de ce que l'utilisateur ou le performer fait. Il peut aussi offrir une interface de contrôle simplifiée (sur un écran tactile par exemple) réunissant les fonctions indispensables pour permettre de gérer le show et suivre en direct tout événement, programmé ou non.
Les logiciels ou les matériels dédiés au show control sont à même de gérer des show complets sur presque tous leurs aspects (son, image, lumière, effets spéciaux, automatismes et servitudes annexes, sécurité, IHM, etc... + timecode)
Les shows peuvent suivre une timeline qui décrit ce qui se passe temporellement pour chaque instant. Ou au contraire, réagir à une interaction avec l'utilisateur ou le spectateur. Voire même, un mélange des deux.
Pour arriver à ceci, les logiciels ou le hardware de show control intègrent des fonctions plus spécifiques (en dehors des interfaces avec les autres machines et la gestion linéaire temporelle) se rapprochant plus des automates programmables industriels : gestion d'événements non synchrones, actions à tenir relativement à la sécurité, procédure particulières ("allumage" du show le matin, extinction le soir, tests et dépannage, mise en sécurité, évacuation...) Ceci passe notamment par des éléments de programmation "logique" (Ladder, Grafcet...) ou sous forme de scripts conditionnels.
Quelques constructeurs se disputent le marché du show control, avec des produits répondant à toutes les demandes, petites ou... énormes ! Je ne développerai pas les solutions ici, car il s'agit là d'un vrai métier à part entière !
Les solutions du "pauvre"
Pourquoi du pauvre ? Parce que les "vraies" solutions dédiées sont malheureusement coûteuses.
Certes, le prix est justifié pour tout un tas d'aspects (sécurité, possibilités, ouverture, évolutivité, pérennité, ...) mais parfois ces solutions sont surdimensionnées pour des tâches "simples", qui ne méritent pas de requérir à l'artillerie lourde ! Pour ces cas là, un peu d'imagination et de bidouille permettent d'arriver à un résultat tout aussi efficace. Les solutions détaillées ici ne sont pas réellement des contrôleurs au sens show control, mais permettent néanmoins d'asservir plusieurs domaines les uns aux autres, avec une synchronisation par timecode (ou non). Cependant elles peuvent imposer des limitations techniques, artistiques et créatives...
Ces astuces sont surtout valables pour un "one-shot", une installation temporaire, ou un show sur une courte durée, car la mise en oeuvre réclame un minimum de connaissances et de suivi pour assurer le bon fonctionnement. De plus, ça reste de la "bidouille", avec des outils pas forcément dédiés, donc peu évolutifs, pas toujours ergonomiques, rarement modifiables à la volée en "live" pour le suivi du show, sans interfaces "user friendly", sans l'assurance de la fiabilité et de la sécurité.
En pratique, tout dépendra de ce que l'on cherche à faire, ce que l'on veut piloter, ce que l'on doit synchroniser comme différents "univers", des besoins d'interactions entre les différents univers, mais aussi et surtout des moyens techniques à disposition (et du budget !)
Les solutions "alternatives" ou détournées, non dédiées
Elles n'intègrent en général que deux ou trois univers à piloter (son et lumière, parfois vidéo). Ces solutions sont dites "aveugles" (sans retour d'informations) et ne sont pas vraiment prévues pour piloter l'intégralité d'un show.
L'idée est d'exploiter les possibilités natives du logiciel (ou du matériel), mais aussi de détourner son champ d'action pour piloter d'autres "mondes", pas compatibles initialement.
Si le logiciel ou le matériel est capable en plus de suivre du timecode, le mélange de différents mondes et supports de médias n'en sera que facilité.
Séquenceur audio et MIDI
L'idée est de se servir de logiciels séquenceurs musicaux (son et/ou MIDI) et de les interfacer à d'autres appareils pour externaliser des signaux de toute autre nature. Les instruments MIDI usuels se voient remplacés par des interfaces de conversion de protocoles, et au lieu de jouer des notes sur une partition, le séquenceur lance des événements sur une time-line.
Le MIDI peut être converti par exemple en 0/10V avec un démultiplexeur MIDI→0/10V, ou être utilisé pour piloter une console lumière DMX directement en MIDI (envoi des canaux DMX directement ou appel de tableaux).
Les séquenceurs audio sont capables de fournir de l'audio, du midi, et sont souvent capables de générer ou de se synchroniser à un timecode (MTC). Parfois même, ils peuvent lire de la vidéo.
De nombreux séquenceurs existent, payants ou gratuits :
Liste de séquenceurs (Wikipedia -eng-)
Console lumière
La plupart des consoles lumière DMX "évoluées" (ainsi que des restitueurs) intègrent une fonction de suivi d'événements par timeline esclave d'un timecode, utilisée pour faire du "light-show timecodé".
Si l'on veut piloter autre chose que de la lumière, il faudra convertir le protocole DMX pour s'en servir à d'autres fins. Par exemple en passant par des convertisseurs ou des démultiplexeurs (contacts secs TOR ou signaux 0/10V, ...)
Certaines consoles sont aussi capables de gérer nativement des médias serveurs vidéo, centralisant alors les contrôles en un seul point névralgique. Attention cependant à la synchronisation "relative" des médias : seule la timeline est synchronisée, et donc les médias ne sont synchronisés en général que par le "top départ" de la timeline, et défilent ensuite en roue libre.
Les versions logicielles de pilotage de la lumière intègrent aussi généralement une fonction de timeline ou de grille d'événements synchronisée à un fichier audio lu en interne, ou bien à un timecode externe.
Voici quelques solutions logicielles principalement dédiées à la lumière, mais qui peuvent servir plus largement à piloter d'autres choses :
DMXControl
[ Gratuit ] Windows
Ce logiciel pilote aussi bien des projecteurs "traditionnels" que des projecteurs "asservis", mais aussi d'autres interfaces (MIDI, port LPT). Si le logiciel est prometteur, il souffre cependant de petites lourdeurs qui pourraient facilement rebuter, d'autant plus que la traduction anglaise laisse quelques termes en allemand de-ci de-là (langue des développeurs).
Le déroulé de la synchronisation ne se fait pas sur une timeline, mais dans un tableau qui liste les événements (succession de lignes d'exécution : états, cues, déclenchements, lecture audio, ...)
Les +
- nombreuses interfaces DMX reconnues
- pilotage du port parallèle LPT (sur 12 bits)
- asservissement à un timecode MTC entrant
- possibilité de pilotage MIDI
Les −
- interface peu optimisée (rébarbative) pour la partie timecodée (entrée et modification laborieuses des cues)
- pas de lecture en roue libre (hors synchro)
- pas de visualisation des pas actifs en synchro
- les temps dans la liste sont affichés en millisecondes et non pas en format images comme le timecode entrant
- traduction à finir
Protocoles de sortie
- DMX
- port LPT (12 bits)
- MIDI
- Audio (fichier stéréo)
- ArtNet
Protocoles d'entrée
- synchro MTC
- MIDI
- DMX
Remarque : attention au mode "Edit View" (à cocher pour créer et modifier les listes).
Version testée : v2.11 (build 0)
[ Gratuit ] Windows
DMXControl (Eng.)
DMXControl (De.)
PC_Dimmer
[ Gratuit ] Windows
Tout comme DMXControl, PC_Dimmer est extrêmement versatile et prometteur. Cependant, l'interface pourra dérouter (navigation par groupes de menus), et le gros souci reste la langue : dans la version testée le choix "français" ne change rien, et la version anglaise laisse énormément de termes en allemand...
La synchronisation peut être faite sur fichier audio ou vidéo en interne (attention aux codecs). L'édition se fait en simultané sur une timeline associée à la forme d'onde audio et sous forme de liste. L'édition des horaires des cues est par contre un peu déroutante.
La synchronisation peut aussi se faire par timecode MTC entrant. Par contre, point négatif : l'édition se fait uniquement par liste (pas de timeline).
Les +
- nombreuses interfaces DMX reconnues
- pilotage du port parallèle LPT (seulement sur 8 bits)
- synchronisation sur fichiers internes audio ou vidéo
- synchronisation sur MTC
- démarrages programmés
Les −
- traduction anglaise partielle (et traduction française non active)
- possibilité de lire des fichiers multicanaux (AC3) sur 8 sorties, mais pas dans le module de synchro (que stéréo)
- pas de timeline en synchro MTC
- quelques bugs
Protocoles de sortie
- DMX
- port LPT (8 bits)
- port RS-232
- MIDI (+ copie des sorties pour faders motorisés, ou autre usage !)
- ArtNet
- Audio + Vidéo (full screen)
Protocoles d'entrée
- MIDI
- synchro MTC
- DMX
- Télécommande infrarouge (via WinLIRC)
- Joystick
- Vidéo en direct
Remarque : ne pas oublier d'activer le "Process MIDI", et forcer la source MTC dans le "Timecodesource" en changeant de source au moins une fois avant de démarrer, sinon la synchro ne part pas ! (Bug ?) Les lignes de cues déjà activées s'affichent alors en vert. (Mettez une cue qui ne fait rien en 0h0m0s0i pour s'assurer du bon démarrage !!)
Version testée : v.5.0.5 Build 4291
[ Gratuit ] Windows
PC_Dimmer (De.)
Vixen
[ Gratuit ] Windows
Vixen a été développé initialement pour les animations lumineuses de Noël ou d'Halloween. Le logiciel permet le pilotage d'interfaces diverses : aussi bien du commerce que du "DIY" (à fabriquer soi-même), en passant par les ports sériels et parallèle de l'ordinateur. Le logiciel est aussi capable de lire du son (piste stéréo interne).
L'interface est un peu déroutante, mais les auteurs mettent à disposition des tutoriels vidéo pour démarrer facilement. La timeline permet de définir les niveaux de chaque sortie à chaque "pas" temporel. Mais on voit tout de suite poindre la limitation du logiciel : le "pas" temporel le plus petit ne descend pas sous les 25ms. Ce qui veut dire qu'un fade est en fait une succession de pas dont les valeurs croissent ou décroissent par sauts (en "escalier") pas forcément du plus bel effet ! Le problème des 25ms est aussi gênant pour les flashs : une impulsion "flash" durera forcément au moins 25ms ! Moyen pour du flash... Et pour finir, le pas de la grille empêche de battre le rythme précisément.
Il n'y a aucune synchronisation vers le monde extérieur, sauf à utiliser la piste audio pour générer du timecode LTC.
Les +
- pilotage via timeline claire
- lecture en synchro avec une piste audio interne
- pilotage DMX (quelques interfaces compatibles seulement)
- pilotage direct des ports parallèle et série
- démarrage automatique ou programmé
Les −
- le pas minimum sur la timeline de 25ms
- que quelques interfaces DMX compatibles seulement
- pas de synchro externe (à part par utilisation d'une piste audio en LTC)
- pilotage de lumières "traditionnelles", pas vraiment prévu pour les "asservis"
Protocoles de sortie
- DMX
- port LPT (12 bits)
- port série RS-232
- Audio (fichier stéréo)
Protocoles d'entrée
- interface spécialisée (kit Velleman)
Version testée : 2.1.1.0
[ Gratuit ] Windows
Vixen Lighting Automation
ShowMagic
[Gratuit - Freeware limité] Windows
ShowMagic a une approche bien particulière, en proposant une console virtuelle à multiples couches. Le logiciel nécessite de s'habituer à sa logique de double navigation par onglets, et le "double clic" ou le "clic droit" dans certains champs n'est vraiment pas intuitif.
La synchronisation ne permet de synchroniser des cues que sur un fichier audio interne.
Le logiciel fait aussi la liaison entre le protocole MIDI et le DMX
Les +
- liaison MIDI → DMX
Les −
- seulement quelques interfaces DMX compatibles
- limitation à 24 canaux DMX en version gratuite
- pas de MTC
Protocoles de sortie
- DMX
- MIDI
- Audio (fichier stéréo)
- ArtNet
Protocoles d'entrée
- MIDI
Version testée : ShowMagic SL Free Edition v13.0
[ Gratuit - version limitée ] Windows
ShowMagic SL Free Edition
Sunlite
[Payant] Windows
Pour compléter le test, j'ai essayé cette solution logicielle populaire (mais payante). N'ayant pas d'interface récente compatible, j'ai testé le logiciel 'dans le vide'.
La version "Suite 2" propose une timeline sur les boutons "cycles" qui permet de déclencher des effets pré-programmés (succession de boutons "switch", "scene", "cycle") en synchro.
L'éditeur "easy show" quand à lui permet la même chose mais aussi d'intégrer du son et/ou de la vidéo. L'éditeur n'a guère changé depuis les anciennes versions, à la différence du reste du logiciel (en même temps, quand le principe est bon, pourquoi tout changer ?!)
Pour comparaison, j'ai testé avec la vieille version du logiciel compatible avec l'interface que j'avais (Sunlite 2002, version 2010). La synchro par MTC est possible sur les boutons "cycles" et se présente sous la forme d'une liste d'événements (succession de boutons "scène", "switch" ou "cycle"). La programmation peut se faire à la volée, mais l'édition par contre est totalement laborieuse (en passant par des boutons à cliquer, et pas de modification directement dans la liste). Chose extrêmement bizarre : le timecode indiqué sur les lignes correspond à l'activation du pas suivant !! ?
L'éditeur "Easy show" lui par contre est bien pensé. Les habitués de montage vidéo ne seront pas dépaysés ! On pioche dans un chutier aussi bien des médias que des "boutons" préalablement créés dans Sunlite que l'on positionne sur la timeline. Timeline qui se synchronise sans souci à un MTC externe.
Les +
- gestion par timeline claire
- synchronisation sur MTC
- synchro audio et vidéo interne
Les −
- timecode sur les versions les plus chères uniquement ("First Class")
- Pour la version Sunlite 2002 : interface timecode des cycles archaïque et pas pratique à éditer + affichage décalé... Les dimmers semblent inopérants dans l'Easy Show.
Protocoles de sortie
- DMX
- Audio (fichier stéréo) et Vidéo
- MTC
- ArtNet
Protocoles d'entrée
- déclenchements TOR (tout ou rien) sur certains boîtiers DMX
- DMX
- MIDI
- MTC
- joystick
Attention, le timecode n'est fonctionnel que dans la version "First Class" des interfaces.
Version testée : Sunlite Suite 2 (06/2011) / Sunlite 2002 (03/2010)
[Payant] Windows
Sunlite (Nicolaudie)
Récapitulatif
Tableau récapitulatif des possibilités des logiciels :
Logiciel | Entrée Timecode | Sortie Timecode | Lecture Son | Vidéo | Protocoles Sorties | Protocoles Entrées° |
---|---|---|---|---|---|---|
DMXcontrol | MTC | Non (LTC)¹ | Oui | Non | DMX, MIDI, ArtNet, LPT | MIDI, DMX |
PC_Dimmer | MTC | Non (LTC)¹ | Oui | Oui | DMX, MIDI, ArtNet, LPT | DMX, MIDI, IR, Joystick |
Vixen | Non | Non (LTC)¹ | Oui | Non | DMX, LPT, RS-232 | Spécifique² |
Showmagic | Non³ | Non (LTC)¹ | Oui | Non³ | DMX, MIDI, ArtNet | MIDI |
Sunlite | MTC³ | MTC³ (LTC)¹ | Oui | Oui | DMX, ArtNet | MIDI, DMX, TOR, Joystick |
° : pour pilotage / retour d'informations / interactivité
¹ : éventuellement si un timecode LTC est couché sur une piste audio (ie. en maître)
² : interface spécifique pour cette fonction (non standard)
³ : option payante (selon la version)
MTC : MIDI timecode
LTC : longitudinal timecode (audio)
MIDI : répond ou envoie des infos par MIDI
DMX : protocole pour interfaces lumières
LPT : port parallèle imprimante
TOR : niveaux logiques "tout ou rien"
ArtNet : commande lumière par réseau
IR : télécommande infrarouge
Remarque :
Les critiques développées ici, pointant les quelques faiblesses décelées sur la partie synchronisation par timeline ou timecode, ne reflètent pas de la réelle efficacité des logiciels dans l'usage pour lequel ils ont été conçus (ie. pilotage lumière).
Il est difficile de demander des possibilités évoluées (pas toujours simples à développer ou à programmer) à des logiciels gratuits, d'autant plus que ce sont pour la plupart des projets d'étudiants ou de passionnés.
Je tiens à remercier vivement tous les développeurs de ces logiciels gratuits (parfois libres), tous les forums d'entraide, et tous ceux qui assurent le maintien de ces projets pas toujours faciles à porter ! MERCI !
Bien d'autres logiciels lumières existent (FreeStyler par exemple), mais ils ne possèdent malheureusement pas de système de synchronisation par timecode...
Astuces / Remarques
Au passage, quelques remarques sur les ports, ainsi que quelques astuces, dont une solution libre pour synchroniser de la vidéo :
LPT ?
Pourquoi tenir au vieux port parallèle LPT pour imprimantes ? Simplement parce qu'il permet le pilotage de 8 sorties (voire 12) en TOR (tout ou rien) au moyen d'interfaces très faciles à construire (et idéalement isolées électriquement pour protéger l'ordinateur).
Pour bien des cas, le port LPT peut suffire largement : pilotage en tout ou rien de témoins, lampes, effets, vannes, moteurs, etc... Pour peu que l'on intègre l'ensemble à un poil de circuits logiques, on obtient un système réagissant à des commandes synchronisées, avec des protections ou des interactions en plus. Le seul "souci" est l'interface à développer soi-même.
On peut aussi imaginer une "synchronisation en cascade" avec un automate programmable supplémentaire : le port envoie des "tops" de déclenchements en synchro (sur une timeline) à l'automate, qui gère une succession d'événements en "roue libre", de manière totalement autonome, avec la possibilité d'intégrer des interactions ou des sécurités.
Les quelques logiciels qui utilisent le port parallèle s'en servent directement comme une interface de pilotage assignable sur la timeline. Parfois, ils savent piloter 12 bits et non juste 8 (DMXControl, Vixen). Attention cependant, car la sortie 11 (pin 16) est en logique inversée (sauf dans Vixen qui corrige), et la sortie 12 (pin 17) nécessite une résistance de "pull-up" au +5V.
Câblage du port LPT :Pin Sub-D25 | Fonction LPT | Pilotage |
---|---|---|
2 | D0 | Sortie n°1 |
3 | D1 | Sortie n°2 |
4 | D2 | Sortie n°3 |
5 | D3 | Sortie n°4 |
6 | D4 | Sortie n°5 |
7 | D5 | Sortie n°6 |
8 | D6 | Sortie n°7 |
9 | D7 | Sortie n°8 |
1 | /Strobe | Sortie n°9 |
14 | /Auto feed | Sortie n°10 |
16 | /Init | Sortie n°11 (inversée) |
17 | /Select In | Sortie n°12 (pull-up) |
18⇒25 | GND | 0V commun |
Faites attention aussi à l'état du port parallèle lors du démarrage de l'ordinateur : tant que le logiciel de pilotage n'est pas démarré, l'OS interroge tous les ports et les laisse dans des états plus ou moins imprévisibles.
S'il n'y a pas de port imprimante LPT sur la machine, des interfaces en USB existent. Mais méfiance, car il semblerait que le pilotage ne se fasse pas correctement par ces adaptateurs prévus pour fonctionner avec des imprimantes.
Le port série RS-232
Attention aux interfaces USB⇒RS-232 au rabais qui ne sont pas capables de fournir les tensions minimales pour faire voyager les signaux correctement.
Le LTC comme du son
Faire transiter du LTC est somme toute aisé : là où un signal audio passe, le LTC passera. Mais attention aux niveaux électriques : selon l'émetteur et le récepteur du timecode, un ajustement d'amplitude sera peut-être nécessaire.
Veillez à n'appliquer aucun traitement au signal LTC : aucun correcteur (EQ), aucune compression, aucun limiteur, et aucun réducteur de bruit. Et bien entendu, aucune saturation !
Le MIDI (et le MTC)
Sur les vieux ordinateurs de bureau, le MIDI était disponible sur la prise "joystick" (Sub-D 15 broches jaune ou noire) des cartes son, moyennant l'achat d'un câble adaptateur. Le port MIDI apparaît sous le nom MPU-401. De nos jours, les ordinateurs ne possèdent plus ce port ; et encore moins les portables.
Certaines cartes son, particulièrement celles destinées aux musiciens, incorporent du MIDI.
Il existe aussi des interfaces USB⇒MIDI (pas toujours bien reconnues par les logiciels...)
Si le générateur et le récepteur du timecode tournent sur le même ordinateur, il ne sert à rien d'externaliser le MIDI. Les ports MIDI virtuels comme MIDI Yoke permettent de router en interne tout simplement.
Interfaces DMX
Les softs pilotant la lumière sortent le DMX de plusieurs manière :
- par des interfaces USB vers DMX.
- par des interfaces qui transforment les protocoles : RS-232 vers DMX, ... (attention, ce ne sont pas de bête conversions de protocoles directement !)
- par des passerelles entre protocoles : Réseau ArtNet vers DMX
Les interfaces en USB peuvent être vendues avec un logiciel propriétaire (Sunlite par exemple). Le logiciel ne fonctionnera qu'avec l'interface en question. Mais à l'inverse, l'interface pourra souvent fonctionner avec d'autres logiciels (le cas des boîtiers Sunlite et compatibles SIUDI).
D'autres interfaces USB sont vendues pour être "ouvertes" aux logiciels, se laissant piloter indifféremment (Enttec)
Enfin, on peut fabriquer son interface soi-même (DIY).
Toutes ces interfaces peuvent la plupart du temps être reconnues par les logiciels vus ci-dessus (se référer aux listes de compatibilité sur les sites des logiciels).
Il est aussi possible de faire transiter les informations lumière dans un réseau (ou par internet !) au moyen de l'ArtNet. Les logiciels envoient alors les informations par un câble réseau (ou wifi) à des "noeuds" distants qui eux transformeront l'ArtNet en DMX pour piloter les éclairages (à moins que les projecteurs reconnaissent directement l'ArtNet, voire servent de noeud). Quelques logiciels intègrent un node ArtNet autonome qui ressort du DMX par une interface USB.
xjadeo : lecteur vidéo synchronisé
Quelques softs de lecture de fichiers vidéos s'asservissent à un timecode entrant. Malheureusement, la plupart sont payants, ou en freeware avec période de démo (je fais toujours le voeux que VLC intègre un jour l'asservissement à un timecode !)
Mais bonne nouvelle : il y en a un qui est gratuit, libre, et multi plateforme ! Ce petit miracle s'appelle xjadeo !
Il nécessite pour fonctionner le logiciel Jack qui gère le routing audio et MIDI (pour le LTC et le MTC !)
Ainsi, il faut préalablement démarrer Jack (portaudio) et son interface (patch) pour ensuite ouvrir xjadeo (ou qjadeo pour l'interface graphique) et le placer en mode timecode LTC (ou MTC).
Une fois la vidéo chargée, le logiciel répond très rapidement à la réception d'un timecode. C'est même bluffant !
Une petite perle pour les musiciens qui composent à l'image (ou les audis, mix cinéma/TV !)
N'hésitez pas à consulter la documentation pour les raccourcis claviers, les lignes de commande pour le démarrage automatique, etc...
xjadeo
Jack (nécessaire pour le routing audio/MIDI)
[Gratuit - Libre] Windows / OSX / Linux
Liens
Liens Wikipédia :
Show control [fr]
Show control [eng]
SMPTE time code [eng]
Timecode [fr]
LTC [eng]
Manchester code (biphase) [eng]
VITC [eng]
MTC [eng]
MIDI Clock [eng]
Pour un peu plus d'explications sur le timecode :
Softs lumière :
DMXControl
PC_Dimmer
Vixen Lighting Automation
ShowMagic SL Free Edition
Sunlite Nicolaudie
FreeStyler
Autres softs :
xjadeo : lecteur vidéo synchronisable
Jack : routing audio/MIDI (pour xjadeo)
MIDI Yoke : routage MIDI interne
Pour retourner à la partie "théorique" de cet article ⇒ Page 1 : partie théorique.
Si ces quelques lignes vous ont servi, si vous avez crée un show géré par timecode, ou si vous avez des remarques, n'hésitez pas :