Meta Logging, Streammonitor

Ich habe mal einen Testschrieb über das Logging Interface gemacht. Kann das sein, dass die Titel-Updates aus dem Eingabestream des Streammmonitors nicht übertragen werden?

Ich würde gerne eine gesamte Titelhistorie anlegen und ggf. auch in eine Datenbank wegschreiben.
Das lohnt natürlich nicht, wenn ich nur die Titel aus der Playliste bekomme.

Das Titel Update vom Eingabestream zum Ausgabestream wird (bis auf einen bekannten Bug) zuverlässig übertragen.

Das stimmt, das Logging kann aktuell keine Titelupdates mitschreiben. Ist aber in der 6.2 nun grundsätzlich dafür vorbereitet. Können wir also demnächst mal angehen.

1 Like

Verschoben in Feature Request.

Da die Logging Einstellungen in Version 6.2 komplett überarbeitet wurden, hat es dieses Feature Requres ebenfalls in die 6.2 geschafft?
Ich würde nämlich fürchterbar gerne tuneIn anbinden, das macht aber keinen Sinn, wenn die Live-Sendungen eben kein META Update Triggern.
Finde im Changelog nichts dazu.

Nee, ist noch nicht drin. Und zwar weil es bei mir noch gedanklich gehakt hat.

Beim normalen Logging hat man ja Interpret/Titel/etc. brav in einzelnen Feldern getrennt. Bei ankommenden Streams hingegen gibt es nur ein einzelnes “Titel”-Feld, wo alles reingematscht wird.

Wie wollen wir das handhaben? Automatisch irgendwie anhand irgendwelcher RegExps splitten? Oder einfach den Wert als Titel nehmen und Interpret bei uns leer lassen?

Das hatte ich tatsächlich auch nicht auf dem Schirm, weil es beim durchreichen an den Ausgangsstream ja keine Rolle spielt. Beides Icecast, beides nur ein Feld.

Daher würde ich die Frage mal umdrehen. Bei welchen Log-Interfaces müsste ich das trennen?
grafik
Hmm, OK… sind wohl doch die meisten.

Meine überlegen war, ob es Sinn machen würde, das je Log-Interface einstellbar zu machen. Als Fallback beides in einem Feld zu haben.

Das wird nicht funktionieren, weil wohl die häufigste Ausgabe %a - %b ist, dann würde ein weiteres - dem Ausgangstag hinzugefügt. Das müsste dann autmatisch unterdrückt werden, was sicherlich wieder andere fallen mit sich bringt, das würde ich glaube ich eher lassen.

Dann kannst Du eigentlich nur eine Split-Sequenz definierbar machen, im Stream Monitor und in den Streams, die ich in die Playliste einfügen kann, bzw. für die dann auch irgendwo zumindest eine globale Vorgabe die man aber je Element und Benutzerrechten überschreiben können sollte.

Man könnte vielleicht irgendwo ein Trennzeichen einstellen, daß mAirList es als neues Feld erkennt. Welches Feld gemeint ist, könnte genau so wie beim Logging angegeben werden. Beispiel:

%a %- %b %- %skip

würde alles bis zum Trennstrich in Interpret schreiben, dann bis zum zweiten in Titel und den Rest (sollte einer kommen) ignorieren. Bei

%b %/ %a

wäre es umgekehrt, und / würde als Trenner erkannt. EIn Trennzeichen wie %-/ könnte auf beides reagieren, % '' ein Space erkennen. (Oder die Trenner reagieren nur, wenn davor und danach ein Space erscheint.)

Hirnstürmische Grüße

TSD

Ja, das geht schon in die richtige Richtung. Ich würde das beim ersten Match trennen, denn das Trennzeichen kann ja mehrfach vorkommen (bei uns zumindest). Würde mir für mein tuneIn titel Push erstmal reichen. Wenn ich Charts aus einer Datenbank bauen will, müsste das so aussehen, wie

Aufgrund dieser Frage hier, möchte ich das Thema noch mal aufrollen.

Im Backgroundscript Template, habe ich dieses Procedure gefunden:

// Called when metadata is received from a (relayed) stream
procedure OnItemMetadata(Item: IPlaylistItem; Metadata: string);
begin
end;

Die Frage ist jetzt, ist ein Stream, der über den Stream Monitor durchgereicht wird auch eine “Relayed Stream”, der dieses Procedure triggert?

Ich muss diesen Thread noch mal hoch bringen.
Ist ein Stream, der über den Stream Monitor durchgereicht wird ein “relayed” stream, der dieses Procedure triggert?