Protocolos de streaming. HLS, RTMP, RTSP/RTP, MPEG-TS
Si estas confuso sobre que protocolo te conviene para tu streaming de vídeo o televisión en este articulo intentaremos despejarte las dudas.
El streaming nos permite visualizar los contenidos sin tener que esperar a que todo el fichero baje localmente a nuestro PC. Antiguamente primero se descargaba todo el contenido y posteriormente se reproducía, lo que por supuesto era incomodo. El desarrollo de Internet y la banda ancha permitió el nacimiento de los protocolos de streaming que nos permite la visualización inmediata del contenido sin tener que esperar a descargarlo completamente. En 1997 RealNetwork fue el primero en emitir un vídeo en streaming a partir de ese momento su crecimiento junto a la mejora de los dispositivos y la capacidad de Internet lo llevo masivamente a los hogares, siendo hoy la principal fuente de consumos de contenidos.
Existen tres formas de transmitir el vídeo por Internet: el Streaming tradicional RTSP, la descarga progresiva y el Streaming adaptativo.
Los protocolos adaptativos son aquellos que se adaptan a cualquier dispositivo y ancho de banda automáticamente.
Protocolos adaptativos: HLS, HDS, HSS, MPEG-DASH
- M3U8 o HLS. Fue creado por Apple en 2009. Significa HTTP live streaming. Es adaptativo y funciona en formato H.264. El archivo se fragmenta en pequeñas partes, sirve tanto para live como para on demand. Durante el stream se puede cambiar de calidad sin reiniciar el mismo, por eso se llama adaptativo, además que se le puede implementar seguridad.
- HDS. Creado por Adobe. Significa HTTP dynamic streaming. Presenta una novedad respecto a los otros protocolos adaptivos ya que define una unidad de contenido más pequeña que denomina fragmento.
- HSS Microsoft Smooth Streaming. Creado por Microsoft. funciona bajo HTTP y el cliente principal que utiliza es Silverlight.
- MPEG-DASH. (Moving Picture Experts Group-Dynamic Adaptive Streaming over HTTP) se espera sea la solución del futuro logrando aunar las diferentes tecnologías y pudiendo ser útil para todos los dispositivos. Los tres protocolos presentados anteriormente, Smooth Streaming, HDS y HLS, permiten la distribución de vídeo por Internet de forma adaptativa, pero cada uno exige un encapsulamiento diferente. Para tratar de evitar incompatibilidades entre los distintos protocolos y los dispositivos que utilizan los usuarios, surge MPEG-DASH (Dynamic Adaptive Streaming over HTTP). La idea es tratar de converger y simplificar la distribución de vídeo por Internet de forma adaptativa, reutilizando la tecnología ya existente.
Protocolos no adaptivos. RTMP y RTSP/RTP
- RTMP. Realiza streaming entre un programa Flash player y un servidor, de archivos de audio, video y datos en internet. Este protocolo trabaja sobre TCP y usa por defecto el puerto 1935. Desarrollado por Macromedia, actualmente pertenece a Adobe. Con el auge del HTML5 tiende a desaparecer.
- RTSP/RTP: (Real-Time Streaming Protocol). No es adaptivo lo que quiere decir que desde el primer momento se envía una calidad y ya no se puede cambiar hasta el reinicio de la visualización. Los paquetes se transmiten vía UDP lo que significa que puede causar problemas con los firewalls.