- Max Wilbert
- Tabla de contenidos
- ¿Qué es un protocolo de streaming de vídeo?
- Protocolo de streaming vs. Códec vs. Formato de contenedor
- Protocolos de streaming de vídeo comunes
- Protocolo de mensajería en tiempo real (RTMP)
- ¿Quién debería usar RTMP?
- Protocolo de Streaming en Tiempo Real (RTSP)
- ¿Quién debe usar RTSP?
- RTMP vs RTSP
- Pros de usar RTMP:
- Contrarios del uso de RTMP:
- Pros de usar RTSP:
- Contrarios de usar RTSP:
- Transmisión adaptativa dinámica sobre HTTP (MPEG-DASH): un protocolo prometedor
- ¿Quién debería utilizar MPEG-DASH?
- Microsoft Smooth Streaming (MSS)
- ¿Quién debería usar Smooth Streaming?
- HTTP Dynamic Streaming (HDS)
- ¿Quién debería usar HDS?
- HTTP Live Streaming (HLS)
- ¿Quién debe utilizar HLS?
- Protocolos de vídeo para la transmisión profesional en directo
- Conclusión
Max Wilbert
Max Wilbert es un escritor apasionado, practicante de la transmisión en vivo, y tiene una fuerte experiencia en la industria de la transmisión de video.
Cuando te inicias en el streaming en directo, te das cuenta de la abundancia de acrónimos que sirven para muchos propósitos diferentes. Hay RTMP, HLS, HDS, y más.
Muchos de estos acrónimos se refieren a diferentes protocolos de streaming de vídeo. Básicamente, los protocolos son procesos técnicos que facilitan la transferencia de datos de un programa a otro. En el streaming, esto significa la transferencia de sus archivos de vídeo hacia y desde su codificador, el host de streaming y, finalmente, el reproductor de vídeo en el que su audiencia ve su flujo.
Hoy, vamos a identificar algunos de los protocolos de streaming más comunes que encontrará, lo que hacen y cuándo deben utilizarlos. Con el fin de proporcionar algunos antecedentes relevantes para ayudarle a entender, también explicaremos la relación entre un códec frente a un formato contenedor.
¿Estás preparado para sumergirte en los protocolos de streaming en directo?
Por favor, ten en cuenta que este post ha sido actualizado para reflejar los últimos avances en los protocolos de streaming de vídeo a partir de noviembre de 2020.
Tabla de contenidos
- ¿Qué es un protocolo de streaming de vídeo? Formato de contenedor
- Protocolos de streaming de vídeo comunes
- Protocolos de vídeo para el streaming profesional en directo
- Conclusión
- Baja latencia: La baja latencia permite que su flujo de vídeo en directo mantenga una conexión estable y una alimentación de vídeo para el espectador, incluso si la conexión a Internet no es fiable. Esto proporciona a tus espectadores menos «lags» cuando ven tus vídeos con una conexión a internet inestable, permitiéndoles reanudar rápidamente la transmisión una vez que su conexión a internet se estabiliza.
- Adaptable: Un feed adaptable significa que tus espectadores no están encerrados en ver tus feeds en una dirección lineal. La adaptabilidad les permite saltar y rebobinar partes del feed o unirse a una transmisión en vivo después de que haya comenzado.
- Flexible: RTMP le permite integrar una variedad de tipos de medios de comunicación en un paquete cohesivo, mezclando a la perfección el audio, el vídeo y el texto. Además, puede tener múltiples variaciones de canales de medios, como la transmisión de flujos de audio MP3 y AAC o la transmisión de vídeos MP4, FLV y F4V.
- No es compatible con HTML5: El RTMP es compatible con los reproductores Flash, un formato que va camino de la obsolescencia. Los reproductores HTML5 se están convirtiendo rápidamente en el estándar moderno, pero RTMP no puede reproducirse en reproductores HTML5 sin un convertidor como HLS.
- Problemas de ancho de banda: Las transmisiones RTMP pueden ser especialmente vulnerables a problemas de bajo ancho de banda. Esto puede causar frecuentes y frustrantes interrupciones en tus streams que arruinan la experiencia de tus espectadores.
- Incompatible con HTTP: No puedes transmitir directamente un feed RTMP a través de una conexión HTTP. Para utilizar una transmisión RTMP en su sitio web, tiene que conectarse a un servidor especial, como el Flash Media Server, y utilizar una red de distribución de contenidos (CDN) de terceros.
-
Transmisión segmentada: En lugar de obligar a tus espectadores a descargar un vídeo completo antes de verlo, la transmisión RTSP les permite ver tu contenido antes de que se complete la descarga.
- Personalización: Utilizando otros protocolos, como el Protocolo de Control de Transmisión (TCP) y el Protocolo de Datagramas de Usuario (UDP), puedes crear tus propias aplicaciones de streaming de vídeo.
-
Menos popular: En comparación con otros protocolos de transmisión de medios, RTSP es mucho menos popular. La mayoría de los reproductores de vídeo y servicios de streaming no soportan el streaming RTSP, lo que dificulta la difusión de su flujo en el navegador. Para transmitir un flujo RTSP, debe utilizar un servicio de transmisión en vivo RTSP separado.
- HTTP incompatible: Al igual que RTMP, no se puede transmitir directamente RTSP a través de HTTP. Debido a esto, no hay una forma fácil y directa de transmitir RTSP en un navegador web, ya que RTSP está diseñado más para transmitir vídeo en redes privadas, como los sistemas de seguridad dentro de una empresa. Sin embargo, puedes transmitir RTSP utilizando un software adicional que se incrusta en tu sitio web.
¿Qué es un protocolo de streaming de vídeo?
Antes de seguir adelante, vamos a profundizar un poco más en la definición de un protocolo de streaming de vídeo. La mayoría de los vídeos digitales están diseñados para dos cosas: el almacenamiento y la reproducción. Esto lleva a dos consideraciones principales, a saber, un tamaño de archivo pequeño y una reproducción universal.
La mayoría de los archivos de vídeo no están diseñados para la transmisión, lo que significa que la transmisión de un vídeo implica primero convertirlo en un archivo que se pueda transmitir. Esto implica dividirlo en pequeños trozos. Estos trozos llegan secuencialmente y se reproducen a medida que se reciben. Si estás transmitiendo vídeo en directo, el vídeo fuente llega directamente desde una cámara. Si no, procede de un archivo de contenido VOD.
Un protocolo de transmisión de vídeo es un método de entrega estandarizado para dividir un vídeo en trozos, enviarlo al espectador y volver a montarlo.
Los protocolos de transmisión pueden ser mucho más complejos. Muchos son protocolos de «bitrate adaptativo», por ejemplo. Esta tecnología ofrecerá la mejor calidad que un espectador pueda soportar en cada momento.
Algunos protocolos se centran en reducir la latencia, o el retraso entre un evento que ocurre en la vida real y cuando se reproduce en la pantalla del espectador. Algunos protocolos sólo funcionan en determinados sistemas, Y otros protocolos se centran en la gestión de derechos digitales (DRM).
A medida que avancemos en algunos protocolos específicos, pondremos estas y otras características en perspectiva.
Protocolo de streaming vs. Códec vs. Formato de contenedor
Entre otras, una fuente común de confusión en el ámbito del streaming de vídeo está relacionada con la diferencia entre un protocolo y un códec.
Simplemente, el término «códec» se refiere a la tecnología de compresión de vídeo. Lógicamente, los diferentes códecs de streaming se utilizan para diferentes propósitos. Por ejemplo, Apple ProRes se utiliza a menudo para la edición de vídeo y H.264, el códec de vídeo más común, se utiliza ampliamente para el vídeo en línea.
Al igual que el códec, el término «formato» también puede ser confuso en el contexto de los protocolos de streaming de vídeo. En muchos casos, el formato se refiere simplemente al formato contenedor de un archivo de vídeo. Los formatos contenedores más comunes son .mp4, .m4v y .avi.
En esencia, un formato contenedor funciona como una «caja» que suele contener un archivo de vídeo, un archivo de audio y metadatos. Sin embargo, el formato contenedor no es un concepto tan central para los streamers en vivo.
Hagamos una comparación para que sea más fácil entender la relación entre un códec, un formato contenedor y un protocolo de streaming.
Imagina que eres un comerciante y transportas ropa a granel (la ropa representa el contenido de vídeo). El códec de streaming equivale a la máquina que comprime la ropa en un bulto para ahorrar espacio. El formato del contenedor es el vagón en el que se empaquetan estos fardos. El protocolo de streaming es análogo a las vías del tren, las señales y los conductores que lo entregan al destino.
Como emisor, usted quiere que su contenido de vídeo en directo funcione en conjunto con un códec, un formato contenedor y un protocolo de streaming.
También es importante tener en cuenta que la mayoría de los protocolos de streaming sólo admiten determinados códecs. Más adelante hablaremos de esto.
Protocolos de streaming de vídeo comunes
Ahora que tiene una mejor idea del propósito de los protocolos de streaming de vídeo, vamos a empezar nuestra comparación de los protocolos de streaming de vídeo más comunes hoy en día.
En esta comparación, también ofreceremos casos de uso para cada protocolo siempre que sea posible.
Protocolo de mensajería en tiempo real (RTMP)
El primero es el veterano protocolo: RTMP o protocolo de mensajería en tiempo real. Desarrollado originalmente por Macromedia en los primeros tiempos del streaming, el protocolo RTMP sigue siendo muy utilizado.
Hoy en día, RTMP se utiliza principalmente para la ingesta de flujos en directo con la ayuda de un codificador habilitado para RTMP. En términos sencillos, cuando usted configura su codificador para enviar su alimentación de vídeo a su plataforma de alojamiento de vídeo, ese vídeo llegará a la CDN a través del protocolo RTMP. Ese contenido finalmente llega al espectador final en otro protocolo, normalmente el protocolo de streaming HLS.
RTMP rara vez se utiliza como un protocolo de streaming de vídeo de cara al espectador como lo fue una vez. Esto se debe a que depende del plugin de Flash, que ha estado plagado de problemas de seguridad durante años y se está quedando rápidamente obsoleto.
¿Quién debería usar RTMP?
RTMP es un protocolo de streaming que proporciona flujos de muy baja latencia. Sin embargo, debido a que requiere el plugin de Flash para ser reproducido, no lo recomendamos. De nuevo, la excepción es para la ingestión de flujos. Para este propósito, RTMP sigue siendo una de las mejores opciones. Es robusto y casi universalmente soportado.
Protocolo de Streaming en Tiempo Real (RTSP)
Tal vez un protocolo de streaming de vídeo menos conocido, el Protocolo de Streaming en Tiempo Real (RTSP) fue publicado por primera vez en 1998. RTSP fue desarrollado para controlar servidores de streaming de medios en sistemas de entretenimiento y comunicaciones, específicamente.
En 2016, un RTSP 2.0 actualizado estuvo disponible. En general, se conoce como un protocolo de streaming de vídeo para establecer y controlar sesiones multimedia entre puntos finales.
RTSP es similar en algunos aspectos al protocolo HTTP Live Streaming (HLS), que trataremos a continuación. Sin embargo, la transmisión de datos de streaming en vivo no es lo que RTSP logra por sí mismo. En su lugar, los servidores RTSP a menudo trabajan en conjunto con el Protocolo de Transporte en Tiempo Real (RTP) y el Protocolo de Control en Tiempo Real (RTCP) para entregar flujos de medios.
¿Quién debe usar RTSP?
RTSP fue diseñado para soportar el streaming de baja latencia y es una buena opción para los casos de uso de streaming como las alimentaciones de cámaras IP (por ejemplo, cámaras de seguridad), dispositivos IoT (por ejemplo, dron controlado por ordenador portátil) y SDKs móviles.
Un inconveniente importante, sin embargo, es que hay un soporte nativo limitado del navegador para RTSP.
RTMP vs RTSP
RTMP y RTSP son ambos protocolos de streaming, lo que significa que son conjuntos de reglas que gobiernan cómo los datos viajan de un sistema de comunicación a otro. Si los datos de vídeo que está tratando de enviar a sus espectadores son un coche, entonces el protocolo de transmisión es la carretera que el coche toma para ir de un lugar a otro.
Pros de usar RTMP:
Contrarios del uso de RTMP:
Pros de usar RTSP:
Contrarios de usar RTSP:
La elección entre los protocolos de streaming RTMP vs RTSP depende en gran medida de las necesidades individuales de su negocio y de cuántos pasos adicionales está dispuesto a dar para que su contenido sea reproducible en su sitio web.
Transmisión adaptativa dinámica sobre HTTP (MPEG-DASH): un protocolo prometedor
En el extremo opuesto del espectro, tenemos MPEG-DASH, uno de los protocolos más nuevos en la escena. Aunque todavía no es muy utilizado, este protocolo tiene algunas grandes ventajas.
En primer lugar, admite la transmisión de velocidad de bits adaptable. Esto significa que los espectadores siempre recibirán la mejor calidad de vídeo que su velocidad de conexión a Internet pueda soportar. Esto tiende a fluctuar segundo a segundo, y DASH puede seguir el ritmo.
MPEG-DASH soluciona algunos problemas técnicos de larga data con la entrega y la compresión. Otra ventaja es que MPEG-DASH es «agnóstico en cuanto a códecs», lo que significa que puede utilizarse con casi cualquier formato de codificación. También es compatible con las extensiones de medios encriptados (EME) y la extensión de fuentes de medios (MSE), que son APIs basadas en estándares para la gestión de derechos digitales (DRM) basada en el navegador.
¿Quién debería utilizar MPEG-DASH?
En la actualidad, MPEG-DASH sólo es utilizado por una fracción de las emisoras profesionales en comparación con HLS. Sin embargo, creemos que será la tecnología estándar en el futuro.
La razón por la que este protocolo no es increíblemente popular todavía se puede atribuir a la compatibilidad (por ejemplo, Safari de Apple y los dispositivos iOS no lo soportan) y otros problemas relacionados.
Microsoft Smooth Streaming (MSS)
El siguiente es el protocolo Smooth Streaming (MSS) de Microsoft. Introducido originalmente en 2008, MSS fue parte integral de los Juegos Olímpicos de Verano de ese año. Sin embargo, su popularidad ha disminuido, excepto entre los desarrolladores centrados en Microsoft y los que trabajan en el ecosistema de Xbox.
Smooth Streaming es compatible con la transmisión a velocidad de bits adaptable e incluye algunas herramientas sólidas para la DRM. En general, es un método híbrido de entrega de medios que funciona como el streaming, pero se basa en la descarga progresiva HTTP.
¿Quién debería usar Smooth Streaming?
A menos que su principal público objetivo sean los usuarios de Xbox o que planee crear aplicaciones específicas para Windows, no recomendamos usar MSS como protocolo principal de streaming de vídeo.
HTTP Dynamic Streaming (HDS)
La entrada de Adobe en el mundo de los protocolos de streaming es HTTP Dynamic Streaming (HDS), el sucesor de RTMP. Al igual que RTMP, HDS es un protocolo de streaming basado en flash. Sin embargo, también añade soporte para el streaming adaptativo y tiene una reputación de alta calidad.
HDS es también uno de los mejores protocolos cuando se trata de la latencia. Por otro lado, la latencia no es tan baja como con RTMP debido al proceso de fragmentación y encriptación, lo que hace que sea menos popular para la transmisión de deportes y otros eventos en los que los segundos importan.
¿Quién debería usar HDS?
En general, no recomendamos que use HDS. En los últimos años, la compatibilidad con Flash se ha vuelto demasiado débil para que cualquier emisora confíe en esta tecnología para llegar a su audiencia. En resumen, construir su vídeo web alrededor del reproductor Flash es simplemente una mala elección hoy en día.
HTTP Live Streaming (HLS)
El último protocolo de transmisión de vídeo del que hablaremos es HTTP Live Streaming o HLS. Apple lanzó originalmente este protocolo en 2009 para poder eliminar Flash de los iPhones. Desde entonces, HLS se ha convertido en el protocolo de streaming más utilizado.
Hay varias razones para ello. En primer lugar, los navegadores de escritorio, los televisores inteligentes y los dispositivos móviles Android e iOS son compatibles con HLS. Los reproductores de vídeo HTML5 también soportan HLS de forma nativa, en comparación con HDS y RTMP.
Esto permite que una transmisión llegue a tantos espectadores como sea posible, lo que hace que HLS sea el protocolo más seguro hoy en día para escalar una transmisión en directo a grandes audiencias. Por ejemplo, puedes utilizar este protocolo para transmitir vídeo en directo en tu sitio web con un simple código de incrustación.
En cuanto a las características, el estándar HLS también admite el streaming con tasa de bits adaptativa, ofreciendo dinámicamente la mejor calidad de vídeo posible en cada momento. Con las últimas actualizaciones, este estándar es ahora compatible con el último y mejor códec H.265, que ofrece el doble de calidad de vídeo con el mismo tamaño de archivo que el H.264.
Actualmente, el único inconveniente de HLS es que la latencia puede ser relativamente alta. Sin embargo, existen métodos para reducir la latencia de HLS.
¿Quién debe utilizar HLS?
HLS es el protocolo más utilizado hoy en día porque es robusto y eficaz. Por ejemplo, sabemos que pocos espectadores volverán a un sitio durante una transmisión si experimentan un fallo de vídeo. El uso de un protocolo adaptable y ampliamente compatible como HLS ofrecerá la mejor experiencia posible a la audiencia.
También nos gustaría mencionar que HLS es ahora el protocolo de streaming por defecto utilizado en Dacast.
Protocolos de vídeo para la transmisión profesional en directo
Para recapitular, hoy en día existen muchos protocolos de transmisión de vídeo, y muchos de ellos pueden utilizarse para la transmisión de vídeo en directo.
Como hemos cubierto anteriormente, todos los protocolos discutidos aquí -RTMP, RTSP, MPEG-DASH, MSS, HDS y HLS- tienen casos de uso específicos para emisoras específicas. Sin embargo, si se tiene en cuenta todo, HLS sale ganando, especialmente en términos de compatibilidad de códecs, compatibilidad con todos los dispositivos, compatibilidad nativa con el reproductor de vídeo HTML5 y capacidad de transmisión con tasa de bits adaptativa.
Nuestra recomendación para llevar aquí es sencilla: por ahora, casi todas las emisoras deberían ceñirse a utilizar el protocolo de transmisión de vídeo HLS.
Por supuesto, algunos usuarios pueden encontrar otros protocolos mejores para sus necesidades. Sin embargo, si desea transmitir vídeo en vivo en su sitio web, hacer streaming en vivo de eventos deportivos o transmitir eventos y reuniones profesionales en vivo, HLS es generalmente el mejor camino a seguir.
Recuerde, MPEG-DASH es una opción emergente. Busca la creciente adopción de ese protocolo de streaming en un futuro próximo.
Conclusión
Aunque los protocolos de streaming y la tecnología relacionada son un poco complejos, son totalmente abordables cuando se desglosan en ideas más pequeñas y digeribles.
Esperamos que este post haya ayudado a aclarar el propósito de los protocolos de streaming de vídeo y la relación entre el protocolo de streaming de vídeo, el códec y el formato contenedor. Confiamos en que esté equipado para elegir y utilizar el protocolo adecuado para sus necesidades.
Para probar el streaming HLS en la plataforma Dacast, le invitamos a inscribirse en nuestra prueba gratuita de 30 días. Así podrá familiarizarse con las características antes de comprometerse/
EMPIECE GRATIS
iv