[Matroska-devel] To control track or Not To control track ?

Steve Lhomme steve.lhomme at free.fr
Thu Dec 9 14:35:43 CET 2004


The last bit missing now in Matroska files for the full DVD experience 
(at least experimental ones) is the use of buttons in menues.

Buttons in DVDs are using 3 parts of the format :
- (vob) subtitles to display + highlight the buttons
- MPEG2 PCI packets to store the button meta-informations (numbers, 
- DVD commands stored in the PCI packet

The first part can be handled easily by Matroska the way it is now. I'm 
just not sure yet if DVDs can have 2 subtitles streams at the same time. 
But I think so. Even if it doesn't it should be supported in Matroska. 
Unfortunately it's unlikely that any player can support this yet. Maybe 
2 vsfilters can be loaded and running at once ?

The PCI packets and DVD commands are tied together. And we need to 
decide how to treat them. On DVDs they are stored inside the stream. And 
IMO it makes sense to do the same. Especially if you consider that 
buttons could move/morph with a picture (even though I doubt it's used yet).

So if we store it in the stream, how do we do it ?
My options are :
- tied to the vobsub packets
- attached to vobsub packets as codec private info
- using another track (Control Track) for PCI packets

I have no real point of view on this. #2 is probably ugly and 
complicated for nothing. #1 would need changes to vsfilter and we have 
no idea if Gabest is willing to help. And we are not sure it will be 
backward compatible with older filters. So IMO #3 seems to be the 
cleanest way.

Because for the moment we'd have a codec that uses standard PCI packets 
taken from a DVD and stored as is. But we could imagine other Control 
Track codecs much simpler and/or with more features. Such codecs could 
also make use of other subtitle formats than vobsub ones (even though 
they are usually tied together).

Opinions ?

robUx4 on blog <http://robux4.blogspot.com/>

More information about the Matroska-devel mailing list