stringtranslate.com

Transmisión dinámica adaptativa a través de HTTP

Dynamic Adaptive Streaming over HTTP ( DASH ), también conocido como MPEG-DASH , es una técnica de transmisión de velocidad de bits adaptativa que permite la transmisión de alta calidad de contenido multimedia a través de Internet desde servidores web HTTP convencionales . Similar a la solución HTTP Live Streaming (HLS) de Apple, MPEG-DASH funciona dividiendo el contenido en una secuencia de pequeños segmentos, que se sirven a través de HTTP . Un primer sistema de transmisión basado en servidor web HTTP llamado SProxy fue desarrollado e implementado en los Laboratorios Hewlett Packard en 2006. [2] [3] Mostró cómo usar solicitudes de rango HTTP para dividir el contenido en pequeños segmentos. SProxy muestra la efectividad de la transmisión basada en segmentos, obteniendo la mejor penetración de Internet debido a la amplia implementación de firewalls y reduciendo la transmisión de tráfico innecesario si un usuario elige terminar la sesión de transmisión antes de llegar al final. Cada segmento contiene un breve intervalo de tiempo de reproducción de contenido que potencialmente tiene muchas horas de duración, como una película o la transmisión en vivo de un evento deportivo. El contenido se pone a disposición en una variedad de diferentes tasas de bits, es decir, segmentos alternativos codificados a diferentes tasas de bits que cubren intervalos cortos alineados de tiempo de reproducción. Mientras un cliente MPEG-DASH reproduce el contenido, el cliente utiliza un algoritmo de adaptación de tasa de bits (ABR) [4] para seleccionar automáticamente el segmento con la tasa de bits más alta posible que se puede descargar a tiempo para la reproducción sin causar paradas o eventos de re-buffering en la reproducción. [5] El cliente de referencia MPEG-DASH actual dash.js [6] ofrece algoritmos de adaptación de tasa de bits basados ​​en buffer (BOLA [7] ) e híbridos (DYNAMIC [5] ). Por lo tanto, un cliente MPEG-DASH puede adaptarse sin problemas a las condiciones cambiantes de la red y proporcionar una reproducción de alta calidad con pocas paradas o eventos de re-buffering.

MPEG-DASH es la primera solución de streaming basada en HTTP con velocidad de bits adaptable que es un estándar internacional. [8] MPEG-DASH no debe confundirse con un protocolo de transporte: el protocolo de transporte que utiliza MPEG-DASH depende de la versión de HTTP que se utilice: TCP sobre HTTP y HTTP/2 , o UDP sobre HTTP/3 . MPEG-DASH utiliza la infraestructura de servidor web HTTP existente que se utiliza para la entrega de prácticamente todo el contenido de la World Wide Web. Permite que dispositivos como televisores conectados a Internet, decodificadores de TV, computadoras de escritorio, teléfonos inteligentes, tabletas, etc. reciban contenido multimedia (video, TV, radio, etc.) entregado a través de Internet, haciendo frente a condiciones de recepción de Internet variables. La estandarización de una solución de streaming adaptable tiene como objetivo brindar confianza al mercado de que la solución puede adoptarse para una implementación universal, en comparación con soluciones similares pero más propietarias como Smooth Streaming de Microsoft o HDS de Adobe. A diferencia de HDS o Smooth Streaming, DASH es independiente del códec , lo que significa que puede usar contenido codificado con cualquier formato de codificación , como H.265 , H.264 , VP9 , ​​etc. [9]

Normalización

La tecnología MPEG-DASH se desarrolló bajo el marco de MPEG . El trabajo sobre DASH comenzó en 2010; se convirtió en un borrador de norma internacional en enero de 2011 y en una norma internacional en noviembre de 2011. [8] [10] La norma MPEG-DASH se publicó en abril de 2012, pero se revisó en 2019 y luego una vez más en 2022 como [1].

DASH es una tecnología relacionada con Adobe Systems HTTP Dynamic Streaming , Apple Inc. HTTP Live Streaming (HLS) y Microsoft Smooth Streaming . DASH se basa en Adaptive HTTP Streaming (AHS) en 3GPP Release 9 y en HTTP Adaptive Streaming (HAS) en Open IPTV Forum Release 2. [11] [12] Como parte de su colaboración con MPEG, 3GPP Release 10 ha adoptado DASH (con códecs y modos operativos específicos) para su uso en redes inalámbricas. [11]

El Foro de la Industria DASH ( DASH-IF ) [13] promueve y cataliza aún más la adopción de MPEG-DASH y ayuda a que pase de ser una especificación a convertirse en un negocio real. Está formado por importantes empresas de streaming y medios de comunicación, como Microsoft, Netflix, Google, Ericsson, Samsung, Adobe, etc., y crea directrices sobre el uso de DASH para diferentes casos de uso en la práctica.

MPEG-DASH está integrado en otros estándares, por ejemplo, MPEG-DASH es compatible con HbbTV (a partir de la versión 1.5). [14]

Descripción general

DASH es una tecnología de transmisión de velocidad de bits adaptativa en la que un archivo multimedia se divide en uno o más segmentos y se envía a un cliente mediante HTTP . [15] Una descripción de presentación de medios (MPD) describe la información del segmento (tiempo, URL , características de los medios como la resolución de video y las velocidades de bits ), y se puede organizar de diferentes maneras, como SegmentList, SegmentTemplate, SegmentBase y SegmentTimeline, según el caso de uso. Los segmentos pueden contener cualquier dato multimedia, sin embargo, la especificación proporciona orientación y formatos específicos para su uso con dos tipos de contenedores: formato de archivo multimedia base ISO (por ejemplo, formato de archivo MP4) o MPEG-2 Transport Stream .

DASH es independiente del códec de audio/video . Normalmente, hay disponibles una o más representaciones (es decir, versiones a diferentes resoluciones o velocidades de bits) de archivos multimedia, y se puede hacer una selección en función de las condiciones de la red , las capacidades del dispositivo y las preferencias del usuario, lo que permite la transmisión de velocidad de bits adaptativa [16] y la equidad de la calidad de la experiencia (QoE) . [17] El estándar DASH no especifica la lógica de transmisión de velocidad de bits adaptativa (ABR). [18] DASH también es independiente del protocolo de capa de aplicación subyacente. Por lo tanto, DASH se puede utilizar con cualquier protocolo, por ejemplo, DASH sobre CCN . [19]

El 27 de julio de 2015, MPEG LA anunció una convocatoria de patentes relacionadas con MPEG-DASH con el fin de crear un único fondo de patentes para esta tecnología. [20] MPEG LA anunció su licencia de cartera de patentes MPEG-DASH. MPEG-LA afirma que las patentes incluidas son esenciales para el estándar MPEG Dynamic Adaptive Streaming over HTTP. [21]

Implementaciones

MPEG-DASH está disponible de forma nativa en Android a través de ExoPlayer, [22] en Samsung Smart TVs 2012+, LG Smart TV 2012+, Sony TV 2012+, Philips NetTV 4.1+, Panasonic Viera 2013+ y Chromecast. [23] YouTube y Netflix ya son compatibles con MPEG-DASH, y hay diferentes reproductores MPEG-DASH disponibles. [24]

Si bien MPEG-DASH no es compatible directamente con HTML5, existen implementaciones de JavaScript de MPEG-DASH que permiten usar MPEG-DASH en navegadores web mediante las extensiones de fuente de medios HTML5 (MSE). [25] También existen implementaciones de JavaScript como el reproductor bitdash [26] que admiten DRM para MPEG-DASH mediante las extensiones de medios encriptados HTML5 . [27] En combinación con WebGL, la transmisión de tasa de bits adaptativa basada en HTML5 de MPEG-DASH también permite la transmisión eficiente de video de 360° para casos de uso en vivo y bajo demanda. [28]

Clientes y bibliotecas

Servidores

Tenga en cuenta que no se requiere soporte específico del servidor para el contenido DASH, con la excepción de la transmisión en vivo.

Servicios

Generadores de contenido

Otro

Jugadores y servidores compatibles

Clientela

Windows 10 solía tener soporte nativo para la transmisión DASH en EdgeHTML , un motor de navegador propietario que se usaba en Microsoft Edge (ahora conocido como Edge Legacy) antes de la transición al motor de navegador Blink basado en Chromium . Edge Legacy se incluyó en Windows 10 hasta la versión 2004. Fue reemplazado por Edge Chromium en la versión 20H2.

La compatibilidad de DASH con otros navegadores y sistemas operativos está disponible a través de Media Source Extensions .

Titulares de patentes

Referencias

  1. ^ "Transmisión adaptativa DASH para vídeo HTML 5" . Consultado el 11 de julio de 2024 .
  2. ^ Chen, Songqing; Shen, Bo; Tan, Wai-tian; Wee, Susie; Zhang, Xiaodong (9 de julio de 2006). "Un caso para la transmisión por Internet a través de servidores web". Conferencia internacional IEEE sobre multimedia y exposiciones de 2006. págs. 2145–2148. doi :10.1109/ICME.2006.262660. eISSN  1945-788X. ISBN 1-4244-0367-7. ISSN  1945-7871. S2CID  9202042.
  3. ^ Chen, Songqing; Shen, Bo; Wee, Susie; Zhang, Xiaodong (23 de julio de 2007). "SProxy: una infraestructura de almacenamiento en caché para soportar la transmisión por Internet". IEEE Transactions on Multimedia . 9 (5): 1062–1072. CiteSeerX 10.1.1.74.4838 . doi :10.1109/TMM.2007.898943. ISSN  1520-9210. S2CID  870854. 
  4. ^ "Lógica ABR". GitHub .
  5. ^ ab "De la teoría a la práctica: mejora de la adaptación de la tasa de bits en el reproductor de referencia DASH, por Spiteri, Sitaraman y Sparacio, Conferencia de sistemas multimedia de la ACM, junio de 2018" (PDF) .
  6. ^ "Página de destino del cliente de referencia de JavaScript dash.js". reference.dashif.org . Consultado el 28 de agosto de 2020 .
  7. ^ Spiteri, Kevin; Urgaonkar, Rahul; Sitaraman, Ramesh K. (2020). "BOLA: adaptación de la tasa de bits casi óptima para vídeos en línea". Transacciones IEEE/ACM en redes . 28 (4): 1698-1711. arXiv : 1601.06748 . doi :10.1109/TNET.2020.2996964. S2CID  219792107.
  8. ^ ab "MPEG ratifica su borrador de estándar para DASH". MPEG. 2011-12-02. Archivado desde el original el 2012-08-20 . Consultado el 2012-08-26 .
  9. ^ "MPEG-DASH frente a Apple HLS frente a Microsoft Smooth Streaming frente a Adobe HDS". 29 de marzo de 2015. Consultado el 3 de junio de 2016 .
  10. ^ "ISO/IEC 23009-1:2012". ISO .
  11. ^ ab ETSI 3GPP 3GPP TS 26.247; Servicio de transmisión por conmutación de paquetes de extremo a extremo transparente (PSS); Descarga progresiva y transmisión adaptativa dinámica sobre HTTP (3GP-DASH)
  12. ^ Especificación de la solución del Foro Open IPTV Volumen 2a: HTTP Adaptive Streaming V2.1 Archivado el 9 de octubre de 2011 en Wayback Machine
  13. ^ "Foro de la industria DASH | Catalizando la adopción de MPEG-DASH". dashif.org .
  14. ^ "Especificación 1.5 de HbbTV" (PDF) . Archivado desde el original (PDF) el 3 de julio de 2014.
  15. ^ "Tecnologías | MPEG". mpeg.chiariglione.org .
  16. ^ Transmisión dinámica adaptativa 3GPP sobre HTTP: estándares y principios de diseño Archivado el 5 de agosto de 2016 en Wayback Machine por T. Stockhammer
  17. ^ "Hacia la equidad de la calidad de experiencia en toda la red mediante la transmisión de vídeo adaptativa asistida por OpenFlow". scholar.google.com .
  18. ^ Bentaleb, Abdelhak; Taani, Bayán; Begen, Ali C.; Timmerer, cristiano; Zimmermann, Roger (21 de enero de 2019). "Una encuesta sobre esquemas de adaptación de la velocidad de bits para la transmisión de medios a través de HTTP". Encuestas y tutoriales de comunicaciones IEEE . 21 (1): 562–585. doi : 10.1109/COMST.2018.2862938 . S2CID  67867085.
  19. ^ "DASH sobre ICN/CCN | ITEC – Transmisión dinámica adaptativa sobre HTTP".
  20. ^ "MPEG LA anuncia convocatoria de patentes para organizar licencia conjunta para MPEG-DASH" (PDF) . Archivado desde el original (PDF) el 7 de agosto de 2015.
  21. ^ "Resumen informativo sobre la licencia de la cartera de patentes de DASH*" (PDF) . MPEG LA . 2019-03-04 . Consultado el 10 de julio de 2019 .
  22. ^ "ExoPlayer". Desarrolladores de Android . Consultado el 7 de diciembre de 2021 .
  23. ^ Compatibilidad del dispositivo
  24. ^ El estado actual del formato MPEG-DASH y por qué YouTube y Netflix lo utilizan en HTML5
  25. ^ Extensiones de fuentes multimedia HTML5
  26. ^ "SDK de reproductor de video para una visualización perfecta | Reproductor HTML5". bitmovin.com . Archivado desde el original el 3 de julio de 2015.
  27. ^ "Extensiones de medios cifrados". w3c.github.io .
  28. ^ "Esta demostración muestra el Bitmovin Player mostrando un video de 360° con VR". bitmovin.com .
  29. ^ abc Vijayanagar, Krishna Rao (3 de junio de 2021). "Los 13 mejores reproductores de video HTML5 para la Web analizados [2021]". OTTVerse . Consultado el 7 de diciembre de 2021 .
  30. ^ abc "clappr dash.js hls.js rx-player shaka-player videojs-contrib-hls". npm trends.com . Consultado el 7 de diciembre de 2021 .
  31. ^ Zhang, Bo; Teixeira, Thiago; Reznik, Yuriy (24 de junio de 2021). "Rendimiento de reproductores de streaming basados ​​en HTTP de baja latencia". Actas de la 12ª Conferencia de sistemas multimedia ACM . págs. 356–362. doi : 10.1145/3458305.3478442 . ISBN 9781450384346.S2CID237596948  .​
  32. ^ Cimpanu, Catalin (24 de agosto de 2015). «Conoce Shaka Player, el reproductor de vídeo HTML5 de Google para condiciones de ancho de banda reducido». Softpedia . Consultado el 13 de agosto de 2016 .
  33. ^ "El mejor reproductor de vídeo HTML5: comparación de 12 reproductores". Cloudinary . 28 de junio de 2020 . Consultado el 7 de diciembre de 2021 .
  34. ^ abc DASH en ITEC, complemento VLC, DASHEncoder y conjunto de datos de C. Mueller, S. Lederer, C. Timmerer
  35. ^ "C. Müller y C. Timmerer, "Un complemento de VLC Media Player que permite la transmisión dinámica adaptativa a través de HTTP", en Actas de ACM Multimedia 2011, Scottsdale, Arizona, 28 de noviembre de 2011" (PDF) .
  36. ^ "Características de VLC 3.0". Archivado desde el original el 2020-07-30 . Consultado el 2015-02-13 .
  37. ^ "Transmisión adaptativa HTTP con GStreamer – coaxion.net – blog de slomo".
  38. ^ libdash: biblioteca de cliente DASH de código abierto de bitmovin Gmbh
  39. ^ "SDK de reproductor de vídeo para una visualización perfecta | Reproductor HTML5". bitmovin.com .
  40. ^ "Transmita MPEG-DASH a través de HTTP con Wowza Streaming Engine". Wowza Media Systems .
  41. ^ "DASH Streaming y listas de reproducción". Archivado desde el original el 2017-08-31 . Consultado el 2016-07-05 .
  42. ^ "Transmisión de MPEG-DASH a través de Nimble Streamer - Softvelum". wmspanel.com .
  43. ^ "Netview y el streaming unificado DASH". Revista Streaming Media .
  44. ^ "Ficha técnica de la USP". Archivado desde el original el 21 de abril de 2015. Consultado el 17 de abril de 2015 .
  45. ^ Akamai anuncia compatibilidad nativa con MPEG-DASH y HDS para flujos de trabajo de video en vivo
  46. ^ "Amazon Elastic Transcoder ahora es compatible con MPEG-DASH". Amazon Web Services, Inc. Consultado el 3 de junio de 2016 .
  47. ^ "Referencias y recursos sobre MPEG-DASH y streaming". 3 de marzo de 2016.
  48. ^ "Formatos admitidos por bitcodin.com". Archivado desde el original el 28 de marzo de 2016. Consultado el 4 de mayo de 2015 .
  49. ^ "Ofrezca HLS y MPEG-DASH con el reproductor de video de Cloudinary | Cloudinary". cloudinary.com .
  50. ^ "Transmisión de ingeniería: FM y en línea". Insanity Radio Tech . 26 de julio de 2017. Consultado el 7 de diciembre de 2021 .
  51. ^ ab "S. Lederer, C. Mueller y C. Timmerer, "Transmisión dinámica adaptativa sobre conjunto de datos HTTP", en Actas de la Conferencia de sistemas multimedia ACM 2012, Chapel Hill, Carolina del Norte, 22-24 de febrero de 2012" (PDF) .
  52. ^ ab "Fragmentación, segmentación, división y entrelazado · gpac/gpac Wiki". GitHub .
  53. ^ "DashCast | GPAC".
  54. ^ "Media Goom. Transmisión web adaptativa esencial con MPEG-DASH y HLS". Archivado desde el original el 18 de enero de 2017.
  55. ^ "Introducción a Bento4". www.bento4.com .
  56. ^ Descripción general del conjunto de datos MPEG DASH
  57. ^ "Conjunto de datos DASH distribuido | ITEC – Transmisión dinámica adaptativa a través de HTTP".
  58. ^ "MPEG DASH Test Suite". Archivado desde el original el 7 de marzo de 2014. Consultado el 22 de noviembre de 2013 .
  59. ^ "Transmisiones de prueba de MPEG DASH". BBC R&D . 9 de septiembre de 2013.
  60. ^ "La guía completa de Widevine". encoding.com. Archivado desde el original el 29 de diciembre de 2021. Consultado el 11 de enero de 2018 .
  61. ^ "Solución de análisis y monitoreo de MPEG-DASH". mividi.com . Consultado el 15 de septiembre de 2019 .
  62. ^ "Transmisión de video adaptativa simplificada: anuncio de compatibilidad con HLS y DASH en Windows 10". learn.microsoft.com . 29 de enero de 2015.
  63. ^ "Transmisión dinámica adaptativa sobre HTTP (MPEG-DASH) | ¿Puedo utilizar... Tablas de soporte para HTML5, CSS3, etc." caniuse.com .
  64. ^ "Historial de versiones de MPC-BE - VideoHelp".
  65. ^ "Lista de patentes DASH" (PDF) . MPEG LA . Consultado el 10 de julio de 2019 .

Enlaces externos