Go to file
2013-07-23 12:04:20 +02:00
debug initial commit of avs2bdnxml 2.08. 2013-07-23 12:04:20 +02:00
inc initial commit of avs2bdnxml 2.08. 2013-07-23 12:04:20 +02:00
lib initial commit of avs2bdnxml 2.08. 2013-07-23 12:04:20 +02:00
abstract_lists.h initial commit of avs2bdnxml 2.08. 2013-07-23 12:04:20 +02:00
auto_split.c initial commit of avs2bdnxml 2.08. 2013-07-23 12:04:20 +02:00
auto_split.h initial commit of avs2bdnxml 2.08. 2013-07-23 12:04:20 +02:00
auto_split.o initial commit of avs2bdnxml 2.08. 2013-07-23 12:04:20 +02:00
avs2bdnxml.c initial commit of avs2bdnxml 2.08. 2013-07-23 12:04:20 +02:00
avs2bdnxml.exe initial commit of avs2bdnxml 2.08. 2013-07-23 12:04:20 +02:00
avs2bdnxml.h initial commit of avs2bdnxml 2.08. 2013-07-23 12:04:20 +02:00
avs2bdnxml.o initial commit of avs2bdnxml 2.08. 2013-07-23 12:04:20 +02:00
COPYING initial commit of avs2bdnxml 2.08. 2013-07-23 12:04:20 +02:00
frame-a.asm initial commit of avs2bdnxml 2.08. 2013-07-23 12:04:20 +02:00
frame-a.o initial commit of avs2bdnxml 2.08. 2013-07-23 12:04:20 +02:00
Makefile initial commit of avs2bdnxml 2.08. 2013-07-23 12:04:20 +02:00
Makefile.linux initial commit of avs2bdnxml 2.08. 2013-07-23 12:04:20 +02:00
palletize.c initial commit of avs2bdnxml 2.08. 2013-07-23 12:04:20 +02:00
palletize.h initial commit of avs2bdnxml 2.08. 2013-07-23 12:04:20 +02:00
palletize.o initial commit of avs2bdnxml 2.08. 2013-07-23 12:04:20 +02:00
README initial commit of avs2bdnxml 2.08. 2013-07-23 12:04:20 +02:00
sort.c initial commit of avs2bdnxml 2.08. 2013-07-23 12:04:20 +02:00
sort.h initial commit of avs2bdnxml 2.08. 2013-07-23 12:04:20 +02:00
sort.o initial commit of avs2bdnxml 2.08. 2013-07-23 12:04:20 +02:00
sup.c initial commit of avs2bdnxml 2.08. 2013-07-23 12:04:20 +02:00
sup.h initial commit of avs2bdnxml 2.08. 2013-07-23 12:04:20 +02:00
sup.o initial commit of avs2bdnxml 2.08. 2013-07-23 12:04:20 +02:00
x86inc.asm initial commit of avs2bdnxml 2.08. 2013-07-23 12:04:20 +02:00

AVS to BluRay SUP/PGS and BDN XML
---------------------------------

This program can be used to transform AviSynth scripts, which produce RGBA
output, to BDN XML+PNG format. This in turn can be transformed into a SUP file,
which can be used to master a BluRay disc with subtitles.

Usage instructions:

0. If you want to build it:
     i586-mingw32msvc-gcc avs2bdnxml.c -o avs2bdnxml.exe -lpng -lz -lvfw32 \
       -Llib/ -O3 -Iinc/

1. Prepare subtitles. You can either produce subtitles in a normal format like
   SRT or ASS/SSA, or produce an RGBA video beforehand.

2. Create an AviSynth script. If you made a regular subtitle file, you can use
   something like this:

     video=AviSource("video.avi")
     # This requires at least VSFilter 2.39
     MaskSub("subtitles.ext",video.width,video.height,
             video.framerate,video.framecount)

   If you created an RGBA video, do something like this instead:

     AviSource("subtitles_RGBA.avi")
     FlipVertical()

3. Run the program:
     avs2bdnxml input.avs Undefined und 1080p 23.976 output.xml

4. For some programs, you have to convert the PNG files to 8bit RGBA palette.
   This doesn't apply to BDSupEdit. You can do it with a tool like pngquant or
   pngnq.

     pngquant: http://www.libpng.org/pub/png/apps/pngquant.html
     pngnq:    http://pngnq.sourceforge.net/

5. You get a BDN XML file in the following format:

     <?xml version="1.0" encoding="UTF-8"?>
     <BDN Version="0.93" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
     xsi:noNamespaceSchemaLocation="BD-03-006-0093b BDN File Format.xsd">
     <Description>
     <Name Title="Undefined" Content=""/>
     <Language Code="und"/>
     <Format VideoFormat="[ 480i / 480p / 576i / 720p / 1080i /1080p ]" FrameRate="[ 23.976 / 24 / 25 / 29.97 / 50 / 59.94 ]" DropFrame="false"/>
     <Events LastEventOutTC="00:00:00:00" FirstEventInTC="00:00:00:00" ContentInTC="00:00:00:00" 
     ContentOutTC="00:00:00:00" NumberofEvents="[ number of encoded frames ]" Type="Graphic"/>
     </Description>
     <Events>
     <Event Forced="[ False / True ]" InTC="00:00:00:00" OutTC="00:00:00:00">
     <Graphic Width="0" Height="0" X="0" Y="0">000000.png</Graphic>
     </Event>
     </Events>
     </BDN>

6. Use a program like BDSupEdit or BDSup2Sub to convert the BDN XML
   to a BD-SUP file. The rest is left as an exercise for the reader.

     BDSupEdit: http://forum.doom9.org/showthread.php?t=146157
     BDSup2Sub: http://forum.doom9.org/showthread.php?t=145277



-- http://ps-auxw.de/avs2bdnxml/