[theora-dev] First steps towards a simple text stream format.

Arc arc at indymedia.org
Mon Aug 11 23:32:49 PDT 2003

Hey gang,

I have to put my .02 cents here somewhere, this conversation is
frustrating me as far as seeing my needs in development not be met.

First, I have a problem with XML being put into Ogg.  Ogg is not a
format that you can simply open with a text editor, thus the plaintext
aspect of XML is completely lost, but more importantly it seems like it
will only add to the requirements of the players while making it more
difficult to get all the functionality we need into it.

Second, I strongly feel this needs to be in Ogg itself, with Unicode as
a standard.  Embedded font or not, with or without colors, having it be
multilingual (in the same logical bitstream, otherwise you multiply the
Ogg overhead by the number of languages) and support non-romanic
languages is important for the uses we need out of Ogg Theora.

Third, it needs to be text, not graphic (ie MNG).  It's far easier to
have a translator team go through a text transcript and piece by piece
translate it than to have to export graphics that they need to read and
make new graphics from.  Also, the text can be used for a transcript
search engine, whereas MNG subtitles would have to be OCR'ed which makes
it much less realistic.

<p>On Tue, Aug 12, 2003 at 12:45:19PM +1000, Silvia.Pfeiffer at csiro.au wrote:
> another aim for annodex was to make things as simple as possible for 
> users and application programmers. XML solves the problems of language 
> handling and character sets (Unicode is default). So, you won't have to 
> worry about these any more. Annodex solves the problem of synchronising 
> text with media bitstreams using ogg so you won't have to worry about 
> this any more.  Annodex players are rare yet but we're working on it :)

I think having some tools export XML for editing would be cool, and I
think graphical editors would common too.  You could have a XML source
file and a command-line "encoder" that plugs the data into an existing
Ogg file, or have an ogg encoder grab the XML source file and "encode"
it at the same time it encodes the Vorbis and Theora bitstreams.  Other
subtitle editors could edit this data as-is without ever needing to
touch XML.

> Then you use the related Theora video file and run it through "anxenc" 
> and you've got the synchronised file. 

That sounds like a good XML "source" format.  anxenc could do what I
described above, compiling the XML into a binary-unicode based Ogg
bitstream that's synced with the Vorbis and Theora pages.

<p>Here's one application I'm looking at for all of this.. we (Indymedia)
are already running a collaborative Ogg Vorbis-based radio stream from
Amsterdam.  Many people in many cities around the world send live or
prerecorded content for this radio, it's all combined on the Ogg layer
(a seperate transcoder generates the MP3 stream later) by pulling apart
the ogg pages, detecting serial number/page0 changes and adding the EOS
bits, etc to create a completely legal Ogg stream from, well, what
basically amounts to a chaotic stream of broken pages and bitstreams.

My next project is the use of this software, with slight modifications
to it and more major modifications to libshout/icecast, to create a
global TV stream using Ogg Theora.  The important part about this,
unlike the radio, is it'll be heavily multilingual.  

We (Indymedia) already have a large group of translation volunteers for
more than 25 languages (everything from Chineese to Bulgarian).  What I
plan to facilitate the job of translating all these video programs to
all these languages with is a web-based translation tool, something that
will open a document, quickly extract the source language's text, and
allow those subtitles to be translated line for line to a new language.
This tool would then edit the source file by changing the Ogg pages for
the bitstream with the additional data included.

<p>It's sounding like alot of these ideas are close to what I above
described, but it feels like the discussion is moving away from all of
this in some aspects.

I've been working with py-ogg to create a simple real-world example of
this in action with vorbis.  I'll publish a preliminary spec soon, and
look into annex as far as creating a XML-source encoder for this.

-------------- next part --------------
A non-text attachment was scrubbed...
Name: part
Type: application/pgp-signature
Size: 188 bytes
Desc: not available
Url : http://lists.xiph.org/pipermail/theora-dev/attachments/20030812/8eb31024/part.pgp

More information about the Theora-dev mailing list