Pregunta

Al igual que el tema de este post sugiere, estoy buscando a desarrollar una suite como nero que ayuda a grabar discos Blu-ray. Estoy un poco desorientado en cuanto a por dónde empezar. ¿Hay algo en Java API que le permite hacer esto? Si tuviera que empezar de cero, habría que necesito para comenzar con la especificación de disco Blu-ray? ¿Existe alguna herramienta de código abierto que ya están haciendo esto? He intentado buscar en sourceforge.net y no encontré nada útil. Cualquier ayuda es muy apreciada.

¿Fue útil?

Solución

Para empezar con lo obvio: saber sus necesidades y herramientas. Trato de adivinar aquí, tal vez.

Requisitos:

  1. En caso de grabar discos BluRay
  2. Interfaz gráfica de usuario

herramienta preferida:

  • Java

Ahora, Java, siendo quizás el mejor ejemplo de un lenguaje de máquina virtual a partir de los 90es, logra su relativamente buena plataforma-agnosticismo en virtud de su máquina virtual. Es un lenguaje diseñada para ejecutarse en un Virtual hardware para facilitar la portabilidad de hardware real.

Ahora, lo que viene con este hecho es que usted abstraer muchas cosas que tendría que preocuparse, como los detalles de administración de memoria y arquitectura o plataforma-específicos. Entre esas cosas que no se puede conseguir de forma fiable el acceso al hardware es. Después de todo, abstraído mayor parte de esa distancia.

Ahora, para grabar un disco BluRay que Tienes para hardware de acceso, en particular, el escritor BluRay. No es que sea imposible, pero Java es, en mi humilde opinión, no es la herramienta adecuada para ello. Usted puede ir fuera de su camino mediante la implementación de una biblioteca en C o C ++ y utilizando JNI / JNA a que el acceso pero mirando a que, lo que hace realmente la ganancia?

Java es por lo general una opción cuando se necesita un lenguaje de alto nivel bastante moderno, con una gran biblioteca estándar y también necesita sus programas a ejecutar en más de una plataforma. Esos son los casos de uso principales. No es imposible con otras tecnologías, pero tal vez más difícil de lograr, dependiendo de qué es exactamente lo que necesita.

Si implementa una biblioteca nativa a hablar con el escritor BluRay y hablar a la de Java, entonces necesariamente tienen que volver a ponerlo en práctica para otras plataformas (suponiendo que es lo que quiere, si no, entonces otra vez: ¿Por qué Java?).

Versión

TL / DR: Mi punto es que no es demasiado sorprendente que no se puede encontrar mucho sobre exactamente ese tema. Por un lado, Java no estaba diseñada para hacer ese tipo de cosas. La mayor parte de las mentiras de interoperabilidad Java / nativos en la JVM y eso es ya una gran cantidad de código. No hay que esperar Java para soporte nativo de escenarios de uso muy raros, como el CD / DVD / BluRay quema. En segundo lugar, BluRay es una tecnología relativamente nueva con los escritores no de hardware todavía común en las computadoras, tales como grabadoras de CD / DVD, por lo que la falta de bibliotecas y herramientas también puede ser un reflejo de las exigencias actuales del mercado.

Otros consejos

acceso al hardware de bajo nivel simplemente no es posible en Java puro a menos que sea en la API estándar, que no es Bluray.

Por lo tanto, usted tendrá que usar el código no-Java para acceder al hardware; en ese momento se pierde la plataforma de la independencia de Java, y necesariamente tener un sistema multi-idioma, que siempre es más doloroso para el programa que el uso de un solo idioma.

Sin embargo, si usted puede encontrar (o, supongo, desarrollar) un multi-plataforma de Bluray escritura herramienta de API o de línea de comandos en (lo más probable) C, entonces podría aún tener sentido para escribir el resto de la aplicación en Java como una envoltura GUI con mayor funcionalidad.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top