El contenido avanzado proporciona interactividad en el formato de disco óptico HD DVD .
Advanced Content se utiliza para proporcionar menús interactivos y "características especiales" como contenido adicional extra y juegos para HD DVD (uno de los formatos de vídeo de alta definición ). El motor de ejecución de Advanced Content es responsable de responder a la entrada de navegación del usuario (por ejemplo, desde un control remoto), así como a los eventos que se configuran para que ocurran durante la reproducción de una película, controlando todas las acciones y propiedades interactivas durante la reproducción de una película. La especificación Advanced Content fue desarrollada por Microsoft y Disney con el aporte de otros miembros del DVD Forum, incluidos Toshiba y Sonic Solutions . Advanced Content también permite el acceso a la red para descargar contenido adicional y el acceso al almacenamiento persistente que se utiliza para almacenar marcadores y otra información de estado.
La capacidad de reproducir contenido avanzado es una parte obligatoria de la especificación HD DVD-Video. Sus características fueron definidas por los proveedores de contenido (específicamente Disney y Warner Bros. ) en función de los escenarios que requerían para un formato de disco de próxima generación . [1] [2]
La implementación más popular de Contenido Avanzado (que se ejecuta tanto en los reproductores Toshiba HD DVD como en el complemento Microsoft Xbox 360) es HDi de Microsoft . [3]
El formato rival Blu-ray no utiliza contenido avanzado, sino BD-J .
El contenido avanzado se escribe utilizando el lenguaje declarativo XML y el lenguaje imperativo ECMAScript . Las aplicaciones de contenido avanzado son muy similares en estructura a las aplicaciones AJAX en la web, utilizando una combinación de script y marcado en un modelo de ejecución asincrónica. Se crea una "página" utilizando marcado y se puede modificar con el tiempo en función de la entrada del usuario, la progresión de la película, etc. Se puede cargar una nueva "página" según sea necesario (por ejemplo, al cambiar a una parte diferente de la aplicación) y el proceso comienza de nuevo. [4]
Advanced Content incluye una gramática de elementos XML basada en HTML para contenido como imágenes, botones, texto, etc.; una gramática de atributos XML basada en CSS y XSL para describir el diseño, el color, los tipos de fuente, etc.; y una gramática de elementos y atributos basada en SMIL para el tiempo, la animación, los eventos y la sincronización. Si bien es posible escribir páginas complejas e interactivas utilizando únicamente el dialecto XML declarativo, cualquier interacción con el reproductor en sí (por ejemplo, para cambiar el idioma del audio o saltar a un nuevo título) requiere código imperativo escrito en ECMAScript.
Para soportar el código ECMAScript, Advanced Content define una gran cantidad de objetos, propiedades y métodos (" API ") que son análogos al DOM en un navegador web; estas API permiten que el script consulte y controle el reproductor, anime la página de marcado, responda a eventos del usuario y se conecte a Internet para descargar contenido nuevo, como avances, biografías del elenco y el equipo, u otra información.
HDi (anteriormente iHD [5] ) es la implementación de Microsoft [6] de la capa de interactividad de contenido avanzado en HD DVD . [7] Se utiliza en el complemento HD DVD de Xbox 360, así como en reproductores HD DVD independientes. [7]
Las aplicaciones escritas para HDi se escriben utilizando el dialecto XML y ECMAScript, el último de los cuales es procesado por el motor JScript cuando se ejecuta en plataformas Microsoft Windows. El entorno de ejecución de HDi expone las API definidas por el estándar de contenido avanzado. Proporciona solo un modelo de programación de un solo subproceso, aunque ciertas operaciones (como el acceso a la red y al almacenamiento persistente) se ejecutan como operaciones asincrónicas. [8]
Una película HD DVD , incluida la funcionalidad interactiva, se presenta como una aplicación de contenido avanzado, que se ejecuta y renderiza mediante el entorno de ejecución de HDi. La aplicación de contenido avanzado consta de los archivos de lista de reproducción.xpl
( ), subtítulos ( .xas
), archivos de marcado ( .xmu
) y scripts ( .js
) además del vídeo propiamente dicho, en una estructura de directorio definida. El entorno de ejecución de HDi analiza el marcado y los scripts para ejecutar la acción. La reproducción del vídeo, junto con su integración con el resto del sistema de navegación, se inicia y controla mediante un código de script.
El entorno de ejecución de HDi es responsable de la ejecución y la representación final de la aplicación de navegación y reproducción de películas. El marcado se analiza en un Modelo de objetos de documento , que permite que el código ECMAScript controle y modifique el diseño de la interfaz de usuario durante la ejecución. Al alterar dinámicamente el diseño de los widgets de la interfaz de usuario, se logran las animaciones y la interactividad. El DOM y las API asociadas se utilizan para habilitar otros escenarios, como pausar la reproducción y reemplazarla con la interfaz de navegación, o buscar un área determinada en la película (usada para la búsqueda manual o la búsqueda de marcadores). Para la pila de representación, presenta seis planos (que son contenedores para gráficos) que se colocan en capas uno frente al otro. La imagen final que se muestra es la composición de las imágenes de los planos individuales. El entorno de ejecución de HDi maneja la composición de los planos en la imagen final. Estas capas de representación, de atrás hacia adelante, son:
Microsoft no proporciona herramientas de diseño para el desarrollo de aplicaciones HDi, aunque terceros han puesto a disposición dichas herramientas. Debido a que los componentes utilizados por Advanced Content (y HDi) - XML , XSL-FO , XPath , ECMAScript - son ampliamente utilizados, cualquier herramienta de desarrollo que los admita puede utilizarse para desarrollar aplicaciones HDi. Sin embargo, Microsoft ha puesto a disposición un simulador HDi como descarga gratuita, como parte del HD DVD Interactivity Jumpstart Kit, para permitir a los usuarios crear y depurar contenido HDi en equipos que ejecuten Windows XP , aunque no está pensado como una herramienta de creación completa ni como un dispositivo de reproducción.
HDi no se limita intrínsecamente a su uso en medios ópticos; puede utilizarse en medios distribuidos o transmitidos por Internet o cualquier otra red. De hecho, el 4 de octubre de 2007, Toshiba y Microsoft anunciaron la creación del Consorcio de Interactividad Avanzada (AIC) para "extender y promover experiencias interactivas más allá de los medios ópticos a nuevas plataformas". [9]
El Consorcio de Interactividad Avanzada (AIC) iba a ser un foro abierto diseñado para ampliar las capacidades interactivas de contenido avanzado del HD DVD a nuevos dispositivos y mecanismos de distribución. Fue anunciado conjuntamente por Toshiba y Microsoft el 4 de octubre de 2007 [10] pero nunca se implementó. Las empresas incluidas en el anuncio fueron:
Algunos ejemplos de contenido avanzado en HD DVD son: