HEX
Server: Apache/2.4.62 (Unix) OpenSSL/1.1.1k
System: Linux ns565604.ip-54-39-133.net 4.18.0-553.50.1.el8_10.x86_64 #1 SMP Tue Apr 15 08:09:22 EDT 2025 x86_64
User: greer489 (1034)
PHP: 8.3.19
Disabled: NONE
Upload Files
File: //usr/share/doc/libvpx-devel/html/vpx__decoder_8h_source.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"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.14"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>WebM Codec SDK: vpx/vpx_decoder.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">WebM Codec SDK
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.14 -->
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
  initMenu('',false,false,'search.php','Search');
});
/* @license-end */</script>
<div id="main-nav"></div>
<div id="nav-path" class="navpath">
  <ul>
<li class="navelem"><a class="el" href="dir_ce0ab26228883e873492c15423e35021.html">vpx</a></li>  </ul>
</div>
</div><!-- top -->
<div class="header">
  <div class="headertitle">
<div class="title">vpx_decoder.h</div>  </div>
</div><!--header-->
<div class="contents">
<a href="vpx__decoder_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="comment">/*</span></div><div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="comment"> *  Copyright (c) 2010 The WebM project authors. All Rights Reserved.</span></div><div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="comment"> *  Use of this source code is governed by a BSD-style license</span></div><div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="comment"> *  that can be found in the LICENSE file in the root of the source</span></div><div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="comment"> *  tree. An additional intellectual property rights grant can be found</span></div><div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="comment"> *  in the file PATENTS.  All contributing project authors may</span></div><div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="comment"> *  be found in the AUTHORS file in the root of the source tree.</span></div><div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="preprocessor">#ifndef VPX_VPX_DECODER_H_</span></div><div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<span class="preprocessor">#define VPX_VPX_DECODER_H_</span></div><div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;</div><div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div><div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;<span class="keyword">extern</span> <span class="stringliteral">&quot;C&quot;</span> {</div><div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;</div><div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="vpx__codec_8h.html">./vpx_codec.h</a>&quot;</span></div><div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="vpx__frame__buffer_8h.html">./vpx_frame_buffer.h</a>&quot;</span></div><div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;</div><div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="group__decoder.html#ga462b459e7ae13937e1eae1776245db12">   43</a></span>&#160;<span class="preprocessor">#define VPX_DECODER_ABI_VERSION \</span></div><div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;<span class="preprocessor">  (3 + VPX_CODEC_ABI_VERSION) </span></div><div class="line"><a name="l00054"></a><span class="lineno"><a class="line" href="group__decoder.html#ga9e33b8ee81025d5fc3d01b0975ad5f96">   54</a></span>&#160;<span class="preprocessor">#define VPX_CODEC_CAP_PUT_SLICE 0x10000 </span></div><div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="group__decoder.html#ga0ef59ca8067ac1dc8c8378042277ccc8">   55</a></span>&#160;<span class="preprocessor">#define VPX_CODEC_CAP_PUT_FRAME 0x20000 </span></div><div class="line"><a name="l00056"></a><span class="lineno"><a class="line" href="group__decoder.html#ga7825ade982ab85a5583d3d8a669baa3b">   56</a></span>&#160;<span class="preprocessor">#define VPX_CODEC_CAP_POSTPROC 0x40000  </span></div><div class="line"><a name="l00058"></a><span class="lineno"><a class="line" href="group__decoder.html#gac44cd9e4722e1eb32a37c3eaec8d97b9">   58</a></span>&#160;<span class="preprocessor">#define VPX_CODEC_CAP_ERROR_CONCEALMENT 0x80000</span></div><div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;</div><div class="line"><a name="l00060"></a><span class="lineno"><a class="line" href="group__decoder.html#gae89cbd3e8089803c6f4a67fc67a8c531">   60</a></span>&#160;<span class="preprocessor">#define VPX_CODEC_CAP_INPUT_FRAGMENTS 0x100000</span></div><div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;</div><div class="line"><a name="l00070"></a><span class="lineno"><a class="line" href="group__decoder.html#gaee3981006b67dfdccad895cbef7936e6">   70</a></span>&#160;<span class="preprocessor">#define VPX_CODEC_CAP_FRAME_THREADING 0x200000</span></div><div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;</div><div class="line"><a name="l00072"></a><span class="lineno"><a class="line" href="group__decoder.html#ga32c2ab619fbb5c575546cc0b623a1a09">   72</a></span>&#160;<span class="preprocessor">#define VPX_CODEC_CAP_EXTERNAL_FRAME_BUFFER 0x400000</span></div><div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;</div><div class="line"><a name="l00074"></a><span class="lineno"><a class="line" href="group__decoder.html#ga6fe14f30254aff769412b128b29664cc">   74</a></span>&#160;<span class="preprocessor">#define VPX_CODEC_USE_POSTPROC 0x10000 </span></div><div class="line"><a name="l00076"></a><span class="lineno"><a class="line" href="group__decoder.html#ga520d7005e360202f5844982fa2392581">   76</a></span>&#160;<span class="preprocessor">#define VPX_CODEC_USE_ERROR_CONCEALMENT 0x20000</span></div><div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;</div><div class="line"><a name="l00079"></a><span class="lineno"><a class="line" href="group__decoder.html#ga378855a0318396d6e4e585bd3bacbf3f">   79</a></span>&#160;<span class="preprocessor">#define VPX_CODEC_USE_INPUT_FRAGMENTS 0x40000</span></div><div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;</div><div class="line"><a name="l00081"></a><span class="lineno"><a class="line" href="group__decoder.html#ga203295122fe98b675f94f4409d4684e0">   81</a></span>&#160;<span class="preprocessor">#define VPX_CODEC_USE_FRAME_THREADING 0x80000</span></div><div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;</div><div class="line"><a name="l00089"></a><span class="lineno"><a class="line" href="structvpx__codec__stream__info.html">   89</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structvpx__codec__stream__info.html">vpx_codec_stream_info</a> {</div><div class="line"><a name="l00090"></a><span class="lineno"><a class="line" href="structvpx__codec__stream__info.html#a8e5eb38a9042da54a20607f71591ddbf">   90</a></span>&#160;  <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="structvpx__codec__stream__info.html#a8e5eb38a9042da54a20607f71591ddbf">sz</a>;    </div><div class="line"><a name="l00091"></a><span class="lineno"><a class="line" href="structvpx__codec__stream__info.html#a957dbfa83c93d9b3dc08498a6b97c77d">   91</a></span>&#160;  <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="structvpx__codec__stream__info.html#a957dbfa83c93d9b3dc08498a6b97c77d">w</a>;     </div><div class="line"><a name="l00092"></a><span class="lineno"><a class="line" href="structvpx__codec__stream__info.html#af7a8b114547e434d182c722bdace63a0">   92</a></span>&#160;  <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="structvpx__codec__stream__info.html#af7a8b114547e434d182c722bdace63a0">h</a>;     </div><div class="line"><a name="l00093"></a><span class="lineno"><a class="line" href="structvpx__codec__stream__info.html#a8c9060997f16d43219462554c882dbd3">   93</a></span>&#160;  <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="structvpx__codec__stream__info.html#a8c9060997f16d43219462554c882dbd3">is_kf</a>; </div><div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;} <a class="code" href="group__decoder.html#ga900420e8f7cb9c1b3070b2ba7d636974">vpx_codec_stream_info_t</a>;</div><div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;</div><div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;<span class="comment">/* REQUIRED FUNCTIONS</span></div><div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;<span class="comment"> * The following functions are required to be implemented for all decoders.</span></div><div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;<span class="comment"> * They represent the base case functionality expected of all decoders.</span></div><div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;</div><div class="line"><a name="l00107"></a><span class="lineno"><a class="line" href="structvpx__codec__dec__cfg.html">  107</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structvpx__codec__dec__cfg.html">vpx_codec_dec_cfg</a> {</div><div class="line"><a name="l00108"></a><span class="lineno"><a class="line" href="structvpx__codec__dec__cfg.html#afca69d81e99ee15e1d641a639aefb7eb">  108</a></span>&#160;  <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="structvpx__codec__dec__cfg.html#afca69d81e99ee15e1d641a639aefb7eb">threads</a>; </div><div class="line"><a name="l00109"></a><span class="lineno"><a class="line" href="structvpx__codec__dec__cfg.html#acf188f8a7e6c8e1d1a7f488a76f9da42">  109</a></span>&#160;  <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="structvpx__codec__dec__cfg.html#acf188f8a7e6c8e1d1a7f488a76f9da42">w</a>;       </div><div class="line"><a name="l00110"></a><span class="lineno"><a class="line" href="structvpx__codec__dec__cfg.html#a45311c284e8371d58eb403437db5f2f9">  110</a></span>&#160;  <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="structvpx__codec__dec__cfg.html#a45311c284e8371d58eb403437db5f2f9">h</a>;       </div><div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;} <a class="code" href="group__decoder.html#ga4a2e808eb43f1e798024b5a409c484f9">vpx_codec_dec_cfg_t</a>;  </div><div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160;<a class="code" href="group__codec.html#gada1084710837ad363b92f2379dd2b8d2">vpx_codec_err_t</a> <a class="code" href="group__decoder.html#ga6435c3e8cb9408f1c0c3d052a3a577b7">vpx_codec_dec_init_ver</a>(<a class="code" href="structvpx__codec__ctx.html">vpx_codec_ctx_t</a> *ctx,</div><div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160;                                       <a class="code" href="group__codec.html#gae99c3b04f4a567a311211cce3ae6b83b">vpx_codec_iface_t</a> *iface,</div><div class="line"><a name="l00137"></a><span class="lineno">  137</span>&#160;                                       <span class="keyword">const</span> <a class="code" href="structvpx__codec__dec__cfg.html">vpx_codec_dec_cfg_t</a> *cfg,</div><div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160;                                       <a class="code" href="group__codec.html#ga3b36d5af89ddc463489fe5bde0a57877">vpx_codec_flags_t</a> flags, <span class="keywordtype">int</span> ver);</div><div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160;</div><div class="line"><a name="l00144"></a><span class="lineno"><a class="line" href="group__decoder.html#ga8c2f0b12f1bd4927eb3c68b01eab19d3">  144</a></span>&#160;<span class="preprocessor">#define vpx_codec_dec_init(ctx, iface, cfg, flags) \</span></div><div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160;<span class="preprocessor">  vpx_codec_dec_init_ver(ctx, iface, cfg, flags, VPX_DECODER_ABI_VERSION)</span></div><div class="line"><a name="l00146"></a><span class="lineno">  146</span>&#160;</div><div class="line"><a name="l00164"></a><span class="lineno">  164</span>&#160;<a class="code" href="group__codec.html#gada1084710837ad363b92f2379dd2b8d2">vpx_codec_err_t</a> <a class="code" href="group__decoder.html#gadfee4664d644175d5aac1465ef11c4b0">vpx_codec_peek_stream_info</a>(<a class="code" href="group__codec.html#gae99c3b04f4a567a311211cce3ae6b83b">vpx_codec_iface_t</a> *iface,</div><div class="line"><a name="l00165"></a><span class="lineno">  165</span>&#160;                                           <span class="keyword">const</span> uint8_t *data,</div><div class="line"><a name="l00166"></a><span class="lineno">  166</span>&#160;                                           <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> data_sz,</div><div class="line"><a name="l00167"></a><span class="lineno">  167</span>&#160;                                           <a class="code" href="structvpx__codec__stream__info.html">vpx_codec_stream_info_t</a> *si);</div><div class="line"><a name="l00168"></a><span class="lineno">  168</span>&#160;</div><div class="line"><a name="l00182"></a><span class="lineno">  182</span>&#160;<a class="code" href="group__codec.html#gada1084710837ad363b92f2379dd2b8d2">vpx_codec_err_t</a> <a class="code" href="group__decoder.html#ga552f1044d36a84e8b05ce6902e9ae8c9">vpx_codec_get_stream_info</a>(<a class="code" href="structvpx__codec__ctx.html">vpx_codec_ctx_t</a> *ctx,</div><div class="line"><a name="l00183"></a><span class="lineno">  183</span>&#160;                                          <a class="code" href="structvpx__codec__stream__info.html">vpx_codec_stream_info_t</a> *si);</div><div class="line"><a name="l00184"></a><span class="lineno">  184</span>&#160;</div><div class="line"><a name="l00215"></a><span class="lineno">  215</span>&#160;<a class="code" href="group__codec.html#gada1084710837ad363b92f2379dd2b8d2">vpx_codec_err_t</a> <a class="code" href="group__decoder.html#ga3441e157a7a69108bca9a069f2ee8e0d">vpx_codec_decode</a>(<a class="code" href="structvpx__codec__ctx.html">vpx_codec_ctx_t</a> *ctx, <span class="keyword">const</span> uint8_t *data,</div><div class="line"><a name="l00216"></a><span class="lineno">  216</span>&#160;                                 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> data_sz, <span class="keywordtype">void</span> *user_priv,</div><div class="line"><a name="l00217"></a><span class="lineno">  217</span>&#160;                                 <span class="keywordtype">long</span> deadline);</div><div class="line"><a name="l00218"></a><span class="lineno">  218</span>&#160;</div><div class="line"><a name="l00235"></a><span class="lineno">  235</span>&#160;<a class="code" href="structvpx__image.html">vpx_image_t</a> *<a class="code" href="group__decoder.html#ga0e231c3a5ce445fdb2268d741da97500">vpx_codec_get_frame</a>(<a class="code" href="structvpx__codec__ctx.html">vpx_codec_ctx_t</a> *ctx, <a class="code" href="group__codec.html#ga6ea348f76b1f8a1fe50e14db684146c6">vpx_codec_iter_t</a> *iter);</div><div class="line"><a name="l00236"></a><span class="lineno">  236</span>&#160;</div><div class="line"><a name="l00252"></a><span class="lineno"><a class="line" href="group__cap__put__frame.html#gab570c589b333dcccf61b3164cc95234e">  252</a></span>&#160;<span class="keyword">typedef</span> void (*<a class="code" href="group__cap__put__frame.html#gab570c589b333dcccf61b3164cc95234e">vpx_codec_put_frame_cb_fn_t</a>)(<span class="keywordtype">void</span> *user_priv,</div><div class="line"><a name="l00253"></a><span class="lineno">  253</span>&#160;                                            <span class="keyword">const</span> <a class="code" href="structvpx__image.html">vpx_image_t</a> *img);</div><div class="line"><a name="l00254"></a><span class="lineno">  254</span>&#160;</div><div class="line"><a name="l00270"></a><span class="lineno">  270</span>&#160;<a class="code" href="group__codec.html#gada1084710837ad363b92f2379dd2b8d2">vpx_codec_err_t</a> <a class="code" href="group__cap__put__frame.html#ga299c2d1b265a22a680f117dd686e31ce">vpx_codec_register_put_frame_cb</a>(<a class="code" href="structvpx__codec__ctx.html">vpx_codec_ctx_t</a> *ctx,</div><div class="line"><a name="l00271"></a><span class="lineno">  271</span>&#160;                                                <a class="code" href="group__cap__put__frame.html#gab570c589b333dcccf61b3164cc95234e">vpx_codec_put_frame_cb_fn_t</a> cb,</div><div class="line"><a name="l00272"></a><span class="lineno">  272</span>&#160;                                                <span class="keywordtype">void</span> *user_priv);</div><div class="line"><a name="l00273"></a><span class="lineno">  273</span>&#160;</div><div class="line"><a name="l00291"></a><span class="lineno"><a class="line" href="group__cap__put__slice.html#gaab464940e2102efa0604b7788eb2e3b1">  291</a></span>&#160;<span class="keyword">typedef</span> void (*<a class="code" href="group__cap__put__slice.html#gaab464940e2102efa0604b7788eb2e3b1">vpx_codec_put_slice_cb_fn_t</a>)(<span class="keywordtype">void</span> *user_priv,</div><div class="line"><a name="l00292"></a><span class="lineno">  292</span>&#160;                                            <span class="keyword">const</span> <a class="code" href="structvpx__image.html">vpx_image_t</a> *img,</div><div class="line"><a name="l00293"></a><span class="lineno">  293</span>&#160;                                            <span class="keyword">const</span> <a class="code" href="structvpx__image__rect.html">vpx_image_rect_t</a> *valid,</div><div class="line"><a name="l00294"></a><span class="lineno">  294</span>&#160;                                            <span class="keyword">const</span> <a class="code" href="structvpx__image__rect.html">vpx_image_rect_t</a> *update);</div><div class="line"><a name="l00295"></a><span class="lineno">  295</span>&#160;</div><div class="line"><a name="l00311"></a><span class="lineno">  311</span>&#160;<a class="code" href="group__codec.html#gada1084710837ad363b92f2379dd2b8d2">vpx_codec_err_t</a> <a class="code" href="group__cap__put__slice.html#gaffcc69a8134406fc653500759b696b8e">vpx_codec_register_put_slice_cb</a>(<a class="code" href="structvpx__codec__ctx.html">vpx_codec_ctx_t</a> *ctx,</div><div class="line"><a name="l00312"></a><span class="lineno">  312</span>&#160;                                                <a class="code" href="group__cap__put__slice.html#gaab464940e2102efa0604b7788eb2e3b1">vpx_codec_put_slice_cb_fn_t</a> cb,</div><div class="line"><a name="l00313"></a><span class="lineno">  313</span>&#160;                                                <span class="keywordtype">void</span> *user_priv);</div><div class="line"><a name="l00314"></a><span class="lineno">  314</span>&#160;</div><div class="line"><a name="l00355"></a><span class="lineno">  355</span>&#160;<a class="code" href="group__codec.html#gada1084710837ad363b92f2379dd2b8d2">vpx_codec_err_t</a> <a class="code" href="group__cap__external__frame__buffer.html#gad209e7c3f6a330d11846be70a880182c">vpx_codec_set_frame_buffer_functions</a>(</div><div class="line"><a name="l00356"></a><span class="lineno">  356</span>&#160;    <a class="code" href="structvpx__codec__ctx.html">vpx_codec_ctx_t</a> *ctx, <a class="code" href="vpx__frame__buffer_8h.html#a178a7aeb9acedc2d9e5227cea1301169">vpx_get_frame_buffer_cb_fn_t</a> cb_get,</div><div class="line"><a name="l00357"></a><span class="lineno">  357</span>&#160;    <a class="code" href="vpx__frame__buffer_8h.html#a79d9a6a92e4eb753fc2d27f50d996de1">vpx_release_frame_buffer_cb_fn_t</a> cb_release, <span class="keywordtype">void</span> *cb_priv);</div><div class="line"><a name="l00358"></a><span class="lineno">  358</span>&#160;</div><div class="line"><a name="l00362"></a><span class="lineno">  362</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div><div class="line"><a name="l00363"></a><span class="lineno">  363</span>&#160;}</div><div class="line"><a name="l00364"></a><span class="lineno">  364</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00365"></a><span class="lineno">  365</span>&#160;<span class="preprocessor">#endif  // VPX_VPX_DECODER_H_</span></div><div class="ttc" id="structvpx__image_html"><div class="ttname"><a href="structvpx__image.html">vpx_image</a></div><div class="ttdoc">Image Descriptor. </div><div class="ttdef"><b>Definition:</b> vpx_image.h:88</div></div>
<div class="ttc" id="group__cap__put__slice_html_gaab464940e2102efa0604b7788eb2e3b1"><div class="ttname"><a href="group__cap__put__slice.html#gaab464940e2102efa0604b7788eb2e3b1">vpx_codec_put_slice_cb_fn_t</a></div><div class="ttdeci">void(* vpx_codec_put_slice_cb_fn_t)(void *user_priv, const vpx_image_t *img, const vpx_image_rect_t *valid, const vpx_image_rect_t *update)</div><div class="ttdoc">put slice callback prototype </div><div class="ttdef"><b>Definition:</b> vpx_decoder.h:291</div></div>
<div class="ttc" id="structvpx__codec__dec__cfg_html_afca69d81e99ee15e1d641a639aefb7eb"><div class="ttname"><a href="structvpx__codec__dec__cfg.html#afca69d81e99ee15e1d641a639aefb7eb">vpx_codec_dec_cfg::threads</a></div><div class="ttdeci">unsigned int threads</div><div class="ttdef"><b>Definition:</b> vpx_decoder.h:108</div></div>
<div class="ttc" id="structvpx__codec__stream__info_html_a8e5eb38a9042da54a20607f71591ddbf"><div class="ttname"><a href="structvpx__codec__stream__info.html#a8e5eb38a9042da54a20607f71591ddbf">vpx_codec_stream_info::sz</a></div><div class="ttdeci">unsigned int sz</div><div class="ttdef"><b>Definition:</b> vpx_decoder.h:90</div></div>
<div class="ttc" id="structvpx__codec__stream__info_html"><div class="ttname"><a href="structvpx__codec__stream__info.html">vpx_codec_stream_info</a></div><div class="ttdoc">Stream properties. </div><div class="ttdef"><b>Definition:</b> vpx_decoder.h:89</div></div>
<div class="ttc" id="structvpx__codec__dec__cfg_html_acf188f8a7e6c8e1d1a7f488a76f9da42"><div class="ttname"><a href="structvpx__codec__dec__cfg.html#acf188f8a7e6c8e1d1a7f488a76f9da42">vpx_codec_dec_cfg::w</a></div><div class="ttdeci">unsigned int w</div><div class="ttdef"><b>Definition:</b> vpx_decoder.h:109</div></div>
<div class="ttc" id="group__cap__put__frame_html_ga299c2d1b265a22a680f117dd686e31ce"><div class="ttname"><a href="group__cap__put__frame.html#ga299c2d1b265a22a680f117dd686e31ce">vpx_codec_register_put_frame_cb</a></div><div class="ttdeci">vpx_codec_err_t vpx_codec_register_put_frame_cb(vpx_codec_ctx_t *ctx, vpx_codec_put_frame_cb_fn_t cb, void *user_priv)</div><div class="ttdoc">Register for notification of frame completion. </div></div>
<div class="ttc" id="vpx__frame__buffer_8h_html"><div class="ttname"><a href="vpx__frame__buffer_8h.html">vpx_frame_buffer.h</a></div><div class="ttdoc">Describes the decoder external frame buffer interface. </div></div>
<div class="ttc" id="group__decoder_html_gadfee4664d644175d5aac1465ef11c4b0"><div class="ttname"><a href="group__decoder.html#gadfee4664d644175d5aac1465ef11c4b0">vpx_codec_peek_stream_info</a></div><div class="ttdeci">vpx_codec_err_t vpx_codec_peek_stream_info(vpx_codec_iface_t *iface, const uint8_t *data, unsigned int data_sz, vpx_codec_stream_info_t *si)</div><div class="ttdoc">Parse stream info from a buffer. </div></div>
<div class="ttc" id="group__cap__put__slice_html_gaffcc69a8134406fc653500759b696b8e"><div class="ttname"><a href="group__cap__put__slice.html#gaffcc69a8134406fc653500759b696b8e">vpx_codec_register_put_slice_cb</a></div><div class="ttdeci">vpx_codec_err_t vpx_codec_register_put_slice_cb(vpx_codec_ctx_t *ctx, vpx_codec_put_slice_cb_fn_t cb, void *user_priv)</div><div class="ttdoc">Register for notification of slice completion. </div></div>
<div class="ttc" id="vpx__frame__buffer_8h_html_a178a7aeb9acedc2d9e5227cea1301169"><div class="ttname"><a href="vpx__frame__buffer_8h.html#a178a7aeb9acedc2d9e5227cea1301169">vpx_get_frame_buffer_cb_fn_t</a></div><div class="ttdeci">int(* vpx_get_frame_buffer_cb_fn_t)(void *priv, size_t min_size, vpx_codec_frame_buffer_t *fb)</div><div class="ttdoc">get frame buffer callback prototype </div><div class="ttdef"><b>Definition:</b> vpx_frame_buffer.h:63</div></div>
<div class="ttc" id="structvpx__image__rect_html"><div class="ttname"><a href="structvpx__image__rect.html">vpx_image_rect</a></div><div class="ttdoc">Representation of a rectangle on a surface. </div><div class="ttdef"><b>Definition:</b> vpx_image.h:135</div></div>
<div class="ttc" id="structvpx__codec__stream__info_html_a8c9060997f16d43219462554c882dbd3"><div class="ttname"><a href="structvpx__codec__stream__info.html#a8c9060997f16d43219462554c882dbd3">vpx_codec_stream_info::is_kf</a></div><div class="ttdeci">unsigned int is_kf</div><div class="ttdef"><b>Definition:</b> vpx_decoder.h:93</div></div>
<div class="ttc" id="structvpx__codec__dec__cfg_html_a45311c284e8371d58eb403437db5f2f9"><div class="ttname"><a href="structvpx__codec__dec__cfg.html#a45311c284e8371d58eb403437db5f2f9">vpx_codec_dec_cfg::h</a></div><div class="ttdeci">unsigned int h</div><div class="ttdef"><b>Definition:</b> vpx_decoder.h:110</div></div>
<div class="ttc" id="group__decoder_html_ga3441e157a7a69108bca9a069f2ee8e0d"><div class="ttname"><a href="group__decoder.html#ga3441e157a7a69108bca9a069f2ee8e0d">vpx_codec_decode</a></div><div class="ttdeci">vpx_codec_err_t vpx_codec_decode(vpx_codec_ctx_t *ctx, const uint8_t *data, unsigned int data_sz, void *user_priv, long deadline)</div><div class="ttdoc">Decode data. </div></div>
<div class="ttc" id="group__codec_html_gae99c3b04f4a567a311211cce3ae6b83b"><div class="ttname"><a href="group__codec.html#gae99c3b04f4a567a311211cce3ae6b83b">vpx_codec_iface_t</a></div><div class="ttdeci">const struct vpx_codec_iface vpx_codec_iface_t</div><div class="ttdoc">Codec interface structure. </div><div class="ttdef"><b>Definition:</b> vpx_codec.h:174</div></div>
<div class="ttc" id="group__codec_html_ga3b36d5af89ddc463489fe5bde0a57877"><div class="ttname"><a href="group__codec.html#ga3b36d5af89ddc463489fe5bde0a57877">vpx_codec_flags_t</a></div><div class="ttdeci">long vpx_codec_flags_t</div><div class="ttdoc">Initialization-time Feature Enabling. </div><div class="ttdef"><b>Definition:</b> vpx_codec.h:167</div></div>
<div class="ttc" id="group__codec_html_gada1084710837ad363b92f2379dd2b8d2"><div class="ttname"><a href="group__codec.html#gada1084710837ad363b92f2379dd2b8d2">vpx_codec_err_t</a></div><div class="ttdeci">vpx_codec_err_t</div><div class="ttdoc">Algorithm return codes. </div><div class="ttdef"><b>Definition:</b> vpx_codec.h:90</div></div>
<div class="ttc" id="group__decoder_html_ga900420e8f7cb9c1b3070b2ba7d636974"><div class="ttname"><a href="group__decoder.html#ga900420e8f7cb9c1b3070b2ba7d636974">vpx_codec_stream_info_t</a></div><div class="ttdeci">struct vpx_codec_stream_info vpx_codec_stream_info_t</div><div class="ttdoc">Stream properties. </div></div>
<div class="ttc" id="group__cap__put__frame_html_gab570c589b333dcccf61b3164cc95234e"><div class="ttname"><a href="group__cap__put__frame.html#gab570c589b333dcccf61b3164cc95234e">vpx_codec_put_frame_cb_fn_t</a></div><div class="ttdeci">void(* vpx_codec_put_frame_cb_fn_t)(void *user_priv, const vpx_image_t *img)</div><div class="ttdoc">put frame callback prototype </div><div class="ttdef"><b>Definition:</b> vpx_decoder.h:252</div></div>
<div class="ttc" id="structvpx__codec__stream__info_html_a957dbfa83c93d9b3dc08498a6b97c77d"><div class="ttname"><a href="structvpx__codec__stream__info.html#a957dbfa83c93d9b3dc08498a6b97c77d">vpx_codec_stream_info::w</a></div><div class="ttdeci">unsigned int w</div><div class="ttdef"><b>Definition:</b> vpx_decoder.h:91</div></div>
<div class="ttc" id="group__decoder_html_ga6435c3e8cb9408f1c0c3d052a3a577b7"><div class="ttname"><a href="group__decoder.html#ga6435c3e8cb9408f1c0c3d052a3a577b7">vpx_codec_dec_init_ver</a></div><div class="ttdeci">vpx_codec_err_t vpx_codec_dec_init_ver(vpx_codec_ctx_t *ctx, vpx_codec_iface_t *iface, const vpx_codec_dec_cfg_t *cfg, vpx_codec_flags_t flags, int ver)</div><div class="ttdoc">Initialize a decoder instance. </div></div>
<div class="ttc" id="vpx__frame__buffer_8h_html_a79d9a6a92e4eb753fc2d27f50d996de1"><div class="ttname"><a href="vpx__frame__buffer_8h.html#a79d9a6a92e4eb753fc2d27f50d996de1">vpx_release_frame_buffer_cb_fn_t</a></div><div class="ttdeci">int(* vpx_release_frame_buffer_cb_fn_t)(void *priv, vpx_codec_frame_buffer_t *fb)</div><div class="ttdoc">release frame buffer callback prototype </div><div class="ttdef"><b>Definition:</b> vpx_frame_buffer.h:76</div></div>
<div class="ttc" id="group__decoder_html_ga552f1044d36a84e8b05ce6902e9ae8c9"><div class="ttname"><a href="group__decoder.html#ga552f1044d36a84e8b05ce6902e9ae8c9">vpx_codec_get_stream_info</a></div><div class="ttdeci">vpx_codec_err_t vpx_codec_get_stream_info(vpx_codec_ctx_t *ctx, vpx_codec_stream_info_t *si)</div><div class="ttdoc">Return information about the current stream. </div></div>
<div class="ttc" id="vpx__codec_8h_html"><div class="ttname"><a href="vpx__codec_8h.html">vpx_codec.h</a></div><div class="ttdoc">Describes the codec algorithm interface to applications. </div></div>
<div class="ttc" id="group__cap__external__frame__buffer_html_gad209e7c3f6a330d11846be70a880182c"><div class="ttname"><a href="group__cap__external__frame__buffer.html#gad209e7c3f6a330d11846be70a880182c">vpx_codec_set_frame_buffer_functions</a></div><div class="ttdeci">vpx_codec_err_t vpx_codec_set_frame_buffer_functions(vpx_codec_ctx_t *ctx, vpx_get_frame_buffer_cb_fn_t cb_get, vpx_release_frame_buffer_cb_fn_t cb_release, void *cb_priv)</div><div class="ttdoc">Pass in external frame buffers for the decoder to use. </div></div>
<div class="ttc" id="structvpx__codec__stream__info_html_af7a8b114547e434d182c722bdace63a0"><div class="ttname"><a href="structvpx__codec__stream__info.html#af7a8b114547e434d182c722bdace63a0">vpx_codec_stream_info::h</a></div><div class="ttdeci">unsigned int h</div><div class="ttdef"><b>Definition:</b> vpx_decoder.h:92</div></div>
<div class="ttc" id="structvpx__codec__dec__cfg_html"><div class="ttname"><a href="structvpx__codec__dec__cfg.html">vpx_codec_dec_cfg</a></div><div class="ttdoc">Initialization Configurations. </div><div class="ttdef"><b>Definition:</b> vpx_decoder.h:107</div></div>
<div class="ttc" id="group__codec_html_ga6ea348f76b1f8a1fe50e14db684146c6"><div class="ttname"><a href="group__codec.html#ga6ea348f76b1f8a1fe50e14db684146c6">vpx_codec_iter_t</a></div><div class="ttdeci">const void * vpx_codec_iter_t</div><div class="ttdoc">Iterator. </div><div class="ttdef"><b>Definition:</b> vpx_codec.h:187</div></div>
<div class="ttc" id="group__decoder_html_ga0e231c3a5ce445fdb2268d741da97500"><div class="ttname"><a href="group__decoder.html#ga0e231c3a5ce445fdb2268d741da97500">vpx_codec_get_frame</a></div><div class="ttdeci">vpx_image_t * vpx_codec_get_frame(vpx_codec_ctx_t *ctx, vpx_codec_iter_t *iter)</div><div class="ttdoc">Decoded frames iterator. </div></div>
<div class="ttc" id="group__decoder_html_ga4a2e808eb43f1e798024b5a409c484f9"><div class="ttname"><a href="group__decoder.html#ga4a2e808eb43f1e798024b5a409c484f9">vpx_codec_dec_cfg_t</a></div><div class="ttdeci">struct vpx_codec_dec_cfg vpx_codec_dec_cfg_t</div><div class="ttdoc">Initialization Configurations. </div></div>
<div class="ttc" id="structvpx__codec__ctx_html"><div class="ttname"><a href="structvpx__codec__ctx.html">vpx_codec_ctx</a></div><div class="ttdoc">Codec context structure. </div><div class="ttdef"><b>Definition:</b> vpx_codec.h:197</div></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.14
</small></address>
</body>
</html>