Maison > développement back-end > tutoriel php > Comment puis-je extraire les informations de piste d'un flux SHOUTcast à l'aide de PHP ?

Comment puis-je extraire les informations de piste d'un flux SHOUTcast à l'aide de PHP ?

Linda Hamilton
Libérer: 2024-12-01 04:41:12
original
570 Les gens l'ont consulté

How Can I Extract Track Information from a SHOUTcast Stream Using PHP?

Extraire des informations sur une piste à partir d'un flux audio à l'aide de PHP

Récupérer des informations sur une piste à partir d'un flux audio en PHP est possible. Bien que la fonction stream_get_transports puisse ne pas convenir en raison des restrictions de l'hôte, des méthodes alternatives existent.

Flux et métadonnées SHOUTcast

Le flux audio fourni est un flux SHOUTcast, qui utilise un protocole spécialisé pour la transmission de métadonnées. Les métadonnées, y compris les détails de l'artiste et de la piste, sont intégrées dans les données du flux.

Établissement d'une connexion

Pour accéder aux métadonnées, une connexion directe au serveur est nécessaire via fsockopen(). Le port 80 est couramment utilisé, car de nombreux hébergeurs Web bloquent d'autres ports.

Récupération des métadonnées

  1. Établissez une connexion au serveur de streaming.
  2. Envoyez une requête GET avec l'en-tête "Icy-MetaData:1".
  3. Lire 8 192 octets de données MP3 et supprimez-les.
  4. Lisez l'octet suivant pour déterminer la longueur des métadonnées.
  5. Lisez le nombre d'octets indiqué dans une variable de chaîne.
  6. Supprimez tout Caractères nuls à la fin de la chaîne.

Analyse Métadonnées

La chaîne de métadonnées est formatée sous forme de paires clé-valeur séparées par des points-virgules. Les clés communes incluent "Stream

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal