\section{theora\+\_\+comment Struct Reference}
\label{structtheora__comment}\index{theora\+\_\+comment@{theora\+\_\+comment}}


Comment header metadata.  




{\ttfamily \#include $<$theora.\+h$>$}

\subsection*{Data Fields}
\begin{DoxyCompactItemize}
\item 
char $\ast$$\ast$ {\bf user\+\_\+comments}
\begin{DoxyCompactList}\small\item\em An array of comment string vectors. \end{DoxyCompactList}\item 
int $\ast$ {\bf comment\+\_\+lengths}
\begin{DoxyCompactList}\small\item\em An array of corresponding string vector lengths in bytes. \end{DoxyCompactList}\item 
int {\bf comments}
\begin{DoxyCompactList}\small\item\em The total number of comment string vectors. \end{DoxyCompactList}\item 
char $\ast$ {\bf vendor}
\begin{DoxyCompactList}\small\item\em The vendor string identifying the encoder, null terminated. \end{DoxyCompactList}\end{DoxyCompactItemize}


\subsection{Detailed Description}
Comment header metadata. 

This structure holds the in-\/stream metadata corresponding to the \textquotesingle{}comment\textquotesingle{} header packet.

Meta data is stored as a series of (tag, value) pairs, in length-\/encoded string vectors. The first occurence of the \textquotesingle{}=\textquotesingle{} character delimits the tag and value. A particular tag may occur more than once. The character set encoding for the strings is always U\+T\+F-\/8, but the tag names are limited to case-\/insensitive A\+S\+C\+II. See the spec for details.

In filling in this structure, \doxyref{theora\+\_\+decode\+\_\+header()}{p.}{group__oldfuncs_ga02915e63c1bd733ee291f577a8b75a82} 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. 

\subsection{Field Documentation}
\index{theora\+\_\+comment@{theora\+\_\+comment}!comment\+\_\+lengths@{comment\+\_\+lengths}}
\index{comment\+\_\+lengths@{comment\+\_\+lengths}!theora\+\_\+comment@{theora\+\_\+comment}}
\subsubsection[{comment\+\_\+lengths}]{\setlength{\rightskip}{0pt plus 5cm}int$\ast$ theora\+\_\+comment\+::comment\+\_\+lengths}\label{structtheora__comment_a5ab4a376d3c217282a684577c9c9f49a}


An array of corresponding string vector lengths in bytes. 

\index{theora\+\_\+comment@{theora\+\_\+comment}!comments@{comments}}
\index{comments@{comments}!theora\+\_\+comment@{theora\+\_\+comment}}
\subsubsection[{comments}]{\setlength{\rightskip}{0pt plus 5cm}int theora\+\_\+comment\+::comments}\label{structtheora__comment_a122393035c8352ff9be42d69e73aee00}


The total number of comment string vectors. 

\index{theora\+\_\+comment@{theora\+\_\+comment}!user\+\_\+comments@{user\+\_\+comments}}
\index{user\+\_\+comments@{user\+\_\+comments}!theora\+\_\+comment@{theora\+\_\+comment}}
\subsubsection[{user\+\_\+comments}]{\setlength{\rightskip}{0pt plus 5cm}char$\ast$$\ast$ theora\+\_\+comment\+::user\+\_\+comments}\label{structtheora__comment_a1e236fd180dfce19be89081399444cf5}


An array of comment string vectors. 

\index{theora\+\_\+comment@{theora\+\_\+comment}!vendor@{vendor}}
\index{vendor@{vendor}!theora\+\_\+comment@{theora\+\_\+comment}}
\subsubsection[{vendor}]{\setlength{\rightskip}{0pt plus 5cm}char$\ast$ theora\+\_\+comment\+::vendor}\label{structtheora__comment_adb371baf8f0daed42af8b875cf8430ef}


The vendor string identifying the encoder, null terminated. 



The documentation for this struct was generated from the following file\+:\begin{DoxyCompactItemize}
\item 
{\bf theora.\+h}\end{DoxyCompactItemize}
