
On Tue, Jul 18, 2006 at 11:10:10PM +0200, Michael Niedermayer wrote:
Hi
ive looked at the vorbis spec and it seems like its trivial to split the 3 header packets if they are simply blindly concatenated the first packet has fixed length
the comment header looks like:
1) [vendor_length] = read an unsigned integer of 32 bits 2) [vendor_string] = read a UTF-8 vector as [vendor_length] octets 3) [user_comment_list_length] = read an unsigned integer of 32 bits 4) iterate [user_comment_list_length] times { 5) [length] = read an unsigned integer of 32 bits 6) this iteration's user comment = read a UTF-8 vector as [length] octets } 7) [framing_bit] = read a single bit as boolean 8) if ( [framing_bit] unset or end-of-packet ) then ERROR
an they all have a "vorbis" in front of them ...
excellent, thank you for doing the research to find this. rich