[Theora-dev] FPGA implementation
Andrey Filippov
theora at elphel.com
Tue Jan 18 00:14:36 PST 2005
>
> Attached.
>
After manually analyzing the file I found some difference with the format in
http://www.xiph.org/ogg/doc/framing.html (btw those html doc pages
reference *.png images and the directory has only matching *.gif ones)
The raw packet is logically divided into [n] 255 byte segments and a last
fractional segment of < 255 bytes. A packet size may well consist only of
the trailing fractional segment, and a fractional segment may be zero
length. These values, called "lacing values" are then saved and placed
into the header segment table."
The second page in that file starts at byte 0x46, byte number 0x60 is
numer of segments (0xc). Next goes byte number 0x61 with the value 0x32 <
0xFF !
The total length of 12 segments is 0xa7f=
32+ff+ff+ff+ff+ff+ff+ff+ff+ff+ff+57 (bytes 0x61..0x6c)
So decoder did not complain. Or is the requirement that only the last
segment in the page less than 255 obsolete? Anyway the list is preceded by
the number of entries.
00000000 4f 67 67 53 00 02 00 00 00 00 00 00 00 00 b7 36
|OggS...........6|
00000010 4a 11 00 00 00 00 3e f2 f2 83 01 2a 80 74 68 65
|J.....>....*.the|
00000020 6f 72 61 03 02 00 00 08 00 04 00 00 80 00 00 40
|ora............@|
00000030 00 00 01 6e 36 00 00 0f 42 40 00 00 00 00 00 00
|...n6...B at ......|
00000040 00 ff ff ff 40 c0 4f 67 67 53 00 00 00 00 00 00
|.... at .OggS......|
00000050 00 00 00 00 b7 36 4a 11 01 00 00 00 54 28 47 39
|.....6J.....T(G9|
00000060 0c 32 ff ff ff ff ff ff ff ff ff ff 57 81 74 68
|.2..........W.th|
....
00000ae0 2c 5a 66 5d 6b 0b fa f4 89 e4 90 80 4f 67 67 53
|,Zf]k.......OggS|
More information about the Theora-dev
mailing list