Icecast es un proyecto de transmisión de medios lanzado como software gratuito mantenido por la Fundación Xiph.Org . También se refiere específicamente al programa servidor que forma parte del proyecto. Icecast fue creado en diciembre de 1998/enero de 1999 por Jack Moffitt [5] [6] y Barath Raghavan [6] para proporcionar un servidor de transmisión de audio de código abierto que cualquiera pudiera modificar, usar y jugar. La versión 2, una reescritura desde cero destinada al soporte multiformato (inicialmente dirigida a Ogg Vorbis ) y la escalabilidad, se inició en 2001 y se lanzó en enero de 2004. [6]
Icecast fue desarrollado originalmente por Moffitt en 1998 para la estación de radio de SMU . En ese momento, la estación perdía constantemente su licencia FCC [ cita necesaria ] y en ese momento solo podía comunicarse con los oyentes en el mismo edificio. Dado que todos los dormitorios del campus tenían conectividad Ethernet, utilizar la transmisión de audio para transmitir era una solución natural, pero el software de transmisión de audio disponible actualmente, como RealAudio, era demasiado caro. Moffitt creó Icecast, lo que permitió que la estación llegara fácilmente a cualquier lugar del campus sin la necesidad de una licencia de la FCC o una actualización del transmisor. Inicialmente desarrollado para admitir archivos mp3 , poco después se agregó soporte para Vorbis .
El servidor Icecast es capaz de transmitir contenido de audio como Opus o Vorbis [7] a través de HTTP estándar , video como WebM o Theora [7] a través de HTTP y MP3 , [7] AAC , [6] y NSV [6] a través de SHOUTcast. protocolo. Theora, AAC y NSV solo son compatibles con la versión 2.2.0 y posteriores.
Icecast requiere programas externos, llamados "clientes fuente", para originar las transmisiones, [8] y el proyecto Icecast incluye un programa cliente fuente conocido como IceS . [9] La fuente se ejecuta normalmente en el lugar donde se genera el audio (por ejemplo, un estudio) y el servidor Icecast donde está disponible una conexión de alto ancho de banda (por ejemplo, un centro de colocación ). Desde la versión 2.4.0, los clientes de origen pueden utilizar solicitudes PUT estándar HTTP simples en lugar del método SOURCE personalizado. [6]