mAirList erkennt falsche MIDI Nachrichten nach einiger Zeit

Hallo Torben,
ich habe ein Allen & Heath Qu-16 Mischpult, welches NRPN-MIDI Nachrichten schickt und ich habe ein Hintergrundskript geschrieben, welches mir den Player-Start/Stop, sowie die Erkennung ob ein Mikrofon eingeschaltet ist.
Es funktioniert auch einige Zeit ohne Probleme, aber wenn ich ca. 1 Minute an den Fadern herumgeschoben habe, ändern sich plötzlich die MIDI-Signale, die in mAirList erkannt werden.

Ich habe dann versuchsweise das Skript deaktiviert und schaue mir im MIDI-Monitor an welche Nachrichten in mAirList empfangen werden.
Beispielsweise, (mAirList wurde frisch gestartet) wenn ich den Mute Knopf am Mischpult auf Channel 1 drücke wird das Signal 90, Data1: 20, Data2: 7F geschickt. Wenn ich nun die Fader herum bewege wird nach einer Minute plötzlich aus dem selben Mute Knopf am Mischpult folgendes: Status: B0, Data1 63, Data2: 27 (dies entspricht aber einem MIDI-Paket welches nur eintrifft, wenn ich den Fader bewege, welches immer mit Status: B0 beginnt). Außerdem kommen die Signale auch in einer falschen Reihenfolge an.
Daneben habe ich zum Testen auch noch MIDI-OX zum Anzeigen der MIDI-Signale offen, welches aber weiterhin die richtigen Signale anzeigt. Im Anhang ein Screenshot einmal von MIDI-OX und vom mAirlist MIDI-Monitor. Ich drücke immer nur dieselbe Mute-Taste, in mAirlist kommen aber vollkommen andere Signale (die falschen) als in MIDI-OX (die richtigen) an.

Sobald ich mAirList dann neu starte funktioniert es wieder normal, wenn ich dann aber wieder eine Minute an den Fadern herum schiebe, kommen wieder die falschen Werte. Es scheint mir als ob mAirList nicht ganz damit klar kommt, dass so viele Signale kommen… Die Fader liefern natürlich extrem viele Werte beim Schieben.

Ich verwende mAirList v. 5.3.0 Build 3144 mit Windows 10 64-Bit (Anniversary Update 1)
PC Ausstattung: Intel Core i7 920 @ 2,67 Ghz, 8 GB RAM
Im Anhang auch noch der Output von “Bugreport erzeugen” und mein Script, falls dies etwas hilft…

Über eine Lösung wäre ich sehr dankbar!
LG, Michael


mairlist.PNG

midi-ox.PNG

bugreport.txt (69.7 KB)

onMidiMessage.mls (7.83 KB)

Kann ich mir nicht erklären. Zumal mAirList eigentlich nur die üblichen Systemfunktionen (midiIn etc.) von Windows verwendet. Ich wüsste nicht, an welcher Stelle dort Daten “umgewandelt” oder gar “kaputt gehen” könnten.

Die Werte an sich sind eigentlich nicht falsch, sondern werden von mAirList nur zur falschen Zeit erkannt, bzw. sind zeitlich versetzt.

Das Problem lässt sich bei mir zumindest jedes Mal reproduzieren.

Ich habe hier ein Video gemacht, in dem man es sehen kann. Zuerst wird alles richtig erkannt. Ich bewege den Fader, drücke die Mute-Taste und es wird eine Midi Message mit Status 90 angezeigt. Dann bewege ich die Fader und später, wenn ich dann wieder kurz den Fader bewege und dann die Mute-Taste drücke wird eine Midi Message mit Status B0 angezeigt, erst wenn ich nocheinmal auf die Mute-Taste drücke, wird ein status Wert 90 von der Mute Taste angezeigt. Wobei dies aber dem vorherigen Wert der Mute-Taste entspricht, also ist es um 1 versetzt. Alle Hintergrundskript sind zu dieser Zeit deaktiviert.
https://goo.gl/photos/eW2tJ7Kzen2XzTgP6

Interessanterweise, wenn ich mein Hintergrundskript aktiviert habe, dann scheint es dann noch mehr versetzt zu werden. Ich bekomme dann nämlich, wenn ich die Mute-Taste drücke nur noch Werte von den Fadern, wie in diesem Video zu sehen: https://goo.gl/photos/PokNG6b7nojjQWF88

Ich hoffe das lässt sich bei dir irgendwie reproduzieren bzw. ist nachzuvollziehen…
LG, Michael