Je cherche à (en NodeJS):Icecast métadonnées dans Artefacts Extracting Produit de sortie des données audio
- Connectez-vous à un flux audio internet Icecast. Ex: http://icecast3.977music.com/comedy
- Analyser les en-têtes de réponse et extraire la valeur
icy-metaint
. - Écrivez les données audio brutes dans un fichier, en extraire les octets de métadonnées du flux audio afin de:
- Intercept et l'analyse des métadonnées quand il arrive.
- N'incluez pas les octets de métadonnées dans le fichier de sortie, afin qu'il n'y ait aucun artefact audio à cause des métadonnées injectées.
Après la page "unofficial" Shoutcast Metadata Protocol de SmackFu, j'ai pu en arriver là:
https://gist.github.com/e7474421dcb25e011620
Fondamentalement, je suis en mesure d'extraire les métadonnées quand il est prévu (il y a seulement 1 événement de métadonnées au tout début du vidage de flux inclus dans gist). Cette partie semble fonctionner correctement.
Le problème est que le fichier MP3 de sortie a des artefacts audio visibles dans tout le fichier, vraisemblablement lorsque les octets de métadonnées arrivent. Cependant, je suis en train d'extraire ces octets de métadonnées et de ne pas les inclure dans le fichier de sortie, donc c'est la partie la plus étrange.
Le document de protocole dans le lien ci-dessus ne dit rien d'autre doit être fait pour le fichier de sortie, mais évidemment, je suis toujours en train de faire quelque chose de mal. Est-ce que quelqu'un sait quoi d'autre doit être fait pour le flux audio? Merci d'avance!