structth__comment.html 6.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <head>
  4. <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
  5. <title>libtheora: th_comment Struct Reference</title>
  6. <link href="tabs.css" rel="stylesheet" type="text/css"/>
  7. <link href="doxygen.css" rel="stylesheet" type="text/css"/>
  8. </head>
  9. <body>
  10. <!-- Generated by Doxygen 1.6.1 -->
  11. <div class="navigation" id="top">
  12. <div class="tabs">
  13. <ul>
  14. <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
  15. <li><a href="modules.html"><span>Modules</span></a></li>
  16. <li class="current"><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
  17. <li><a href="files.html"><span>Files</span></a></li>
  18. </ul>
  19. </div>
  20. <div class="tabs">
  21. <ul>
  22. <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
  23. <li><a href="functions.html"><span>Data&nbsp;Fields</span></a></li>
  24. </ul>
  25. </div>
  26. </div>
  27. <div class="contents">
  28. <h1>th_comment Struct Reference</h1><!-- doxytag: class="th_comment" -->
  29. <p>The comment information.
  30. <a href="#_details">More...</a></p>
  31. <p><code>#include &lt;<a class="el" href="codec_8h_source.html">codec.h</a>&gt;</code></p>
  32. <table border="0" cellpadding="0" cellspacing="0">
  33. <tr><td colspan="2"><h2>Data Fields</h2></td></tr>
  34. <tr><td class="memItemLeft" align="right" valign="top">char **&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structth__comment.html#ad72830e183e707bb0df423eb73b00de4">user_comments</a></td></tr>
  35. <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The array of comment string vectors. <a href="#ad72830e183e707bb0df423eb73b00de4"></a><br/></td></tr>
  36. <tr><td class="memItemLeft" align="right" valign="top">int *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structth__comment.html#a723dc6fdf75757e70e28eea864b10898">comment_lengths</a></td></tr>
  37. <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">An array of the corresponding length of each vector, in bytes. <a href="#a723dc6fdf75757e70e28eea864b10898"></a><br/></td></tr>
  38. <tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structth__comment.html#a5990c34932376f070ad0fc314daaeb78">comments</a></td></tr>
  39. <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The total number of comment strings. <a href="#a5990c34932376f070ad0fc314daaeb78"></a><br/></td></tr>
  40. <tr><td class="memItemLeft" align="right" valign="top">char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structth__comment.html#a93fbe894d23603f56843be15b0cbdba0">vendor</a></td></tr>
  41. <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The null-terminated vendor string. <a href="#a93fbe894d23603f56843be15b0cbdba0"></a><br/></td></tr>
  42. </table>
  43. <hr/><a name="_details"></a><h2>Detailed Description</h2>
  44. <p>The comment information. </p>
  45. <p>This structure holds the in-stream metadata corresponding to the 'comment' header packet. The comment header is meant to be used much like someone jotting a quick note on the label of a video. It should be a short, to the point text note that can be more than a couple words, but not more than a short paragraph.</p>
  46. <p>The metadata is stored as a series of (tag, value) pairs, in length-encoded string vectors. The first occurrence of the '=' character delimits the tag and value. A particular tag may occur more than once, and order is significant. The character set encoding for the strings is always UTF-8, but the tag names are limited to ASCII, and treated as case-insensitive. See <a href="http://www.theora.org/doc/Theora.pdf">the Theora specification</a>, Section 6.3.3 for details.</p>
  47. <p>In filling in this structure, <a class="el" href="group__decfuncs.html#ga006d01d36fbe64768c571e6a12b7fc50" title="Decodes the header packets of a Theora stream.">th_decode_headerin()</a> will null-terminate the user_comment strings for safety. However, the bitstream format itself treats them as 8-bit clean vectors, possibly containing null characters, and so the length array should be treated as their authoritative length. </p>
  48. <hr/><h2>Field Documentation</h2>
  49. <a class="anchor" id="a723dc6fdf75757e70e28eea864b10898"></a><!-- doxytag: member="th_comment::comment_lengths" ref="a723dc6fdf75757e70e28eea864b10898" args="" -->
  50. <div class="memitem">
  51. <div class="memproto">
  52. <table class="memname">
  53. <tr>
  54. <td class="memname">int* <a class="el" href="structth__comment.html#a723dc6fdf75757e70e28eea864b10898">th_comment::comment_lengths</a></td>
  55. </tr>
  56. </table>
  57. </div>
  58. <div class="memdoc">
  59. <p>An array of the corresponding length of each vector, in bytes. </p>
  60. </div>
  61. </div>
  62. <a class="anchor" id="a5990c34932376f070ad0fc314daaeb78"></a><!-- doxytag: member="th_comment::comments" ref="a5990c34932376f070ad0fc314daaeb78" args="" -->
  63. <div class="memitem">
  64. <div class="memproto">
  65. <table class="memname">
  66. <tr>
  67. <td class="memname">int <a class="el" href="structth__comment.html#a5990c34932376f070ad0fc314daaeb78">th_comment::comments</a></td>
  68. </tr>
  69. </table>
  70. </div>
  71. <div class="memdoc">
  72. <p>The total number of comment strings. </p>
  73. </div>
  74. </div>
  75. <a class="anchor" id="ad72830e183e707bb0df423eb73b00de4"></a><!-- doxytag: member="th_comment::user_comments" ref="ad72830e183e707bb0df423eb73b00de4" args="" -->
  76. <div class="memitem">
  77. <div class="memproto">
  78. <table class="memname">
  79. <tr>
  80. <td class="memname">char** <a class="el" href="structth__comment.html#ad72830e183e707bb0df423eb73b00de4">th_comment::user_comments</a></td>
  81. </tr>
  82. </table>
  83. </div>
  84. <div class="memdoc">
  85. <p>The array of comment string vectors. </p>
  86. </div>
  87. </div>
  88. <a class="anchor" id="a93fbe894d23603f56843be15b0cbdba0"></a><!-- doxytag: member="th_comment::vendor" ref="a93fbe894d23603f56843be15b0cbdba0" args="" -->
  89. <div class="memitem">
  90. <div class="memproto">
  91. <table class="memname">
  92. <tr>
  93. <td class="memname">char* <a class="el" href="structth__comment.html#a93fbe894d23603f56843be15b0cbdba0">th_comment::vendor</a></td>
  94. </tr>
  95. </table>
  96. </div>
  97. <div class="memdoc">
  98. <p>The null-terminated vendor string. </p>
  99. <p>This identifies the software used to encode the stream. </p>
  100. </div>
  101. </div>
  102. <hr/>The documentation for this struct was generated from the following file:<ul>
  103. <li><a class="el" href="codec_8h_source.html">codec.h</a></li>
  104. </ul>
  105. </div>
  106. <hr size="1"/><address style="text-align: right;"><small>Generated on 28 Sep 2009 for libtheora by&nbsp;
  107. <a href="http://www.doxygen.org/index.html">
  108. <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.1 </small></address>
  109. </body>
  110. </html>