mirror of
https://github.com/etlegacy/etlegacy-libs.git
synced 2025-04-25 07:40:58 +00:00
195 lines
26 KiB
HTML
195 lines
26 KiB
HTML
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
|
<html xmlns="http://www.w3.org/1999/xhtml">
|
|
<head>
|
|
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
|
<title>libtheora: codec.h Source File</title>
|
|
<link href="tabs.css" rel="stylesheet" type="text/css"/>
|
|
<link href="doxygen.css" rel="stylesheet" type="text/css"/>
|
|
</head>
|
|
<body>
|
|
<!-- Generated by Doxygen 1.6.1 -->
|
|
<div class="navigation" id="top">
|
|
<div class="tabs">
|
|
<ul>
|
|
<li><a href="index.html"><span>Main Page</span></a></li>
|
|
<li><a href="modules.html"><span>Modules</span></a></li>
|
|
<li><a href="annotated.html"><span>Data Structures</span></a></li>
|
|
<li class="current"><a href="files.html"><span>Files</span></a></li>
|
|
</ul>
|
|
</div>
|
|
<div class="tabs">
|
|
<ul>
|
|
<li><a href="files.html"><span>File List</span></a></li>
|
|
<li><a href="globals.html"><span>Globals</span></a></li>
|
|
</ul>
|
|
</div>
|
|
<h1>codec.h</h1><a href="codec_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/********************************************************************</span>
|
|
<a name="l00002"></a>00002 <span class="comment"> * *</span>
|
|
<a name="l00003"></a>00003 <span class="comment"> * THIS FILE IS PART OF THE OggTheora SOFTWARE CODEC SOURCE CODE. *</span>
|
|
<a name="l00004"></a>00004 <span class="comment"> * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS *</span>
|
|
<a name="l00005"></a>00005 <span class="comment"> * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *</span>
|
|
<a name="l00006"></a>00006 <span class="comment"> * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *</span>
|
|
<a name="l00007"></a>00007 <span class="comment"> * *</span>
|
|
<a name="l00008"></a>00008 <span class="comment"> * THE Theora SOURCE CODE IS COPYRIGHT (C) 2002-2009 *</span>
|
|
<a name="l00009"></a>00009 <span class="comment"> * by the Xiph.Org Foundation http://www.xiph.org/ *</span>
|
|
<a name="l00010"></a>00010 <span class="comment"> * *</span>
|
|
<a name="l00011"></a>00011 <span class="comment"> ********************************************************************</span>
|
|
<a name="l00012"></a>00012 <span class="comment"></span>
|
|
<a name="l00013"></a>00013 <span class="comment"> function:</span>
|
|
<a name="l00014"></a>00014 <span class="comment"> last mod: $Id: theora.h,v 1.8 2004/03/15 22:17:32 derf Exp $</span>
|
|
<a name="l00015"></a>00015 <span class="comment"></span>
|
|
<a name="l00016"></a>00016 <span class="comment"> ********************************************************************/</span>
|
|
<a name="l00017"></a>00017
|
|
<a name="l00062"></a>00062 <span class="preprocessor">#if !defined(_O_THEORA_CODEC_H_)</span>
|
|
<a name="l00063"></a><a class="code" href="codec_8h.html#a15352a6a862d25ab00a8f06ea65ee75b">00063</a> <span class="preprocessor"></span><span class="preprocessor"># define _O_THEORA_CODEC_H_ (1)</span>
|
|
<a name="l00064"></a>00064 <span class="preprocessor"></span><span class="preprocessor"># include <ogg/ogg.h></span>
|
|
<a name="l00065"></a>00065
|
|
<a name="l00066"></a>00066 <span class="preprocessor">#if defined(__cplusplus)</span>
|
|
<a name="l00067"></a>00067 <span class="preprocessor"></span><span class="keyword">extern</span> <span class="stringliteral">"C"</span> {
|
|
<a name="l00068"></a>00068 <span class="preprocessor">#endif</span>
|
|
<a name="l00069"></a>00069 <span class="preprocessor"></span>
|
|
<a name="l00070"></a>00070
|
|
<a name="l00071"></a>00071
|
|
<a name="l00075"></a><a class="code" href="codec_8h.html#a4d8d8e34fc5ec39ffa05d61a310a0407">00075</a> <span class="preprocessor">#define TH_EFAULT (-1)</span>
|
|
<a name="l00076"></a>00076 <span class="preprocessor"></span>
|
|
<a name="l00077"></a><a class="code" href="codec_8h.html#afbbd9f19fbf292aeb62a37792cecb870">00077</a> <span class="preprocessor">#define TH_EINVAL (-10)</span>
|
|
<a name="l00078"></a>00078 <span class="preprocessor"></span>
|
|
<a name="l00079"></a><a class="code" href="codec_8h.html#af00f7ecc5242d12a717202537324a510">00079</a> <span class="preprocessor">#define TH_EBADHEADER (-20)</span>
|
|
<a name="l00080"></a>00080 <span class="preprocessor"></span>
|
|
<a name="l00081"></a><a class="code" href="codec_8h.html#a3dc08a00a9aba231be398f3e31726d9c">00081</a> <span class="preprocessor">#define TH_ENOTFORMAT (-21)</span>
|
|
<a name="l00082"></a>00082 <span class="preprocessor"></span>
|
|
<a name="l00083"></a><a class="code" href="codec_8h.html#ac3a45ef2b24f75259258edc481e3a122">00083</a> <span class="preprocessor">#define TH_EVERSION (-22)</span>
|
|
<a name="l00084"></a>00084 <span class="preprocessor"></span>
|
|
<a name="l00085"></a><a class="code" href="codec_8h.html#a921c47accc17841f220af5a6afb79efe">00085</a> <span class="preprocessor">#define TH_EIMPL (-23)</span>
|
|
<a name="l00086"></a>00086 <span class="preprocessor"></span>
|
|
<a name="l00087"></a><a class="code" href="codec_8h.html#a6efb84e9c2213a8840003eee2847b27f">00087</a> <span class="preprocessor">#define TH_EBADPACKET (-24)</span>
|
|
<a name="l00088"></a>00088 <span class="preprocessor"></span>
|
|
<a name="l00091"></a><a class="code" href="codec_8h.html#ab10e7b64f17a02707fc9348ea9832d09">00091</a> <span class="preprocessor">#define TH_DUPFRAME (1)</span>
|
|
<a name="l00092"></a>00092 <span class="preprocessor"></span>
|
|
<a name="l00098"></a><a class="code" href="codec_8h.html#a4ce7a695ce353b1582d29b6c1ddf31a0">00098</a> <span class="keyword">typedef</span> <span class="keyword">enum</span>{
|
|
<a name="l00101"></a><a class="code" href="codec_8h.html#a4ce7a695ce353b1582d29b6c1ddf31a0adb9a17a3283c8d490652e507db2427cf">00101</a> <a class="code" href="codec_8h.html#a4ce7a695ce353b1582d29b6c1ddf31a0adb9a17a3283c8d490652e507db2427cf" title="The color space was not specified at the encoder.">TH_CS_UNSPECIFIED</a>,
|
|
<a name="l00103"></a><a class="code" href="codec_8h.html#a4ce7a695ce353b1582d29b6c1ddf31a0a1a19346bbfb8192baa4c185df73d3397">00103</a> <a class="code" href="codec_8h.html#a4ce7a695ce353b1582d29b6c1ddf31a0a1a19346bbfb8192baa4c185df73d3397" title="A color space designed for NTSC content.">TH_CS_ITU_REC_470M</a>,
|
|
<a name="l00105"></a><a class="code" href="codec_8h.html#a4ce7a695ce353b1582d29b6c1ddf31a0a009021d50836ddb0ec6004a2803775fe">00105</a> <a class="code" href="codec_8h.html#a4ce7a695ce353b1582d29b6c1ddf31a0a009021d50836ddb0ec6004a2803775fe" title="A color space designed for PAL/SECAM content.">TH_CS_ITU_REC_470BG</a>,
|
|
<a name="l00107"></a><a class="code" href="codec_8h.html#a4ce7a695ce353b1582d29b6c1ddf31a0a0fa8ea07f583ee57943520ddb2f6e62e">00107</a> <a class="code" href="codec_8h.html#a4ce7a695ce353b1582d29b6c1ddf31a0a0fa8ea07f583ee57943520ddb2f6e62e" title="The total number of currently defined color spaces.">TH_CS_NSPACES</a>
|
|
<a name="l00108"></a>00108 }<a class="code" href="codec_8h.html#a4ce7a695ce353b1582d29b6c1ddf31a0" title="The currently defined color space tags.">th_colorspace</a>;
|
|
<a name="l00109"></a>00109
|
|
<a name="l00114"></a><a class="code" href="codec_8h.html#a5c9e7f2f0c7ed209c9ca3ed0abd328bc">00114</a> <span class="keyword">typedef</span> <span class="keyword">enum</span>{
|
|
<a name="l00118"></a><a class="code" href="codec_8h.html#a5c9e7f2f0c7ed209c9ca3ed0abd328bcafed7ad7ee4345930255827bff6055162">00118</a> <a class="code" href="codec_8h.html#a5c9e7f2f0c7ed209c9ca3ed0abd328bcafed7ad7ee4345930255827bff6055162" title="Chroma decimation by 2 in both the X and Y directions (4:2:0).">TH_PF_420</a>,
|
|
<a name="l00120"></a><a class="code" href="codec_8h.html#a5c9e7f2f0c7ed209c9ca3ed0abd328bca9e60af0159d42b20806d7eb4a8b833e6">00120</a> <a class="code" href="codec_8h.html#a5c9e7f2f0c7ed209c9ca3ed0abd328bca9e60af0159d42b20806d7eb4a8b833e6" title="Currently reserved.">TH_PF_RSVD</a>,
|
|
<a name="l00124"></a><a class="code" href="codec_8h.html#a5c9e7f2f0c7ed209c9ca3ed0abd328bca0271d01babf2f51512479f4a6245b9fa">00124</a> <a class="code" href="codec_8h.html#a5c9e7f2f0c7ed209c9ca3ed0abd328bca0271d01babf2f51512479f4a6245b9fa" title="Chroma decimation by 2 in the X direction (4:2:2).">TH_PF_422</a>,
|
|
<a name="l00127"></a><a class="code" href="codec_8h.html#a5c9e7f2f0c7ed209c9ca3ed0abd328bca2ac50ac048ea75501a5e0f99a63c8c86">00127</a> <a class="code" href="codec_8h.html#a5c9e7f2f0c7ed209c9ca3ed0abd328bca2ac50ac048ea75501a5e0f99a63c8c86" title="No chroma decimation (4:4:4).">TH_PF_444</a>,
|
|
<a name="l00129"></a><a class="code" href="codec_8h.html#a5c9e7f2f0c7ed209c9ca3ed0abd328bca2d6d78b9df1df086bb60f32f963a31eb">00129</a> <a class="code" href="codec_8h.html#a5c9e7f2f0c7ed209c9ca3ed0abd328bca2d6d78b9df1df086bb60f32f963a31eb" title="The total number of currently defined pixel formats.">TH_PF_NFORMATS</a>
|
|
<a name="l00130"></a>00130 }<a class="code" href="codec_8h.html#a5c9e7f2f0c7ed209c9ca3ed0abd328bc" title="The currently defined pixel format tags.">th_pixel_fmt</a>;
|
|
<a name="l00131"></a>00131
|
|
<a name="l00132"></a>00132
|
|
<a name="l00133"></a>00133
|
|
<a name="l00142"></a><a class="code" href="structth__img__plane.html">00142</a> <span class="keyword">typedef</span> <span class="keyword">struct</span>{
|
|
<a name="l00144"></a><a class="code" href="structth__img__plane.html#a58cc297a99cd4594c3d30e56f2ed6b74">00144</a> <span class="keywordtype">int</span> width;
|
|
<a name="l00146"></a><a class="code" href="structth__img__plane.html#a21aea1367894468de489d529d7eaf44d">00146</a> <span class="keywordtype">int</span> height;
|
|
<a name="l00148"></a><a class="code" href="structth__img__plane.html#ab1100f071ffee3b37e07e3222f819bad">00148</a> <span class="keywordtype">int</span> stride;
|
|
<a name="l00150"></a><a class="code" href="structth__img__plane.html#af8133681516ce88b5a201c1b4b7e6ba2">00150</a> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> *data;
|
|
<a name="l00151"></a>00151 }<a class="code" href="structth__img__plane.html" title="A buffer for a single color plane in an uncompressed image.">th_img_plane</a>;
|
|
<a name="l00152"></a>00152
|
|
<a name="l00168"></a><a class="code" href="codec_8h.html#a343f7cfabad179cc4fe527cf06873f45">00168</a> <span class="keyword">typedef</span> <a class="code" href="structth__img__plane.html" title="A buffer for a single color plane in an uncompressed image.">th_img_plane</a> <a class="code" href="codec_8h.html#a343f7cfabad179cc4fe527cf06873f45" title="A complete image buffer for an uncompressed frame.">th_ycbcr_buffer</a>[3];
|
|
<a name="l00169"></a>00169
|
|
<a name="l00204"></a><a class="code" href="structth__info.html">00204</a> <span class="keyword">typedef</span> <span class="keyword">struct</span>{
|
|
<a name="l00208"></a><a class="code" href="structth__info.html#a60b3e2cac006fee0e105a918d6a5a9f9">00208</a> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> version_major;
|
|
<a name="l00209"></a><a class="code" href="structth__info.html#abb1d4887a8079c6c5aaa6d7229f243d7">00209</a> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> version_minor;
|
|
<a name="l00210"></a><a class="code" href="structth__info.html#abfacc79b7cabae12b6ac2484f76602d3">00210</a> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> version_subminor;
|
|
<a name="l00214"></a><a class="code" href="structth__info.html#a6b8087a4d831da53011a43b8d74087a0">00214</a> ogg_uint32_t frame_width;
|
|
<a name="l00217"></a><a class="code" href="structth__info.html#a6b1adc3a16a8336a72692b0a5937214c">00217</a> ogg_uint32_t frame_height;
|
|
<a name="l00220"></a><a class="code" href="structth__info.html#a5048edf77b141dd3e9a92ca85e317345">00220</a> ogg_uint32_t pic_width;
|
|
<a name="l00223"></a><a class="code" href="structth__info.html#a775178474283c5990ba73f9ba7f6b88b">00223</a> ogg_uint32_t pic_height;
|
|
<a name="l00227"></a><a class="code" href="structth__info.html#a5b3f834bcf141564e7bb14f49101870f">00227</a> ogg_uint32_t pic_x;
|
|
<a name="l00235"></a><a class="code" href="structth__info.html#a8aacc575cab2dfe3735001c2ad32aa14">00235</a> ogg_uint32_t pic_y;
|
|
<a name="l00240"></a><a class="code" href="structth__info.html#a20606e61676f585a7e59cfc96de190a5">00240</a> ogg_uint32_t fps_numerator;
|
|
<a name="l00241"></a><a class="code" href="structth__info.html#aa619408f70c03935529f1d3eda7a3ec2">00241</a> ogg_uint32_t fps_denominator;
|
|
<a name="l00252"></a><a class="code" href="structth__info.html#a5be65dac9f75e37864cf73dd543570cd">00252</a> ogg_uint32_t aspect_numerator;
|
|
<a name="l00253"></a><a class="code" href="structth__info.html#a04c0bd477222d747a76085d8720322e2">00253</a> ogg_uint32_t aspect_denominator;
|
|
<a name="l00256"></a><a class="code" href="structth__info.html#a8c7828cd0e023e9d21108160d53659a6">00256</a> <a class="code" href="codec_8h.html#a4ce7a695ce353b1582d29b6c1ddf31a0" title="The currently defined color space tags.">th_colorspace</a> colorspace;
|
|
<a name="l00258"></a><a class="code" href="structth__info.html#a2301388ef3755c41ab12fd144c1fc54e">00258</a> <a class="code" href="codec_8h.html#a5c9e7f2f0c7ed209c9ca3ed0abd328bc" title="The currently defined pixel format tags.">th_pixel_fmt</a> pixel_fmt;
|
|
<a name="l00262"></a><a class="code" href="structth__info.html#a1d9c8d768a4ae623269f5bd8f6f7a015">00262</a> <span class="keywordtype">int</span> target_bitrate;
|
|
<a name="l00268"></a>00268 <span class="comment">/*Currently this is set so that a qi of 0 corresponds to distortions of 24</span>
|
|
<a name="l00269"></a>00269 <span class="comment"> times the JND, and each increase by 16 halves that value.</span>
|
|
<a name="l00270"></a>00270 <span class="comment"> This gives us fine discrimination at low qualities, yet effective rate</span>
|
|
<a name="l00271"></a>00271 <span class="comment"> control at high qualities.</span>
|
|
<a name="l00272"></a>00272 <span class="comment"> The qi value 63 is special, however.</span>
|
|
<a name="l00273"></a>00273 <span class="comment"> For this, the highest quality, we use one half of a JND for our threshold.</span>
|
|
<a name="l00274"></a>00274 <span class="comment"> Due to the lower bounds placed on allowable quantizers in Theora, we will</span>
|
|
<a name="l00275"></a>00275 <span class="comment"> not actually be able to achieve quality this good, but this should</span>
|
|
<a name="l00276"></a>00276 <span class="comment"> provide as close to visually lossless quality as Theora is capable of.</span>
|
|
<a name="l00277"></a>00277 <span class="comment"> We could lift the quantizer restrictions without breaking VP3.1</span>
|
|
<a name="l00278"></a>00278 <span class="comment"> compatibility, but this would result in quantized coefficients that are</span>
|
|
<a name="l00279"></a>00279 <span class="comment"> too large for the current bitstream to be able to store.</span>
|
|
<a name="l00280"></a>00280 <span class="comment"> We'd have to redesign the token syntax to store these large coefficients,</span>
|
|
<a name="l00281"></a>00281 <span class="comment"> which would make transcoding complex.*/</span>
|
|
<a name="l00282"></a><a class="code" href="structth__info.html#aa4cdcf96cb46b256821993e9a830ee02">00282</a> <span class="keywordtype">int</span> quality;
|
|
<a name="l00296"></a><a class="code" href="structth__info.html#a693ca4ab11fbc0c3f32594b4bb8766ed">00296</a> <span class="keywordtype">int</span> keyframe_granule_shift;
|
|
<a name="l00297"></a>00297 }<a class="code" href="structth__info.html" title="Theora bitstream information.">th_info</a>;
|
|
<a name="l00298"></a>00298
|
|
<a name="l00323"></a><a class="code" href="structth__comment.html">00323</a> <span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structth__comment.html" title="The comment information.">th_comment</a>{
|
|
<a name="l00325"></a><a class="code" href="structth__comment.html#ad72830e183e707bb0df423eb73b00de4">00325</a> <span class="keywordtype">char</span> **<a class="code" href="structth__comment.html#ad72830e183e707bb0df423eb73b00de4" title="The array of comment string vectors.">user_comments</a>;
|
|
<a name="l00327"></a><a class="code" href="structth__comment.html#a723dc6fdf75757e70e28eea864b10898">00327</a> <span class="keywordtype">int</span> *<a class="code" href="structth__comment.html#a723dc6fdf75757e70e28eea864b10898" title="An array of the corresponding length of each vector, in bytes.">comment_lengths</a>;
|
|
<a name="l00329"></a><a class="code" href="structth__comment.html#a5990c34932376f070ad0fc314daaeb78">00329</a> <span class="keywordtype">int</span> <a class="code" href="structth__comment.html#a5990c34932376f070ad0fc314daaeb78" title="The total number of comment strings.">comments</a>;
|
|
<a name="l00332"></a><a class="code" href="structth__comment.html#a93fbe894d23603f56843be15b0cbdba0">00332</a> <span class="keywordtype">char</span> *<a class="code" href="structth__comment.html#a93fbe894d23603f56843be15b0cbdba0" title="The null-terminated vendor string.">vendor</a>;
|
|
<a name="l00333"></a>00333 }<a class="code" href="structth__comment.html" title="The comment information.">th_comment</a>;
|
|
<a name="l00334"></a>00334
|
|
<a name="l00335"></a>00335
|
|
<a name="l00336"></a>00336
|
|
<a name="l00338"></a><a class="code" href="codec_8h.html#a6a1426d16beef8a311d7f0e9d2e96326">00338</a> <span class="keyword">typedef</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> <a class="code" href="codec_8h.html#a6a1426d16beef8a311d7f0e9d2e96326" title="A single base matrix.">th_quant_base</a>[64];
|
|
<a name="l00339"></a>00339
|
|
<a name="l00341"></a><a class="code" href="structth__quant__ranges.html">00341</a> <span class="keyword">typedef</span> <span class="keyword">struct</span>{
|
|
<a name="l00343"></a><a class="code" href="structth__quant__ranges.html#a53e5a3d7f7a112100b4b670929b3ebab">00343</a> <span class="keywordtype">int</span> nranges;
|
|
<a name="l00346"></a><a class="code" href="structth__quant__ranges.html#af3188a373bc0b8ffaa330d0ab4c1a194">00346</a> <span class="keyword">const</span> <span class="keywordtype">int</span> *sizes;
|
|
<a name="l00349"></a><a class="code" href="structth__quant__ranges.html#a52cb432f034737087492ea448de20bdb">00349</a> <span class="keyword">const</span> th_quant_base *base_matrices;
|
|
<a name="l00350"></a>00350 }<a class="code" href="structth__quant__ranges.html" title="A set of qi ranges.">th_quant_ranges</a>;
|
|
<a name="l00351"></a>00351
|
|
<a name="l00409"></a><a class="code" href="structth__quant__info.html">00409</a> <span class="keyword">typedef</span> <span class="keyword">struct</span>{
|
|
<a name="l00411"></a><a class="code" href="structth__quant__info.html#ad5c1c0d1aa4127fcf864ae747d732ed9">00411</a> ogg_uint16_t dc_scale[64];
|
|
<a name="l00413"></a><a class="code" href="structth__quant__info.html#a102f079c8f4a135dc0895c10768aeb06">00413</a> ogg_uint16_t ac_scale[64];
|
|
<a name="l00415"></a><a class="code" href="structth__quant__info.html#a4ac56bf0a45b5743b36daf85d5cd9e33">00415</a> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> loop_filter_limits[64];
|
|
<a name="l00417"></a><a class="code" href="structth__quant__info.html#a6feacf4b365e305a7df7b93d87ee7bb8">00417</a> <a class="code" href="structth__quant__ranges.html" title="A set of qi ranges.">th_quant_ranges</a> qi_ranges[2][3];
|
|
<a name="l00418"></a>00418 }<a class="code" href="structth__quant__info.html" title="A complete set of quantization parameters.">th_quant_info</a>;
|
|
<a name="l00419"></a>00419
|
|
<a name="l00420"></a>00420
|
|
<a name="l00421"></a>00421
|
|
<a name="l00423"></a><a class="code" href="codec_8h.html#a49bf449eae33c5320f0c308f32c6ae42">00423</a> <span class="preprocessor">#define TH_NHUFFMAN_TABLES (80)</span>
|
|
<a name="l00424"></a>00424 <span class="preprocessor"></span>
|
|
<a name="l00425"></a><a class="code" href="codec_8h.html#a2a44f48084e76a58cae48fb5d47cd422">00425</a> <span class="preprocessor">#define TH_NDCT_TOKENS (32)</span>
|
|
<a name="l00426"></a>00426 <span class="preprocessor"></span>
|
|
<a name="l00438"></a><a class="code" href="structth__huff__code.html">00438</a> <span class="keyword">typedef</span> <span class="keyword">struct</span>{
|
|
<a name="l00441"></a><a class="code" href="structth__huff__code.html#a6dd29e3aa5a0c5a2dd5ce1f45b1162b4">00441</a> ogg_uint32_t pattern;
|
|
<a name="l00444"></a><a class="code" href="structth__huff__code.html#aaf97b8f2f90042f7bc136a7b2bc35e35">00444</a> <span class="keywordtype">int</span> nbits;
|
|
<a name="l00445"></a>00445 }<a class="code" href="structth__huff__code.html" title="A Huffman code for a Theora DCT token.">th_huff_code</a>;
|
|
<a name="l00446"></a>00446
|
|
<a name="l00447"></a>00447
|
|
<a name="l00448"></a>00448
|
|
<a name="l00456"></a>00456 <span class="keyword">extern</span> <span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code" href="group__basefuncs.html#ga04846066738d9f2024fc9961162b2dbc" title="Retrieves a human-readable string to identify the library vendor and version.">th_version_string</a>(<span class="keywordtype">void</span>);
|
|
<a name="l00466"></a>00466 <span class="keyword">extern</span> ogg_uint32_t <a class="code" href="group__basefuncs.html#gab723a75c0f95b3eb817f7f769846016b" title="Retrieves the library version number.">th_version_number</a>(<span class="keywordtype">void</span>);
|
|
<a name="l00476"></a>00476 <span class="keyword">extern</span> ogg_int64_t <a class="code" href="group__basefuncs.html#ga95b10e76fc4c05d0240ea2dfd9fd62bd" title="Converts a granule position to an absolute frame index, starting at 0.">th_granule_frame</a>(<span class="keywordtype">void</span> *_encdec,ogg_int64_t _granpos);
|
|
<a name="l00488"></a>00488 <span class="keyword">extern</span> <span class="keywordtype">double</span> <a class="code" href="group__basefuncs.html#ga707e1e281de788af0df39ef00f3fb432" title="Converts a granule position to an absolute time in seconds.">th_granule_time</a>(<span class="keywordtype">void</span> *_encdec,ogg_int64_t _granpos);
|
|
<a name="l00498"></a>00498 <span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="group__basefuncs.html#ga02f3f38261a9b39452d8a5e6f8737cc1" title="Determines whether a Theora packet is a header or not.">th_packet_isheader</a>(ogg_packet *_op);
|
|
<a name="l00509"></a>00509 <span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="group__basefuncs.html#gafe95cfd06f0fef413266c9168a66248a" title="Determines whether a theora packet is a key frame or not.">th_packet_iskeyframe</a>(ogg_packet *_op);
|
|
<a name="l00519"></a>00519 <span class="keyword">extern</span> <span class="keywordtype">void</span> <a class="code" href="group__basefuncs.html#ga430d9c605816a6ca0bdce3a0b965b926" title="Initializes a th_info structure.">th_info_init</a>(<a class="code" href="structth__info.html" title="Theora bitstream information.">th_info</a> *_info);
|
|
<a name="l00524"></a>00524 <span class="keyword">extern</span> <span class="keywordtype">void</span> <a class="code" href="group__basefuncs.html#gab3d6441ab4a4969859ef5fd78a9e3c1c" title="Clears a th_info structure.">th_info_clear</a>(<a class="code" href="structth__info.html" title="Theora bitstream information.">th_info</a> *_info);
|
|
<a name="l00525"></a>00525
|
|
<a name="l00530"></a>00530 <span class="keyword">extern</span> <span class="keywordtype">void</span> <a class="code" href="group__basefuncs.html#ga6c8ab25988e7ea9d7b1e31a54cf58f09" title="Initialize a th_comment structure.">th_comment_init</a>(<a class="code" href="structth__comment.html" title="The comment information.">th_comment</a> *_tc);
|
|
<a name="l00540"></a>00540 <span class="keyword">extern</span> <span class="keywordtype">void</span> <a class="code" href="group__basefuncs.html#ga19a1f7b8032db957df151a34e5ac9272" title="Add a comment to an initialized th_comment structure.">th_comment_add</a>(<a class="code" href="structth__comment.html" title="The comment information.">th_comment</a> *_tc, <span class="keywordtype">char</span> *_comment);
|
|
<a name="l00551"></a>00551 <span class="keyword">extern</span> <span class="keywordtype">void</span> <a class="code" href="group__basefuncs.html#ga6c5edc201ca220a30787ca6c1ddcaeaf" title="Add a comment to an initialized th_comment structure.">th_comment_add_tag</a>(<a class="code" href="structth__comment.html" title="The comment information.">th_comment</a> *_tc,<span class="keywordtype">char</span> *_tag,<span class="keywordtype">char</span> *_val);
|
|
<a name="l00567"></a>00567 <span class="keyword">extern</span> <span class="keywordtype">char</span> *<a class="code" href="group__basefuncs.html#ga33c8b4f57a03217636d704c2ebb211fa" title="Look up a comment value by its tag.">th_comment_query</a>(<a class="code" href="structth__comment.html" title="The comment information.">th_comment</a> *_tc,<span class="keywordtype">char</span> *_tag,<span class="keywordtype">int</span> _count);
|
|
<a name="l00575"></a>00575 <span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="group__basefuncs.html#ga81d518dc4426f63ceaedcbe2668679fc" title="Look up the number of instances of a tag.">th_comment_query_count</a>(<a class="code" href="structth__comment.html" title="The comment information.">th_comment</a> *_tc,<span class="keywordtype">char</span> *_tag);
|
|
<a name="l00581"></a>00581 <span class="keyword">extern</span> <span class="keywordtype">void</span> <a class="code" href="group__basefuncs.html#gae736c1afa514947a3feb223143af95e3" title="Clears a th_comment structure.">th_comment_clear</a>(<a class="code" href="structth__comment.html" title="The comment information.">th_comment</a> *_tc);
|
|
<a name="l00584"></a>00584
|
|
<a name="l00585"></a>00585
|
|
<a name="l00586"></a>00586
|
|
<a name="l00587"></a>00587 <span class="preprocessor">#if defined(__cplusplus)</span>
|
|
<a name="l00588"></a>00588 <span class="preprocessor"></span>}
|
|
<a name="l00589"></a>00589 <span class="preprocessor">#endif</span>
|
|
<a name="l00590"></a>00590 <span class="preprocessor"></span>
|
|
<a name="l00591"></a>00591 <span class="preprocessor">#endif</span>
|
|
</pre></div></div>
|
|
<hr size="1"/><address style="text-align: right;"><small>Generated on 28 Sep 2009 for libtheora by
|
|
<a href="http://www.doxygen.org/index.html">
|
|
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.1 </small></address>
|
|
</body>
|
|
</html>
|