DVDs-Vídeo interactivos con DVD Studio Pro, por Javier Hernanz

DVD_Studio_Pro_Icon.png¿Alguna vez os habéis preguntado hasta dónde se puede utilizar la potencia de un reproductor de DVD para, por ejemplo, hacer juegos interactivos en DVD-Vídeo? A diferencia de los antiguos reproductores de VHS, los reproductores de DVDs de vídeo son sistemas interactivos de entretenimiento que tienen todo un mundo de posibilidades. Cada reproductor de DVD contiene en su interior un pequeño ordenador capaz de procesar instrucciones diversas para ofrecer una interfaz al usuario más dinámica e interesante. Aunque no estamos hablando de un ordenador muy sofisticado (tenía que ser barato y formar un estándar hace ya años), y es imposible realizar determinados juegos para DVD-Vídeo, lo cierto es que con imaginación y trabajo se pueden conseguir resultados muy interesantes. Hace unos años visité una sucursal en Burbank (California, EEUU) de la multinacional en la que trabajaba por entonces y en el departamento de creación de DVDs tenían una pared completa (varios metros cuadrados) adornada con el diagrama de relaciones que habían utilizado para hacer un DVD interactivo de Disney. La letra más grande no superaba los 2mm y había decenas de elementos y cientos de relaciones entre ellos –realmente tenían motivos para sentirse orgullosos de su trabajo-. En este artículo pretendemos acercaros un poco más a ese maravilloso y desconocido mundo de la creación de DVDs interactivos.

DVD Studio Pro (DVDSP) es uno de los programas de autoría con más solera en cuanto a creación de contenidos interactivos en DVD-Vídeo. Desde el principio se pensó como una herramienta profesional tanto en prestaciones como en rendimiento, y eso se nota, por ejemplo, en las posibilidades de scripting que ofrece. Existen empresas que se dedican a desarrollar comercialmente scripts para DVDSP, como all4DVD, y cuyos scripts son, por ejemplo:

  • Crear una lista de reproducción programable
  • Resaltar el último botón utilizado antes de una reproducción
  • Elegir una transición al azar desde un menú
  • Protección por contraseña
  • Bucles sobre menús (reproducir X veces un menú y pasar a reproducir un clip aleatorio antes de volver al menú)
  • Reproducir todas las pistas del DVD
  • Seleccionar como idioma por defecto el del reproductor
  • Pero vamos paso a paso. Antes de empezar a trabajar con DVD Studio Pro debemos entender básicamente cómo funciona un reproductor de DVD-Vídeo. Internamente cada reproductor dispone de un microcontrolador capaz de ejecutar una serie de funciones estándares. Un microcontrolador es, sin entrar en detalles, un ordenador completo en un chip: tiene su microprocesador, una pequeña memoria ROM (o Flash) con la programación y una RAM de, como mucho, unos pocos KB. Derivadas del uso de microcontroladores surgen las tres “dificultades” más importantes que hay que enfrentar para poder crear contenidos interactivos:

  • La poca memoria RAM se gestionará en forma de “Registros”, en cantidad limitada y con restricciones de uso. Ejemplos:
    • un script no puede tener más de 124 comandos
    • hay sólo 8 registros de 16 bits para el usuario (también llamados GPRM, General Purpose Register Memory, o variables)
    • hay otros 24 registros predefinidos con funciones muy concretas conocidos como SPRM (System Parameter Register Memory)
  • El programa del microcontrolador será capaz de interpretar una serie reducida de funciones más o menos básicas que resultan inalterables para mantener la compatibilidad entre reproductores (no han evolucionado en años en un entorno tan volátil como el informático). Por ejemplo: en DVD Studio Pro se tienen sólo 11 comandos diferentes.
  • No hay un lenguaje de alto nivel para controlar la interactividad del DVD, aunque DVD Studio Pro lo simplifique bastante poniendo de manera clara y sencilla todas las funciones con sus posibilidades y restricciones.
  • Estas tres limitaciones, junto al hecho de que no pueda haber más de 99 títulos en un DVD, hacen que escribir scripts para DVDs no sea algo trivial (ni excesivamente potente), pero como veremos no le quita cierto interés.

    Como la mejor forma de aprender es experimentando, vamos a seguir explicando los siguientes conceptos mientras jugamos un poco con DVD Studio Pro. Para ello vamos a abrir un nuevo proyecto en blanco.

    Interfaz-DVDSP.jpg

    add_script_DVDSP.pngInicialmente dispondremos de un menú y una pista, pero lo que nos interesa ahora son los scripts. Así que pulsando el botón “Add Script” va a dar comienzo nuestro rápido tour.

    Aparecerá un nuevo elemento (Script 1) sobre el que podemos hacer doble clic para mostrar su correspondiente script. En realidad este doble clic lo que hace es dirigirnos automáticamente a la pestaña de “Script” junto a su panel.

    Interfaz-DVDSP_2.jpg

    Interfaz-DVDSP_3.jpg

    Bajo la pestaña de Script se ve nuestro programa actual: un sólo comando NOP (NO OPERATION, o lo que es lo mismo, NO HACER NADA). Si seleccionamos el comando NOP veremos que el panel cambia y nos muestra otras posibilidades.

    Interfaz-DVDSP_4.jpg

    En el desplegable podemos de manera intuitiva seleccionar qué comandos queremos que se ejecuten. Si lo abrís veréis que no hay muchas posibilidades:

    Interfaz-DVDSP_5.jpg

  • NOP: No hacer nada
  • JUMP: Pasar a un elemento (menú, pista, script o slideshow)
  • Set GPRM: Asignar un valor a un registro
  • Goto: Saltar a una línea concreta del script
  • Set System Stream: Hacer que el sistema utilice un elemento concreto (de audio, subtítulos o ángulos de cámara disponibles)
  • Resume: Continuar la ejecución del script
  • GPRM Mode: Hacer que un determinado registro funcione de una manera concreta
  • Exit: Salir del script
  • Exit Pre-Script: Salir del script “padre”
  • Jump Indirecto: Salto relativo al contenido de un registro
  • Para poder jugar con todos estos comandos es importante saber qué se puede hacer y con qué elementos. Aquí, resulta fundamental la referencia que nos ofrece Apple en el manual de DVDSP para la utilización de registros de sistema (SPRM). Evidentemente si queréis desarrollar algo necesitaréis conocer esta referencia con detalle, pero puesto que este es sólo un artículo introductorio vamos a enumerar y describir muy brevemente cada registro, de tal manera que se pueda adquirir una visión general de qué tipo de cosas se pueden controlar desde un script de DVDSP:

  • SPRM 0: Descripción del idioma de los menús
  • SPRM 1: Pista de audio activa
  • SPRM 2: Pista de subtítulos activa
  • SPRM 3: Ángulo de cámara activo
  • SPRM 4: Título en reproducción
  • SPRM 5: Número de título en el VTS (Video Title Set) activo
  • SPRM 6: Número de título PGC (Program Group Chain) activo
  • SPRM 7: Capítulo en reproducción de la pista activa
  • SPRM 8: Botón seleccionado
  • SPRM 9: Temporizador de reproducción (NO SE USA EN SCRIPTS)
  • SPRM 10: Destino del temporizador (NO SE USA EN SCRIPTS)
  • SPRM 11: Si el DVD posee capacidades de karaoke indica el cómo se mezcla de audio
  • SPRM 12: Código de país para control parental
  • SPRM 13: Nivel de control parental activo
  • SPRM 14: Configuración del reproductor para vídeo (formato, zoom, etc)
  • SPRM 15: Configuración del reproductor para audio (AC3, PCM, MPEG…). También sirve para determinar si el reproductor tiene funciones de karaoke
  • SPRM 16: Idioma inicial para el audio
  • SPRM 17: Extras para el audio (complementa al anterior)
  • SPRM 18: Idioma inicial para los subtítulos
  • SPRM 19: Extras para los subtítulos (complementa al anterior)
  • SPRM 20: Código de región del reproductor
  • SPRM 21: Uso reservado
  • SPRM 22: Uso reservado para reproducción extendida
  • SPRM 23: Uso reservado
  • Los registros 0, 12, 14, 15, 16, 17, 18, 19 y 20 sólo se pueden leer, por lo que si os hace falta actuar sobre alguno de estos parámetros podéis utilizar los registros generales con vuestros propios valores y desde otros scripts consultarlos y/o modificarlos según os convenga.

    Si os fijáis en el listado de registros es muy fácil determinar cuál es el idioma fijado en el reproductor de DVD para automaticamente saltar a las pistas con el mismo idioma en el DVD. Es sencillo consultar el último botón seleccionado, por lo que tampoco es especialmente difícil crear una máquina de estados capaz de, por ejemplo, responder a una combinación secreta (como la del script que vende all4DVD). El truco está en saber administrar los pocos registros de uso general que tenemos disponibles.

    Para poder aprovechar correctamente los 128 bits de memoria de uso general que tiene un DVD hay que ser especialmente cuidadoso. Si habéis trabajado anteriormente con microcontroladores probablemente no os resulte difícil (como ya dije es habitual cuando se tratan este tipo de sistemas), pero si no sois de los que han jugueteado con el ensamblador y los microcontroladores aquí os dejo unas pocas recomendaciones:

  • antes de nada tened MUY clara la información que necesitáis conocer y manipular
  • optimizad cuanto podáis el código y el uso de memoria, si se puede hacer con un solo registro mejor que con más y si dicho registro puede ser de 1 bit mejor que si es de 2
  • sed claros y organizados. Mantener una pequeña documentación nunca estará de más
  • DVDSP os permite aprovechar los registros haciendo particiones de ellos de 1, 2, 4, 8 y 16 “fragmentos” y además nombrarlas como queráis, de manera que utilizad nombres significativos que os simplifiquen la identificación de variables y de su importancia. Los registros se pueden utilizar desde distintos scripts del mismo DVD, así que son una importante herramienta de comunicación entre scripts (serían algo así como “funciones”, “subrutinas” o similares en otros niveles de programación)
  • prestad atención a no manipular desde un script registros que puedan ser utilizados por otro script y se puedan “malinterpretar”. La secuencia de DVD puede variar y la debéis controlar
  • si necesitáis crear un script demasiado largo aprovechad lo dicho en el punto anterior para segmentarlo adecudamente y saltar de un script a otro como os convenga
  • Aplicaciones y juegos en DVD

    Como podréis suponer por lo que habéis visto hasta ahora, en este artículo y en vuestros propios DVDs, la complejidad de las aplicaciones que se pueden crear para un reproductor de DVD video es tremendamente baja. Sin embargo, aun así, existe un pequeño nicho de posibilidades.

    Los pasos y las claves para crear una aplicación en DVD se resumen:

    1. Diseñar bien todas las características, teniendo en cuenta las limitaciones del DVD en cuanto a contenido e interactividad
    2. Pensar en menús cuando haya que responder a eventos del usuario (salvo que sean saltos de cámara)
    3. Pensar en videos para todos aquellos pasos intermedios entre menús y para mantener la atención mientras se muestren los menús.

    Un ejemplo de DVD interactivo

    Imaginemos un proyecto para crear un DVD para una película de intriga y detectives. Imaginemos, por ejemplo, que la película principal se ha tratado desde un punto de vista tipo “CSI”, en el que alguien mediante pruebas científicas tiene que descubrir qué pasó. La película podría llegar a una conclusión, pero durante el rodaje se grabaron varios finales. Para hacer el DVD más interesante se invita al espectador a ir realizando pruebas de manera interactiva de tal modo que, él mismo, pueda llegar a los distintos finales en función de cómo “juegue” con las pruebas. Evidentemente el resultado de la interactividad dependerá de qué material se tenga y con qué nivel de complejidad se quiera guiar al usuario. En nuestro caso vamos a pensar en el proyecto de manera sencilla para ilustrar los conceptos, ya que ésto es sólo un ejercicio de imaginación –¡ojalá tuviésemos material para hacer algo así de verdad! ¿algún lector se anima a grabar unos pocos vídeos para llevarlo a cabo?—

    Arbol-DVD.jpg

    Esquemáticamente nuestro ejemplo será el de la imagen, que explicado con palabras, podría ser algo así como:

    0. Empezar a reproducir la película hasta el momento en el cual se requiere que el espectador “juegue” para seleccionar un final

    1. Mostrar un menú animado con el laboratorio delante, y zonas sensibles en función de las pruebas. Aquí habrá tres tipos de pruebas

      1.1. Prueba química. Lanza un vídeo de cómo se realizaa la prueba y al terminar sitúa al espectador en el menú 2.1

      1.2. Prueba física. Lanza un vídeo de cómo se realiza la prueba y al terminar sitúa al espectador en el menú 2.2

      1.3. Meter la pata. La tercera opción lanza un vídeo en el cual se vé cómo el protagonista mete la pata con una prueba incorrecta y remata con el vídeo definitivo “FIN: Torpe destruye pruebas”

    2. Estamos en un nivel más. Aquí, dependiendo de lo que hayamos hecho en el menú anterior tendremos un par de posibilidades:

      2.1. La prueba química concluye y se nos ofrece la posibilidad de relacionarla con los sospechosos. En función de si se relacionan bien o mal se desencadenarán una serie de vídeos que llevarán al malo a la cárcel o a un inocente en su lugar.

      2.2. La prueba física no da muchos resultados y se ofrece la posibilidad de:

      2.2.1. Hacer la prueba química (saltando al menú 1.1)

      2.2.2. Hacer otra prueba completamente inútil que nos dejará en el punto en el que estamos (menú 2.2)

      2.2.3. Repetir la prueba física y desencadenar una serie de vídeos que muestran cómo se ha tomado la elección incorrecta, se pierden las pruebas y se llega al final “FIN: Torpe destruye pruebas”

    Evidentemente este podría ser un punto interesante como partida. Después, se pueden añadir pruebas, vídeos, relaciones y scripts que hagan la cosa más interesante. Pero eso lo dejamos en vuestras manos… ¿quién se atreve a intentarlo y hacernos llegar su versión? 😉 Descarga el archivo de muestra DVDStudio_pro_Misterio_FAQ-MAC.zip

    Conclusión

    DVD Studio Pro es una potente, aunque sencilla, herramienta que permite crear DVDs profesionales de manera muy sencilla. Con capacidad para crear DVDs de alta definición, interactividad, simulación, etc.

    Sólo queda deciros una cosita: ¡DISFRUTAD con DVDSP! Sin duda, si le dedicáis un poco de tiempo y tenéis un poco de imaginación obtendréis resultados muy interesantes.

    0 0 votos
    Article Rating
    Subscribe
    Notify of
    3 Comments
    Oldest
    Newest Most Voted
    Opiniones Inline
    Ver todos los comentarios
    Anónimo
    Anónimo
    15 years ago

    ME gustaria conocer mas tús ejmplos… son muy buenos para los que estamos aprendiendo a manejar el DVD Studio PRO …

    Anónimo
    Anónimo
    14 years ago

    Ante todo saludos, quería ver si podrían darme una solución, he creado un DVD ROM, para un recordatorio de una escuela, así que tengo menus y todas las opciones que ofrece el programa, al hacer el dvd (BURN), me grava bien el dvd, pero el problema es que no me reproduce en equipos dvd para tv, y tampoco en PC, quería saver si la creación de dvd es standar para todos los equipos o solo para usuarios mac, he revisado algunos foros, pero no dan una solución.
    espero una respuesta
    gracias

    Anónimo
    Anónimo
    13 years ago

    ME PASA EXACTAMENTE LO MISMO!!!
    ¿QUE AGO??

    Problemas con DVD studio
    Enviado por expresionperu (usuario no verificado) el 8 Julio, 2009 – 22:10.
    Ante todo saludos, quería ver si podrían darme una solución, he creado un DVD ROM, para un recordatorio de una escuela, así que tengo menus y todas las opciones que ofrece el programa, al hacer el dvd (BURN), me grava bien el dvd, pero el problema es que no me reproduce en equipos dvd para tv, y tampoco en PC, quería saver si la creación de dvd es standar para todos los equipos o solo para usuarios mac, he revisado algunos foros, pero no dan una solución.
    espero una respuesta
    gracias

    3
    0
    Me encantaría saber tu opinión, por favor, deja un comentariox
    ()
    x