DvdSubML draft specification

My original subtitle format looks a bit like HTML, so not surprisingly someone suggested that I go all the way and come up with a proper XML-based subtitle format. The specification below is the result. It's quite a bit cleaner than my original format, and to my surprise it's also nearly as terse; lack of terseness was the main reason I didn't go XML in the first place.

This spec is currently not implemented, and before I implement it I'd like to get some feedback from people who are interested in writing or reading this format. Please use the form at the bottom of the page. Thanks!


Here's an example of a DVDSubML document: [I need to come up with a better name...]

  <?xml version="1.0"?>
  <dvdsub>
    <styles subaspect="4:3">
      <font name="dlg" face="Arial" size="27" weight="bold" spacing="-3"/>
      <font name="dlg_i" face="Arial" size="27" weight="bold" spacing="-3" italic="yes"/>
      <color name="dlg" text="#FFFFF00" halo="#F000000" highlight="#F00FF00"/>
      <box name="dlg" left="64" right="656" top="40" bottom="440" align="2L"/>
      <stream name="main" lang="en" id="21" vts="02" basefield="0" scale="24to25"/>
    </styles>
    <body stream="main">
      <div font="dlg" color="dlg" box="dlg">
        <p on="0000" off="1000">This is an auto-wrapped line of dialogue.</p>
        <v on="1000" fadeout="1200" off="1300">
          <l>This line of dialog is</l>
          <l><i>not</i> auto-wrapped,</l>
          <l>and will fade away.</l>
        </v>
      </div>
    </body>
  </dvdsub>

A document consists of one or more styles elements, which define font faces, colors, and the like, followed by a body element which contains text to be rendered and timing information.


Comments:

Your name (optional):

Your email address (optional):