[theora-dev] Keyframe seeking in Ogg and spec
zen6669 at zen.co.uk
Fri Sep 13 15:15:33 PDT 2002
On Friday, Sep 13, 2002, at 19:50 Europe/London, Monty wrote:
> This is not a call for input so much as an educational effort (and a
> public sanity check
> of my thinking; please do pipe up if it appears I missed a salient
Just some nitpicks, feel free to ignore:
> 2) The Ogg layer does not know specifics of the codec data it's
> multiplexing into a stream. It knows nothing beyond 'Oooo, packets!',
> that the packets belong to different buckets, that the packets go in
> order, and that packets have position markers.
I understand this description is meant to be fuzzy, but it is a little
misleading. The ogg layer doesn't know about anything but packets in
buckets, but anything that operates on ogg streams must use some
higher-level information if it is going to redistribute packets or
re-interleave streams. Vorbis specifies that a page break occur after
the last required header for the convenience of streaming/editing
applications; it seems likely that this is a rule we'll want to follow
with other codec data. And to do a good job, any mux/interleave tool
will have to understand the timecodes of the various streams it's
> 2) The Ogg-level seeking algorithm is exceptionally simple and can be
> described in a single sentence: "Find the earliest page with a
> granulepos less than but closest to 'x'".
Wouldn't "find the latest page with a granulepos not later than x" be a
> * note that although granulepos is not permitted to wrap around, we
> can simply begin a new logical stream segment with a new serial
> number should a 30fps video stream ever hit the ten-billion year
This is a bit flip. If you can do this with video, you can do it with
--- >8 ----
List archives: http://www.xiph.org/archives/
Ogg project homepage: http://www.xiph.org/ogg/
To unsubscribe from this list, send a message to 'theora-dev-request at xiph.org'
containing only the word 'unsubscribe' in the body. No subject is needed.
Unsubscribe messages sent to the list will be ignored/filtered.
More information about the Theora-dev