Funktionselemente (DDF-Syntax) DMXC3

Aus Deutsches DMXC-Wiki
Books.png Funktionselemente (DDF-Syntax) DMXC3 Artikel beschreibt
DMXControl 3.2.3


Inhaltsverzeichnis
Teil 1: Grundlagen
Teil 2: Funktionen
Teil 3: Procederes
Teil 4: Beispiele


Neben der allgemeinen Struktur in den DDFs für DMXControl 3 gibt es innerhalb des Funktionsteils verschiedene Elemente, die in (nahezu) allen Funktionen Anwendung finden (können). Diese finden sich an zwei Stellen:

  • Es existieren für alle Funktionen verschiedene zusätzliche Attribute, im folgenden als Funktionsattribute. Einige dieser Funktionsattribute sind dabei Pflichtangaben, um die verwendete Funktion vollständig zu definieren.
  • Viele Funktionen benötigen verschiedene untergeordnete Funktionselemente. Diese Funktionselemente definieren den Wertebereichs eines DMX-Kanals genauer oder es werden vorgegebene Abhängigkeiten hergestellt.


Funktionsattribute

Pflichtattribute

dmxchannel: DMX-Kanal

Das Attribut dmxchannel inklusive der Abwandlungen finedmxchannel, ultradmxchannel und ultrafinedmxchannel gibt den DMX-Kanal an, auf dem sich die entsprechende Funktion befindet. In den meisten Fällen besitzt eine Funktion nur eine 8-bit-Auflösung, weswegen vielerorts nur das Attribut dmxchannel benötigt wird.

Dass für die Angabe des DMX-Kanals bis zu vier Attribute benötigt werden, ist darin begründet, dass auf jedem DMX-Kanal nur insgesamt 256 verschiedene Werte übertragen werden können. Die Werte liegen im Bereich von DMX-Wert 0 bis DMX-Wert 255. Dies beschreibt die klassische Auflösung bzw. Genauigkeit eines DMX-Kanals von 8 bit. Um bei bestimmten Funktionen wie zum Beispiel bei Pan, Tilt oder beim Dimmer feine Auflösungen zu erzielen, werden weitere DMX-Kanäle hinzugezogen, um die Auflösung zu erhöhen. In diesem Fall spricht man dann von einer Auflösung mit 16 bit oder der zweite DMX-Kanal für die Pan-Funktion wird mit Pan fine bezeichnet.

DMXControl 3 unterstützt aktuell Auflösungen von für alle Funktionen bis 32 bit. Für hierfür werden dann vier DMX-Kanäle zusammengefasst, um die Funktion in dieser Auflösung darzustellen. In den DDFs kommen dabei folgende Bezeichnungen zum Einsatz:

  • dmxchannel für 8-bit-Auflösung
  • finedmxchannel für 16-bit-Auflösung
  • ultradmxchannel für 24-bit-Auflösung
  • ultrafinedmxchannel für 32-bit-Auflösung

Es ist dabei zu beachten, dass bei der 32-bit-Auflösung auch alle vier DMX-Kanäle anzugeben sind. Es ist mitunter nicht unüblich, dass die vier DMX-Kanäle in der Belegung nicht direkt hintereinander angeordnet sind. Die folgende Tabelle zeigt die Definition der aktuell möglichen Auflösungen anhand des Dimmers.

Variante Code
Dimmer mit 8-bit-Auflösung
<dimmer dmxchannel="0" />

Dimmer auf DMX-Kanal 1

Dimmer mit 16-bit-Auflösung
<dimmer dmxchannel="0" finedmxchannel="1" />

Dimmer mit 16-bit-Auflösung auf DMX-Kanal 1 und 2

Dimmer mit 24-bit-Auflösung
<dimmer dmxchannel="0" finedmxchannel="1" ultradmxchannel="2" />

Dimmer mit 24-bit-Auflösung auf DMX-Kanal 1, 2 und 3

Dimmer mit 32-bit-Auflösung
<dimmer dmxchannel="0" finedmxchannel="1" ultradmxchannel="2" ultrafinedmxchannel="3" />

Dimmer mit 32-bit-Auflösung auf DMX-Kanal 1, 2, 3 und 4


Optionale Attribute

defaultval: Initialwert bzw. Standardwert

Auf Wunsch kann man bei einer Auswahl von Funktionen vorgeben, welchen Wert diese abweichend von der Standarddefinition in DMXControl 3 annehmen soll. Dies erfolgt über das Attribut defaultval. Bei folgenden Funktionen kann dieses Attribut eingesetzt werden:

  • Switch
  • Colortemp
  • Focus
  • Iris
  • Zoom
  • Intensity
  • Raw
  • Rawrange
  • Rawstep


Variante Code
Frei definierter Regler
<raw dmxchannel="0" name="Auto / music speed" defaultval="25">
  <range type="linear" mindmx="0" maxdmx="255" minval="0" maxval="100" />
</raw>

Die standardmäßige Geschwindigkeit der Automatik-Programme soll 25%. Bei der Angabe des Wertebereich von 0% bei DMX-Wert 0 und code>100% bei DMX-Wert 255 wird durch defaultval ein DMX-Wert von 63 ausgegeben.

Funktionselemente

Die zur Verfügung stehenden Funktionselemente kommen in der Regel immer dann zum Einsatz, wenn auf einem DMX-Kanal mehrere Funktionen untergebracht sind. Dies können zum Beispiel verschiedene Strobe-Modi sein wie linear, zufällig. Bei einem Farbrad bzw. einem Goborad müssen die verschiedenen Farben und Gobos angegeben werden. Aber bereits bei einem Shutter liegen direkt zwei Funktionen vor, nämlich geschlossen und offen.

Um all dies im DDF zu hinterlegen, stehen verschiedene Funktionselemente zur Verfügung. Sie definieren, dass

  • zwischen verschiedenen Funktionen auf einem DMX-Kanal nur umgeschaltet wird (step).
  • sich eine Funktion verändern lässt, wenn man einen Reglers in einem bestimmten Bereich bewegt (range).
  • zum Nutzen einer bestimmten Funktion ein anderer DMX-Kanal auf einen vorgegeben DMX-Wert gesetzt werden muss (supporthandler).

Ob die genannten Funktionselemente benötigt werden, hängt von der jeweiligen Funktion ab. Existiert bereits eine Standardimplementierung direkt in DMXControl 3, wie es zum Beispiel beim dimmer der Fall ist, können die Funktionselemente komplett entfallen. Besitzt eine Funktion entweder keine Standardimplementierung oder man muss davon abweichen, kommen die Funktionselemente step oder range mehr oder minder verpflichtend zum Einsatz.

Funktionselemente wie zum Beispiel der supporthandler sind aber per se optional und kommend entsprechend nur in bestimmten Anwendungsfällen zum Einsatz. Entsprechende typische Beispiele sind bei den betreffenden Funktionen aufgeführt.

Benötigte Funktionselemente

step: Angabe von einzelen Schritten

Das Funktionselemente step besteht immer aus dem eigentlichen Tag step, dem Attribut type, sowie den Attributen für den minimalen DMX-Wert mindmx und den maximalen DMX-Wert maxdmx für den step. Der Wert für das Attribut type ist immer abhängig von der Eigenschaft des DMX-Kanals, die abgebildet werden soll. Welche Werte zulässig sind, wird bei der Beschreibung der jeweiligen Funktion angegeben. Wichtig ist hier zu wissen, dass die HAL immer den Mittelwert zwischen mindmx und maxdmx. Bezogen auf das folgende Beispiel wäre dies der DMX-Wert 227.

<step type="open" mindmx="200" maxdmx="255" />

range: Angabe eines regelbaren Bereichs

Das Funktionselement range ist ähnlich aufgebaut, wie das Funktionselement step. Der wesentlichste Unterschied ist die Ergänzung der Attribute minval und maxval. Hier werden beispielsweise angegeben:

  • die minimale und maximale Strobefrequenz
  • die minimale und maximale Drehzahl für die Goborotation
  • der minimale und maximale Abstrahlwinkel des Zooms

Die Besonderheit ist an dieser Stelle, dass die DMX-Werte den Geschwindigkeiten zugeordnet werden. Das heißt, zur minimalen Drehzahl wird der DMX-Wert eingetragen, wo sich zum Beispiel das Gobo am langsamsten dreht. Genauso verhält es sich mit der maximalen Drehzahl des Gobos. Daher kann es vorkommen, dass die minimale Drehzahl nicht immer automatisch auch der niedrige DMX-Wert und die maximale Drehzahl beim größten DMX-Wert anliegt. Ein Code-Beispiel ist im Artikel Goborad zu finden. Eine übersichtlichere Konstellation zeigt dagegen das folgende Beispiel für die Strobefrequenz, wo beim niedrigsten DMX-Wert 0 auch die geringste Strobefrequenz von 0,5 Hz ausgegeben wird.

<range type="linear" mindmx="0" maxdmx="255" minval="0.5" maxval="15" />

Optionale Funktionselemente

supporthandler: Werteabhängige Steuerung von DMX-Kanälen