Java NAL a H264

¿Alguien alguna vez usó una buena biblioteca Java de código abierto que permitiera la conversión NAL> H264?

He visto muchas bibliotecas, pero la mayoría de ellas están incompletas o son muy difíciles de usar (sin documentación, etc.).

Lo que quiero es pasar la carga útil de NAL y obtener el video en bruto H.264 real. El siguiente paso sería poner esto en un contenedor MP4.

Respuesta 1

De la discusión en los comentarios reformulo su pregunta y la divido en dos:

Quiero extraer unidades NAL de paquetes RTP H264 en Java puro y volcarlas en un archivo H264 del Anexo B.

¿Cómo puedo hacer eso? ¿Hay una biblioteca?

La carga útil de estos paquetes se especifica en RFC3984 .

No conozco ninguna biblioteca Java que realice esto de forma inmediata. Pero la implementación es bastante simple siempre que el tipo de empaque no esté intercalado:

RFC3984 permite tres tipos de embalaje

  • Modo de unidad NAL individual
  • Modo no intercalado
  • Modo intercalado

siempre que su fuente de paquetes se envíe en modo de unidad NAL única o en modo no intercalado, puede extraer las unidades NAL sin ningún procesamiento adicional de los paquetes y volcarlas en el disco con 0x00,0x00,0x00,0x01 como divisor entre ellas.

Si el tipo de empaquetado está entrelazado, debe dedicar mucho más trabajo, ya que tendrá que buscar en los NAL y volver a ordenarlos para que estén en orden de decodificación.

Mezclo archivos sin procesar del Anexo B H264 en un contenedor MP4 en Java puro

Puedes usar mi proyecto mp4parser para generar un MP4 a partir del formato del Anexo B. Eche un vistazo al Ejemplo H264 , que debería darle una idea de cómo usarlo.

Respuesta: 2

Estoy leyendo el PDF de convenciones de código Java y me di cuenta de esto: evite las declaraciones locales que ocultan las declaraciones en los niveles superiores. Por ejemplo, no declare el mismo nombre de variable en un interno ...

Entorno: Java EE 6 ¿Cómo determinar en Interceptor si el bean invocado es administrado por contenedor (CMT) o administrado por bean (BMT)?

Intenté convertir html a imagen usando la API HtmlImageGenerator de Google. Pero cuando subo el código en el motor de aplicaciones de Google, bloquea muchas clases como JLabel, ImageIO, JeditorPane, Dimension2D, etc. Entonces ...

Recientemente me mudé a probar las API para un nuevo proyecto con Rest Assured. No soy tan fluido en Java, por eso necesito saber cómo optimizar el código. Digamos que tengo una API, cuya salida es ...