Hace tan sólo una semana se liberó la preview para live streaming en Azure Media Services. Esta funcionalidad ya había sido utilizada antes por los Juegos Olímpicos de Invierno 2014 y durante la FIFA 2014. Ahora podemos también disfrutar de la preview desde nuestras casas. Los cambios en el portal están marcados con la palabra PREVIEW:
Content Protection se trata de otra nueva funcionalidad de la que hablaremos en otro post, relacionada con la protección de los assets. En cuanto a live streaming tenemos un nuevo tab llamado Channels el cual nos permitirá crear un punto de entrada y salida de vídeo y audio como vemos en la siguiente imagen:
Los pasos comunes cuando trabajamos con live streaming son los siguientes:
- Se crea un canal, para el cual necesitamos un, un protocolo de ingesta (RTMP o Smooth Streaming) y las IPs desde las cuales se puede enviar contenido al canal. Desde el portal se presenta de la siguiente manera:
Cuando creamos un canal, se nos advierte de que el mismo genera un coste adicional en nuestra suscripción de Microsoft Azure. En el momento de escribir este post, el coste por utilizar el servicio en modo preview era €0.39/hora por canal (Más información). En este post el protocolo que vamos a utilizar es RTMP (Real Time Messaging Protocol). Dejaremos marcados los checks para que el canal se inicie una vez creado y utilice nuestra IP como punto de ingesta para el canal. La inicialización puede tardar unos segundos en completarse. - Una vez finalizado el proceso, se generan dos valores importantes: Las URLs de ingesta y previsualización del canal:
La primera de ellas será utilizada por el encoder para enviar el contenido al servicio y la segunda nos permitirá ver la información que está recibiendo el canal antes de publicarlo. - A día de hoy, el servicio necesita que el vídeo sea transcodificado en local antes de enviarlo a la nube. Por ello, necesitamos configurar un encoder que nos permita alimentar el canal con el formato adecuado. Es muy importante saber que actualmente para usar el protocolo RTMP sólo se permite H264 para vídeo y AAC para audio. Para este ejemplo, he utilizado Flash Media Live Encoder para Mac, el cual es gratuito y soporta tanto H264 como AAC (En el caso de Windows sería necesario comprar un plugin adicional para AAC proporcionado por MainConcept). Para poder utilizarlo, basta con modificar el archivo config.xml, ubicado en Applications > Adobe > Flash Media Live Encoder 3.2 > conf > config.xml, y poner a true el valor de streamsynchronization. Para este ejemplo he utilizado los siguientes valores:
En el caso de FMLE basta con pulsar sobre el botón START para iniciar el envío de contenido al canal.
- Para comprobar que tanto el audio como el vídeo está llegando correctamente, volvemos al servicio en el portal de Azure y seleccionamos la acción PLAY > Play Preview URL:
- Una vez que hayamos confirmado que el modo preview recibe lo esperado, utilizaremos el botón START STREAMING para comenzar con la emisión en vivo.
Espero que sea de utilidad.
Happy streaming!