[libannodex-dev] Annodex/AnxData header merge

Conrad Parker conrad at metadecks.org
Tue Aug 24 17:56:13 EST 2004


leverage!!!

On Tue, Aug 24, 2004 at 03:42:12PM +0800, illiminable wrote:
> Actually the more i've been thinking about this, the idea is growing on
> me... and the benefit of leveraging other ogg aware stuff is pretty
> important.
> 
> Glad i didn't start writing my mux filter last night !
> 
> Is there a draft that i can see about what the header packets will look like
> ? Are these packet structures decided ? Is it just a pure concatenation of
> annodex and anxdata packets ? Or is just that the serial number on the
> anxdata packets is that of the annodex stream and not the codec stream ?

yup, just that the serialnos are all those of the initial Annodex
packet (ie. there'll be an "Annodex" logical bitstream, containing
the initial Annodex header with basetime+utc, and all the AnxData
packets still as individual packets).

the obvious consequence of course is that if the other logical
bitstreams are Ogg media (vorbis, theora etc.) then they don't need
to have their bos flags fiddled with or anything.

> Is it assumed that the order in the annodex track is the order in the codec
> streams ? Or is there some other way to map the anxdata to the stream ?

probably the most straightforward thing to do is to add a serialno
field to the AnxData packet. having dependencies on mux order gets
a bit messy and fragile.

> I was just about to start moving forward with this stuff, now that i have
> stabilised most of the core xiph stuff... so if theres a draft or some can
> give me some more info on the rough format/ordering for the packets that
> would be helpful so i can starting coding !

awesome -- no, no draft yet.

what do you think about this for starters:

	1. AnxData packets have the serialno of the Annodex track
	2. AnxData packets are considered as the 'secondary headers'
	of the Annodex track.
	(3. actually, the entire contents of the Annodex track is
	considered 'secondary headers' -- eg. if a seektable packet
	was constructed, the Annodex track would be a suitable place
	for it.)
	4. maybe no other muxing constraints? ie. NO mandate that
	AnxData packets come before the secondary headers of the
	bitstreams they refer to ... only constraint is that they
	come before any actual data (audio/video packets etc.)
	5. tack a 'serialno' field before the text headers of the
	AnxData packet

kfish.



More information about the libannodex-dev mailing list