¿Qué es un archivo MPD?
Un archivo MPD es un manifiesto XML de descripción de presentación multimedia utilizado por MPEG-DASH. Describe las variantes disponibles, las ubicaciones de los segmentos, la temporización y la información necesaria para la reproducción adaptativa.
Cómo funcionan los archivos MPD
Un MPD es el documento de control de una presentación DASH. No contiene datos multimedia: es un XML que hace referencia a segmentos de inicialización y multimedia almacenados en otra ubicación, y se sirve con el tipo de medio application/dash+xml. Sus elementos organizan la presentación en períodos consecutivos, conjuntos de adaptación y variantes individuales, y expresan la temporización, el direccionamiento de segmentos y los metadatos de selección. Un cliente combina esa descripción con mediciones de red y restricciones de reproducción para elegir una variante y solicitar sus segmentos. Para el contenido bajo demanda, el documento se escribe una sola vez; para un servicio en directo, el empaquetador puede volver a publicarlo a medida que aparecen segmentos nuevos, y el propio documento indica a los clientes si deben obtenerlo de nuevo y cuándo.
Datos clave
- Un MPD anida
Period,AdaptationSetyRepresentation. Un período es un intervalo de la línea de tiempo de la presentación, y las variantes de un mismo conjunto de adaptación son distintas codificaciones del mismo contenido entre las que un cliente puede alternar. CadaRepresentationdebe declarar unbandwidth, que es el valor que los clientes comparan con la tasa de transferencia medida. - Los segmentos se direccionan mediante
SegmentBase,SegmentListoSegmentTemplate. UnSegmentTemplatecon unSegmentTimelinedefine el inicio y la duración exactos de cada segmento, expresados de forma compacta como entradasScon una duración, un tiempo de inicio opcional y un número de repeticiones, mientras que una plantilla que solo incluyedurationindica un promedio, por lo que los tiempos reales de los segmentos pueden diferir de las posiciones calculadas. Las directrices de interoperabilidad de DASH-IF definen modos de direccionamiento únicamente conSegmentBaseySegmentTemplatey prohíben los demás, por lo que excluyenSegmentList. Recomiendan esa forma basada en una línea de tiempo para el contenido generado sobre la marcha, y esa misma forma oSegmentBasecon un segmento de índice para el contenido preparado de antemano. También exigen un solo modo de direccionamiento por conjunto de adaptación y referencias a segmentos sin huecos ni superposiciones. - El atributo
typetiene el valor predeterminadostatic. En un MPDdynamic, la línea de tiempo se vincula a la hora del reloj medianteavailabilityStartTime, por lo que los segmentos pasan a estar disponibles a medida que transcurre el tiempo; si se establecetimeShiftBufferDepth, los segmentos más antiguos también salen de una ventana móvil de disponibilidad. Los relojes del cliente y del servicio deben estar sincronizados: las directrices de DASH-IF exigen que un MPD dinámico contenga al menos un elementoUTCTiming, porque un cliente con el reloj desajustado solicita segmentos que todavía no están disponibles o que ya no lo están. minimumUpdatePeriodinforma a los clientes sobre la actualización: si no está presente, el MPD nunca cambiará; un valor distinto de cero indica cuánto tiempo sigue siendo válida una instantánea descargada, y cero significa que un cliente debe obtener un nuevo MPD cada vez que quiera segmentos más recientes. Los clientes que procesan los eventos opcionales de validez del MPD en banda los utilizan para determinar la validez de la instantánea en lugar de un valor distinto de cero o igual a cero. La validez se cuenta desde que el cliente inicia la descarga, no desde la publicación, por lo que una copia que haya permanecido en la caché de una CDN sigue siendo válida durante todo el período después de obtenerla. Por tanto, el almacenamiento en caché prolonga el tiempo durante el que se utilizan instantáneas antiguas: al determinar qué segmentos puede eliminar un servicio en vivo, DASH-IF suma el retraso hasta que un nuevo MPD llega a los clientes en el borde de la CDN.
Cuándo son importantes los archivos MPD
Todo paquete MPEG-DASH requiere un MPD, incluso si ofrece una sola variante; DASH suele elegirse cuando los clientes deben seleccionar entre variantes de tasa de bits, resolución, idioma o accesibilidad. Las líneas de tiempo o referencias a segmentos incorrectas pueden provocar interrupciones, pistas ausentes o fallos al cambiar de calidad.
Cómo ayuda Transloadit con los archivos MPD
El Robot /video/adaptive de Transloadit codifica video en formatos de streaming adaptativo y genera el manifiesto. Su parámetro technique tiene como valor predeterminado dash, en cuyo caso el manifiesto se escribe como playlist.mpd a menos que playlist_name indique lo contrario; con cmaf produce tanto un manifiesto MPEG-DASH como una lista de reproducción HLS que hacen referencia a los mismos segmentos fMP4.
Explora los formatos de archivo y las capacidades de compresión de Transloadit