stringtranslate.com

BD-J

BD-J , o Blu-ray Disc Java , es una especificación que admite Xlets de Java ME (específicamente el perfil de base personal de la configuración del dispositivo conectado o CDC) para contenido avanzado en discos Blu-ray y el perfil de medios empaquetados de MHP ejecutable globalmente (GEM).

BD-J permite contenido adicional más sofisticado en títulos de Blu-ray Disc que el DVD estándar , incluido el acceso a la red, imagen en imagen y acceso a almacenamiento local expandido . En conjunto, estas funciones (que no sean el acceso a Internet) se denominan " Bonus View " y la incorporación del acceso a Internet se denomina " BD Live ". BD-J fue desarrollado por la Blu-ray Disc Association . La especificación exige que todos los reproductores de Blu-ray Disc que admitan contenido de video sean compatibles con BD-J. [1] A partir del 31 de octubre de 2007, todos los reproductores nuevos deben tener soporte de hardware para las funciones "Bonus View", pero los reproductores pueden requerir futuras actualizaciones de firmware para habilitar las funciones mencionadas anteriormente. La compatibilidad con "BD Live" siempre es opcional para un reproductor de BD. [2]

La PlayStation 3 de Sony ha sido el líder de facto en cumplimiento y soporte de BD-J, agregando soporte para Blu-ray Profile 1.1 con una actualización de firmware utilizada para mostrar BD-Live en CES 2008.

Capacidades del BD-J Xlet

Desarrollo de contenidos

Los autores de contenido tienen a su disposición una variedad de estrategias de desarrollo, incluido el uso de entornos de desarrollo integrados (IDE) tradicionales como NetBeans o Eclipse , entornos gráficos que no requieren programación, como Macromedia Director, o mediante motores de renderización que consumen formatos de datos estándar como HTML, XML o SVG. Tener un entorno de programación completo disponible en cada reproductor de discos Blu-ray proporciona a los desarrolladores una plataforma para crear tipos de contenido que no están sujetos a las restricciones de los DVD estándar. Además de las API estándar de BD-J, los desarrolladores pueden utilizar bibliotecas y marcos de aplicaciones Java existentes, siempre que no utilicen funciones fuera de las limitaciones de la plataforma BD-J, incluido el hecho de que Java ME solo admite archivos de clase de la versión 1.3 de Java .

El HD Cookbook Project ofrece un conjunto de herramientas de libre acceso que permiten a los desarrolladores de Java producir imágenes de disco completas que incorporan BD-J. [3] Para probar el contenido en un entorno de desarrollo típico (MS Windows), se necesita una PlayStation 3 o un reproductor de software de terceros para Windows, prestando atención a las versiones del reproductor para asegurarse de que el reproductor sea compatible con BD-J. [4] [5] [6]

Debido a los muchos estándares y componentes diferentes involucrados, la creación de documentación unificada sobre BD-J ha demostrado ser un desafío. [7] [8]

Código de muestra

El entorno BD-J está diseñado para ejecutar Xlets con paquetes no disponibles para aprovechar las características particulares de esta plataforma más allá de las definidas por Java TV .javax.*

Incluso un ejemplo tan simple como FirstBDJApp. [9]

Un desarrollador podría optar por no utilizar paquetes y en su lugar utilizar:javax.*

  1. Clases HAVi en el árbol de paquetes : clases alternativas para obtener, por ejemplo, mucho más allá de lo que proporciona (ambas son extensiones de )org.havi.*org.havi.ui.HScenejavax.tv.graphics.TVContainerjava.awt.Container
  2. Clases de transmisión de video digital (DVB) en el árbol de paquetes : clases alternativas, por ejemplo, para la interfaz en lugar de para soporte de pulsaciones de teclas y códigos de teclas específicos de los dispositivos CDC más populares.org.dvb.*org.dvb.event.UserEventListenerjava.awt.event.KeyListener
  3. Clases de disco Blu-ray en el árbol de paquetes : las clases DAVIC y DVB dependen de reconocer eventos adicionales propios de la plataforma BD-J, como menús emergentes, y de localizar medios en el disco Blu-ray.org.bluray.*
  4. Clases de API de DAVIC en el árbol de paquetes : un pequeño conjunto de clases que envuelven o extienden otros recursos de red y multimedia peculiares de la TV interactiva que las clases HAVi, DVB y Blu-ray utilizan para localizadores y excepciones especializadas más allá del ámbito de JMF (como la autorización de contenido).org.davic.*

Un ejemplo práctico de un programa que utiliza algunas características de cada uno de los árboles de clases sería el Xlet BdjGunBunny (una versión muy simple de Space Invaders que utiliza una imagen de un conejo como tirador y tortugas como objetivos) proporcionado como ejemplo en el SDK de Java ME 3.0.

importar javax.tv.xlet.XletContext ; importar org.havi.ui.HScene ; importar org.havi.ui.HSceneFactory ;  importar java.awt.Container ; importar javax.tv.graphics.TVContainer ;  // Obtener un contenedor para la pantalla podría serpúblico void initXlet ( contexto XletContext ) {    // API de Java TV para que sea compatible con Java TV TVContainer scene = TVContainer . getRootContainer ( context );   // O para BD-J, para utilizar características de HAVi no disponibles en Java TV HScene scene = HSceneFactory . getInstance (). getDefaultHScene ();   // O quizás de forma más general... Contenedor contenedor = null ; boolean realBDJ = true ; if ( realBDJ ) contenedor = HSceneFactory . getInstance ( ). getDefaultHScene (); else contenedor = TVContainer . getRootContainer ( context ); ... }           

Y lo mismo ocurre con los demás paquetes que no son de la misma marca. Asimismo, al intentar reproducir un vídeo, se puede llamar a la utilidad Blu-ray y DAVIC en lugar de utilizar JMF genérico:javax.*

importar javax.media.Player ; importar org.bluray.net.BDLocator ; importar org.davic.media.MediaLocator ;    MediaLocator estrellas = new MediaLocator ( new BDLocator ( "bd://0.PLAYLIST:00003" )); Jugador jugador = Manager . createPlayer ( estrellas );         // En lugar del JMF puro tradicional y portátil pero más limitadoimportar java.net.URL ; importar javax.media.Manager ; importar javax.media.Player ;    Reproductor mediaPlayer = Manager . createRealizedPlayer ( new URL ( "file:/mymovie.mov" ));      

Publicación relacionada

Véase también

Referencias

  1. ^ "Desarrollo de aplicaciones Blu-ray BD-J con Java ME". Archivado desde el original el 11 de septiembre de 2008. Consultado el 21 de octubre de 2008 .
  2. ^ "Blu-ray Disc Assn. promueve nueva vista adicional".
  3. ^ [hdcookbook.jovial.com/ HDCookbook para BD-J]
  4. ^ "Notas y pautas de creación de discos Blu-ray Java y GEM/MHP/OCAP". Archivado desde el original el 24 de diciembre de 2008. Consultado el 21 de octubre de 2008 .
  5. ^ Obtención del software de reproducción de BD-J para PC Archivado el 24 de diciembre de 2008 en Wayback Machine - menciona que podrían requerirse "versiones de desarrollador" especiales del juego
  6. ^ Aplicación BD-J de HelloWorld: su primera taza para la próxima generación de DVD Archivado el 7 de febrero de 2009 en Wayback Machine ; incluye notas sobre cómo habilitar la depuración o el registro remotos con reproductores de PC
  7. ^ Creación de documentación de referencia de API de Javadoc para el desarrollo de aplicaciones de discos Blu-ray
  8. ^ "Obtención de una definición de plataforma BD-J". Archivado desde el original el 24 de diciembre de 2008. Consultado el 21 de octubre de 2008 .
  9. ^ Desarrollo de aplicaciones para discos Blu-ray con Java ME, parte 1: Cómo crear su primera aplicación Bruce Hopkins, septiembre de 2008

Enlaces externos