Titelanzeige opus

Habe es nun auch mit Icecast 2.4.4 versucht. Das gleiche Ergebnis. Keine Titelanzeige!
Was mache ich da falsch?

Nachfrage: Was ist das?

Siehe: https://karlheyes.github.io

Okay, und jetzt bitte noch den Zusammenhang mit mAirList?

Keiner.
Das eine ist ja mAirList, dass andere Icecast (KH) :stuck_out_tongue:

Kleiner Tipp: Der Fehler steht (von dir?) doch auch schon auf GitHub: kh15 64 windows only meta data for mp3 · Issue #360 · karlheyes/icecast-kh · GitHub

Du kannst es ja auch mit normalem Icecast versuchen oder halt bisschen mehr Debug betreiben (Icecast-Logs?) Wenn die Metadaten ankommen (siehe Bild) dann liegt es doch wohl eher an Icecast-KH selbst.
image

Unter diesem Aspekt halte ich das dann für zu sehr [OT], dass ich alle Teilnehmer bitten möchte, einen anderen Komminikationskanal dafür suchen.
Geht’s freiwillig oder nur mit Vorhängeschloss?

Alles gut von meiner Seite aus.

Wahrscheinlich habt ihr im Eifer des Gefechtes übersehen, dass es wohl nicht nur ein Problem mit Icecast KH ist, sondern wohl ein generelles Problem.

Sobald ich von opus zurück auf mp3 schalte, wird der Titel in Icecast unter Current playing: angezeigt und im error_log erscheint der Titel bei Metadata von mountpoint … changed …
Bei Opus wird nichts angezeigt. Vermutlich sendet mAirList keine Metadata!

Wir? :face_with_raised_eyebrow:
Na schön. Ich verschiebe den Thread entsprechend.

Seit wann (welche Version) tritt das auf?

Bei der 6.13.16 4457 und bei der 7 5001

Spontan tippe ich auf BASS.
Wir lassen das erst mal in der Fragestellung zur v6.x, ob das die Ursache dafür sein könnte.

Da in anderen Beiträgen Torben davon gesprochen hat, dass BASS auch die Titel sendet, wird es vermutlich stimmen. Aber ich denke, dass in BASS die Funktion freigeschaltet werden muss?

@UliNobbe wie geht es denn jetzt weiter?
Bis wann könnte man denn mit einer Fehlerbehebung rechnen?

Da ich mit OPUS auf einen Teststream gehen durfte (danke dafür!), kann ich bestätigen: Ja, keine Titelübertragung.
Das hat mit Icecast zu tun und ist kein mAirList-Fehler.

Um kurz zu erklären, wo die Schwierigkeit bei OPUS gegenüber MP3 ist:

Ein Opus-Stream ist technisch gesehen eine unendlich lange Opus-Datei, die wiederum technisch auf einem Ogg-Container basiert: RFC 7845 - Ogg Encapsulation for the Opus Audio Codec

Anders als Vorbis oder FLAC unterstützt das Opus-Format allerdings keine Metadaten-Chunks mitten im Stream, sondern nur einmalig am Anfang.

Stattdessen müsste man an jedem Titelwechsel den Stream unterbrechen und einen neuen Stream/Datei beginnen, der wieder mit einem Metadaten-Chunk beginnt. Allerdings muss dabei eine sehr spezielle Überlappung des letzten Frames der alten Datei und des ersten Frames der neuen Datei hergestellt werden, die in Abschnitt 7.2 von RFC 7845 beschrieben ist.

Diese Technik beherrschen weder der von mAirList/bassenc benutzte opusenc.exe-Encoder, noch Icecast selbst.

3 Likes

@Torben erst einmal vielen Dank für die Info.
Ich schließe daraus, dass es für Opus keine Lösung mit Metadaten geben kann.
Wäre Ogg mit Metadaten nutzbar?

Vielen Dank, HGA

Wie ich oben darlegte, hängt dies vom genutzten Codec ab.

@Torben , tut mir leid, aber ich dachte es gebe da nur noch den Ogg Vorbis.
Ist Flac auch ein Ogg-Container? Wie sieht es dann bei Flac aus?

flac ist ein Codec, Ogg ist ein Container. In diesem Container kann sich zum Beispiel auch Opus verstecken, siehe hier:

@UliNobbe fein, es gibt also Codecs und Container.
Ich kann MP3, Ogg Vorbis, Opus, Flac und benutzerdefniert auswählen.
Vielleicht könnte man da mal eine Tabelle generieren, für Dumme wie mich.

Ich dachte immer MP3 und WAV wären ein Codecs!
In mAirList kann ich die bereits oben genannten Verfahren auswählen.
Ich verstehe nun, dass der Decoder Vorbis in einen Ogg Container verpackt wird. Genauso wie Opus. Das heißt, es sollte eigentlich Ogg Opus heißen, oder?
In welchem Container wird dann Flac übertragen?
Wenn ich dann MP3 auswähle, wähle ich einen Container aus. Ist dann die Bitrate der Codec?
Was kann ich mit benutzer definiert machen?

Und bei welchen Container/Codecs kann ich Metadaten übertragen?

Vielen Dank im Voraus, HGA.