🚧Icecast - música en streaming

Vamos a probar icecast con ffmpeg


En Debian/Ubuntu empezaremos por instalar el servicio:

sudo apt install ffmpeg

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:

ffmpeg -re -i input.mp3 \
  -c:a libmp3lame -b:a 128k \
  -content_type audio/mpeg \
  -f mp3 \
  icecast://source:hackme@localhost:8000/stream.mp3

🔍 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 stream

  • icecast://source:PASSWORD@HOST:PORT/MOUNT = URL para emitir

Cambia:

  • hackme → tu contraseña de source en icecast.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


🛠️ Instrucciones de uso

  1. Guarda el script:

    (Pega el contenido y guarda con Ctrl+O, Enter, Ctrl+X)

  2. Hazlo ejecutable:

  3. Ejecuta el script:

  4. 🎧 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