#include <theora.h>
Data Fields | |
char ** | user_comments |
An array of comment string vectors. | |
int * | comment_lengths |
An array of corresponding string vector lengths in bytes. | |
int | comments |
The total number of comment string vectors. | |
char * | vendor |
The vendor string identifying the encoder, null terminated. |
This structure holds the in-stream metadata corresponding to the 'comment' header packet.
Meta data is stored as a series of (tag, value) pairs, in length-encoded string vectors. The first occurence of the '=' character delimits the tag and value. A particular tag may occur more than once. The character set encoding for the strings is always utf-8, but the tag names are limited to case-insensitive ascii. See the spec for details.
In filling in this structure, theora_decode_header() will null-terminate the user_comment strings for safety. However, the bitstream format itself treats them as 8-bit clean, and so the length array should be treated as authoritative for their length.