La codificación de la transmisión en vivo divide un video en vivo en fragmentos más pequeños, los comprime y distribuye los datos de video a través de un CDN. Las actualizaciones de este proceso están haciendo que la transmisión en vivo sea más rápida.
Después de leer este artículo podrás:
Contenido relacionado
Transmisión en vivo HTTP
¿Qué es MPEG-DASH?
¿Qué es la transmisión en vivo?
¿Qué es la transmisión?
Formatos de codificación de video
Suscríbete a theNET, el resumen mensual de Cloudflare sobre las ideas más populares de Internet.
Copiar el enlace del artículo
La transmisión es un método para entregar datos a través de Internet sin que los usuarios finales descarguen completamente los datos. La transmisión en vivo es un tipo de transmisión en la que la transmisión se envía a través de Internet en tiempo real, sin que sea grabada y almacenada antes.
La transmisión de videojuegos, las transmisiones en redes sociales, como Periscope y Facebook Live, y las transmisiones de deportes profesionales a través de Internet son ejemplos de transmisión en vivo. Aunque tanto el audio como el video pueden transmitirse en vivo, este artículo se centrará en la transmisión de video en vivo.
La codificación de video es el proceso de comprimir datos de video para que puedan enviarse a otra ubicación de manera eficiente. El dispositivo en el extremo receptor de una transmisión, por ejemplo, una tableta en la que un usuario está viendo su programa de televisión favorito, decodifica los datos codificados. La codificación de video sigue estándares conocidos públicamente para que una variedad de dispositivos puedan interpretar la transmisión codificada.
La codificación de video es necesaria por dos razones principales:
En una transmisión de video en vivo, un dispositivo toma entradas audiovisuales, las codifica y se las envía al público, todo al mismo tiempo. La parte de la codificación de este proceso es esencial para permitir que una variedad de dispositivos de usuario reciban y reproduzcan el video.
Una transmisión en vivo desde una fuente que captura video, por ejemplo, una cámara web, se envía a un servidor, en el que un protocolo de transmisión, como HLS o MPEG-DASH dividirá la transmisión de video en segmentos más pequeños, cada uno de unos pocos segundos de duración.
El contenido de video se codifica mediante el uso de un estándar de codificación. El estándar de codificación que más se usa en la actualidad se llama H.264, pero también se usan estándares como H.265, VP9 y AV1. Este proceso de codificación comprime el video al eliminar la información visual redundante. Por ejemplo, en un streaming en el que alguien hable con un fondo de cielo azul, no es necesario volver a representar el cielo azul en cada segundo del video, ya que este no cambia mucho. Por lo tanto, se puede quitar el cielo azul de la mayoría de los fotogramas del video.
Los datos de video segmentados y comprimidos se distribuyen luego mediante una red de entrega de contenido (CDN). Sin una CDN, muy pocos espectadores podrán cargar la transmisión en vivo. La sección final de este artículo explica por qué.
La mayoría de los dispositivos móviles tienen un codificador incorporado, lo que facilita a los usuarios habituales la transmisión en vivo en las plataformas de redes sociales y a través de las aplicaciones de mensajería. Las marcas y las empresas que desean una transmisión de mayor calidad utilizan su propio software o hardware de codificación, o ambos.
Con muchas transmisiones en vivo, los espectadores aún experimentan 20 a 30 segundos de latencia, en otras palabras, el contenido que ven está 20 a 30 segundos atrasado con respecto al tiempo real. Esto se debe en parte a que cada segmento de video debe cargarse completamente antes de que pueda reproducirse, y cada segmento de video puede tardar varios segundos en cargarse.
Una solución a este retraso es un proceso llamado codificación fragmentada. Este proceso funciona mediante la "fragmentación", es decir, divide los segmentos de video en partes aún más pequeñas. Luego, esas piezas más pequeñas se codifican, y los dispositivos que reciben la transmisión pueden reproducir estos fragmentos más pequeños antes de que se cargue todo el segmento.
Las CDN son esenciales para la transmisión en vivo, porque permiten distribuir la transmisión a los usuarios en ubicaciones muy diferentes. Además, las CDN tienen mucho más ancho de banda para distribuir la transmisión que un solo servidor de origen. Sin una CDN, la transmisión en vivo puede encontrarse fácilmente con problemas de ancho de banda.
Sin embargo, la mayoría de las CDN todavía tienen que cargar un segmento completo de video antes de poder entregar el segmento a múltiples usuarios a la vez. Esto vuelve a introducir el problema de la latencia que se supone que resuelve la codificación fragmentada.
Para acelerar el streaming en vivo, Cloudflare ofrece una característica denominada aceleración de streaming simultánea. La CDN de Cloudflare puede distribuir un segmento de video a múltiples usuarios finales a la vez mientras se está cargando, lo que elimina el tiempo de espera mientras se carga todo el segmento. La red global de Cloudflare abarca 330 ciudades en más de 120 países, lo que permite a los usuarios de todo el mundo sintonizar un streaming en directo de alta calidad en tiempo real.