[Theora-dev] Error in Spec of theora ident header

illiminable ogg at illiminable.com
Mon Dec 20 01:30:32 PST 2004


While trying to find a bug in my encoder, i came across an error in the spec
where it defines the structure of the ident header... the spec defines 100
extra bits which aren't actually in the headers... NSBS, NMBS and NBS don't
appear in a 3 2 0 header... the actual structure is as follows

 //0 - 7    header ident (8 bits)
 //8  - 55   theora ident (48 bits)
 //56 - 63   ver major (8 bits)
 //64 - 71   ver minor (8 bits)
 //72 - 79   ver revision (8 bits)
 //80 - 95   numMacroBlocksWide (16 bits)
 //96 - 111   numMacroBlocksHigh (16 bits)
 //112 - 135   picturewidth (24 bits read, only 20 used)
 //136 - 159   pictureheight (24 bits read, only 20 used)
 //160 - 167   xoffset (8 bits)
 //168 - 175   yoffset (8 bits)
 //176 - 207   framerateNum (32 bits)
 //208 - 239   frameratedenom (32 bits)
 //240 - 263   aspectNum (24 bits)
 //264 - 287   aspectdenom (24 bits)
 //288 - 295   colourspace (8 bits)
 //296 - 319   targetbitrate   (24 bits)
 //320 - 325   targetqual  (6 bits)
 //326 - 330   keyframeinterlog (5 bits)

Giving a theora ident packet a total size of 42 bytes.


Cheers

Zen.




More information about the Theora-dev mailing list