[libannodex-dev] Annodex/AnxData header merge

André Pang Andre.Pang at csiro.au
Tue Aug 24 12:29:35 EST 2004


Hi all,

We're planning to make a change to the Annodex bitstream format, namely 
merge the information in the AnxData header packets into the Annodex 
track.  i.e. We store the granule rate numerator & denominator, number 
of secondary header pages, and message header files (for all tracks) 
directly in the Annodex logical bitstream.  This means that we don't 
have to put an AnxData header field at the start of each logical 
bitstream.  The upsides and downsides of this approach are:

* Advantages:
   - All programs which can play back Ogg files can also play back 
Annodex files
   - More decoupling between the data itself and how to process that 
data in a codec-independent fashion.  This is an advantage because it's 
easier to get at the data if you simply don't care about the AnxData 
header information.
   - Application can totally ignore Annodex logical bitstream, if 
desired (Annodex logical bitstream is then used only to provide 
codec-independent manipulation of data)

* Disadvantages:
   - Arguably a less elegant design
   - More decoupling between the data itself and how to process that 
data in a codec-independent fashion.  This is a disadvantage because 
it's possible for the track's metadata (i.e. its AnxData header) to 
more easily become separated and invalid.
   - Break compatibility with current Annodex-supporting tools

Having instant support from all Ogg-aware projects would be a really 
big bonus: standard media players don't have to do anything special to 
gain support for Annodex files.  Obviously we can patch lots of 
open-source projects, but for applications such as the Xbox Media 
Player, which can play XviD codec files stored in Ogg containers, we 
don't have to do a thing, which is great.

Unless there's some violent opposition to this proposal, we're hoping 
to  implement this change in the next Annodex RFC.  Comments?


-- 
: André Pang (x4180)
: Software Engineer, Networked Media : CeNTIE




More information about the libannodex-dev mailing list