Der Hardware Abstraction Layer (kurz HAL) ist ein zentrales Element von DMXControl 3. Hierbei werden Funktionen der DMX-gesteuerten Geräte (Devices) nicht mehr direkt angesprochen, sondern über ein Zwischenmodul von DMXControl verarbeitet. Hierdurch hat man beim Arbeiten mit DMXControl 3 nicht mehr direkt mit DMX-Kanälen und DMX-Werten zu tun.
Überblick
Mit Hilfe des HAL werden die DMX-Kanäle mit ihren zugehörigen DMX-Werte, welche zum Aufrufen einer Funktion an ein Gerät zu übertragen sind, direkt auf die Eigenschaft selbst abstrahiert. Diese derart abstrahierten Eigenschaften werden unabhängig von der Kanalbelegung eines Gerät in den Szenen (Cues) gespeichert. So werden zum Beispiel beim Dimmer nur Information "setze Dimmer auf 50%" oder bei der Farbe "Rot auf 132, Grün auf 43 und Blau auf 0", also der RGB-Wert 132; 43; 0 abgespeichert. In der Summe ergeben sich durch den HAL folgende Vorteile für den Arbeitsablauf:
- Alle Geräte werden zu großen Teilen auf gleiche Weise mit einer standardisierten Bedienoberfläche bestehend aus den Steuerungsfenstern (Control Panel) für die gebräuchlichsten Gerätefunktionen sowie die Gerätesteuerung (Device Control) angesprochen.
- Die Funktionen lassen im Klartext bzw. über Regler aufrufen. Diese arbeiten unabhängig vom Gerät auch immer auf die gleiche Weise.
- Gerätegruppen (Device Groups) können heterogen sein. Das bedeutet, man muss keine direkte Unterscheidung bei der Programmierung machen, wenn man Geräte unterschiedlicher Bauart im Einsatz hat.
- Die Kanalbelegung eines Geräts ist für die Programmierung nicht mehr von Relevanz.
Der HAL kommt bei mehreren Gerätefunktionen zum Tragen, darunter dem Shutter und Dimmer, der Strobe-Funktion, den Farbkanälen und den Gobos.
Konkret bedeutet dies, dass man selbst bei einer gemischten Gerätegruppe mit LED-Scheinwerfern, Scannern mit Farbrad und Wash-Moving-Heads mit einer CMY-Farbmischung beispielsweise die Farbe für die gesamte Gerätegruppe zentral für die Gerätegruppe als RGB-Wert festgelegt. Der HAL übernimmt nach die Umrechnung in die verschiedenen Farbmischsysteme bzw. die Auswahl der nächst gelegenen Farbe im Falle eines Geräts mit nur festen Farben.
Wichtige Merkmale
Der HAL beeinflusst das Verhalten der im Projekt verwendeten Geräte auf folgende Weise - sowohl intern in DMXControl 3 selbst, als auch später bei dem "Weg der Daten" hin zur Ausgabe:
- Der HAL definiert für jede Funktion einen Grundzustand, den alle Geräte einnehmen, sofern sie nicht zum Beispiel über eine Szenenliste angesprochen werden.
- Der HAL stellt softwareseitig verschiedene Funktionen nachträglich auf virtueller Ebene zur Verfügung, sollte ein Gerät diese Funktion selbst nicht mitbringen.
- Mit Hilfe der HAL wird das Zusammenspiel von mehreren unterschiedlichen Geräten verwaltet und für den Nutzer vereinfacht.
- Der HAL überwacht, welche Werte berechtigt sind, tatsächlich ausgegeben zu werden, gerade wenn mehrere Szenenlisten aktiv sind, welche jedoch die gleiche Funktion ansprechen.
Nutzung
Grundzustand für Funktionen
Fügt man Geräte einem Projekt hinzu, so nehmen diese direkt einen definierten Grundzustand an. Dies hat oftmals zur Folge, dass an die jeweiligen Geräte in diesem Zustand DMX-Werte gesendet werden. In der Regel kann man dies bei der Position und bei der Farbe sehen.
Diese Werte sind fest in DMXControl 3 verankert und können auch nicht geändert werden. Benötigt man nach dem Laden eines Projekt eine davon abweichende Grundszene, so hinterlegt man diese Werte in eine gezielte Szenenliste, welche im Hintergrund ausgeführt wird. |
Funktion | Standardwert | Erläuterung und Hinweise |
---|---|---|
Position | Mitte des möglichen Schwenkbereichs | Bei Moving-Heads ist die Mitte des maximalen Schwenkbereichs meist die Position, wo die Linse senkrecht nach oben und der Schwenkarm in einer Richtung parallel zum Fuß (der Base) steht. |
Pan-Tilt-Geschwindigkeit | Maximale Geschwindigkeit 100% |
|
Farbe | weiß 255; 255; 255 |
|
Farbtemperatur | Tageslichtweiß 6500 K |
Der genannte Wert wird auch vorausgewählt, sobald im Zuge der verbauten LED-Chips in den Geräten die virtuelle Farbtemperatur aktiviert wird. |
Anmerkungen
- Farbe: Alle Geräte werden auf die Farbe weiß gesetzt, wenn man nur den Dimmer hochzieht. Dies gilt dabei auch explizit für LED-Scheinwerfer, die sich auf diese Weise wie ein Moving-Head oder Scanner mit einer Entladungslampe oder LED als Lichtquelle verhalten. Öffnet man hier nämlich den Shutter und zieht den Dimmer hoch, so leuchten diese ebenfalls direkt weiß.
Softwareseitig bereitgestellte Funktionen
Dimmer- / Shutter
Es spielt keine Rolle, ob ein LED-Scheinwerfer nur die RGB-Kanäle besitzt, oder auch noch einen zusätzlichen DMX-Kanal für den Dimmer. In DMXControl lässt sich bei beiden Scheinwerfern die Helligkeit auf die gleiche Art und Weise einstellen. Verfügt ein Gerät selbst über keinen eigenen Dimmer, so stellt der HAL diesen virtuell zur Verfügung.
Strobe
Verfügt ein Gerät über keine eigene Strobe-Funktion, so stellt der HAL für dieses Gerät bzw. einen solchen DMX-Modus ohne hardwareseitige Strobe-Funktion eine virtuelle Strobe-Funktion bereit. Die maximale, von der Software auf diese Weise generierte maximale Strobe-Frequenz beträgt 5 Hz
.
Die virtuelle Strobe-Funktion ist ein generiertes Ein- und Ausschalten des Dimmer-Kanals (bei Geräten mit hardwareseitigen Dimmer) oder ein Ein- und Ausschalten der RGB-Kanäle. Dies wird pro Gerät durchgeführt. Daher kann ein synchrones Stroben mehrerer gleicher Geräte nicht garantiert werden. |
Farbtemperatur
Sind in einem Gerät (meistens LED-Scheinwerfer) LED-Chips verbaut, die mindestens zwei verschiedene Weißfarben erzeugen können, stellt der HAL einen Regler für die Einstellung einer Farbtemperatur bereit. Typischerweise erscheint dieser Regler, wenn man Geräte mit den LED-Farben kaltweiß und amber einsetzt. Jede weitere LED-Farbe für weiß wie beispielsweise warmweiß wird automatisch mit in die Berechnung aufgenommen.
Zusammenspiel von Funktionen
Je nach Funktion variiert das Verhalten einer Eigenschaft:
Farbe
Bei der Farbe wird grundsätzlich nur die Farbe als RGB-Wert in einer Szene hinterlegt, wie zum Beispiel Rot auf 132, Grün auf 43 und Blau auf 0. Dadurch können nun nicht nur gleiche Geräte in einer Gerätegruppe zusammengefasst werden, sondern auch vollkommen verschiedene Geräte. Der HAL sorgt dafür, dass bei allen Geräten einer Gerätegruppe der zur ausgewählten Funktion am besten passende Wert ausgewählt wird.
Im folgenden Beispiel umfasst eine Gerätegruppe aus LED-Scheinwerfern, Scannern mit Farbrad und Wash-Moving-Heads mit CMY-Farbmischung: LED-Scheinwerfer haben oft einen DMX-Modus mit drei Kanälen für die Farben Rot, Grün und Blau. Stellt man also die Farbe für die gesamte Gerätegruppe für rot auf Wert 132, grün auf Wert 43 und blau auf Wert 0, so werden die LED-Scheinwerfer diese Farbe genau so wiedergeben. Bei Scannern und Moving-Heads, welche nur Farbräder mit statischen Farben ohne Mischmöglichkeit, wählt der HAL eine möglichst passende Farbe auf dem Farbrad. Die Informationen, welche Farben auf dem Farbrad des jeweiligen Gerät verfügbar sind, erhält der HAL durch eine entsprechende Angabe im DDF. Das wäre im konkreten Fall ein Gelb, Orange oder Rot. Im Falle des Wash-Moving-Heads übernimmt der HAL die Konvertierung der RGB-Werte in die CMY-Farbraum. Hier gibt es nur kleinere Unterschiede zwischen dem LED-Scheinwerfer und dem Gerät mit der CMY-Farbmischung.
Gobo
Die Gobo-Eigenschaft beinhaltet eine kleine Besonderheit. Praktisch jeder Moving-Head und jeder Scanner besitzen unterschiedliche Gobos. Also ist es hier besonders wichtig, möglichst zueinander passende Gobos zu finden. Daher besitzt DMXControl 3 eine interne, erweiterbare Gobo-Datenbank, in der auch die Ähnlichkeit zu anderen Gobos gespeichert wird. Auf diese Weise werden immer zueinander ähnliche Gobos in Geräten verschiedenen Typs aktiviert.
Als konkretes Beispiel könnte zum Beispiel ein Moving-Head ein Gobo mit einem Kreis aus fünf Punkten besitzen, während der andere nur ein Gobo mit fünf Sternen besitzt. Sind beide Moving-Heads in einer Gruppe und wird das Fünf-Punkt-Gobo aktiviert, zeigen die Moving-Heads wenn möglich das Fünf-Punkte-Gobo. Alle anderen anderen zeigen das ähnlichste (hier eben zum Beispiel den Kreis aus fünf Sternen).
Überwachung der Ausgabe
Neben der Bereitstellung einer einheitlichen Ansteuerung für unterschiedliche Geräte überwacht der HAL auch die Werte, die verschiedene Szenenlisten, der Programmer etc. ausgeben möchten. Entsprechend der vergebenen Prioritäten von Szenenlisten und deren Mixing-Modes wird geschaut, dass immer nur der wichtigste Wert tatsächlich an den Teil für die eigentliche DMX-Ausgabe übergeben wird, nämlich der DMXC-Mixer. Bekanntermaßen kann ein Gerät pro Funktion immer nur einen Wert auch umsetzen. In DMXControl 3 können aber zeitgleich mehrere Szenenlisten aktiv sein.
Links und Referenzen
Links