Heim >Backend-Entwicklung >PHP-Tutorial >Kann PHP Titelinformationen aus AOL SHOUTcast-Streams extrahieren?

Kann PHP Titelinformationen aus AOL SHOUTcast-Streams extrahieren?

Linda Hamilton
Linda HamiltonOriginal
2024-12-03 00:21:10480Durchsuche

Can PHP Extract Track Information from AOL SHOUTcast Streams?

Titelinformationen aus Audiostreams mit PHP abrufen

Problem:

Ist das machbar? Titeldetails aus einem Audiostream mit PHP extrahieren, insbesondere aus einem AOL-Stream? Trotz der Erkundung der verfügbaren PHP-Funktionen ist eine praktikable Lösung immer noch schwer zu finden.

Antwort:

Identifizierung des Stream-Typs

Die bereitgestellten Stream ist ein SHOUTcast-Stream, der über einen eigenen Mechanismus zur Übertragung von Metadaten verfügt. Es ist unabhängig von ID3-Tags.

Herstellen einer direkten Verbindung

Um eine direkte Verbindung mit dem Server herzustellen, verwenden Sie fsockopen() und stellen Sie sicher, dass Sie den richtigen Port angeben (normalerweise). 80 für von AOL gehostete Streams).

Senden der Anfrage

Konstruieren Sie die Anfrage wie folgt:

GET /whatever HTTP/1.0
Icy-MetaData:1

Abrufen des Metaintervalls

Untersuchen Sie die Antwortheader auf den icy-metaint Wert. Dies gibt das Intervall an, in dem Metadaten gesendet werden.

Dekodierung der Metadaten

Nachdem Sie 8192 Bytes MP3-Daten empfangen haben, lesen Sie das nächste Byte. Dies kennzeichnet den Beginn der Metadaten und gibt deren Länge an. Multiplizieren Sie diesen Wert mit 16, um die Anzahl der zu lesenden Bytes zu bestimmen.

Schneiden Sie die resultierende Zeichenfolge ab, um nachgestellte Nullen zu entfernen. Die resultierende Zeichenfolge enthält Metadaten im folgenden Format:

Das obige ist der detaillierte Inhalt vonKann PHP Titelinformationen aus AOL SHOUTcast-Streams extrahieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn