Estoy trabajando en una aplicación de VOD de música en iPhone, y gracias a las directrices de Apple, tengo que ejecutar HTTP Live Streaming para ser aceptado en la AppStore. Pero, dado que a Apple no le importa el 98% de los servidores en la tierra, no proporcionan sus herramientas HTTP Live Streaming Tools para sistemas basados en Linux. Y a partir de este punto, comienza la pesadilla.HTTP Live Streaming: La pesadilla de Linux
Mi objetivo es simple: tomar un MP3, segmentarlo y generar un archivo de índice simple .m3u8. Busqué en Google "HTTP Live Streaming Linux" y "¡Qué bueno! ¡Mucha gente ya lo ha hecho!"
Primero, visité the (so famous) post by Carson McDonald. Resultado: el svn segmentate.c era viejo, con errores y una pesadilla para compilar (¡Nadie en este mundo puede precisar qué versión de ffmpeg están usando!). Luego me encontré con the Carson's git repo, pero lástima, hay muchas cosas molestas con ruby y live_segmenter.c no puede tomar archivos mp3.
Luego busqué más profundamente. Encontré this stackoverflow topic, y es exactamente lo que quiero hacer. Así que he seguido los consejos de juuni para usar this script (httpsegmenter). Resultado: Imposible compilar algo, 2 días de trabajos y finalmente logré compilarlo (ffmpeg 8.1 w/httpsegmenter rev17). Y no, este no es un buen script, sí toma archivos mp3, pero los archivos ts generados y el archivo de índice no pueden ser leídos por un jugador.
Luego el autor de la publicación krisbulman, vino con una solución, e incluso dio una versión parcheada de m3u8-segmenter por su cuenta (git repo). Lo pruebo: no compila, no hace nada. Así que tomé la versión original de johnf https://github.com/johnf/m3u8-segmenter. Logré compilar y milagro que funciona (no realmente). que utilizan esta línea de comandos (ffmpeg 0.8.1):
ffmpeg -er 4 -i music.mp3 -f mpegts -acodec libmp3lame -ar 44100 -ab 128k -vn - | m3u8-segmenter -i - -d 10 -p outputdir/prefix -m outputdir/output.m3u8 -u http://test.com/
Este script codifican mi archivo mp3 (tarda 4 segundos, demasiado tiempo), y pasarlo a la M3U8-segmentación para segmentar en 10 segundos Archivos .TS
He probado esta corriente con el mediastreamvalidator de Apple en mi mac, y decía que estaba bien. Así que lo jugué en QuickTime, pero hay aproximadamente 0.2 segundos en blanco entre cada archivo .TS !!
Así que aquí está mi situación, es una pesadilla, no puedo obtener una simple secuencia de mp3 sobre el protocolo HLS. ¿Existe una solución de TRABAJO simple para segmentar un mp3? ¿Por qué no puedo segmentar directamente el archivo mp3 en múltiples archivos mp3 como lo hace el mediafilesegmenter de Apple?
Su Inglés está muy bien, pero su mensaje es largo e incoherente. ¿Podría condensarlo y hacer que se concentre en la pregunta clave? –
La pregunta principal es: ¿existe una solución de trabajo simple para segmentar un archivo mp3 en Debian? – Ethan0026
Bueno, eso explica ese accidentado precipitado. –