[ogg-dev] non-decreasing granulepos

ogg.k.ogg.k at googlemail.com ogg.k.ogg.k at googlemail.com
Tue Feb 19 03:37:17 PST 2008

> Here is what some documents have to say:
>   * Neither RFC3533 or http://www.xiph.org/ogg/doc/framing.html clarify
> this.

The document where I found the rationale was libogg's ogg-multiplex.html,
near the middle of the file ("The granule position is governed by the
following rules").

However, while it spells out granules can stay put (and gives the reason
for this), it also says that this is for data that "only affects codec working
state without producing data and thus advancing granule position and time".

The "thus" implies to me that it's thinking of time continuous codecs, where
there can be only one event at the same time (vorbis, theora), so producing
data must advance granule position and time.

The wording "position and time" also says that the two are linked in a way
that if one goes up, the other does too. Which would seem to preclude a
low-bits counter which would increase granulepos, but not time :(

More information about the ogg-dev mailing list