[ogg-dev] [theora-dev] handling multitrack Ogg

Silvia Pfeiffer silviapfeiffer1 at gmail.com
Tue Feb 2 15:02:28 PST 2010

On Wed, Feb 3, 2010 at 9:36 AM, Benjamin M. Schwartz
<bmschwar at fas.harvard.edu> wrote:
> Silvia Pfeiffer wrote:
>> We could just claim that the latter is unfortunate, but a problem of
>> the author / editor, who destroyed the links to the resource. Further,
>> if somebody wanted to really link to an explicit track, they could use
>> the serialnumber (however ugly it is). This will only break when the
>> video is edited and the serialnumber rewritten rather than when just
>> tracks are added/removed. I think this may be acceptable.
> I don't quite understand the discussion about ordering, but I can see the
> importance of identifying individual tracks in a solid way.  Two notes:
> 1.  The random nature of serial numbers means that it is always possible
> to edit a file, or add/remove tracks, without changing the serial number
> of any track.  Current tools may or may not do this, but it is easy to do.
> 2.  It seems logical that one may want the ability to specify (in a
> fisbone) human-readable unique identifiers for each track.  If a track has
> such a name, that name can be used in lieu of its serial number.  (Files
> with duplicate names would be ill-formed.)
> Is there a list of standardized Skeleton fields?  I can't tell whether
> there's a standard key for the name of a stream.

Fisbone allows for message header fields. Only one is currently
prescribed: "Content-type", see
or http://www.xiph.org/ogg/doc/skeleton.html .

But at FOMS we discussed that we need to add some further fields.
Viktor has my notes, but IIRC we agreed on the following fields:

* Track-ID - could be a name or a number - was meant to be akin to the
@id attribute of XML elements (so a random but unique string)
* Content-Language - main language of the particular track (also
relevant e.g. for video with, e.g. burnt-in titles)
* Content-Role - the data that this track provides, e.g. caption,
subtitle, auddesc, tad, sign, video, audio, slides (and whatever else
we come up with - should this be a finite list?)

There are two issues right now that we are discussing right now, I think:

1. Addressing a track uniquely

2. Ordering tracks for display

It seems for addressing we could either use the serialnumber, really
introduce the Track-ID, or address by role/language and a somehow
introduced order (e.g. subtitle[en][1]). A proper readable name would
be the best, IMO, even if it ends up being something like "sub_en_1"
because it is machine-created.

It seems that for display ordering we can either introduce an order
through the given bos sequence, or order by a combination of
role/language, or introduce a numbering scheme.


More information about the ogg-dev mailing list