DMXC 3.3.1: GUI stürzt im Langzeitbetrieb ab

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!


  • Liebes DMXC-Forum,

    Ich habe jetzt hier das dritte System mit der aktuellen Version am Laufen. Jedes hat einen eigenen Computer, auf dem nichts anderes läuft als Windows-Updates. Die Computer sind im Dauerbetrieb und aktuell gepatcht. Einer davon ist neu, die anderen sind ca. 5 Jahre alt.

    Die GUI stürzt nach nach 2-3 Tagen ab, auch ohne Benutzereingriff oder Bildschirm aus- und einschalten.

    Wenn der Audioanalyser in Betrieb ist, stürzt die GUI nach ca. 8 Stunden ab, also im Zweifelsfall mitten in der Party. Kernel und Umbra laufen weiter. Wenn ich mich geschickt anstelle die GUI wieder zu starten, wird es nur kurz dunkel im Raum.

    Kann ich euch in irgendeiner Form unterstützen, diesen Fehler zu finden ? Mir wäre wirklich sehr daran gelegen.

    Liebe Grüße

    Axel

  • LightningBrothers October 14, 2025 at 8:57 PM

    Changed the title of the thread from “DMXC 3.3.1 - GUI stürzt ab” to “DMXC 3.3.1: GUI stürzt im Langzeitbetrieb ab”.
  • Guten Abend...

    der erste Punkt für die entsprechende Unterstützung sind in der Tat die Log-Dateien von allen Systemen, wo dieses Problem bis jetzt aufgetreten ist sowie im Idealfall auch die zugehörigen Projektdateien. Wenn daraus nichts direktes ersichtlich ist, müssen in der Tat "schwere Geschütze" aufgefahren werden.

    Stefan

    PS.: Ich habe den Titel des Threads mal um ein Schlüsselwort "Langzeitbetrieb" ergänzt, weil dieser Punkt eben entscheidend für dein Problem ist.

  • Hallo,

    ok, also Logs sind nie verkehrt. Aber das klingt hier sehr nach Speicherleck. Diese sind leider nicht so einfach zu finden und kündigen sich normalerweise nicht in Logs oder so an. Daher ja, es wäre gut, diese auch zu haben. Da solche vermuteten Speicherlecks nicht so einfach zu finden sind, wäre es gut, wenn wir den Problembereich noch etwas eingrenzen könnten. Du sagst, dass die GUI zuverlässig abdampft, wenn der Audioanalyzer aktiv ist. Dazu hätte ich zwei Dinge, die gut wären, wenn du diese auch noch testest. Wie sieht der Betrieb des gleichen Setups aus, wenn der Audioanalyzer und auch sonst kein Plugin läuft? Und zusätzlich wäre es gut zu wissen, ob das Problem auch mit anderen GUI-Plugins auftritt? Hintergrund dieser Untersuchungen: Die Kombination aus beiden Untersuchungen lässt Schlüsse darauf zu, wo das Problem verortet ist (im AudioAnalyzer Plugin, in der Plugin-Schnittstelle von DMXControl 3 oder in DMXControl 3 selbst).

    Viele Grüße
    JP

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

  • Hallo Stefan & JP,

    ich habe hier die Logs von zwei Computern:
    T-W-Licht, ohne Audio-Analyser
    T-D-Licht, mit Audio-Analyser

    Der Audioanalyser ist nicht immer in Betrieb, weil er ja erst manuell gestartet werden muss. Die Party begann am 03.10 um 22:00 Uhr. Ich weiss nicht genau, wann ich den Audio-Analyser gestartet habe, aber die Datei LumosGUI.log.2 endet am 04.10 um 10:49.
    Dann habe ich die GUI neu gestartet, aber das hat nicht richtig funktioniert (LumosGUI.log.1).
    Deshalb habe ich um 19:00 den Computer neu gestartet (LumosGUI.log). Den Audioanalyser habe ich nicht mehr gestartet - soweit ich jetzt im Logfile sehen kann. Der nächste Absturz erfolgte also erst einige Tage später.

    Ich habe jeweils das Projekt, und die Logs von GUI, Kernel und Umbra zu einem ZIP gemacht pro Computer und angehängt, nur die nicht mit 0KB Länge.

    Grüße
    Axel

  • Hallo liebes DMXControl-Team,

    ich wollte mal freundlich nachfragen, ob sich mal jemand um dieses Thema kümmern könnte.

    Ich finde das schon ganz schön nervig, das das Programm spätestens nach 2-3Tagen abstürzt und zwar auf jeden Computer. Mit dem Audioanalyser passiert das bereits nach 6 - 8 Stunden.

    Liebe Grüße

    Axel

  • Wie komme ich denn hiermit weiter ?

    Soll ich das mal in den Bugtracker eintragen ?

    Es sind ja offensichtlich zwei unterschiedliche Bugs, ob das Programm nach drei Tagen ohne Berührung abstürzt oder nach 8 Stunden, wenn der Audioanalyser an ist.

    Grüße

    Axel

  • Hi,

    ich schreibe es mir mal auf, dass ich das in den Weihnachtsferien mal teste und schaue, ob ich es reproduziert bekomme, also so, dass ich sehe, wo genau das Speicherleck steckt. Bzw. ich werde das nochmal intern besprechen und dann schauen wir, wer das analysiert. Wie schon oben geschrieben sind solche Fehler fieser und nicht so einfach zu finden. Werde mich aber mal auf die Suche machen. Wie gesagt kannst du da leider gar nichts machen außer immer wieder mal DMXC neu zu starten. Ich melde mich, wenn ich Neuigkeiten habe.

    Viele Grüße

    JP

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

  • Sooo ich habe jetzt mal intern besprochen und da kam eine Frage auf, die du für uns testen könntest. Damit könnten wir dann den Fehler weiter eingrenzen und was aus nicht 100%ig herauskommt aus deinen Kommentaren: Du hattest gesagt, du hast auch mal ohne den Audio-Analyzer gearbeitet (T-W-Licht). War da der AudioAnalyzer nur deaktiviert oder war er auf diesem PC gar nicht installiert? Wenn du ihn nur deaktiviert hast, könntest du mal bitte den AudioAnalyzer aus DMXControl 3 entfernen (oder DMXControl 3 noch einmal in einen zweiten Ordner installieren und dort den AudioAnalyzer nicht mitinstallieren). Der Hintergrund ist: Die Plugins werden auch schon geladen, auch wenn der Haken nicht gesetzt ist. Sie werden nur eben nicht aktiviert. Wenn da schon bei der Initialisierungsroutine etwas zu dem Speicherleck führt, dann ist trotzdem der AudioAnalyzer schuld. Aber dann könnten wir das besser eingrenzen, wenn du das mal testen könntest :)

    Viele Grüße

    JP

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

  • Sorry für die Verzögerung - ich habe die Rückfrage gar nicht gesehen.

    Der Audioanalyser ist auf T-W-Licht installiert, wird aber nicht verwendet. Wie kann ich den deinstallieren ?
    Das Verzeichnis C:\DMXControl3\GUI\Plugins\AudioAnalyzer umzubenennen scheint schon mal nicht zu funktionieren.

    Grüße

    Axel

  • Hey, kein Problem. Du musst den AudioAnalyzer komplett aus dem DMXControl 3 Ordner rauslöschen / verschieben. Dann findet DMXC den nicht mehr. Wenn du die Datei nur umbenennst, geht es trotzdem, weil DMXControl 3 beim Start den kompletten Ordner scannt.

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

  • Hallo Axel,

    nachdem ich DMXControl 3.3.1 nun am vergangenen Wochenende selbst mal wieder etwas länger habe laufen lassen (bei mir waren es etwas über 50 Stunden), habe ich nun mal in deine Projekte geschaut. Dabei sind mir Dinge aufgefallen:

    • Generell gefragt: hat es einen Grund, dass du viele der Geräte nicht über eine bzw. mehrere Cuelist steuerst, sondern dies direkt über den Programmer löst?
    • Sehe ich das richtig, dass der Programmer in den Fensterlayouts durchweg geöffnet ist (selbst nur als Reiter im Hintergrund)?

    Ich hänge mich gerade ein bisschen an dem Programmer auf, weil es hier auf Grund des verwendeten Frameworks zum Anzeigen der Inhalte schon oft Probleme bei der Performance gab - vor allem wenn dieser geöffnet ist. Wenn du dann auf Grund der von dir gewählten Programmierweise auch noch laufend Werte hineinschiebst bzw. veränderst, könnte dies ebenfalls mit eine Ursache sein. Wir sagten hier ja schon länger, dass die Aufgabe des Programmer vorrangig im Programmieren einer Show / eines Projekts liegt und weniger, mit dem Programmer auch eine Show zu fahren. Um während einer Live-Show trotzdem Werte live manipulieren zu können, wurden mit DMXControl 3.3.0 ja extra noch die Color- und Position Master ergänzt.

    Dies mal meine Beobachtungen für den Moment. Ich werde nun im Anschluss das Projekt "T-W-Licht" für mich mal dahingehend ergänzen, dass ich es bei mir mit realen Geräten über den Tag mal laufen lassen kann.

    Stefan

  • Ich hänge mich gerade ein bisschen an dem Programmer auf, weil es hier auf Grund des verwendeten Frameworks zum Anzeigen der Inhalte schon oft Probleme bei der Performance gab - vor allem wenn dieser geöffnet ist.

    Ich habe mich nun mal weiter in deinem Projekt "T-W-Licht" orientiert. Also ich bleibe bei meiner Vermutung, dass die Instabilität in deinen beiden Projekten, aber insbesondere im Projekt "T-W-Licht" daher rührt, dass du hier mit dem Spektrum des Audio Analysers laufend Werte im Programmer aktualisierst und so eine Show aus dem Programmer fährst.

    Da ich davon ausgehe, dass die Bedienweise über die beiden Softdesks bei dir etabliert ist, solltest du dir den "Unterbau" vornehmen und sämtliche Effekte vom Programmer unter Verwendung von Parameter- und Color-Mastern in Cuelists umziehen. Damit löst sich am Ende auch das Problem, dass du nicht "sauber" zwischen den verschiedenen Effekten umschalten kannst. Möglicherweise brauchst du dann auch nicht mehr zwischen "Workshop" und "Disco" trennen und hast wieder ein Projekt für alles. Wenn du hierzu noch Tipps brauchst, melde dich bitte - entweder in einem separaten Thread oder du hängst deine Fragen in bereits thematisch passenden Threads an.

    Unabhängig davon würde ich mich aber noch über Antworten zu den beiden Fragen aus meinem vorangegangen Post freuen.

  • Hallo Stefan,

    > dass du hier mit dem Spektrum des Audio Analysers laufend Werte im Programmer aktualisierst und so eine Show aus dem Programmer fährst

    Ist das nicht gut ? Das wusste ich nicht.

    Ich habe mich jetzt erst mal an die regelmäßigen Abstürze nach einigen Tagen gemacht. Der Audiosanalyser ist auf den beiden Systemen (T-W-Licht und WSL-Licht) deinstalliert.

    Welche(s) Logfile hättest du gerne ?

  • Ist das nicht gut ? Das wusste ich nicht.

    Es ist insbesondere auf Grund der Gesamtkonstellation "altes Framework für die Darstellung" + "Programmerfenster offen" + "viele (schnelle) Werteänderungen" (aktuell) nicht gut. Deswegen hängt die GUI auch aktuell mal, wenn man komplexere Szenen mit vielen Werten für unterschiedliche Geräte (-gruppen) in den Programmer lädt und das Programmer-Fenster offen ist. Inwieweit sich das bessert, wenn irgendwann der Programmer technisch erneuert wurde, lässt sich auch erst dann sagen. Bis dahin ist der Weg, eine komplette Liveshow über den Programmer zu fahren, keine gute Wahl.

    Der Audiosanalyser ist auf den beiden Systemen (T-W-Licht und WSL-Licht) deinstalliert.

    Ich kann mir vorstellen, dass es in diesem Fall wirklich eher an dem Aufbau des Projekts liegt und weniger am Audio-Analyzer.

  • Es geht aber gerade um die Abstürze nach drei Tagen ohne installieren Audioanalyser und ohne jeden Benutzereingriff während der Zeit.

    Kann das auch an der Benutzung des Programmers liegen ?

  • Ja... das ist in der Tat meine Vermutung, dass es durch die Nutzung des Programmers für die Show auch beim Workshop-Projekt nach den zwei bis drei Tagen zu dem Absturz kommt. Deswegen auch die Frage:

    Sehe ich das richtig, dass der Programmer in den Fensterlayouts durchweg geöffnet ist (selbst nur als Reiter im Hintergrund)?

    Soll umgekehrt heißen: was passiert, wenn du mal wirklich alle Fenster in der GUI schließt (inklusive der Steuerungsfenster) und nur die beiden Softdesks offen sind?

    Aber schlussendlich wäre mein Ansatz eben, das Projekt umzubauen, dass der Programmer gar nicht mehr genutzt wird.

  • Der Programmer ist normalerweise immer geschlossen.
    Nach dem Booten wird DMXC automatisch mit der eingestellten CFG gestartet und der Softdesk so gross wie möglich angezeigt.
    Nach drei Tagen läuft der Speicher über und es stürzt ab. Etwa so:

    2026-01-14 20:55:19,804 [Log-Thread] INFO Lumos.GUI.Net.GrpcManager - Umbra Client Changed: T-W-Licht @ T-W-Licht of Type Gui, Ready: { "readyToWork": true, "receiveAndDisplayMessages": true }
    2026-01-17 03:06:46,227 [Log-Thread] DEBUG Lumos.GUI.Net.gClient.Monitoring_gClient - GetDMXStatistics
    Grpc.Core.RpcException: Status(StatusCode="DeadlineExceeded", Detail="Deadline Exceeded", DebugException="Grpc.Core.Internal.CoreErrorDetailException: {"created":"@1768615603.112000000","description":"Deadline Exceeded","file":"..\..\..\src\core\ext\filters\deadline\deadline_filter.cc","file_line":81,"grpc_status":4}") ---> Grpc.Core.Internal.CoreErrorDetailException: {"created":"@1768615603.112000000","description":"Deadline Exceeded","file":"..\..\..\src\core\ext\filters\deadline\deadline_filter.cc","file_line":81,"grpc_status":4}
    --- Ende der internen Ausnahmestapelüberwachung ---
    bei System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
    bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
    bei System.Runtime.CompilerServices.ConfiguredTaskAwaitable`1.ConfiguredTaskAwaiter.GetResult()
    bei Lumos.GUI.Net.gClient.Monitoring_gClient.<GetDMXStatisticsFromKernel>d__8.MoveNext() in D:\Jenkins\workspace\Lumos_Pipeline_3.3\LumosGUI\src\Net\gClient\Monitoring_gClient.cs:Zeile 73.

    Dann kommt:

    2026-01-17 07:25:57,403 [Main GUI] FATAL Lumos.GUI.Run.GuiRunManager - Unhandled Exception: Eine Ausnahme vom Typ "System.OutOfMemoryException" wurde ausgelöst.
    System.OutOfMemoryException: Eine Ausnahme vom Typ "System.OutOfMemoryException" wurde ausgelöst.
    bei System.Runtime.InteropServices.Marshal.GetFunctionPointerForDelegateInternal(Delegate d)
    bei System.Runtime.InteropServices.Marshal.GetFunctionPointerForDelegate(Delegate d)
    bei System.Windows.Forms.UnsafeNativeMethods.SetWindowLongPtr32(HandleRef hWnd, Int32 nIndex, WndProc wndproc)
    bei System.Windows.Forms.UnsafeNativeMethods.SetWindowLong(HandleRef hWnd, Int32 nIndex, WndProc wndproc)
    bei System.Windows.Forms.NativeWindow.AssignHandle(IntPtr handle, Boolean assignUniqueID)
    bei System.Windows.Forms.NativeWindow.AssignHandle(IntPtr handle)
    bei System.Windows.Forms.NativeWindow.WindowClass.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

    ...und das Logfile endet.