Soporte XSUB

Imagen de des@universo.com
0 puntos

Con el advenimiento de DIVX-HD, se paso sel estardar AVI-DIVX al MKV, fué para mejor ya que el MKV tiene muchas ventajas, pero, ahí viene el pero, todo los que tenemos AVI-DIVX con subtitulos embebidos (flotantes) nos hemos encontrado con una biblioteca grande no reproducible en los dispositivos certificados DIVX-HD que no lee esta pista solo la pista MKV de subtitulos que es tipo texto y no las avi que BMP. Pregunto: He leido las librerias de FFmpeg principalmente la XSUBDECODER pero no comprendo totalmente el sistema si alguien lo conoce favor ayudarme esto es lo que he encontrado sobre el formato de la pista de subtitulos avi:

Primeros 27 bytes: Starttime y endtime en formato
[0:00:00,000-0:00:00,000]

Luego los siguientes bytes en HEX (Pongo 00 como representacion unicamente)

00 00 00 00 Ancho del subtitulo
00 00 00 00 Alto del Subtitulo
00 00 00 00 Top position
00 00 00 00 Left position
00 00 00 00 Bottom position
00 00 00 00 Right position

Luego va la paleta de colores
00 00 00 Color de Fondo
00 00 00 Color Principal
00 00 00 Color Enfasis 1
00 00 00 Color Enfasis 2
Luego el OffSet que entiendo es el numero de bytes hasta este punto, segùn yo
00 00 Offset,

Luego biene la información del bitmap en 4-bits format compresion RLE

Ahi es donde ya no puedo seguir decodificanto ya que no se que codifica, entiendo que más o menos seria
00 Primer byte corresponde al numero de bits con el mismo color que siguen
00 Segundo byte el color de los bits que solo puede ser 0, 1, 2 o 3 pero parece que usa otro byte con otra información que no se.

la source libre esta en http://www.ffmpeg.org/doxygen/0.5/xsubdec_8c-source.html#l00046

Por si alguien puede ayudarme, es que quiero crear un programa que extraiga la pista avi y la convierta en IDX-SUB ya que el programa que existe las convierte en BDN (Subtitulos XML de Blueray que no es soportado aún)

Gracias.

Imagen de des@universo.com
+1
0
-1

He podido decodificar el formato RLE para los XSUB, es una variante de VOBSUP (DVD Subtitle), ahora me toca crear un programa que converta esta información en VOBSUB (IDX+SUB) con el IDX estoy bien, ya decodifiqué la cabecera del .SUB pero al llegar al OFFSET que indica el lugar en donde empiezan los comandos de acción (Tiempo de inicio, tiempo de permanencia del subtitulo, posición, paleta, colore) tengó un problema, aunque ya decodifique los comandos y que significan y se donde están, el OFFSET que aparece no corresponde a la dirección en donde estan los comandos y si apunto a la dirección donde si estan los subtitulos se deforman, alquien pude ayudarme a entenderlos ????

+1
0
-1