Icecast - música en streaming
Vamos a probar icecast con ffmpeg
En Debian/Ubuntu empezaremos por instalar el servicio:
Con FFmpeg puedes tomar un archivo de audio o una fuente en vivo y enviarlo a Icecast en tiempo real usando una línea de comando como el siguiente:
🔍 Explicación:
-re
= reproduce en tiempo real (como si fuera una radio)-i input.mp3
= archivo de entrada-c:a libmp3lame
= codifica en MP3-b:a 128k
= bitrate del audio-f mp3
= formato del streamicecast://source:PASSWORD@HOST:PORT/MOUNT
= URL para emitir
Cambia:
hackme
→ tu contraseña de source enicecast.xml
localhost
→ IP local o pública de tu servidor
/stream.mp3
→ el mount point definido
O bien pudieras enviar toda una carpeta en loop:
🔁 Esto toma una canción al azar en bucle infinito (puedes combinarlo con scripts para rotación aleatoria).
🎙️ 5. Streaming de audio en vivo (micrófono)
🔹 En Linux con ALSA:
Encuentra tu dispositivo:
Ejemplo para usar el dispositivo por defecto:
🔹 Con PulseAudio:
Puedes hacer streaming de lo que esté saliendo por tus altavoces con
pulse
usando el monitor de tu tarjeta:
📺 6. Ver el resultado
Abre en el navegador o VLC:
Si estás desde otro dispositivo, cambia localhost
por tu IP local o pública.
✅ Tip Extra: Metadata y título
Puedes añadir información del stream con:
🧪 Para pruebas rápidas:
(Esto transmite un tono de prueba 🎶)
Vamos a ver un script Bash listo para lanzar automáticamente un stream de audio a Icecast usando FFmpeg, ideal para una radio casera o personal 🔥🎙️
📜 Script: stream_radio.sh
stream_radio.sh
🛠️ Instrucciones de uso
Guarda el script:
(Pega el contenido y guarda con
Ctrl+O
,Enter
,Ctrl+X
)Hazlo ejecutable:
Ejecuta el script:
🎧 Abre en tu móvil o navegador:
🧠 Extras que puedes añadir:
Auto-stop tras X canciones o tiempo.
Logs de reproducción.
Añadir jingles entre canciones.
Transiciones suaves con
ffmpeg
(fundido cruzado).
Última actualización