[theora] Indexing Ogg files for faster seeking

Chris Pearce chris at pearce.org.nz
Tue Jan 26 18:09:59 PST 2010


I've updated my OggIndex spec to Skeleton 3.3, which now no longer 
includes the checksum for keypoints, and is delta and variable byte 
encoded. This reduces the index size to about a quarter of its previous 
size, or about 6.2KB per track per hour. I've updated my OggIndex and 
OggIndexValid tools to output and verify this new format respectively, 
and I will send J^ a patch later on today for ffmpeg2theora. I've 
uploaded new skeleton 3.3 index capable Firefox builds to 
http://pearce.org.nz/video/ 
<http://pearce.org.nz/video/firefox-indexed-seek-linux.tar.bz2> for 
testing.

I don't yet have a reliable way for ffmpeg2theora to estimate how much 
space to reserve for the (now variable length) indexes. I'm planning on 
measuring a bunch of indexes of various files to try to figure out a 
reasonable approximation. I am adding command line options to 
ffmpeg2theora so that at least you can specify on the command line how 
much space to reserve for the index, and ffmpeg2theora will output the 
optimal size. When running in two-pass mode this may be less of an issue...

I decided not to shift or offset the variable-byte encoded values, as 
the index needs to be easily verifiable.

Chris P.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.xiph.org/pipermail/theora/attachments/20100127/36825984/attachment.htm 


More information about the theora mailing list