Status von Timecodeplayer und Soundfiles über Executor Child-ID

We proudly present: The release of DMXControl 3.3.3!


On September 29, 2026, we held our release show for DMXControl 3.3.3. During our usual “hour-long” session, we showed you all the new features in this version and what it now has to offer.
Read all about it in the corresponding news article: We proudly present: The release of DMXControl 3.3.3!


  • Hallo zusammen,

    ich versuche gerade meine Executoren auf ein Midi-Pult zu spiegeln. Dazu nutze die dynamischen Executoren im Input-Assingment um Fader und Taster auf das Pult zu rangieren. Vom Prinzip funktioniert das auch ganz gut. Beim Wechsel der Excutoren-Seiten schaltet das Pult sauber mit um und die Motorfader stellen sich auf das, was an der neuen Seite eingestellt ist. Liegt auf dem entsprechenden Executor eine Cuelist, kann ich über den Child-ID-Knoten, verknüpft mit mit einem Cuelist-Objekt auch den Status dieser Cuelist auslesen und z.B. so lange diese läuft die Farbe eines Buttons ändern oder ihn Blinken lassen.

    Soweit alles Tiptop.

    Allerdings liegen auf meinen Executoren auch Makros mit denen ich Soundfiles abspiele und Timecodeshows. Hier schaffe ich es nicht den jeweiligen Status (z.B. über ein Timcodeshow-Objekt am Child-ID-Knoten) auszulesen.

    Gibt es da einen Trick? Zumindest bei der Timecodeshow sollte das doch nichts anderes sein, oder?

    Gruß

    Bernd

  • Ah OK. Kommando zurück:

    Da habe ich mich wohl selbst ausgetrickst.

    Die Child-ID enthält auch die Timecodeshows. Verknüpft mit einem Timecondeshow-Objekt bekomme ich auch nun den Status meiner Timecodeshows zurückgeliefert.

    Mit meinen Soundfiles bekomme ich das allerdings nicht hin.

    Wie gesagt, ich steuere die Audiofiles über Makros, die ich dann auf die Executoren lege. Über das Makro-Bitmap bekomme ich (z.B. über die Hintergrundfarbe) die Information indirekt auf den Executor. Ich schaffe es allerdings nicht, die Information im Input-Assingment irgendwie wieder aus dem Executor-Objekt auszulesen.

    Gibt es da eine Möglichkeit?

    Gruß

    Bernd

  • Öhm was hindert dich daran, die Audiofiles in Cuelists zu triggern oder in eigene Timecode Shows zu packen? Das sind eigentlich die vorgesehenen Stellen, an denen man mit Audiofiles arbeitet. Direkt aus dem IA geht das zwar theoretisch auch, aber ist eigentlich nicht die primäre Position, um Audiofiles zu steuern.

    Viele Grüße
    JP

    im Falle eines Falles klebt Gaffa einfach alles, denn Gaffa ist dein Freund und Helfer :thumbup:

  • Bis jetzt habe ich es vermieden Audiofiles, die ich ohne Licht laufen lasse, in "leere" Timecodeshows zu packen, nachdem ich letztes Jahr das 32-Bit Speicherproblem mit zu vielen Audiofiles hatte (siehe DMXC 3.3.0 RC5: Ständige Abstürze der GUI - Hilfe und Unterstützung [v3] - DMXControl Projects e.V.).

    Aber wenn ich das damals richtig verstanden habe, wird beim Programmstart von DMXControl eh von jedem Audiofile eine FFT erzeugt und in den Speicher gepackt, unabhängig davon, ob das File in einer Timecodeshow verwendet wird oder nicht, richtig?

    Allerdings ist bei einem Executor, der mit einer Timecodeshow belegt ist der Fader deaktiviert. Bei den Audiofiles ohne Licht nutze ich diesen aber als Lautstärkeregler. (Beispielsweise bei Start einer "echten" Timecodeshow -mit Licht- fade ich über eine Executorspur das vorher laufende Audiofile automatisch aus. Funktioniert echt super).

    was hindert dich daran, die Audiofiles in Cuelists zu triggern oder in eigene Timecode Shows zu packen?

    Was meinst du mit "Audiofiles in Cuelists triggern"? Da habe ich das Prinzip noch nicht verstanden. Evtl. wäre das eine Lösung für mich, wenn du das kurz erklärst.

    Im Moment habe ich mir damit geholfen über Buttons und Fader eines Makros das Audiofile zu triggern. Über eine Ausgabe in das Makro-Bitmap bekomme ich die Information über Laufzeit und Status in den Executor. Das sieht dann wie folgt aus:

    Wenn es dafür einen bessere Umsetzung gibt lasse ich mich gerne darauf ein.

    Gruß

    Bernd

  • Aber wenn ich das damals richtig verstanden habe, wird beim Programmstart von DMXControl eh von jedem Audiofile eine FFT erzeugt und in den Speicher gepackt, unabhängig davon, ob das File in einer Timecodeshow verwendet wird oder nicht, richtig?

    Ja, das ist richtig. Das Problem ist vor allem während der Verarbeitung. Sie werden dabei in Bilder konvertiert, um diese dann im Timecode Player mit den Shadern schnell verwenden zu können. Nach der Erstellung fliegen diese Daten aber auch wieder aus dem Speicher. Allerdings (und das ist aktuell ein Bottleneck): Wenn man den Timecode-Player offnet und damit diese Bilder anzeigt, werden diese Bilder in WPF geladen und bleiben dann auch im Speicher. Das ist ein Problem in WPF, weil die Bilder noch im Zugriff bleiben und damit der Garbage Collector von C# die Bilder nicht aufräumt. Das müssen wir uns nochmal anschauen, wie man das in WPF richtig macht, dass diese freigegeben sind und der GC hier seine Arbeit machen kann. Also TLDR: Sind zu viele zu lange Audiofiles im Projekt, gibt es beim Laden Probleme, öffnet man den Timecode Player zu häufig mit unterschiedlichen Shows, gibt es dort Probleme.

    Allerdings ist bei einem Executor, der mit einer Timecodeshow belegt ist der Fader deaktiviert. Bei den Audiofiles ohne Licht nutze ich diesen aber als Lautstärkeregler. (Beispielsweise bei Start einer "echten" Timecodeshow -mit Licht- fade ich über eine Executorspur das vorher laufende Audiofile automatisch aus. Funktioniert echt super).

    Hmmmm ok, stimmt. Es gibt aktuell keine Gesamtlautstärke einer Timecode Show und damit kannst du dann natürlich aktuell schlecht die Lautstärke setzen. Aaaaaber:

    Was meinst du mit "Audiofiles in Cuelists triggern"? Da habe ich das Prinzip noch nicht verstanden. Evtl. wäre das eine Lösung für mich, wenn du das kurz erklärst.

    Schau mal in den folgenden Livestream von uns. Dort erkläre ich mit dem aktuellen Soundselector unter anderem, wie man Audiodateien in einer Cuelist einfügt und welche Funktionen man hierbei hat.

    External Content www.youtube.com
    Content embedded from external sources will not be displayed without your consent.
    Through the activation of external content, you agree that personal data may be transferred to third party platforms. We have provided more information on this in our privacy policy.

    Hilft das schon?

    Den direkten Fortschritt der Audiodatei siehst du nicht auf Anhieb in den Executoren. Aber du kannst z.B. eine weitere Cue einfügen und deren Dauer auf die Dauer der Audiodatei setzen. Dann siehst du über die Einblendung dieser Cue, wie lange die Audiodatei schon gelaufen ist.

    Viele Grüße
    JP

    im Falle eines Falles klebt Gaffa einfach alles, denn Gaffa ist dein Freund und Helfer :thumbup:

    Edited once, last by JPK (October 26, 2025 at 11:13 AM).

  • Es gibt aktuell keine Gesamtlautstärke einer Timecode Show

    Deswegen wurde hier bereits das Ticket FS#5410 : Timecodeplayer-Executoren-Fader als Lautstärkeregler der zugehörigen Audiospure(n) aufgemacht.

    Über eine Ausgabe in das Makro-Bitmap bekomme ich die Information über Laufzeit und Status in den Executor. Das sieht dann wie folgt aus:

    Du kannst dein Connectionset noch ein bisschen dahingehend vereinfachen, indem du die RGB-Werte für die verschiedenen Status der Audiodatei direkt im Input Selector einträgst.

  • Hilft das schon?

    Hab das mal wie folgt versucht:

    Die Szenenliste läuft einmalig durch und gibt sich am Ende selbst frei. Wenn ich diese Szenenliste auf einen Executor lege und nur die "Play"-Taste und "Go"-Taste aktiviere, kann ich mit Play starten und mit Go stoppen. Durch die leere Szene läuft im Display des Executors ein Fortschrittsbalken.

    Eine Pausen-Funktion habe ich allerdings nicht hin bekommen. Das ist aber für meine Zwecke nicht so schlimm.

    Hier habe ich jetzt aber das gleiche Problem wie bei der Timecodeshow: Ich kann über den Fader des Executors die Lautstärke des Audiofiles nicht einstellen.

    Gibt es da noch eine Möglichkeit, die ich nicht sehe?

    Deswegen wurde hier bereits das Ticket FS#5410 : Timecodeplayer-Executoren-Fader als Lautstärkeregler der zugehörigen Audiospure(n) aufgemacht.

    So, und jetzt rate mal, wer dieses Ticket angelegt hat ... ;)

  • Hier habe ich jetzt aber das gleiche Problem wie bei der Timecodeshow: Ich kann über den Fader des Executors die Lautstärke des Audiofiles nicht einstellen.

    Gibt es da noch eine Möglichkeit, die ich nicht sehe?

    Hmmm ok, fair, man kann zwar die Intensität in der Cuelist direkt setzen. Aber eben nur fix und nicht per Executor-Fader :| Ok, dann muss man das wohl so sagen: Das ist gerade in DMXControl 3 nicht so vorgesehen, wie du das vor hast. Ergo wird das eher schwierig. Die sauberste Methode wäre tatsächlich die aus dem Ticket. Da können wir mal schauen, ob wir das intern hinbekommen.

    im Falle eines Falles klebt Gaffa einfach alles, denn Gaffa ist dein Freund und Helfer :thumbup:

  • Die sauberste Methode wäre tatsächlich die aus dem Ticket.

    Ok, das hatte ich befürchtet.

    Ich bin ebenfalls der Meinung, dass es mit der Timecodeshow-Lösung (mit funktionierendem Fader) die eleganteste Lösung ist.

    Bis dahin werde ich mit den Makros weiter arbeiten. Damit kann ich ich die Executoren so bedienen, wie ich es vor hatte. Auf die Rückmeldung des Audiofile-Status muss ich halt vorerst verzichten.

    Danke für die Infos.

    Du kannst dein Connectionset noch ein bisschen dahingehend vereinfachen, indem du die RGB-Werte für die verschiedenen Status der Audiodatei direkt im Input Selector einträgst.

    Guter Tipp - Danke.

  • Jetzt habe ich nun doch noch einen Workaround gefunden. Den will ich euch natürlich nicht vorenthalten.

    Zugegeben, es ist eine Von-hinten-durch-die-Brust-Lösung - sehr umständlich und fehlerträchtig. Aber sie löst bei mir gerade gleich zwei Probleme:

    1.) Ich kann damit Audiofiles komfortabel vom Executor aus steuern (inkl. Lautstärke) und den Status der Audiofile im Input-Assingment für mein Midipult weiter verarbeiten

    2.) Ich bekomme bei vielen und langen Audiofiles im Projekt (bis jetzt) keine sporatischen Abstürze beim Programmstart von DMXControl mehr

    Es funktioniert wie folgt:

    Ich habe mir ein DFF "AudioDummy" (siehe Anhang) erstellt. Darin gibt es eigentlich nur einen Dimmerkanal für die Lautstärke und ein rawstep-Kanal für Play/Stop. Für jedes Audiofile füge ich je ein Gerät dieses DFFs in das Projekt ein und rangiere sie auf ein freies DMX-Universum. Dieses DMX-Universum sende ich per Artnet an ein parallel laufendes DMXControl V2. Dort spiele ich DMXgesteuert die Audiofiles ab. Damit sind die Files nicht mehr im DMXControl3-Projekt und es gibt keine Probleme beim Laden mehr.

    In DMX-Control3 habe ich für jedes Audiofile eine Cuelist erstellt, die auf den Executor gelegt wird. Die erste Szene dieser Cuelist startet das zugehörige Audiofile, indem es das Dummy-Gerät des zugehörigen Audiofiles bedient. Eine zweite leere Szene wird auf die Dauer des Audiofiles gesetzt, so dass sich die Cuelist automatisch beendet, wenn das File am Ende abgespielt ist. Dadurch wird aber auch der Fortschritt im Executor angezeigt.

    Ich hoffe natürlich immer noch auf die Umsetzung des Tickets, damit man die Lautstärke der Timecodeshows per Executorzug steuern kann und auf die Lösung des Problems mit dem Garbage Collector. Denn die Lösung per "leeren" Timcodeshow ist für mich immer noch die eleganteste.

    MfG

    Bernd