[theora-dev] Keyframe seeking in Ogg and spec

rillian rillian at telus.net
Fri Sep 13 15:02:25 PDT 2002

On Friday, Sep 13, 2002, at 20:07 Europe/London, Monty wrote:

>>   For example, we know that I frames will never be more than 256
>>   frames apart and P frames no more than 31 B frames apart, the
>>   granulepos of an I frame can be defined to always be granulepos |
> s/we know/if we know/

Ah, I wondered. Afaik no common mpeg profiles use more than that. (and 
it wouldn't make much to sense in normal applications.) I presume the 
VP* codecs also don't.

However, we still have plenty of room to use more bits if necessary, 
and it's at the codec level, so one has some freedom to monkey with it. 
It does seem to impose an arbitrary limit, but I don't think that's a 
sufficient objection to overturn your choice. One can always fall back 
to scheme #1 in such cases.

> Thus, starting from zero, the frames/packets in the
> pattern IPBBPBBI would be numbered 0x000, 0x020, 0x021, 0x022,
> 0x040, 0x041, 0x042, 0x100.

Am I also correct in understanding that one would fiddle with this 
scheme at the codec level to e.g. handle frame reordering. In mpeg 
streams the sequence IPBBPBBI is typically sent 'out of order' as 
IPPBBIBB to avoid having to buffer more than three frames of data. I 
suppose one has to dispense with the 'type based' hierarchy and go with 
group subdivisions or whatever. Or just send the frames in logical 
order. :)


--- >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 mailing list