[Matroska-devel] About time scale denominators

Steve Lhomme slhomme at matroska.org
Sat Oct 20 10:22:52 CEST 2012

The idea of having a sample precision clock for audio is tempting.
Although it can be achieved by using a compatible global fraction for
all tracks. The downside is that, if these fractions are very
incompatible, it will create big Frame timestamp, making large
Clusters harder. The idea of a per-track clock is interesting. But
contrary to the old TrackTimecodeScale it should not depend on the
main clock (TimecodeScale numerator/denominator) as it would be
impractical and have much meaning. That global clock would remain for
other parts of the format that depend on it.

Such a system would make these files incompatible with any current
muxer/demuxer. (except in rare cases where the different track
fractions can be adapted to match the global TimecodeScale). I am not
sure breaking everything is worth for such a small advantage (sample
precision timestamp when incompatible tracks are muxed together, when
a track is alone the global fraction can achieve this precision).

Now if we go that way, I agree most of the time representation needs
to be reviewed. And take that opportunity to remove some unused or
badly designed stuff. We may as well use another Doctype than
"matroska" because such files would not be backward compatible. And so
should not be handled by current Matroska players that will choke on

On Thu, Oct 4, 2012 at 6:16 PM, Ben Wreder <benwreder at hotmail.com> wrote:
> Well, the most robust solution is having a per track scale and breaking compatibility, yes, but that causes a lot of pain and friction (see: header stripping), even if it's better in the long run.
> While we're at it, if you're willing to break compatibility to have precise timestamps, the segment Duration and specially the track DefaultDuration should get the fractional treatment too, and lacing should be forbidden for VFR audio codecs (such as Vorbis), or extended so that each laced frame gets a timestamp somehow.
> _______________________________________________
> Matroska-devel mailing list
> Matroska-devel at lists.matroska.org
> http://lists.matroska.org/cgi-bin/mailman/listinfo/matroska-devel
> Read Matroska-Devel on GMane: http://dir.gmane.org/gmane.comp.multimedia.matroska.devel

Steve Lhomme
Matroska association Chairman

More information about the Matroska-devel mailing list