blob: a815ed65732642e4a68c3db58169a8f05e67e97c [file] [log] [blame]
<!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.13"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>VA-API: VAEncFEIMBCodeH264 Struct Reference</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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.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">VA-API
&#160;<span id="projectnumber">2.19.0</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.13 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="structVAEncFEIMBCodeH264-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">VAEncFEIMBCodeH264 Struct Reference<div class="ingroups"><a class="el" href="group__api__fei__h264.html">H.264 FEI encoding API</a></div></div> </div>
</div><!--header-->
<div class="contents">
<p>FEI output.
<a href="structVAEncFEIMBCodeH264.html#details">More...</a></p>
<p><code>#include &lt;<a class="el" href="va__fei__h264_8h_source.html">va_fei_h264.h</a>&gt;</code></p>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>FEI output. </p>
<p>Motion vector output is per 4x4 block. For each 4x4 block there is a pair of MVs for RefPicList0 and RefPicList1 and each MV is 4 bytes including horizontal and vertical directions. Depending on Subblock partition, for the shape that is not 4x4, the MV is replicated so each 4x4 block has a pair of MVs. The 16x16 block has 32 MVs (128 bytes). 0x8000 is used for correspondent intra block. The 16x16 block is in raster scan order, within the 16x16 block, each 4x4 block MV is ordered as below in memory. The buffer size shall be greater than or equal to the number of 16x16 blocks multiplied by 128 bytes. Note that, when separate ENC and PAK is enabled, the exact layout of this buffer is needed for PAK input. App can reuse this buffer, or copy to a different buffer as PAK input. Layout is defined as Generic motion vector data structure <a class="el" href="structVAMotionVector.html" title="Generic motion vector data structure. ">VAMotionVector</a> </p><h2>16x16 Block </h2>
<h2>| 1 | 2 | 5 | 6 | </h2>
<h2>| 3 | 4 | 7 | 8 | </h2>
<h2>| 9 | 10 | 13 | 14 | </h2>
<h2>| 11 | 12 | 15 | 16 | </h2>
<p><a class="el" href="structVAEncFEIMBCodeH264.html" title="FEI output. ">VAEncFEIMBCodeH264</a> defines the data structure for VAEncFEIMBCodeBufferType per 16x16 MB block. it is output buffer of ENC and ENC_PAK modes, it's also input buffer of PAK mode. The 16x16 block is in raster scan order. Buffer size shall not be less than the number of 16x16 blocks multiplied by sizeof(VAEncFEIMBCodeH264). Note that, when separate ENC and PAK is enabled, the exact layout of this buffer is needed for PAK input. App can reuse this buffer, or copy to a different buffer as PAK input, reserved elements must not be modified when used as PAK input. </p>
</div><hr/>The documentation for this struct was generated from the following file:<ul>
<li><a class="el" href="va__fei__h264_8h_source.html">va_fei_h264.h</a></li>
</ul>
</div><!-- contents -->
<hr class="footer"/><address class="footer"><small>
Generated for VA-API by&#160;<a href="http://www.doxygen.org/index.html"><img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13</small></address>
</body>
</html>