OnPlayerStop bei Verknüften Elementen - mAirList 6.3.3

Hallo,

Ich würde gerne ein Problem und eine teilweise Lösung dafür hier festhalten:
Wir verknüpfen Songs und Audioelemente mit der Verknüpfen-Funktion. Außerdem wird der Kanal des Players am Pult entweder über Ember+, oder das DHD-eigene Protokoll nach Ausspielende deaktiviert.

Problem ist, dass manchmal - aber nicht genau differenzierbar wann - nach dem Übergang das OnPlayerStop() in den Background-Scripts ausgelöst wird. Ein ähnliches Problem zeichnet sich in der DHD Fernsteuerung ab, auch dort scheint in ähnlichen Fällen das Event ausgelöst zu werden.

Im Background-Script lässt sich der Effekt über den Link Status des aktuell beendeten Elements abfangen:

procedure OnPlayerStop(PlaylistIndex: integer; PlayerIndex: integer; Duration: TTimeValue; Item: IPlaylistItem);
begin
    if (PlaylistIndex = 0) and (PlayerIndex = 0) and not(pioLinked in Item.GetOptions) then
    EmberPlusConsumerRemote(0).SetParameterValue('/Device/Channels/Channel 33/Channel_ON', 'false');
end;

Da der Zugriff auf das DHD-eigene Protokoll nicht über die Background-Scripts erfolgt, müsste man das an dieser Stelle anders lösen. Hat dafür jemand eine Idee?

Viele Grüße
Sebastian

Es ist leider wirklich so, dass der Player im Falle eine Links kurz alle Zustände (Stopped, Empty, Loading, Loaded) durchläuft, bis er dann das verlinkte Element spielt (Playing).

Die interne DHD-Fernsteuerung macht es so, dass sie im Falle eines Zustandswechsels auf “nicht spielend” einmal kurz nachschaut, ob der Player inzwischen vielleicht doch schon wieder auf “Playing” ist, und dann einfach nichts macht.

Das funktioniert deshalb, weil die Kette der Zustandsbenachrichtungen asynchron abgearbeitet wird, also erst dann, wenn der Player inzwischen wieder spielt. (Der Aufruf von GetState ist so lange blockiert, bis die Verarbeitung des Links abgeschlossen ist.)

Zumindest in der aktuellen 6.3.14 sollte das in der DHD-Fernsteuerung ohne Probleme funktionieren. Mir ist jedenfalls nichts Gegenteiliges bekannt.

1 Like

Danke Torben. Dann mache ich mal das Update und werde berichten.