Traductor

Buscador

lunes, 10 de noviembre de 2014

Adaptive streaming, ¿eso qué es?


Wild West End by Dire Straits on Grooveshark ¿Qué es Adaptive Streaming?



Adaptive Streaming es un proceso que ajusta la calidad de un vídeo entregado a una página web en función del ancho de banda del que dispone el usuario en cada momento y del estado de su CPU. Es decir, que una transmisión adaptativa es capaz de modificar las condiciones de la red para asegurar la mejor experiencia al espectador posible.

En el arquetipo de streaming adaptativo la fuente de vídeo/audio es dividida en muchos segmentos pequeños (“chunks” = segmentos) y codificados en el formato de entrega deseado. Los chunks son típicamente de 2-4 segundos de longitud. Cada chunk se corta a lo largo de los límites de cada GOP de vídeo (cada fragmento comienza con un cuadro clave) y no tiene dependencias con pasados o futuros chunks/GOPs. Esto permite que cada trozo sea luego decodificado completamente de manera independiente a los otros chunks.

Figura 1. Adaptive Streaming es realmente un híbrido, pues actúa como Streaming pero de facto está basado en HTTP Progressive Download



Estos segmentos codificados son alojados entonces en un servidor web HTTP. Un cliente solicita los chunks desde el servidor web de forma lineal y los descarga mediante HTTP Progressive Download plano. Como los chunks son descargados por el cliente, este reproduce la secuencia de segmentos en orden lineal. Debido a que los segmentos fueron cuidadosamente codificados sin huecos o solapamientos entre ellos estos se reproducen como un vídeo perfecto.

La parte “adaptativa” de la solución entra en juego cuando la fuente de vídeo o audio se codifica a múltiples tasas de bit, generando varios segmentos de diferente tamaño cada 2-4 segundos de vídeo. El cliente ahora tiene la opción de elegir entre segmentos de distintos tamaños. Debido a que los servidores web normalmente entregan datos tan rápido como el ancho de banda de la red se lo permite, el cliente puede fácilmente estimar el ancho de banda del usuario y decidir descargar segmentos más grandes o más pequeños antes de tiempo. El tamaño del buffer de reproducción/descarga es totalmente personalizable.

Figura 2: Adaptive Streaming simplifica la creación y gestión de contenidos, haciendo la transmisión de vídeo fácil de desplegar, y sin requerir ninguna codificación

Implementaciones

Debido a la decisión final sobre el códec a emplear en la especificación HTML5 (para la etiqueta “video”) y a la negativa de Apple a dar soporte Flash en sus dispositivos se ha popularizado la adopción de protocolos de distribución de vídeo basados en HTTP.

Todos ellos usan MPEG-4 H.264 como entrada y existen fundamentalmente tres en función de su desarrollador:
  • HTTP Live Streaming (HLS) de Apple.
  • Smooth Streaming para Silverlight (Microsoft)
  • HTTP Dynamic Streaming (Adobe)

Ventajas e inconvenientes


El Adaptive Streaming, como otras formas de entrega HTTP, ofrece varias ventajas para el proveedor de contenidos:
  • Implementación barata. Puede utilizar proxies y cachés de HTTP genéricos y no requerir de servidores especializados en cada nodo.
  • Mejor escalabilidad y alcance. Se adapta dinámicamente a las condiciones inferiores de la red y reduce por tanto los problemas “last mile” (de última milla) al acercarse al hogar del usuario.
  • Adaptación al contenido. Permite que el público se adapte al contenido en lugar de exigir a los proveedores que adivinen qué tasas de bit tienen más probabilidades de ser accesibles por sus usuarios.

También ofrece beneficios al usuario final:
  • Rápida puesta en marcha y tiempo de búsqueda. Debido a que puede ser inicializado a una tasa de bit baja antes de pasar a una más alta.
  • Sin buffering, sin desconexiones y sin repeticiones en la reproducción (siempre que se tenga al menos la mínima tasa de bit).
  • Conmutación constante de la tasa de bit. Siempre basada en las condiciones de la red y en la capacidad de la CPU.
  • Experiencia de reproducción consistente y fluida.

Sin embargo, el streaming adaptativo también tiene sus inconvenientes:
  • Carencia de implementación estándar. Tener a tres gigantes como Apple, Adobe y Microsoft cada una con su implementación genera problemas de interoperatibilidad. La codificación de los archivos es diferente y también el protocolo, lo que genera una gran fragmentación en el mercado que obliga a los proveedores de contenido a elegir uno de los tres o a implementar todas las tecnologías. Así, un simple vídeo puede resultar en 18 versiones y miles de fragmentos para gestionar (ver figura 3). MPEG DASH –una iniciativa para racionalizar el uso del streaming adaptativo en todas las plataformas – trata de solucionar este problema.

Figura 3. Implementaciones de Adaptive Streaming

  • El umbral mínimo de la tasa de bit. El proveedor de contenido en general no tiene ni idea de los dispositivos que accederán a su contenido, desconociendo las tasas de bit efectivas de EDGE, UMTS o LTE. Así, la velocidad de codificación disponible puede ser inapropiada para la capacidad de entrega y generar una tasa de bit menor a la mínima proporcionada por el proveedor de contenido.

Conclusión personal


Adaptive Streaming puede ser la mejor alternativa para entregar una calidad óptima de servicio a un muy diverso rango de espectadores y dispositivos. Sin embargo, no todas las tecnologías son creadas iguales y no hay ninguna solución que sirva para todas, de modo que los esfuerzos deben encaminarse en esa dirección, la dirección que marca MPEG-DASH.

Bibliografía



No hay comentarios:

Publicar un comentario en la entrada

Tu comentario es el alimento de este blog. ¡¡¡Dale de comer!!!

LinkWithin

Related Posts Plugin for WordPress, Blogger...

Entradas relacionadas

Related Posts Plugin for WordPress, Blogger...

Lo más visto esta semana

Formulario de contacto

Nombre

Correo electrónico *

Mensaje *