Bugtracker DMXControl 3

Bugtracker für DMXControl 3

Herzlich willkommen im Bugtracker für DMXControl 3. Hier können Sie alle Fehler in DMXControl 3 melden oder Wünsche für neue Features äußern. Dieser Bugtracker ist jedoch nicht der richtige Ort für allgemeine Probleme zur Bedienung oder bei fehlerhaften DDFs. Dafür benutzen Sie bitte das DMXControl Forum.

Bevor Sie einen Fehler melden, prüfen Sie bitte ob Sie mit der aktuellsten Version arbeiten und schauen bitte nach, ob dieser Fehler bereits gemeldet wurde. Im Sinne einer schnellen Fehlerbehebung geben Sie bitte unbedingt eine E-Mail-Adresse für Rückfragen an und fügen alle eventuell angezeigten Fehlermeldungen bitte möglichst vollständig dem Report hinzu (z.B. mit Screenshot). In DMXControl 3 gibt es eine Export-Funktion für alle erforderlichen Log Files. Sie ist im Hauptmenu unter “Help” → “Export Logs” zu finden.

Wenn Sie häufiger Fehler melden und über behobene Fehler informiert werden möchten, lohnt sich auch eine Registrierung. Ihre Kontaktdaten (E-Mail-Adresse) werden von uns ausschließlich zur Kommunikation zwecks Rückfragen bei Problemen der Fehler-Reproduktion und Fehlerbereinugung in unseren Projekten verwendet.

Vielen Dank für ihre Mitarbeit!
Ihr DMXControl Projects e.V. Team

IDProgressCategory  ascTask TypeSeveritySummaryStatusReported InDue In VersionOpenedLast Edited
3884
0%
ArtNetFehlerberichtCriticalException in Artnet-PluginUnbestätigt3.221.10.201902.04.2020 Task Description

2019-10-21 16:08:44,736 [Main-Process-Chain] ERROR org.dmxc.lumos.Kernel.Plugin.PluginManager - Interface.PortComplete(0) of Artistic License#ArtNet#0 threw an exception: Der Index lag außerhalb des Bereichs. Er darf nicht negativ und kleiner als die Sammlung sein.
Parametername: index
System.ArgumentOutOfRangeException: Der Index lag außerhalb des Bereichs. Er darf nicht negativ und kleiner als die Sammlung sein.
Parametername: index

 bei System.ThrowHelper.ThrowArgumentOutOfRangeException(ExceptionArgument argument, ExceptionResource resource)
 bei org.dmxc.lumos.Kernel.DMX.ArtNetInterface.LibSendDMX(Int32 port) in D:\Jenkins\workspace\Lumos_Release\DMXPlugins\ArtisticLicenseArtNet\src\ArtNet.cs:Zeile 549.
 bei org.dmxc.lumos.Kernel.DMX.ArtNetInterface.PortCompleteInternal(Int32 port) in D:\Jenkins\workspace\Lumos_Release\DMXPlugins\ArtisticLicenseArtNet\src\ArtNet.cs:Zeile 538.
 bei DMXLIB.AbstractDMXInterface.PortComplete(Int32 port) in C:\Users\Grote\Source\Repos\Lumos\DMXLIB\AbstractDMXInterface.cs:Zeile 286.
 bei org.dmxc.lumos.Kernel.Plugin.AbstractPluginManager.<>c__DisplayClass84_0.<SendDMXValuesToDeltaAndSingleInterfaces>b__1(DMXInterfaceBag e) in C:\Users\Grote\Source\Repos\Lumos\LumosLIB\src\Kernel\Plugin\AbstractPluginManager.cs:Zeile 920.

2019-10-21 16:08:44,996 [Main-Process-Chain] ERROR org.dmxc.lumos.Kernel.Plugin.PluginManager - Exception ArgumentOutOfRangeException occured 10 times.
2019-10-21 16:08:45,169 [Log-Thread] DEBUG org.dmxc.lumos.Kernel.Project.DeviceManager - Added Device new A.LEDA Wash K10/K20 W

BEi jeder DMX-Wert-Änderung fliegt ne Exception, wodurch die Außgabe stockt

4814
0%
ArtNetFehlerberichtLowFehlermeldung beim Abschalten des Art-Net-PluginsUnbestätigt3.3 Beta x27.03.202231.03.2022 Task Description

Sobald ich das Art-Net-Plugin selbst manuell abschalte oder der Kernel es beim Herunterfahren automatisch abschaltet, erscheint im Log immer der folgende Eintrag.

17:51:13 ERROR ArtNetFactory -
System.ObjectDisposedException: Auf das verworfene Objekt kann nicht zugegriffen werden.
Objektname: "System.Net.Sockets.Socket".
   bei System.Net.Sockets.Socket.EndReceiveFrom(IAsyncResult asyncResult, EndPoint& endPoint)
   bei System.Net.Sockets.UdpClient.EndReceive(IAsyncResult asyncResult, IPEndPoint& remoteEP)
   bei org.dmxc.lumos.Kernel.DMX.ArtNetManager.client_receive(IAsyncResult res) in D:\Jenkins\workspace\mos_DMXPlugins_Pipeline_master_2\ArtisticLicenseArtNet\src\ArtNetManager.cs:Zeile 704.

Aktiviere ich es danach wieder, arbeitet es soweit auch wie erwartet. Die Meldung erweckt jedoch gerade beim Überprüfen der Einstellungen den Eindruck, als ob etwas kaputt ist.

4861
0%
ArtNetWunsch / IdeeLowDMX-Universum bei weiterem Art-Net-Interface automatisc...Unbestätigt3.3 Beta x17.06.202204.10.2022 Task Description

Im Ticket  FS#3722  kam der Wunsch auf, die Ports der Art-Net-Ausgabe etwas sinnvoller zu sortieren, dass immer direkt 8 Universen am Stück adressiert werden. Durch das neue Ausgabe-Plugin hat sich dieser Dialog in der Hinsicht vereinfacht.

Als Folgeproblem hat sich aber nun durch das neue Ausgabe-Plugin für Art-Net ergeben, dass jedes weitere immer mit dem 1. DMX-Universum angelegt wird - und war sowohl innerhalb der Übersicht der DMX-Interfaces als auch in den erweiterten Einstellungen selbst. Um das Anlegen mehrerer Art-Net-Interfaces zu vereinfachen und zu beschleunigen, sollte hier an beiden Stellen bei den DMX-Universen automatisch “hochgezählt” werden. Net und Subnet bleiben konstant.

4046
0%
AudioAnalyserFehlerberichtCriticalAbsturz wenn Music-Player bei Schließen noch läuftZugeteilt3.2.1 Beta x22.01.202026.02.2020 Task Description

Wenn ich direkt über das Input-Assignment mit dem Audio-Node einen Song starte und daraufhin DMX-Control schließe, ohne die Wiedergabe zu pausieren, stürzt beim Schließen die GUI ab, die Kernel läuft weiter, somit auch die Musik.

2434
0%
AudioAnalyserWunsch / IdeeMediumAudioanalyzer Ergebnisse per Midi ausgebenNeu3.017.03.201616.01.2020 Task Description

Es wäre super wenn es in Zukunft möglich wäre die Ergebnisse des Audio Analyzers an andere Software per Midi weiterzugeben.

3159
0%
AudioAnalyserFehlerberichtMediumProgramm stürzt ab bei Auswahl des Soundinterfaces im A...Neu3.3 Beta x18.09.201810.06.2022 Task Description

Hallo zusammen.

Ich bin durch einen Kollegen auf euch gestoßen und bin fasziniert was ihr da geschaffen habt!!!
Leider habe ich ein Problem mit der Auswahl meines Audiointerfaces im Audio Analyser.

Ich besitze das Focusrite Scarlett 2i2o
https://focusrite.com/de/usb-audio-interface/scarlett/scarlett-2i2

Sobald ich dieses als Eingabegerät wählen möchte (Play Button im Audi Analyser) stürzt das komplette Programm ab :( DMXControl (GUI) crashed

Die Logfile ist im Anhang und ich würde mich mega freuen wenn ihr das in den Griff bekommt oder mir helfen könntet woran es liegt :)

Tausend Dank und weiter so, ich bin wirklich geflashed von eurer Arbeit !!!

4314
0%
AudioAnalyserWunsch / IdeeLowAktuellen BPM-Wert direkt als Wert anbietenUnbestätigt3.2.2 Beta x3.421.12.202028.11.2021 Task Description

Der Speedmaster kann ja mit DMXControl 3.2.2 nun auch direkt auf einen BPM-Wert gesetzt werden. Hier wäre es hilfreich, wenn der AudioAnalyser diesen ebenfalls direkt so als Input anbieten kann.

Der aktuell vorhandene Zählwert für den Beat lässt den Speedmaster zu sehr springen, was das Ergebnis merklich verfälscht und in einem großen Spektrum stark springen lässt. So habe ich Titel, wo der AudioAnalyzer mit seiner Analyse konstant bei beispielsweise 128 BPM liegt. Der Speedmaster macht daraus allerdings BPM-Werte zwishcen 120 und 160 BPM, je nachdem wie die Zählwerte über den Beat to Bool Konverter am Learn-Input ankommen.

4391
0%
AudioAnalyserWunsch / IdeeLowAudioAnalyser als Auswahlmöglichkeit für BeatSource der...Zugeteilt3.3 Alpha x3.402.03.202126.11.2021 Task Description

AudioAnalyser als Auswahlmöglichkeit für BeatSource der CueList hinzufügen. Das ermöglicht vom AudioAnalyser erzeugte Beat-Steuerung, die nicht einen gleichmäßigen Beat erzeugt (wie ManuelBeat oder Speedmaster).
Die Erweiterung ermöglicht evtl. auch anderen Erweiterungen/Plugins sich an dieser Stelle einzubinden.

AL: Vorbereitung erledigt. Frank muss Plugin anpassen

4493
0%
AudioAnalyserFehlerberichtLowAudioAnalyser-Einstellungen werden nicht gespeichertNeu3.2.223.04.202123.04.2021 Task Description

Leider werden die Einstellungen des Audio-Analysers, also eingestellte Soundkarte, Level Correction, Number of Bands nicht gespeichert, so das sie nach jedem Neustart vom DMXControl wieder erneut ausgewählt werden müssen.

3557
0%
DMX PluginFehlerberichtHighNach wenigen Sekunden Betrieb keine DMX Befehle mehr au...Neu3.1.320.04.201922.04.2019 Task Description

Hallo,

ich benutze unter Win10 das Lixada USB-DMX512 Dongle mit dem Illutzmination Treiber um ein RGB Par zu steuern. Funktioniert zunächst wie gewünscht, aber nach einiger Zeit (wenige Sekunden bis Minuten) kommen an der Lampe keine Änderungen mehr an (Display an der Lampe blinkt nicht mehr). Der USB-Stick flackert dann auch nicht mehr orange. Wenn ich unter DMX-Interfaces das Häkchen für “Enable” entferne und wieder setzte läuft es kurz wieder weiter, bis es wieder stoppt. Im Lumos Log steht:

2019-04-20 21:47:36,610 [56] INFO org.dmxc.lumos.Kernel.DMX.AnymaUDMXInterface - Set timing values to Break 0, MAB 243, IB gap 254
2019-04-20 21:47:36,612 [56] INFO org.dmxc.lumos.Kernel.DMX.AnymaUDMXInterface - Successfully enabled uDMX interface with serial ‘ILLUTZMINATOR001’ 2019-04-20 21:48:18,288 [Main-Process-Chain] WARN org.dmxc.lumos.Kernel.DMX.AnymaUDMXInterface - Failed to write 3 bytes, wrote 0
2019-04-20 21:48:18,489 [Main-Process-Chain] WARN org.dmxc.lumos.Kernel.DMX.AnymaUDMXInterface - Failed to write 3 bytes, wrote 0
2019-04-20 21:48:18,690 [Main-Process-Chain] WARN org.dmxc.lumos.Kernel.DMX.AnymaUDMXInterface - Failed to write 3 bytes, wrote 0
2019-04-20 21:48:18,891 [Main-Process-Chain] WARN org.dmxc.lumos.Kernel.DMX.AnymaUDMXInterface - Failed to write 3 bytes, wrote 0
2019-04-20 21:48:19,092 [Main-Process-Chain] WARN org.dmxc.lumos.Kernel.DMX.AnymaUDMXInterface - Failed to write 3 bytes, wrote 0
2019-04-20 21:48:19,293 [Main-Process-Chain] WARN org.dmxc.lumos.Kernel.DMX.AnymaUDMXInterface - Failed to write 3 bytes, wrote 0
2019-04-20 21:48:19,494 [Main-Process-Chain] WARN org.dmxc.lumos.Kernel.DMX.AnymaUDMXInterface - Failed to write 3 bytes, wrote 0
2019-04-20 21:48:19,695 [Main-Process-Chain] WARN org.dmxc.lumos.Kernel.DMX.AnymaUDMXInterface - Failed to write 3 bytes, wrote 0
2019-04-20 21:48:19,896 [Main-Process-Chain] WARN org.dmxc.lumos.Kernel.DMX.AnymaUDMXInterface - Failed to write 3 bytes, wrote 0
2019-04-20 21:48:20,098 [Main-Process-Chain] WARN org.dmxc.lumos.Kernel.DMX.AnymaUDMXInterface - Failed to write 3 bytes, wrote 0
2019-04-20 21:48:20,299 [Main-Process-Chain] WARN org.dmxc.lumos.Kernel.DMX.AnymaUDMXInterface - Failed to write 2 bytes, wrote 0
2019-04-20 21:48:20,512 [Main-Process-Chain] WARN org.dmxc.lumos.Kernel.DMX.AnymaUDMXInterface - Failed to write 1 bytes, wrote 0

Kann man evt. an Timing-Konfigurationen etwas Entspannteres einstellen? Der Test der Hardware mit Freestyler zeigt bisher keine solchen Abbrüche.

Danke für Feedback.

3897
0%
DMX PluginFehlerberichtMediumGerät der Open DMX-Schnittstelle wird bei Beendigung de...Neu3.225.10.201925.10.2019 Task Description

Zwei Punkte:

a) Beim Hinzufügen der Open DMX-Schnittstelle von Enttec muss zum einen in dem sich öffnenden Fenster in dem leeren Parameterfeld für den Parameter <Gerät>

FT232R USB UART [A60185MM]

ausgewählt werden. Es ist keinerlei Hinweis sichtbar, dass hier überhaupt eine Auswahl vorgenommen werden muss. Das leere Parameterfeld wird nicht als Combobox dargestellt.

b) Werden GUI und Kernel unter Sicherung des Projekts beendet und GUI und Kernel wieder gestartet, wird zwar unter dem Reiter DMX-Schnittellen der Enttec OpenDMX als ein Zeileneintrag dargestellt. Klicken auf <Erweiterte Schnittstellenbeschreibungen> führt jedoch zur Fehlermeldung “Schnittstelle nicht verfügbar”.
Die Schnittstelle muss komplett gelöscht werden und wie unter a) neu angelegt werden.
Sicherung des Projekts hat auf das Verhalten kein Einfluss.
Wird nur die GUI beendet, tritt der Effekt nicht auf. Es muss der Kernel beendet werden.

3383
0%
DMX PluginWunsch / IdeeLowFirmware fuer DMXControl-HW mit Lumos ausliefernUnbestätigtunbestimmt19.02.201921.02.2019 Task Description

Da wir immer mehr eigene Hardware anbieten und auch hin und wieder neue Funktionen in die Devices kommen, welche z.T. eng mit DMXC verknüpft sind (Nodle U1, Sync ausgabe, heartbeat), wäre es vielleicht sinnvoll die jeweils aktuellste Firmware für z.B. das Nodle U1 und dann auch das R4S und zukünftige mit DMXC 3 auszuliefern und eventuell beim Start den User darauf hinzuweisen, das eine neue FW verfügbar ist.

DMXC3 müsste dafür nur eine Datei pro HW haben, in welcher die aktuellen FWs stehen und diese beim Verbinden mit dem Interface abgleichen.
Wurde eine ältere Firmware im Device erkannt, kann wird beim Start der Software und verbinden der HW eine MessageBox geworfen und die Verbindung abgebrochen mit Hinweis auf die neue FW.

Der User kann nun entscheiden ob er die Hardware mit der alten FW verbinden will oder zunächst ein Update machen will.
Bei Update-Entscheidung muss DMXC nur ein kleines von uns mitgeliefertes Programm/Tool/exe starten, welches in einem definierten Pfad im Kernel oder GUI liegt.

z.B. beim U1: kernel/hardware/nodle_u1/update.exe –Serialnumber
oder beim R4S: kernel/hardware/nodle_r4s/update.exe –Serialnumber

Das Programm “update.exe” ruft dann die nötigen subprogramme/Funktionen/etc aus dem Ordner auf, um den User durch den Flashvorgang zu leiten.
Wenn erfolgreich, meldet das Programm “exit 0” oder so zurück und DMXC3 kann mit dem Verbindungsaufbau zur HW fortfahren.
Die Seriennummer oder eine andere Geraetekennung (je nach Device) dient dazu mehrere angeschlossene Geräte zu unterscheiden.

Je nach Gerät passiert das alles nach dem druck auf “Ja Update Jetzt” automatisch, weil der User keine Interaktion mit der HW benötigt.
Die spezifischen Unterschiede für jede Hardware sind von DMXC3 komplett entkoppelt und nur in der update.exe pro Hardware zu warten.
Damit ist das jederzeit austauschbar/anpassbar ohne DMXC und dessen Hardware-Treiber zu beeinflussen.

Als Luxus-Variante könnte in dem “neue FW-Fenster” noch der Changelog bzw. die neuen Funktionen des Firmware drin stehen, die sich DMXC aus besagter Versionsdatei in dem jeweiligen Verzeichnis ziehen kann.

3737
0%
DMX PluginWunsch / IdeeLowFunktion zum (Neu-) Patchen von AusgangsuniversenUnbestätigt3.2 Beta x05.08.201906.08.2019 Task Description

Als zum Ticket  FS#3167  ergänzende Funktion soll es möglich sein, bei einem beliebigen DMX-Ausgabe-Plugin nachträglich die Ausgangs- und Eingangs-Universen neu zu patchen, ohne dabei das betreffende und bereits konfigurierte DMX-Ausgabe-Plugin entfernen zu müssen. Angedacht ist hier ein Fenster, in dem man angeben kann, ab welchen DMX-Universium bzw. DMX-Adresse die verfügbaren Ports entsprechend fortlaufend belegt werden sollen. Sprich soll das Art-Net-Ausgabeplugin fortlaufend ab DMX-Universum 3 Werte ausgeben oder erst ab dem 5. DMX-Universum.

4527
0%
DMX PluginWunsch / IdeeLowDiscover-Mode für Auto-Detect-InterfacesUnbestätigt3.2.202.05.202131.05.2021 Task Description

Im QRM-Meeting vom 16.03.2021 wurde vereinbart, dass das Fenster des Add Interface Dialogs um einen zusätzlichen Zweig über dem Zweig der Non Auto Detect Interfaces erweitert wird, in dem alle automatisch erkannten Interfaces gesammelt werden, die auch noch nicht in Verwendung sind. Das zugehörige Stichwort wie auch in dem ursprünglichen Ticket  FS#4369  beschrieben, ist “Discover-Mode für Auto-Detect-Interfaces”. Dieser Modus ist ein zusätzlicher Entwicklungsstrang parallel zum Punkt “Anpassung des Add Interface Dialogs selbst”.

4620
0%
DMX PluginToDoLowDMXLIB um RDM-Parameter erweiternZugeteilt3.3 Alpha x02.10.202102.10.2021 Task Description

s.o.
ANSI_E1-20_2010
Kapitel 10.4 & 10.10

4621
0%
DMX PluginToDoLowDMXLIB um RDM-DMX_PERSONALITY erweiternZugeteilt3.3 Alpha x02.10.202102.10.2021 Task Description

s.o.
ANSI_E1-20_2010 Kapitel 10.6

4656
80%
ExecutorenFehlerberichtHighBelegung von Executor Pages und Executoren wird nicht r...Benötigt Tests3.3 Alpha x3.315.11.202112.01.2023 Task Description

Ich habe mir ein Projekt erstellt, um die verschiedenen Executor-Typen zu testen und zu dokumentieren. Die Belegung der verschiedenen Seiten ist in den beigefügten Screenshots zu sehen. Die verschiedenen Executoren enthalten dabei auf allen Seiten mehrfach die gleichen Elemente, damit ich insbesondere auch die zahlreichen Buttons prüfen kann. Soweit ich das überblicke, werden diese Informationen auch richtig in die Datei “ExecutorMemberWrappers.xml” geschrieben.

Beim erneuten Laden des Projekts direkt aus der laufenden Sitzung heraus oder auch beim Laden des Projekts nach einem Neustart von DMXC werden die Belegung der Executor-Pages augenscheinlich unvollständig bzw. gar nicht geladen - insbesondere bei den “hinteren” Executor-Pages (im aktuellen Beispiel Group Master, Parameter Master etc.). Beim Betätigen des Faders des Executor 2.1 (Executor Page Group Master) kann man aber erkennen, dass eine Verknüpfung im Hintergrund noch existiert. Die Fader der Executoren 2.2 und 2.3 bewegen sich mit. Gleiches fällt auf, wenn man die Belegung der Executoren ändern möchte. Es wird erst beim zweiten Ablegen eines Elements auf den Executor wirklich das neue Element angezeigt.

Im Anhang findet sich neben den Screenshots des Sollzustands das zugehörige Projekt sowie die Logfiles, die nach dem Neustart und Laden des Projekts generiert wurden.

4539
0%
ExecutorenWunsch / IdeeLowButton "Add Page" abschaltbar machenUnbestätigt3.3 Alpha x3.415.05.202131.03.2022 Task Description

Aktuell existiert im Executor-Fenster grundsätzlich der Button “Add Page”. Dieser sollte für den Live-Betrieb aber abschaltbar sein, um dort nicht versehentlich neue Seiten anzulegen.

Eventuell könnte eine Variante sein, diese Option in die Properties des Zweigs für die Executor Pages.

4649
0%
ExecutorenWunsch / IdeeLowÄndern der Reihenfolge der Executror-Seiten nicht mögli...Usability Relevant3.3 Alpha x13.11.202113.10.2022 Task Description

Aktuell kann ich die verschiedenen Executor-Seiten nicht in einer eigenen Reihenfolge anordnen. Die angebotene Option “UI Order Index” wird zur Zeit ignoriert.

4705
0%
ExecutorenToDoLowColorMaster Executor Display erweitern und einstellbar ...Unbestätigt3.3 Alpha x3.3.110.01.202204.01.2023 Task Description

RGB+ Kanäle Visualisieren

Option für Displays einbauen
-HSV
-CMY
-RGB
-Die Kombinationen aller

4748
0%
ExecutorenWunsch / IdeeLowMulti-Touch-Unterstützung in Executoren implementierenUnbestätigt3.3 Alpha x25.01.202219.11.2022 Task Description

Die neuen Executoren unterstützen aktuell noch keine Multi-Touch-Eingabe. Diese Funktion soll auch Basis der Implementierung im Softdesk übernommen werden.

4780
0%
ExecutorenFehlerberichtLowFader-Modus des Color Masters ändert Farbübergang zwisc...Unbestätigt3.3 Alpha x3.420.02.202218.01.2023 Task Description

Ich habe eine einfache Cuelist mit zwei Cues gebaut, die in Schleife wiedergegeben wird:

  1. Cue 1: Dimmer [100%], Farbe [ColorMaster 1]
  2. Cue 2: Dimmer [100%], Farbe [ColorMaster 2]

Beide Color Master habe ich mir in den verschiedenen Modi RGB, CMY und HSV in eine Executor Page geliegt.

Jenachdem, welchen Color Master Typ ich nutze, um die Farbe einzustellen, ändert sich der Farbübergang zwischen den beiden Cues. Entweder direkt oder entlang des Farbkreises. Dass die Kombination des Farbtypes / Farbmodells den Fade beeinflusst, ist grundsätzlich bekannt (siehe Ticket FS#4279).

An dieser Stelle kann es zu Verwunderungen führen, wenn eben dieses Verhalten nicht bewusst ist. Die Verwunderung kann noch größer sein, wenn man einmal die Farbe per Fader festlegt (der als HSV konfiguriert ist) und dann die Farbe per Button setzt - innerhalb eines Executorzugs. Auch dies beeinflusst den Farbübergang.

Grundsätzlich kann man diesen Punkt dokumentieren, bis er sich bei der Umsetzung des Tickets FS#4279 “erledigt”. Die Frage ist aber, ob dies ein praktikabler Weg ist und ob es nicht besser wäre, dem ColorMaster eine Einstellung mitzugeben, dass er die Farbe nur intern in einem bestimmten Farbmodell vorhält.

4781
0%
ExecutorenWunsch / IdeeLowColor List Mode für Color Master Fader im ExecutorUnbestätigt3.3 Alpha x21.02.202221.02.2022 Task Description

Aus der Erfahrung heraus gibt es für LED-Scheinwerfer eine Reihe von Farben, die man gerne wiederverwendet, weil man weiß, dass sie auf den Geräten gut aussehen. Solche Farben sind aber oft Mischfarben. Diese Mischfarben kann man mit einem Fader jedoch nur schwer schnell und reproduzierbar “treffen”.

Grundsätzlich besteht die Möglichkeit, diese Farben in mehreren Cuelists zu speichern, gerade wenn man sie über mehrere Geräte unterschiedlich aufrufen möchte. Um das Projekt flexibler zu gestalten, kam mir daher der Gedanke, dass man durch die Kombination eines Color Masters auf einem Executor mit einer selbst definierten Color List ggf. vereinfachen könnte. Hierzu wähle ich statt eines Faders wie Hue, Saturation, Red oder ähnlich eine meiner vorbereiteten Color Lists aus. Auf Basis dieser Color List erhält man im Bereich des Faders statt des Faders untereinander angeordnete Buttons mit den Farben aus der ausgewählten Color List. Damit ließen sich eigene Farben entsprechend schneller anwählen und man benötigt für einen Color Master auch nur einen Executor-Zug.

4896
0%
ExecutorenFehlerberichtLowExecutor Dark Theme wird beim Start von DMXC nicht über...Known Bug3.3 Beta x3.420.08.202201.01.2023 Task Description

Fehlerbeschreibung

Starte ich DMXC neu und das Executor Fenster ist noch geöffnet, so wird das Theming nicht richtig übernommen.

4911
0%
ExecutorenFehlerberichtLowExecutor Flaschen funktioniert über das IA nicht Neu3.3 Beta x16.09.202216.09.2022 Task Description

Wird ein Button eines Executors als Flash-Button definiert und anschließend über das IA getriggert wird der Executor zwar geflasht aber auch noch nach dem loslassen des Inputs, d.h. es ist nicht möglich in den Eingang Button 1/ Button 2 usw. zu gehen und dann zu flashen da dieser Zustand nicht beendet werden kann.

5024
0%
ExecutorenWunsch / IdeeLowGemeinsame Ansteuerung von Funktionen u. a. für Cuelist...Unbestätigt3.3 Beta x02.02.202302.02.2023 Task Description

In gewissen Situationen habe ich gleich mehrere Cuelists, die ich gemeinsam live manipulieren möchte, wie unter anderem Timing (Fade Factor), Effect speed, Limit, Temp. Aktuell muss ich hierzu entsprechend viele Executoren anlegen, kann aber dann die Werte immer noch nicht für mehrere Cuelists gemeinsam setzen.

Um dies zu ermöglichen kamen mir hier zwei mögliche Ansätze in den Sinn:

  • Es wird ein neuer Executor-Typ “Cuelist Group” eingeführt. Für alle in dieser Cuelist Group enthaltenen Cuelists kann man dann gemeinsam alle verfügbaren Werte gemeinsam ansprechen. Zusätzlich erhält man Zugriff auf die Funktionen wie “Alle starten” oder “Alle stoppen”, die das Cuelist Group Node bereits anbietet. Dieser Ansatz würde dann auch zu dem Ticket FS#4325 passen, die genannten Funktionen auch im Node direkt hinzuzufügen.
  • Man kann einem Executor mehrere Elemente zuordnen. An dieser Stelle würde es dann ggf. keine Differenzierung geben, dass es bei den Cuelists erlaubt ist, bei den verschiedenen Mastern aber nicht.
4678
0%
GUIToDoHighTimecodePlayer ScrollZomView überarbeiten, fixen ersetz...Zugeteiltunbestimmt3.430.12.202130.12.2021 Task Description

Das Scrollen und Zoomen funktioniert nicht zuverlässig, aber ohne HotReload schmeiß ich die Karten hin

4976
0%
GUIFehlerberichtHighDevice Control, Tab Effects, Änderungen im Effekt werde...Neu3.3 Beta x20.12.202220.12.2022 Task Description

Einen beliebigen Effekt auf ein Gerät ziehen, anschließend editieren.
Dann in den Tab Effects wechseln, dort wird der Effekt angezeigt, allerdings mit den ursprünglichen Werten, die Änderungen werden nicht angezeigt.

Speichere ich den Effekt aus dem Effects-Tab ab wird er mit den korrekten Werten gespeichert.

4985
0%
GUIFehlerberichtHighAbsturz der GUI auf Grund Unhandled ExceptionUnbestätigt3.3 Beta x23.12.202211.01.2023 Task Description

Mit der Beta 5 habe ich häufig insbesondere beim Speichern des aktuellen Projekts das Problem, dass die GUI abstürzt. Folgender Eintrag im Log der GUI zu finden.

2022-12-23 16:24:17,453 [Log-Thread] DEBUG Lumos.GUI.Run.GuiRunManager - InformSaveProject [before=True] took 105 ms
2022-12-23 16:24:17,531 [Log-Thread] DEBUG Lumos.GUI.Net.gClient.User_gClient - UserContext of current User changed
2022-12-23 16:24:17,540 [92] FATAL Lumos.GUI.Run.GuiRunManager - Unhandled Exception: Der Vorgang ist aufgrund des aktuellen Zustands des Objekts ungültig.
System.InvalidOperationException: Der Vorgang ist aufgrund des aktuellen Zustands des Objekts ungültig.
   bei Lumos.GUI.Facade.User.UserContextFacade.ProcessDeviceChangedMessage(UserContextChangedMessage message) in D:\Jenkins\workspace\Lumos_Pipeline_3.3\LumosGUI\src\Facade\User\UserContextFacade.cs:Zeile 43.
   bei Lumos.GUI.Facade.GUISession.UserContextFacadeUpdater.<ProcessChange>d__3.MoveNext() in D:\Jenkins\workspace\Lumos_Pipeline_3.3\LumosGUI\src\Facade\GUISession\FacadeUpdaters.cs:Zeile 38.
--- Ende der Stapelüberwachung vom vorhergehenden Ort, an dem die Ausnahme ausgelöst wurde ---
   bei System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter`1.GetResult()
   bei Lumos.GUI.Facade.GUISession.FacadeContainer`2.<ProcessChangeMessage>d__21.MoveNext() in D:\Jenkins\workspace\Lumos_Pipeline_3.3\LumosGUI\src\Facade\GUISession\FacadeContainer.cs:Zeile 142.
--- Ende der Stapelüberwachung vom vorhergehenden Ort, an dem die Ausnahme ausgelöst wurde ---
   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.User.UserManager.<OnUserContextChanged>d__65.MoveNext() in D:\Jenkins\workspace\Lumos_Pipeline_3.3\LumosGUI\src\User\UserManager.cs:Zeile 282.
--- Ende der Stapelüberwachung vom vorhergehenden Ort, an dem die Ausnahme ausgelöst wurde ---
   bei System.Runtime.CompilerServices.AsyncMethodBuilderCore.<>c.<ThrowAsync>b__6_1(Object state)
   bei System.Threading.QueueUserWorkItemCallback.WaitCallback_Context(Object state)
   bei System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   bei System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   bei System.Threading.QueueUserWorkItemCallback.System.Threading.IThreadPoolWorkItem.ExecuteWorkItem()
   bei System.Threading.ThreadPoolWorkQueue.Dispatch()
   bei System.Threading._ThreadPoolWaitCallback.PerformWaitCallback()

Der Kernel führt zu dem Zeitpunkt des Absturz folgende Aktionen aus:

2022-12-23 16:24:17,475 [Log-Thread] INFO  org.dmxc.lumos.Kernel.Project.ProjectManager - Saving Project FS#4944 - Master window
2022-12-23 16:24:17,484 [Log-Thread] DEBUG org.dmxc.lumos.Kernel.Input.v2.InputManager - saveProject KernelInputManager.
2022-12-23 16:24:17,796 [Log-Thread] DEBUG org.dmxc.lumos.Kernel.Resource.FileAccessUtil - Deleted D:\Arbeit\MSK event GbR\Software\DMXControl 3.3.0\Kernel\Temp\b42fdf64-174b-4edc-97eb-b4cb45012ba3.tmp
2022-12-23 16:24:17,796 [Log-Thread] INFO  org.dmxc.lumos.Kernel.Project.ProjectManager - Project FS#4944 - Master window successfully saved.
5001
0%
GUIFehlerberichtHighBeim verwenden von Presets hängt sich DMXControl 3 auf ...Neu3.2.331.12.202205.01.2023 Task Description

Haben Sie einen Fehler entdeckt? Dann nutzen Sie bitte folgendes Template und beachten die Hinweise für eine reibungsfreie Bearbeitung der Tickets.

Fehlerbeschreibung

Wenn mehr als 3 Presets angelegt werden, oder ein Preset entfernt/zusammengeführt (tritt bei beiden Funktionen nachstellbar auf) “hängt” sich das Programm auf. Die GUI ist noch aktiv und es lassen sich verschiedene Reiter öffnen, jedoch werden keine DMX Befehle mehr gesendet und die vorhandenen Presets lassen sich auch nicht mehr aktivieren. Wenn man DMXControl dann regulär beendet (Klick aufs “x” und anschließendes wählen der Optionen im Beenden Fenster “Kernel beenden” kommt zudem eine Fehlermeldung, dass das Programm abgestürzt wäre. Der einzige Workaround der bisher funktioniert hat ist, nach jedem angelegten Preset das Projekt zu speichern, DMXControl 3 komplett neu zu starten und das Projekt wieder zu laden. Das ist allerdings, wenn mehrere Presets gebaut werden müssen extrem Zeitaufwendig und nicht für die Praxis geeignet.

Erwartetes Verhalten

Presets lassen sich im laufenden Betrieb anlegen, bearbeiten und entfernen ohne, dass das Projekt abstürzt und DMXControl neu gestartet werden muss.

Hinweise

Bitte beachten Sie folgende Hinweise, um das Finden des Problems für die Entwickler zu erleichtern:

  • Verwenden Sie die aktuellste Version von DMXControl 3?

Die aktuellste Release Version (3.2.3)

  • Wurde der Fehler bereits gemeldet?

Nein, nur im Forum > https://forum.dmxcontrol-projects.org/index.php?thread/16884-programmprobleme-beim-anlegen-von-presets/

  • Bitte geben Sie unbedingt eine E-Mail-Adresse für Rückfragen an

lukas.hoerth@agape-kirche.de

  • Bitte fügen Sie alle eventuell angezeigten Fehlermeldungen möglichst vollständig dem Report hinzu (z.B. mit Screenshot)

Ich habe gerade leider keinen Zugriff auf den PC, am morgigen Sonntag kann ich die Absturzmeldung noch nachreichen.

  • Bitte fügen Sie alle Logfiles hinzu. In DMXControl 3 gibt es eine Export-Funktion für erforderliche Log Files. Sie ist im Hauptmenu unter “Help” → “Export Logs” zu finden.

Siehe Anhang

  • Bitte fügen Sie das entsprechende Projekt zur Reproduktion bei

Auch das reiche ich am morgigen Sonntag nach, im Forum hieß es, es würden nur die Reports benötigt weswegen ich nur diese exportiert habe.

Wichtig: Sollten keine Logs beigefügt sein, kann das dazu führen, dass das Ticket sofort geschlossen wird!

5012
90%
GUIFehlerberichtHighGUI stürtzt ab, wenn 3.3er Umbra und 3.2.3er Kernel lau...Benötigt Tests3.3 Beta x3.307.01.202307.01.2023 Task Description

Mehr durch Zufall musste ich feststellen, dass die GUI direkt beim Start mit dem folgenden Logeintrag abstürzt, wenn statt des 3.3er-Kernels der 3.2.3er-Kernel läuft. Auch wenn die Konstellation eher ungewöhnlich ist, sollte diese trotzdem keinen Absturz hervorrufen.

2023-01-07 20:22:54,057 [Main GUI] FATAL Lumos.GUI.Run.GuiRunManager - Unhandled Exception: Der Zugriff auf einen Socket war aufgrund der Zugriffsrechte des Sockets unzulässig
System.Net.Sockets.SocketException (0x80004005): Der Zugriff auf einen Socket war aufgrund der Zugriffsrechte des Sockets unzulässig
   bei System.Net.Sockets.Socket.DoBind(EndPoint endPointSnapshot, SocketAddress socketAddress)
   bei System.Net.Sockets.Socket.Bind(EndPoint localEP)
   bei LumosProtobuf.Udp.UdpListener.StartListen() in D:\Jenkins\workspace\Lumos_Pipeline_3.3\LumosProtobuf\src\UdpListener.cs:Zeile 41.
   bei LumosProtobuf.Udp.UmbraDiscoveryClient.StartDiscovery(IReadOnlyCollection`1 listenAdresses) in D:\Jenkins\workspace\Lumos_Pipeline_3.3\LumosProtobuf\src\UmbraDiscoveryClient.cs:Zeile 66.
   bei org.dmxc.lumos.Kernel.Net.AbstractGrpcManager.NetTools_NetworkChanged(Object sender, EventArgs e) in D:\Jenkins\workspace\Lumos_Pipeline_3.3\LumosLIB\src\Kernel\Net\AbstractGrpcManager.cs:Zeile 175.
   bei org.dmxc.lumos.Kernel.Net.AbstractGrpcManager.StartupFinished() in D:\Jenkins\workspace\Lumos_Pipeline_3.3\LumosLIB\src\Kernel\Net\AbstractGrpcManager.cs:Zeile 167.
   bei org.dmxc.lumos.Kernel.Run.AbstractRunManager`2.InformManagerStartupFinished(TManager m) in D:\Jenkins\workspace\Lumos_Pipeline_3.3\LumosLIB\src\Kernel\Run\AbstractRunManager.cs:Zeile 372.
   bei System.Linq.Enumerable.All[TSource](IEnumerable`1 source, Func`2 predicate)
   bei org.dmxc.lumos.Kernel.Run.AbstractRunManager`2.DoManagerTopDown(Func`2 action) in D:\Jenkins\workspace\Lumos_Pipeline_3.3\LumosLIB\src\Kernel\Run\AbstractRunManager.cs:Zeile 142.
   bei org.dmxc.lumos.Kernel.Run.AbstractRunManager`2.startManager() in D:\Jenkins\workspace\Lumos_Pipeline_3.3\LumosLIB\src\Kernel\Run\AbstractRunManager.cs:Zeile 340.
   bei Lumos.GUI.Run.GuiRunManager.startupGui() in D:\Jenkins\workspace\Lumos_Pipeline_3.3\LumosGUI\src\Run\GuiRunManager.cs:Zeile 62.
   bei Lumos.GUI.Program.runGui() in D:\Jenkins\workspace\Lumos_Pipeline_3.3\LumosGUI\src\Program.cs:Zeile 194.
   bei Lumos.GUI.Program.Main(String[] param) in D:\Jenkins\workspace\Lumos_Pipeline_3.3\LumosGUI\src\Program.cs:Zeile 160.

Reproduzieren lässt sich dies, in dem ich den 3.2.3er Kernel manuell starte und dann Umbra und GUI über den Launcher aufrufe.

592
0%
GUIWunsch / IdeeMediumSyntax implementierenZugeteiltAlpha 2TBD (UIS)10.09.201127.12.2018 Task Description

Damit die Funktion auch mal einen Bugtacker Eintrag bekommt

Alle Funktionen die man so braucht sollten über eine Kommandozeile ausführbar sein, damit später alles über Tasten bedienbar ist.

Einfachste:
<1> <FL> setzt Dimmer von Gerät 1 auf 100%
<REC> <NEXT> <ENTER> Speichert alle Werte auf dem Programmer unter der nächsten freien Cue Nummer
<REC> <SUB> <1> <ENTER> Speichert alle Werte aus dem Programmer in Submaster 1
<REC> <GROUP> <NEXT> Speichert die aktuelle Auswahl in der nächst freien Gruppe

Mittel:
<CUE> <1> <TIME> <3> <TIME> <5> <ENTER> setzt Fade In Zeit von Cue 1 auf 3 Sekunden und Fade Out Zeit auf 5 Sekunden
<1> <THRU> <100> <AT> <1> <THRU> <100> fanned über Kreise 1 bis 100 die Werte 1 bis 100
<GROUP> <1> <COLOR> <AT> <PRESET> <1> setzt alle Farben der in Gruppe 1 gespeicherten Geräte auf Preset 1

Komplex:
Muss ich mir erst was schönes einfallen lassen, aber ich denke sollte soweit klar sein, was gemeint ist.
595
50%
GUIWunsch / IdeeMediumCuelist, Cue als Trackingsperre für Record und PlaybackZugeteiltAlpha 2Cuelist-Erweiterung(intern)11.09.201112.12.2018 Task Description

2 unterschiedliche Attribute sollte es für Cues geben

Das erste greift während der Programmierung:
Cue 5 ist als Sperre markiert, in Cue 1 füge ich einen weiteren Kreis hinzu. Durch tracking wird dieser jetzt bis einschl. Cue 4 ausgegeben. In Cue 5 wird nun automatisch der urspüngliche Werte (in diesem Fall 0) gespeichert. Nehme ich die Sperre wieder raus, werden die automatisch gesetzten Werte gelöscht.

Das zweite während dem Playback:
Wird dieses Attribut für ein Cue gesetzt, bedeutet dies, dass alle Werte, auch getrackte, erneut ausgegeben werden.
Hintergrund ist folgender, Cue 7 ist ein sehr langsamer fade to black für kreis 1. Also wird die 0 getrackt. Cue 8, Cue 9 (verändern Kreis 1 nicht) werden ausgeführt, während Cue 7 noch ausblendet. Cue 10 soll jetzt ein Black sein. Würde der Black aufgerufen werden, bevor der Fade von Cue 7 beendet ist, gehen alle Kreise bis auf Kreis 1 aus, dieser würde den Fade weitermachen, weil eben nach Cue 7 keine weitere Instruktion für Kreis 1 kamen. Wird nun dieses Attribut gesetzt, werden alle Werte dieses Cues als neue Instruktion betrachtet, in Cue 10 also auch die 0 von Kreis 1 (aber nur während dem Playback) und ausgegeben und beendet somit auch den laufenden Fade.

612
0%
GUIWunsch / IdeeMediumLive View, temporär Gruppen oder Geräte aus Selektion e...NeuAlpha 202.10.201102.10.2011 Task Description

Folgendes sollte gehen:

(ich beschreibs jetzt erstmal anhand von Syntax)

<1> <THRU> <100> <-> <GROUP> <1> <ENTER> <- selektiert alle Geräte von 1-100 außer der Geräte in Gruppe 1
<GROUP> <2> <-> <GROUP> <1> <ENTER> <- selektiert alle Geräte aus Gruppe 2, die die auch in Gruppe 1 sind werden nicht selektiert
<GROUP> <2> <-> <1> <THRU> <5> <-> <50> <-> <60> <THRU> <70> <ENTER> <- selektiert alle Geräte aus Gruppe 2, außer Gerät 1-5, 50, 60-70

Umsetzen könnte man das vorerst im Live View, indem es eine Tastenkombination z.B. STRG+S(ubtract) gibt.
Ich markiere also Gruppe 1, nun halte ich STRG+S gedrückt und markiere Gerät 1 bis 5, oder Gruppe 1, oder ..., diese Geräte werden dann aus einer Selektion entfernt. Hab aber gerade keine gute Idee, dass darzustellen, vllt abgewählte Geräte leicht rot umranden, etc.

2488
0%
GUIWunsch / IdeeMediumTab-Index / Tabulatorsteuerung für Property-GridNeu3.0.103.06.201603.06.2016 Task Description

Hat man in ein Feld im Property-Grid geklickt, um einen Wert einzutragen, sollte beim Betätigen der Tab-Taste der Cursor direkt in das darunterliegende Feld springen und ggf. sogar direkt den Eintrag aus dem Feld auswählen. Hat ein Feld mehrere, durch ein Semikolon getrennte werde, so werden diese jeweils einzeln von links nach rechts durchgeschaltet (als ob es einzelne / getrennte Felder wären) und ebenfalls direkt zum Überschreiben ausgewählt. Durch drücken der Kombination Umschalt + Tab springt der Cursor ins vorherige Feld.

Beispiel der Tab-Reihenfolge für einen LED-PAR entsprechend des Aufbaus im Property-Grid: DIMMER > STROBE > COLOR (rot) > COLOR (grün) > COLOR (blau) > DIMMER

Aktuell ist es so, dass der Cursor quasi eine Kreis dreht: Wert > Dropdown-Pfeil für Schiebebalken > Umschaltmenü Values, Group Handlung, Registerkarte Properties > Wert

3409
0%
GUIFehlerberichtMediumToolbar im MidiManager ohne IconsUnbestätigt3.2 Alpha x26.02.201909.05.2019 Task Description

die Toolbar im MidiManager hat keine Icons. Das sollte konsistent sein, wie im Project Explorer, Presets, DMX Interfaces, etc.

gruenes Plus fuer Add Rule Set (Add Interface bei DMX Interfaces)
rotes X fuer Delete Rule Set (Delete Interface bei DMX Interfaces oder auch Delete Selection im Programmer)
blauer Doppelpfeil fuer Update Devices (Refresh im Project Explorer oder auch Update in der QuickBar links)
blaues i fuer Info (wie unter Hilfe → Info im menu)
Wrench-Icon fuer Tools (keine Referenz0

3607
0%
GUIWunsch / IdeeMediumOptimierung des Drag&Drop-Verhaltens im Project Explore...Usability Relevant3.2 Beta x3.423.05.201926.11.2021 Task Description

Ich habe die Cuelists A, B und C. Die Cuelists A und C sind bereits einer Cuelist Group zugeordnet. Nun lege ich noch Cuelist D an. Alle Cuelists A bis D möchte im Anschluss nun der gleichen Cuelist Group zuordnen, wähle dazu alle aus und ziehe die Cuelists auf die Cuelist Group. Nun sperrt mir die GUI das Ablegen der Auswahl, da ja bereit eine Cuelist (hier A und C) innerhalb der Auswahl bereits im Ziel (also der Cuelist Group) enthalten ist.

Das “Sperren” ist in dem Sinne unschön (weswegen ich das Ticket als Fehler gekennzeichnet habe) und vom Workflow her ineffektiv ist, dass ich immer vorher erst schauen muss, was ist im “Zielordner” (meist Cuelist Group, Device Group, Stage View und Eletricity Management) bereits enthalten. Im zweiten Schritt muss ich über eine Mehrfachauswahl die Cuelists o. ä. anwählen, die ich dem Zielordner hinzufügen möchte. Hierbei laufe ich aber Gefahr, entweder Cuelists zu vergessen oder ich erwische doch nochmal eine, die bereits in der Cuelist Group enthalten ist, worauf ich die Auswahl nochmal ändern oder möglichst alle Cuelists einzeln der Cuelist Group zuordnen muss.

An dieser Stelle wünsche ich mir einen Workflow, bei dem diese “Vorabkontrolle” entfällt, ob eine Cuelist in einer Cuelist Group enthalten ist oder nicht.

Auch wenn das Verhalten bereits in der 3.1 schon so war, habe ich das Ticket mal mit zur 3.2 gepackt, weil es hier nun nochmal explizit aufgefallen ist.

3916
0%
GUIWunsch / IdeeMediumCuelist aus anderer Cuelist in Ansicht laden/anzeigenNeu3.1.301.11.201901.11.2019 Task Description

Ich bitte um die Möglichkeit, eine CueList nicht nur aus einer Cue ausführen zu können, sondern auch andere Cuelists in die Ansicht zu laden, sodass ich zb pro Szene eine Cuelist haben kann, und die nächste Cuelist auch in die Ansicht laden kann, ohne sie manuell anzuklicken.
Vielen schonmal!

3956
0%
GUIFehlerberichtMediumWARN org.dmxc.lumos.XNAViews.GraphicsDeviceControl - F...Unbestätigt3.224.11.201924.11.2019 Task Description

Nachdem auf meinem PC der Bildschirmschoner ansprang, hat die GUI das Logfils mit der folgenden Fehlermeldung geflutet, sodass die Datei am Ende auf über 143 MB angewachsen ist.

2019-11-23 15:17:17,144 [Log-Thread] WARN  org.dmxc.lumos.XNAViews.GraphicsDeviceControl - Failed to Draw!
System.InvalidOperationException: An unexpected error has occurred.
   bei Microsoft.Xna.Framework.Graphics.GraphicsDevice.CreateDevice(GraphicsAdapter adapter, PresentationParameters presentationParameters)
   bei Microsoft.Xna.Framework.Graphics.GraphicsDevice..ctor(GraphicsAdapter adapter, GraphicsProfile graphicsProfile, PresentationParameters presentationParameters)
   bei org.dmxc.lumos.XNAViews.GraphicsDeviceService.ResetDevice(Int32 width, Int32 height, Boolean withoutEvent, Nullable`1 handler, Boolean hardReset) in D:\Jenkins\workspace\Lumos_3.2_Release\Lumos\LumosLIB\src\XNA\GraphicsDeviceService.cs:Zeile 146.
   bei org.dmxc.lumos.XNAViews.GraphicsDeviceControl.OnPaint(PaintEventArgs e) in D:\Jenkins\workspace\Lumos_3.2_Release\Lumos\XNAViews\src\XNAViews\GraphicsDeviceControl.cs:Zeile 470.
2019-11-23 15:17:17,158
2019-11-23 15:17:17,171
2019-11-23 15:17:17,185
...
2019-11-23 15:50:20,200
2019-11-23 15:50:20,222
2019-11-23 15:50:20,245

Durch die Größe des Logfiles hat möglicherweise auch dazu geführt, dass die GUI von Windows geschlossen wurde.

4452
90%
GUIFehlerberichtMediumInhalt der Stage View wird nicht aktualisiertBenötigt Tests3.3 Alpha x3.308.04.202111.01.2023 Task Description

Wenn ich im folgenden Setup auf PC 1 in einem leeren Projekt Geräte und Gerätegruppen in einer Stage View hinzufüge, so wird die auf PC 2 nicht aktualisiert. Gleiches gilt umgekehrt.

  • PC 1: Umbra, Kernel, GUI
  • PC 2: GUI

Auch wenn die Icons der Geräte und Gerätegruppen nicht simultan anzeigt werden, so aktualisieren sich zumindest beide GUIs, wenn die Geräte auswähle.

4775
0%
GUIFehlerberichtMediumTexteingabe im Darkmode nicht SichbarNeu3.2.33.417.02.202220.02.2022 Task Description

Wenn der Darkmode aktiviert ist, ist z.B. bei der Benennung von MIDI Regeln der Text auf weißem Hintergrund selber weiß und somit nicht lesbar.

4943
0%
GUIFehlerberichtMediumSound-Selector öffnet sich nicht nach OoM-Exception in ...Unbestätigt3.3 Beta x22.10.202218.11.2022 Task Description

Anfangs mehr oder minder unbeabsichtigt habe ich mal eine 78 Minuten lange Audiodatei einem leeren Projekt hinzugefügt. Daraufhin knallte es bereits im Kernel, wie in Ticket FS#4836 berichtet. Vormutlich auch in Zusammenhang mit dem dort aufgetretenen Fehler, der OutOfMemory-Exception, hängt sich in der GUI der Sound-Selector auf, wenn ich einer Cuelist eine Audio Cue mit der betreffenden Audiodatei hinzufügen möchte. Die dritte der nachfolgend beigefügten Meldungen erscheint dabei in Endlosschleife und blockiert in Teilen die GUI.

2022-10-22 13:19:17,482 [Log-Thread] DEBUG Lumos.GUI.Resource.ResourceManager - Resource SoundFileRescourceProvider.SoundFileWaveSmall.[[SOUNDFILE]]] of type Picture and source Default could not be loaded!
2022-10-22 13:19:17,485 [Main GUI] ERROR Lumos.GUI.App - Exception in WPF
System.Windows.Markup.XamlParseException: Es wurde keine passende Imagingkomponente zum Abschließen dieses Vorgangs gefunden. ---> System.Runtime.InteropServices.COMException: Die Komponente wurde nicht gefunden. (Ausnahme von HRESULT: 0x88982F50)
   --- Ende der internen Ausnahmestapelüberwachung ---
   bei System.Windows.FrameworkTemplate.LoadTemplateXaml(XamlReader templateReader, XamlObjectWriter currentWriter)
   bei System.Windows.FrameworkTemplate.LoadTemplateXaml(XamlObjectWriter objectWriter)
   bei System.Windows.FrameworkTemplate.LoadOptimizedTemplateContent(DependencyObject container, IComponentConnector componentConnector, IStyleConnector styleConnector, List`1 affectedChildren, UncommonField`1 templatedNonFeChildrenField)
   bei System.Windows.FrameworkTemplate.LoadContent(DependencyObject container, List`1 affectedChildren)
   bei System.Windows.StyleHelper.ApplyTemplateContent(UncommonField`1 dataField, DependencyObject container, FrameworkElementFactory templateRoot, Int32 lastChildIndex, HybridDictionary childIndexFromChildID, FrameworkTemplate frameworkTemplate)
   bei System.Windows.FrameworkTemplate.ApplyTemplateContent(UncommonField`1 templateDataField, FrameworkElement container)
   bei System.Windows.FrameworkElement.ApplyTemplate()
   bei System.Windows.FrameworkElement.MeasureCore(Size availableSize)
   bei System.Windows.UIElement.Measure(Size availableSize)
   bei System.Windows.ContextLayoutManager.UpdateLayout()
   bei System.Windows.ContextLayoutManager.UpdateLayoutCallback(Object arg)
   bei System.Windows.Media.MediaContext.InvokeOnRenderCallback.DoWork()
   bei System.Windows.Media.MediaContext.FireInvokeOnRenderCallbacks()
   bei System.Windows.Media.MediaContext.RenderMessageHandlerCore(Object resizedCompositionTarget)
   bei System.Windows.Media.MediaContext.RenderMessageHandler(Object resizedCompositionTarget)
   bei System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
   bei System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)
2022-10-22 13:19:17,497 [Main GUI] ERROR Lumos.GUI.App - Exception in WPF
System.Windows.Markup.XamlParseException: Es wurde keine passende Imagingkomponente zum Abschließen dieses Vorgangs gefunden. ---> System.Runtime.InteropServices.COMException: Die Komponente wurde nicht gefunden. (Ausnahme von HRESULT: 0x88982F50)
   --- Ende der internen Ausnahmestapelüberwachung ---
   bei System.Windows.FrameworkTemplate.LoadTemplateXaml(XamlReader templateReader, XamlObjectWriter currentWriter)
   bei System.Windows.FrameworkTemplate.LoadTemplateXaml(XamlObjectWriter objectWriter)
   bei System.Windows.FrameworkTemplate.LoadOptimizedTemplateContent(DependencyObject container, IComponentConnector componentConnector, IStyleConnector styleConnector, List`1 affectedChildren, UncommonField`1 templatedNonFeChildrenField)
   bei System.Windows.FrameworkTemplate.LoadContent(DependencyObject container, List`1 affectedChildren)
   bei System.Windows.StyleHelper.ApplyTemplateContent(UncommonField`1 dataField, DependencyObject container, FrameworkElementFactory templateRoot, Int32 lastChildIndex, HybridDictionary childIndexFromChildID, FrameworkTemplate frameworkTemplate)
   bei System.Windows.FrameworkTemplate.ApplyTemplateContent(UncommonField`1 templateDataField, FrameworkElement container)
   bei System.Windows.FrameworkElement.ApplyTemplate()
   bei System.Windows.FrameworkElement.MeasureCore(Size availableSize)
   bei System.Windows.UIElement.Measure(Size availableSize)
   bei System.Windows.Controls.Control.MeasureOverride(Size constraint)
   bei System.Windows.FrameworkElement.MeasureCore(Size availableSize)
   bei System.Windows.UIElement.Measure(Size availableSize)
   bei MS.Internal.Helper.MeasureElementWithSingleChild(UIElement element, Size constraint)
   bei System.Windows.Controls.ContentPresenter.MeasureOverride(Size constraint)
   bei System.Windows.FrameworkElement.MeasureCore(Size availableSize)
   bei System.Windows.UIElement.Measure(Size availableSize)
   bei System.Windows.Controls.Border.MeasureOverride(Size constraint)
   bei System.Windows.FrameworkElement.MeasureCore(Size availableSize)
   bei System.Windows.UIElement.Measure(Size availableSize)
   bei System.Windows.Controls.Control.MeasureOverride(Size constraint)
   bei System.Windows.FrameworkElement.MeasureCore(Size availableSize)
   bei System.Windows.UIElement.Measure(Size availableSize)
   bei MS.Internal.Helper.MeasureElementWithSingleChild(UIElement element, Size constraint)
   bei System.Windows.Controls.ContentPresenter.MeasureOverride(Size constraint)
   bei System.Windows.FrameworkElement.MeasureCore(Size availableSize)
   bei System.Windows.UIElement.Measure(Size availableSize)
   bei System.Windows.Controls.Border.MeasureOverride(Size constraint)
   bei System.Windows.FrameworkElement.MeasureCore(Size availableSize)
   bei System.Windows.UIElement.Measure(Size availableSize)
   bei System.Windows.Controls.Control.MeasureOverride(Size constraint)
   bei System.Windows.FrameworkElement.MeasureCore(Size availableSize)
   bei System.Windows.UIElement.Measure(Size availableSize)
   bei MS.Internal.Helper.MeasureElementWithSingleChild(UIElement element, Size constraint)
   bei System.Windows.Controls.ContentPresenter.MeasureOverride(Size constraint)
   bei System.Windows.FrameworkElement.MeasureCore(Size availableSize)
   bei System.Windows.UIElement.Measure(Size availableSize)
   bei System.Windows.Controls.StackPanel.StackMeasureHelper(IStackMeasure measureElement, IStackMeasureScrollData scrollData, Size constraint)
   bei System.Windows.Controls.StackPanel.MeasureOverride(Size constraint)
   bei System.Windows.FrameworkElement.MeasureCore(Size availableSize)
   bei System.Windows.UIElement.Measure(Size availableSize)
   bei MS.Internal.Helper.MeasureElementWithSingleChild(UIElement element, Size constraint)
   bei System.Windows.Controls.ItemsPresenter.MeasureOverride(Size constraint)
   bei System.Windows.FrameworkElement.MeasureCore(Size availableSize)
   bei System.Windows.UIElement.Measure(Size availableSize)
   bei System.Windows.Controls.Border.MeasureOverride(Size constraint)
   bei System.Windows.FrameworkElement.MeasureCore(Size availableSize)
   bei System.Windows.UIElement.Measure(Size availableSize)
   bei System.Windows.Controls.Control.MeasureOverride(Size constraint)
   bei System.Windows.FrameworkElement.MeasureCore(Size availableSize)
   bei System.Windows.UIElement.Measure(Size availableSize)
   bei System.Windows.Controls.Grid.MeasureOverride(Size constraint)
   bei System.Windows.FrameworkElement.MeasureCore(Size availableSize)
   bei System.Windows.UIElement.Measure(Size availableSize)
   bei MS.Internal.Helper.MeasureElementWithSingleChild(UIElement element, Size constraint)
   bei System.Windows.Controls.ScrollContentPresenter.MeasureOverride(Size constraint)
   bei System.Windows.FrameworkElement.MeasureCore(Size availableSize)
   bei System.Windows.UIElement.Measure(Size availableSize)
   bei System.Windows.Controls.DockPanel.MeasureOverride(Size constraint)
   bei System.Windows.FrameworkElement.MeasureCore(Size availableSize)
   bei System.Windows.UIElement.Measure(Size availableSize)
   bei System.Windows.Controls.Grid.MeasureCell(Int32 cell, Boolean forceInfinityV)
   bei System.Windows.Controls.Grid.MeasureCellsGroup(Int32 cellsHead, Size referenceSize, Boolean ignoreDesiredSizeU, Boolean forceInfinityV, Boolean& hasDesiredSizeUChanged)
   bei System.Windows.Controls.Grid.MeasureCellsGroup(Int32 cellsHead, Size referenceSize, Boolean ignoreDesiredSizeU, Boolean forceInfinityV)
   bei System.Windows.Controls.Grid.MeasureOverride(Size constraint)
   bei System.Windows.FrameworkElement.MeasureCore(Size availableSize)
   bei System.Windows.UIElement.Measure(Size availableSize)
   bei System.Windows.Controls.ScrollViewer.MeasureOverride(Size constraint)
   bei System.Windows.FrameworkElement.MeasureCore(Size availableSize)
   bei System.Windows.UIElement.Measure(Size availableSize)
   bei MS.Internal.Helper.MeasureElementWithSingleChild(UIElement element, Size constraint)
   bei System.Windows.Controls.ContentPresenter.MeasureOverride(Size constraint)
   bei System.Windows.FrameworkElement.MeasureCore(Size availableSize)
   bei System.Windows.UIElement.Measure(Size availableSize)
   bei System.Windows.Controls.Border.MeasureOverride(Size constraint)
   bei System.Windows.FrameworkElement.MeasureCore(Size availableSize)
   bei System.Windows.UIElement.Measure(Size availableSize)
   bei System.Windows.Controls.Control.MeasureOverride(Size constraint)
   bei System.Windows.FrameworkElement.MeasureCore(Size availableSize)
   bei System.Windows.UIElement.Measure(Size availableSize)
   bei System.Windows.Controls.Grid.MeasureCell(Int32 cell, Boolean forceInfinityV)
   bei System.Windows.Controls.Grid.MeasureCellsGroup(Int32 cellsHead, Size referenceSize, Boolean ignoreDesiredSizeU, Boolean forceInfinityV, Boolean& hasDesiredSizeUChanged)
   bei System.Windows.Controls.Grid.MeasureCellsGroup(Int32 cellsHead, Size referenceSize, Boolean ignoreDesiredSizeU, Boolean forceInfinityV)
   bei System.Windows.Controls.Grid.MeasureOverride(Size constraint)
   bei System.Windows.FrameworkElement.MeasureCore(Size availableSize)
   bei System.Windows.UIElement.Measure(Size availableSize)
   bei MS.Internal.Helper.MeasureElementWithSingleChild(UIElement element, Size constraint)
   bei System.Windows.Controls.ContentPresenter.MeasureOverride(Size constraint)
   bei System.Windows.FrameworkElement.MeasureCore(Size availableSize)
   bei System.Windows.UIElement.Measure(Size availableSize)
   bei System.Windows.Controls.Border.MeasureOverride(Size constraint)
   bei System.Windows.FrameworkElement.MeasureCore(Size availableSize)
   bei System.Windows.UIElement.Measure(Size availableSize)
   bei System.Windows.Controls.Control.MeasureOverride(Size constraint)
   bei System.Windows.FrameworkElement.MeasureCore(Size availableSize)
   bei System.Windows.UIElement.Measure(Size availableSize)
   bei System.Windows.Controls.Grid.MeasureOverride(Size constraint)
   bei System.Windows.FrameworkElement.MeasureCore(Size availableSize)
   bei System.Windows.UIElement.Measure(Size availableSize)
   bei MS.Internal.Helper.MeasureElementWithSingleChild(UIElement element, Size constraint)
   bei System.Windows.Controls.ContentPresenter.MeasureOverride(Size constraint)
   bei System.Windows.FrameworkElement.MeasureCore(Size availableSize)
   bei System.Windows.UIElement.Measure(Size availableSize)
   bei System.Windows.Documents.AdornerDecorator.MeasureOverride(Size constraint)
   bei System.Windows.FrameworkElement.MeasureCore(Size availableSize)
   bei System.Windows.UIElement.Measure(Size availableSize)
   bei System.Windows.Controls.Grid.MeasureCell(Int32 cell, Boolean forceInfinityV)
   bei System.Windows.Controls.Grid.MeasureCellsGroup(Int32 cellsHead, Size referenceSize, Boolean ignoreDesiredSizeU, Boolean forceInfinityV, Boolean& hasDesiredSizeUChanged)
   bei System.Windows.Controls.Grid.MeasureCellsGroup(Int32 cellsHead, Size referenceSize, Boolean ignoreDesiredSizeU, Boolean forceInfinityV)
   bei System.Windows.Controls.Grid.MeasureOverride(Size constraint)
   bei System.Windows.FrameworkElement.MeasureCore(Size availableSize)
   bei System.Windows.UIElement.Measure(Size availableSize)
   bei System.Windows.Window.MeasureOverrideHelper(Size constraint)
   bei System.Windows.Window.MeasureOverride(Size availableSize)
   bei System.Windows.FrameworkElement.MeasureCore(Size availableSize)
   bei System.Windows.UIElement.Measure(Size availableSize)
   bei System.Windows.ContextLayoutManager.UpdateLayout()
   bei System.Windows.ContextLayoutManager.UpdateLayoutCallback(Object arg)
   bei System.Windows.Media.MediaContext.InvokeOnRenderCallback.DoWork()
   bei System.Windows.Media.MediaContext.FireInvokeOnRenderCallbacks()
   bei System.Windows.Media.MediaContext.RenderMessageHandlerCore(Object resizedCompositionTarget)
   bei System.Windows.Media.MediaContext.RenderMessageHandler(Object resizedCompositionTarget)
   bei System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
   bei System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)
353
0%
GUIWunsch / IdeeLowPresets, mehrere Presets gleichzeitig auf eine Auswahl ...ZugeteiltunbestimmtTBD (UIS)05.05.201119.02.2019 Task Description

Man hat 3 Presets erstellt, für Focus, Color und Intensity. Will diese nun auf eine Auswahl anwenden. Nun muss man alle 3 Presets der Reihe nach rüberziehen. Mehrfachselektionen sollten in der Presetliste möglich sein.

591
0%
GUIWunsch / IdeeLowSelektionstastenZugeteiltAlpha 2TBD (UIS)10.09.201108.03.2017 Task Description

Ich würde mir 2 Tasten wünschen, die folgendes machen

1) alle Geräte, die zuletzt angewählt waren wieder anwählen
2) alle Geräte, die im Programmer einen Dimmer > 0 haben anwählen

593
0%
GUIWunsch / IdeeLowGeräte für Records sperrenZugeteiltAlpha 211.09.201102.10.2011 Task Description

Es wäre schön, wenn es eine Möglichkeit gäbe, einzelne Geräte für Records zu sperren, soll heißen, egal welchen Wert diese haben, oder ob die verändert werden, sie werden nicht gespeichert.

z.B. für Saallicht, Arbeitslicht, Umgangslicht.

594
0%
GUIWunsch / IdeeLowGerät nur von einem Control veränderbarNeuAlpha 211.09.201111.09.2011 Task Description

Es wäre schön, wenn es eine Möglichkeit gäbe einzustellen, dass ein Gerät nur von einem Control (z.B. Submaster) verändert werden kann.

z.B. Umgangslicht befindet sich in einem Submaster. Ich kann noch so viel Mist eingeben und verändern, oder beim Prgrammieren ist mir ein Fehler unterlaufen, dem Gerät passiert trotzdem nichts. Nur dieser Sub kontrolliert das Gerät.

596
0%
GUIWunsch / IdeeLowCuelist, Cues als Tabelle anzeigenZugeteiltAlpha 211.09.201114.10.2011 Task Description

Es wäre schön, wenn es zusätzlich zur Cuelist eine Ansicht gäbe, die die Inhalte der Cues als Tabelle anzeigt. Zeilen: Geräte, Spalten: Cues
Sind im Live View keine Geräte selektiert werden alle Geräte angezeigt, sind welche selektiert, werden nur diese angezeigt.
Das gleiche gilt für Cues. Sind keine Cues markiert werden alle angezeigt, sind einer oder mehrere selektiert werden nur diese angezeigt.

Dadurch sieht man sehr schnell, in welchem Cue welches Gerät auf welchen Wert gesetzt wird. Sonst müsste man sich jedes Cue nacheinander im Programmer anzeigen lassen.

597
0%
GUIWunsch / IdeeLowCuelist, Trackingmode für Update wählenZugeteiltAlpha 211.09.201111.09.2011 Task Description

Wenn ich einen Kreis in einem Cue ändere, wäre es schön, angeben zu können, ob

a) die Änderung ab hier gilt ⇒ neue Wert wird in diesem Cue gespeichert und die Info weiter getrackt
b) die Änderung nur in diesem Cue ⇒ der neue Wert wird in diesem Cue gespeichert, in dem darauffolgenden wird der ursprüngliche Wert eingetragen (Cue only)
c) die Quelle ändern. ⇒ Das Cue, in dem der Kreis ursprünglich auf den wert gesetzt wurde, wird geändert.

598
0%
GUIWunsch / IdeeLowRemainder Dim (Rem Dim)NeuAlpha 211.09.201111.09.2011 Task Description

Wie der Name schon sagt bezieht sich diese Funktion auf den Dimmer

Bespiel:

Kreise 1-5 auf 70%
Kreise 6-9 auf 0%

<Rem Dim> <1> <ENTER> setzt alle Kreise außer 1 auf 0% und behält die 70% von Kreis 1 bei.
<Rem Dim> <ENTER> setzt alle Kreise wirder auf den ursprünglichen Wert

<Rem Dim> <6> <ENTER> 6 war ja auf 0%, wird auf 100% gesetzt (also eigentlich die Highlight Funktion) und alle anderen auf 0%
<Rem Dim> <ENTER> s.o.

599
0%
GUIWunsch / IdeeLowParkZugeteiltunbestimmtTBD (UIS)11.09.201111.02.2019 Task Description

Die DMX Werte eines geparkten Geräts werden eingefroren. Erst wenn es wieder ausgeparkt ist werden aktuelle Werte übernommen und ausgegeben.

Diskussion zu diesem Punkt hier:
https://forum.dmxcontrol-projects.org/index.php?thread/11895-2016-06-29-entwicklermeeting

Wichtig: Effekte müssen weiterlaufen, Neue Effekte und Programmierung wird nicht auf Geräte übertragen

Showing tasks 1 - 50 of 661 Page 1 of 14

Available keyboard shortcuts

Tasklist

Task Details

Task Editing