Necesito agregar metadatos adicionales a una transmisión de Icecast (más allá del título de artista y canción). He intentado varias ideas pero ninguna parece ceder nada. La situación se complica porque los metadatos también pasan por Wowza, que está reproduciendo nuevamente la transmisión de Icecast. ¿Hay una lista canónica de campos de metadatos admitidos por Icecast, y alguien tiene experiencia en pasar metadatos personalizados como parte de una transmisión de Icecast y en Wowza?Metadatos personalizados con Icecast
Respuesta
Mi módulo node-icy
es capaz de leer en un flujo arbitrario de Icecast e interceptar y/o agregar eventos de "metadatos" a una secuencia de salida. En esencia, estás "transmitiendo" la transmisión. Una buena (aunque un poco complicado) ejemplo podría ser aquí: proxy.js
Ten en cuenta sin embargo que el formato de "metadatos" es una cadena por punto y coma de pares clave-valor, pero los clientes Icecast sólo reaccionan al valor StreamTitle
, por lo que sólo cosas de toda la información que desea en allí:
StreamTitle='Pink Floyd - Welcome to the Machine';
que he hecho cosas como enviar un evento de metadatos cada segundo para mantener un contador de posición en la pista (aunque puede que haya sido una pequeña red-pesado):
StreamTitle='Pink Floyd - Welcome to the Machine (0:12/4:02)';
Ir Ir ¡oh suerte!
Aunque es un poco complicado, el lenguaje de scripts Savonet/Liquidsoap tiene facilidades para modificar/establecer los metadatos de la secuencia. Hay un par de ejemplos en el wiki de Liquidsoap en https://wiki.sourcefabric.org/display/LS/UserScripts
- 1. metadatos personalizados en AS3/Flex?
- 2. Metadatos de base de datos personalizados/arbitrarios
- 3. Agregar metadatos personalizados a archivos jpeg
- 4. ¿Es posible obtener metadatos de Icecast del elemento de audio HTML5?
- 5. ¿Es posible agregar metadatos personalizados a los archivos .class?
- 6. Escribir metadatos personalizados complejos en imágenes a través de python
- 7. Enlace de componente en metadatos personalizados en Palabra clave
- 8. Grupo de artículos con metadatos personalizados con respecto a los archivos
- 9. Clojure vars con metadatos
- 10. Desarrollo del cliente para el servidor icecast
- 11. ¿Transmitir getUserMedia a un servidor de Icecast?
- 12. MEF GetExportedValue con los metadatos
- 13. Devolución de metadatos con CSS
- 14. jQuery: Usando el attr con atributos personalizados
- 15. Encabezados personalizados con pycurl
- 16. EventHandler con argumentos personalizados
- 17. ¿Cómo podría reproducir una transmisión shoutcast/icecast usando HTML5?
- 18. Tarballing sin metadatos de Git
- 19. Cargar metadatos de archivos con go
- 20. Editar metadatos de archivo PDF con C#
- 21. Cambio metadatos del archivo pdf con pypdf
- 22. Elementos personalizados en ASP.NET con elementos secundarios personalizados
- 23. QListView/QListWidget con elementos personalizados y widgets de elementos personalizados
- 24. Incluir diseño con atributos personalizados
- 25. ¿Botones sociales personalizados con contadores?
- 26. C# evento con argumentos personalizados
- 27. Cargando ensamblajes personalizados con CompileAssemblyFromSource
- 28. Haskell: tipos personalizados con condiciones
- 29. Cargar ensamblaje con permisos personalizados
- 30. Programación de metadatos Java
¿Puede aclarar la configuración, por favor? Estoy agregando metadatos con palabras clave no estándar usando liquidsoap, que luego pasa la transmisión a Icecast. icecast (2.4.0) codifica tanto StreamTitle como indicó, así como también el tiempo de actualización. Entonces, ¿su módulo estaría entre Icecast y el cliente leyendo la parte de audio de la transmisión, a cargo de actualizar los metadatos cada segundo? – slv