Projekt Integration VJ-Tool
aus dem DMXControl-Wiki
Inhaltsverzeichnis |
Integration eines VJ-Tools für DMXControl-Video-Projekt
Motivation
Seit meinem letzten Besuch bein Genesis-Konzert (siehe
Foto, Forumsbeitrag oder z.B. Video ) bin ich fast besessen von der Idee, unser DMXControl mit einem VJ-Tool über eine remote-control-Schnittstelle zu kombinieren. Damit könnte man Video-Anteile per Beamer in die Show einstreuen (in der DMXControl-Zielgruppe wird ja keiner eine Videowand wie in der obigen Show besitzen).
Ziele
- Synchrone Steuerung von Licht- und Videoeffekten (mit live-Anteil) in einer Show, d.h. farblich abgestimmt, vom Rythmus der Effekte abgestimmt, etc.
- Heute können wir statisch auf einem Mediaserver vorgefertigte Bilder, Musik und Videos starten. Zukünftig sollen live-Kameraaufnahmen von der Band und den Zuschauern reingemischt werden können.
- Bei Lichtshows, die komplett vorprogrammiert sind, sollen auch Video-Elemente/Effekte (Mediaszenen) "programmierbar" sein (d.h. immer wieder über DMXControl-Tools wie Audioplayer abrufbar)
- Bei Lichtshows, die komplett live gestaltet sind (auf der Basis von Szenen und Effekten), soll es auch die Möglicheit geben, Videoeffekte dynamisch aufzurufen (z.B. Steuerung von Tunnel-Effekten, Kaleidoskop, etc.)
Erste Ideen
Alles was ich hier schreibe, sind erste Ideen um die Diskussion anzuregen. Wenn einiges davon Unsinn ist, müssen wir es halt verwerfen.
Wir haben ja bereits schon ein Video-Beamer-Plugin-Projekt gestartet. Leider hatte Andreas Gundelach dieses aus Aufwandsgründen abbrechen müssen (und der Erkenntnis, dass es sehr aufwendig ist). daher verfolgen wir die Idee, mit Freeware- bzw. OpenSource VJ-Tools zu kooperieren. Erste hoffnungsvolle Kontakte haben wir bereits geknüpft zu:
Beide haben prinzipielles Interesse signalisiert, ob wir mit einem oder beiden Tools zusammenarbeiten hängt auch von unserem Konzept und der Machbarkeit ab. Ich hab mich hier erstmal auf gephex fokussiert. Bei dem oben verlinkten Video heisst das, dass DMXControl für den oberen Teil (also die Lampen) und das VJ-Tool für den unteren Teil (Videowand/Beamer) verantwortlich ist, die natürlich perfekt abgestimmt sind. ;-)
Ich glaube, es macht wenig Sinn, im VJ-Tool auch eine DMX-Schnittstelle einzubauen. Besser wäre vielleicht eine Kommando-orientierte Schnittstelle, weil man da viel flexibler ist.
Wir haben etwas ähnliches schon mit einem Plugin für das Media-Center von Digital Enlightenment realisiert, dem wir Kommandos aus unserer Lichtshow-Steuerung schicken wie:
- Load <file>
- Play, Stop
- Show <filenr> , Hide <filenr>
- etc.
Beim VJ-Tool gephex könnte man sich analoge Kommandos vorstellen wie
- Load <graph>
- StartEngine, StopEngine
- SetEffectParameter <eff> <value>
Es geht nicht darum, live irgendwelche gephex-Graphen zu erzeugen, sondern nur existierende zu laden und mit dem Licht abgestimmt zu steuern. Ist natürlich alles noch zu diskutieren.
Bei dem oben verlinkten Foto/Video heisst das, DMXControl ist für den oberen Teil (also die Lampen) und das VJ-Tool für den unteren Teil (Videowand/Beamer) verantwortlich, die natürlich perfekt abgestimmt sind. ;-)
Wie das endgültige Konzept aussehen wird, weiß ich natürlich auch noch nicht so richtig. Dieses sollte ein gemeinsames Team unserer Projekte dann kurz spezifizieren. Vielleicht gibt es auch andere Ideen, die LJ- und VJ-tasks zu verkoppeln.
Annahmen
- Die eigentliche Showsteuerung (der Master) ist DMXControl - so wie heute auch die Lichtshow über DMX gesteuert wird. Das Licht muß synchron zur Musik sein, aber der Tontechniker hat keine Mittel dafür, also macht der Lichttechniker die Show. Gleiches gilt zwar sinngemäß für den VJ, aber es ist einfacher, einen Mediaserver wie eine komplexe Lampe zu betrachten, als von einem VJ-Tool viele Lampen zu steuern. Hier sind wir halt ein wenig egoistisch.
- Das VJ-tool läuft auf einem separaten PC/Laptop und erhält über eine IP-Schnittstelle remote-Steuerungskommandos vom Lichtsteuerungstool. Das sind text-orientierte Nachrichten der Form <Kommandoname> <Objekt> <Parameterliste> z.B. Load Graph <filename>; Set Effect <parameter> so dass man z.B. dynamisch die Kamera ein/ausschalten kann, die Zahl der Kaleidoskopelemente setzt oder die Rotationsgeschwindigkeit setzt. Die Kommandos müssen im Kontext des aktuellen Graphen Sinn machen, sonst werden sie ignoriert.
- Welche Kommandos wirklich Sinn machen, muss die Praxis zeigen. Man kann ja mit einem Dutzend anfangen, z.B. im (MIDI-)Input und Video-Source -Bereich. So, als ob DMXControl ein weiteres Eingabegerät für das VJ-Tool neben Tastatur oder MIDI wäre.
Jedes der beiden Tools fährt weiter mit seinem Konzept: Gephex nutzt Graphen, DMXControl nutzt Szenenlisten. Es gibt dann aber bestimmte "VJ-Szenen" bei DMXControl (oder Mediaszenen), die als Nachricht an Gephex (zur remote-Steuerung) gesendet werden können.
Uns reicht eine Richtung der Kommunikation. Das heutige DMX-Protokoll kennt auch nur "rausschicken", aber kein Feedback der Lampen.
Letztendlich sollte ein Konzept für Mediaszenen entstehen, welches auch für das jetzige DE-MediaCenter-Interface gültig ist.
Alternative: Wir machen es wie bei Arkaos. Dort sind virtuelle Videogeräte mit 23/42 DMX-Kanälen definiert, das direkt über DMX gesteuert wird. Finde ich aber sehr umständlich. Ein VJ-Tool muss nicht das DMX-Protokoll verstehen, das ist unsere Hoheit!
Also die Gretchenfrage ist: Können wir dem VJ-Tool auf irgendeinem port Komandos schicken?
Projektorganisation
Es wäre schön, wenn wir ähnlich wie vor 2 Jahren beim Textbuch-Projekt ein kleines "Konzeptteam" ins Leben rufen, das dann erstmal genauer überlegt und auffschreibt, wie das Zusammenspiel funktionieren soll.
Die Diskussion sollte parallel im Forum und im Wiki geführt werden, das Konzeptpapier als Wiki-Artikel entstehen.
Als erstes sollten sich natürlich die Teammitglieder finden:
- Andreas G. würde mitmachen
- Wir hoffen natürlich auch auf Diskussionsbeiträge von DE-Seite (wegen des MediaCenters)
- ???
- Wer übernimmt das Kommando?
