blob: 00282ed29a77cafefe82076db869ed192cc17044 [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: Core API</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.13.0.pre1</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>
</div><!-- top -->
<!-- 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 class="header">
<div class="summary">
<a href="#nested-classes">Classes</a> &#124;
<a href="#define-members">Macros</a> &#124;
<a href="#typedef-members">Typedefs</a> &#124;
<a href="#enum-members">Enumerations</a> &#124;
<a href="#func-members">Functions</a> </div>
<div class="headertitle">
<div class="title">Core API</div> </div>
</div><!--header-->
<div class="contents">
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
Classes</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structVAMotionVector.html">VAMotionVector</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Generic motion vector data structure. <a href="structVAMotionVector.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structVAConfigAttrib.html">VAConfigAttrib</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">union &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="unionVAConfigAttribValMaxFrameSize.html">VAConfigAttribValMaxFrameSize</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Attribute value for VAConfigAttribMaxFrameSize. <a href="unionVAConfigAttribValMaxFrameSize.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">union &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="unionVAConfigAttribValEncJPEG.html">VAConfigAttribValEncJPEG</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Attribute value for VAConfigAttribEncJPEG. <a href="unionVAConfigAttribValEncJPEG.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">union &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="unionVAConfigAttribValEncROI.html">VAConfigAttribValEncROI</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Attribute value for VAConfigAttribEncROI. <a href="unionVAConfigAttribValEncROI.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">union &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="unionVAConfigAttribValEncRateControlExt.html">VAConfigAttribValEncRateControlExt</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Attribute value for VAConfigAttribEncRateControlExt. <a href="unionVAConfigAttribValEncRateControlExt.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">union &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="unionVAConfigAttribValMultipleFrame.html">VAConfigAttribValMultipleFrame</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Attribute value for VAConfigAttribMultipleFrame. <a href="unionVAConfigAttribValMultipleFrame.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">union &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="unionVAConfigAttribValContextPriority.html">VAConfigAttribValContextPriority</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structVAGenericValue.html">VAGenericValue</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Generic value. <a href="structVAGenericValue.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structVASurfaceAttrib.html">VASurfaceAttrib</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Surface attribute. <a href="structVASurfaceAttrib.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structVASurfaceAttribExternalBuffers.html">VASurfaceAttribExternalBuffers</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="structVASurfaceAttribExternalBuffers.html" title="VASurfaceAttribExternalBuffers structure for the VASurfaceAttribExternalBufferDescriptor attribute...">VASurfaceAttribExternalBuffers</a> structure for the VASurfaceAttribExternalBufferDescriptor attribute. <a href="structVASurfaceAttribExternalBuffers.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structVAContextParameterUpdateBuffer.html">VAContextParameterUpdateBuffer</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">update the context parameter this structure is used to update context parameters, such as priority of the context backend driver should keep the parameter unchanged if there no new parameter updated. <a href="structVAContextParameterUpdateBuffer.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structVAEncryptionSegmentInfo.html">VAEncryptionSegmentInfo</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">structure for encrypted segment info. <a href="structVAEncryptionSegmentInfo.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structVAEncryptionParameters.html">VAEncryptionParameters</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Encryption parameters buffer for VAEncryptionParameterBufferType. <a href="structVAEncryptionParameters.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structVAProcessingRateParameterEnc.html">VAProcessingRateParameterEnc</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structVAProcessingRateParameterDec.html">VAProcessingRateParameterDec</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structVAEncPackedHeaderParameterBuffer.html">VAEncPackedHeaderParameterBuffer</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Packed header parameter. <a href="structVAEncPackedHeaderParameterBuffer.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structVAEncMiscParameterBuffer.html">VAEncMiscParameterBuffer</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structVAEncMiscParameterTemporalLayerStructure.html">VAEncMiscParameterTemporalLayerStructure</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Temporal layer Structure. <a href="structVAEncMiscParameterTemporalLayerStructure.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structVAEncMiscParameterRateControl.html">VAEncMiscParameterRateControl</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Rate control parameters. <a href="structVAEncMiscParameterRateControl.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structVAEncMiscParameterFrameRate.html">VAEncMiscParameterFrameRate</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structVAEncMiscParameterMaxSliceSize.html">VAEncMiscParameterMaxSliceSize</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structVAEncMiscParameterHRD.html">VAEncMiscParameterHRD</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structVAEncMiscParameterBufferMaxFrameSize.html">VAEncMiscParameterBufferMaxFrameSize</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Defines a maximum frame size (in bits). <a href="structVAEncMiscParameterBufferMaxFrameSize.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structVAEncMiscParameterBufferMultiPassFrameSize.html">VAEncMiscParameterBufferMultiPassFrameSize</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Maximum frame size (in bytes) settings for multiple pass. <a href="structVAEncMiscParameterBufferMultiPassFrameSize.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structVAEncMiscParameterBufferQualityLevel.html">VAEncMiscParameterBufferQualityLevel</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Encoding quality level. <a href="structVAEncMiscParameterBufferQualityLevel.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structVAEncMiscParameterQuantization.html">VAEncMiscParameterQuantization</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Quantization settings for encoding. <a href="structVAEncMiscParameterQuantization.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structVAEncMiscParameterSkipFrame.html">VAEncMiscParameterSkipFrame</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Encoding skip frame. <a href="structVAEncMiscParameterSkipFrame.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structVAEncROI.html">VAEncROI</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Encoding region-of-interest (ROI). <a href="structVAEncROI.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structVAEncMiscParameterParallelRateControl.html">VAEncMiscParameterParallelRateControl</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Attribute value for VAConfigAttribEncParallelRateControl. <a href="structVAEncMiscParameterParallelRateControl.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structVAEncMiscParameterEncQuality.html">VAEncMiscParameterEncQuality</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structVAEncMiscParameterCustomRoundingControl.html">VAEncMiscParameterCustomRoundingControl</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Custom Encoder Rounding Offset Control. Application may use this structure to set customized rounding offset parameters for quantization. Valid when <code>VAConfigAttribCustomRoundingControl</code> equals 1. <a href="structVAEncMiscParameterCustomRoundingControl.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structVAHuffmanTableBufferJPEGBaseline.html">VAHuffmanTableBufferJPEGBaseline</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Huffman table for JPEG decoding. <a href="structVAHuffmanTableBufferJPEGBaseline.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structVAIQMatrixBufferMPEG2.html">VAIQMatrixBufferMPEG2</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structVASliceParameterBufferMPEG2.html">VASliceParameterBufferMPEG2</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structVAMacroblockParameterBufferMPEG2.html">VAMacroblockParameterBufferMPEG2</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structVAPictureParameterBufferMPEG4.html">VAPictureParameterBufferMPEG4</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structVAIQMatrixBufferMPEG4.html">VAIQMatrixBufferMPEG4</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structVASliceParameterBufferMPEG4.html">VASliceParameterBufferMPEG4</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structVAPictureParameterBufferVC1.html">VAPictureParameterBufferVC1</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structVASliceParameterBufferVC1.html">VASliceParameterBufferVC1</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structVAPictureParameterBufferH264.html">VAPictureParameterBufferH264</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structVAIQMatrixBufferH264.html">VAIQMatrixBufferH264</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structVASliceParameterBufferH264.html">VASliceParameterBufferH264</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structVAEncSliceParameterBuffer.html">VAEncSliceParameterBuffer</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Encode Slice Parameter Buffer. <a href="structVAEncSliceParameterBuffer.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structVACodedBufferSegment.html">VACodedBufferSegment</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Coded buffer segment. <a href="structVACodedBufferSegment.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structVABufferInfo.html">VABufferInfo</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">VA buffer information. <a href="structVABufferInfo.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structVASurfaceDecodeMBErrors.html">VASurfaceDecodeMBErrors</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
Macros</h2></td></tr>
<tr class="memitem:ga1058e4dfef31ee2711f080c5a5d12463"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga1058e4dfef31ee2711f080c5a5d12463">VA_STATUS_SUCCESS</a>&#160;&#160;&#160;0x00000000</td></tr>
<tr class="separator:ga1058e4dfef31ee2711f080c5a5d12463"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaa721c40f7082f2af3df09e26be6cf37b"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gaa721c40f7082f2af3df09e26be6cf37b">VA_STATUS_ERROR_INVALID_VALUE</a>&#160;&#160;&#160;0x00000019</td></tr>
<tr class="memdesc:gaa721c40f7082f2af3df09e26be6cf37b"><td class="mdescLeft">&#160;</td><td class="mdescRight">An invalid/unsupported value was supplied. <a href="#gaa721c40f7082f2af3df09e26be6cf37b">More...</a><br /></td></tr>
<tr class="separator:gaa721c40f7082f2af3df09e26be6cf37b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gacc4468b6c4055d0ec1475150ddd7fddb"><td class="memItemLeft" align="right" valign="top"><a id="gacc4468b6c4055d0ec1475150ddd7fddb"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gacc4468b6c4055d0ec1475150ddd7fddb">VA_STATUS_ERROR_UNSUPPORTED_FILTER</a>&#160;&#160;&#160;0x00000020</td></tr>
<tr class="memdesc:gacc4468b6c4055d0ec1475150ddd7fddb"><td class="mdescLeft">&#160;</td><td class="mdescRight">An unsupported filter was supplied. <br /></td></tr>
<tr class="separator:gacc4468b6c4055d0ec1475150ddd7fddb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga6398758c29fc5f4bd82631206b4de198"><td class="memItemLeft" align="right" valign="top"><a id="ga6398758c29fc5f4bd82631206b4de198"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga6398758c29fc5f4bd82631206b4de198">VA_STATUS_ERROR_INVALID_FILTER_CHAIN</a>&#160;&#160;&#160;0x00000021</td></tr>
<tr class="memdesc:ga6398758c29fc5f4bd82631206b4de198"><td class="mdescLeft">&#160;</td><td class="mdescRight">An invalid filter chain was supplied. <br /></td></tr>
<tr class="separator:ga6398758c29fc5f4bd82631206b4de198"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga8e8233a63792eed022f9e66ee51e8daf"><td class="memItemLeft" align="right" valign="top"><a id="ga8e8233a63792eed022f9e66ee51e8daf"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga8e8233a63792eed022f9e66ee51e8daf">VA_STATUS_ERROR_HW_BUSY</a>&#160;&#160;&#160;0x00000022</td></tr>
<tr class="memdesc:ga8e8233a63792eed022f9e66ee51e8daf"><td class="mdescLeft">&#160;</td><td class="mdescRight">Indicate HW busy (e.g. run multiple encoding simultaneously). <br /></td></tr>
<tr class="separator:ga8e8233a63792eed022f9e66ee51e8daf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga3ad6349d24e84f50d5238056535c4812"><td class="memItemLeft" align="right" valign="top"><a id="ga3ad6349d24e84f50d5238056535c4812"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga3ad6349d24e84f50d5238056535c4812">VA_STATUS_ERROR_UNSUPPORTED_MEMORY_TYPE</a>&#160;&#160;&#160;0x00000024</td></tr>
<tr class="memdesc:ga3ad6349d24e84f50d5238056535c4812"><td class="mdescLeft">&#160;</td><td class="mdescRight">An unsupported memory type was supplied. <br /></td></tr>
<tr class="separator:ga3ad6349d24e84f50d5238056535c4812"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaa57e27884cad7b54a64395ff76b546d9"><td class="memItemLeft" align="right" valign="top"><a id="gaa57e27884cad7b54a64395ff76b546d9"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gaa57e27884cad7b54a64395ff76b546d9">VA_STATUS_ERROR_NOT_ENOUGH_BUFFER</a>&#160;&#160;&#160;0x00000025</td></tr>
<tr class="memdesc:gaa57e27884cad7b54a64395ff76b546d9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Indicate allocated buffer size is not enough for input or output. <br /></td></tr>
<tr class="separator:gaa57e27884cad7b54a64395ff76b546d9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga3909e6bd8d85b54238f4083751f3dbbf"><td class="memItemLeft" align="right" valign="top"><a id="ga3909e6bd8d85b54238f4083751f3dbbf"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga3909e6bd8d85b54238f4083751f3dbbf">VA_STATUS_ERROR_TIMEDOUT</a>&#160;&#160;&#160;0x00000026</td></tr>
<tr class="memdesc:ga3909e6bd8d85b54238f4083751f3dbbf"><td class="mdescLeft">&#160;</td><td class="mdescRight">Indicate an operation isn't completed because time-out interval elapsed. <br /></td></tr>
<tr class="separator:ga3909e6bd8d85b54238f4083751f3dbbf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gab5ad65ad225291300cb5bd59e7528858"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gab5ad65ad225291300cb5bd59e7528858">VA_FRAME_PICTURE</a>&#160;&#160;&#160;0x00000000</td></tr>
<tr class="separator:gab5ad65ad225291300cb5bd59e7528858"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga6fa356c030c9d8b8507a20cda3e71a4a"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga6fa356c030c9d8b8507a20cda3e71a4a">VA_ENABLE_BLEND</a>&#160;&#160;&#160;0x00000004 /* video area blend with the constant color */</td></tr>
<tr class="separator:ga6fa356c030c9d8b8507a20cda3e71a4a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gabc4afddf8913d08d48454955be3e6d03"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gabc4afddf8913d08d48454955be3e6d03">VA_CLEAR_DRAWABLE</a>&#160;&#160;&#160;0x00000008</td></tr>
<tr class="separator:gabc4afddf8913d08d48454955be3e6d03"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga6f807dfeeb70b935d83d16fbaf5f2e92"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga6f807dfeeb70b935d83d16fbaf5f2e92">VA_SRC_COLOR_MASK</a>&#160;&#160;&#160;0x000000f0</td></tr>
<tr class="separator:ga6f807dfeeb70b935d83d16fbaf5f2e92"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaee1ba68046de52cfbd207d3cc8214201"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gaee1ba68046de52cfbd207d3cc8214201">VA_FILTER_SCALING_DEFAULT</a>&#160;&#160;&#160;0x00000000</td></tr>
<tr class="separator:gaee1ba68046de52cfbd207d3cc8214201"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga76b44bf3d5b003e149f84a4953bf430e"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga76b44bf3d5b003e149f84a4953bf430e">VA_FILTER_INTERPOLATION_DEFAULT</a>&#160;&#160;&#160;0x00000000</td></tr>
<tr class="separator:ga76b44bf3d5b003e149f84a4953bf430e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaaa4fb20d1c2606379cccfa562c2ebb3b"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gaaa4fb20d1c2606379cccfa562c2ebb3b">VA_PADDING_LOW</a>&#160;&#160;&#160;4</td></tr>
<tr class="separator:gaaa4fb20d1c2606379cccfa562c2ebb3b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga9f1d4f1f14aaf5dc289cf4d11c746c59"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga9f1d4f1f14aaf5dc289cf4d11c746c59">VA_EXEC_SYNC</a>&#160;&#160;&#160;0x0</td></tr>
<tr class="separator:ga9f1d4f1f14aaf5dc289cf4d11c746c59"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gafcb3bbf17dd0467c6919d6dacea2cb58"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gafcb3bbf17dd0467c6919d6dacea2cb58">VA_EXEC_ASYNC</a>&#160;&#160;&#160;0x1</td></tr>
<tr class="separator:gafcb3bbf17dd0467c6919d6dacea2cb58"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga156a739d58e21452b0ffafa4c0a40333"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga156a739d58e21452b0ffafa4c0a40333">VA_EXEC_MODE_DEFAULT</a>&#160;&#160;&#160;0x0</td></tr>
<tr class="separator:ga156a739d58e21452b0ffafa4c0a40333"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga552bdf90e54e30a5a29a29f02f756e34"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga552bdf90e54e30a5a29a29f02f756e34">VA_FEATURE_NOT_SUPPORTED</a>&#160;&#160;&#160;0</td></tr>
<tr class="separator:ga552bdf90e54e30a5a29a29f02f756e34"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga5917cb64fd2f69489751c856ad710609"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga5917cb64fd2f69489751c856ad710609">VA_FEATURE_SUPPORTED</a>&#160;&#160;&#160;1</td></tr>
<tr class="separator:ga5917cb64fd2f69489751c856ad710609"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga986974c9d57736c66314932140edfba5"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga986974c9d57736c66314932140edfba5">VA_FEATURE_REQUIRED</a>&#160;&#160;&#160;2</td></tr>
<tr class="separator:ga986974c9d57736c66314932140edfba5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaff38bc6c01b65c6e9d473e40bdde9df6"><td class="memItemLeft" align="right" valign="top"><a id="gaff38bc6c01b65c6e9d473e40bdde9df6"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gaff38bc6c01b65c6e9d473e40bdde9df6">VA_RT_FORMAT_YUV420</a>&#160;&#160;&#160;0x00000001</td></tr>
<tr class="memdesc:gaff38bc6c01b65c6e9d473e40bdde9df6"><td class="mdescLeft">&#160;</td><td class="mdescRight">YUV 4:2:0 8-bit. <br /></td></tr>
<tr class="separator:gaff38bc6c01b65c6e9d473e40bdde9df6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga7e1cba11274068c72acf7ad252c75d1c"><td class="memItemLeft" align="right" valign="top"><a id="ga7e1cba11274068c72acf7ad252c75d1c"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga7e1cba11274068c72acf7ad252c75d1c">VA_RT_FORMAT_YUV422</a>&#160;&#160;&#160;0x00000002</td></tr>
<tr class="memdesc:ga7e1cba11274068c72acf7ad252c75d1c"><td class="mdescLeft">&#160;</td><td class="mdescRight">YUV 4:2:2 8-bit. <br /></td></tr>
<tr class="separator:ga7e1cba11274068c72acf7ad252c75d1c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga4a6376511a5b8b8c6848700e93f0fe7c"><td class="memItemLeft" align="right" valign="top"><a id="ga4a6376511a5b8b8c6848700e93f0fe7c"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga4a6376511a5b8b8c6848700e93f0fe7c">VA_RT_FORMAT_YUV444</a>&#160;&#160;&#160;0x00000004</td></tr>
<tr class="memdesc:ga4a6376511a5b8b8c6848700e93f0fe7c"><td class="mdescLeft">&#160;</td><td class="mdescRight">YUV 4:4:4 8-bit. <br /></td></tr>
<tr class="separator:ga4a6376511a5b8b8c6848700e93f0fe7c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga67932ccfccdf30ffad8ea8fea33d032d"><td class="memItemLeft" align="right" valign="top"><a id="ga67932ccfccdf30ffad8ea8fea33d032d"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga67932ccfccdf30ffad8ea8fea33d032d">VA_RT_FORMAT_YUV411</a>&#160;&#160;&#160;0x00000008</td></tr>
<tr class="memdesc:ga67932ccfccdf30ffad8ea8fea33d032d"><td class="mdescLeft">&#160;</td><td class="mdescRight">YUV 4:1:1 8-bit. <br /></td></tr>
<tr class="separator:ga67932ccfccdf30ffad8ea8fea33d032d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga11b713ea2c855c7a16676bcce95be159"><td class="memItemLeft" align="right" valign="top"><a id="ga11b713ea2c855c7a16676bcce95be159"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga11b713ea2c855c7a16676bcce95be159">VA_RT_FORMAT_YUV400</a>&#160;&#160;&#160;0x00000010</td></tr>
<tr class="memdesc:ga11b713ea2c855c7a16676bcce95be159"><td class="mdescLeft">&#160;</td><td class="mdescRight">Greyscale 8-bit. <br /></td></tr>
<tr class="separator:ga11b713ea2c855c7a16676bcce95be159"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gadbe9fc438a72830f1eb803d6ca9bc448"><td class="memItemLeft" align="right" valign="top"><a id="gadbe9fc438a72830f1eb803d6ca9bc448"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gadbe9fc438a72830f1eb803d6ca9bc448">VA_RT_FORMAT_YUV420_10</a>&#160;&#160;&#160;0x00000100</td></tr>
<tr class="memdesc:gadbe9fc438a72830f1eb803d6ca9bc448"><td class="mdescLeft">&#160;</td><td class="mdescRight">YUV 4:2:0 10-bit. <br /></td></tr>
<tr class="separator:gadbe9fc438a72830f1eb803d6ca9bc448"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga72154a55274c6776a7d160f79a2aed5e"><td class="memItemLeft" align="right" valign="top"><a id="ga72154a55274c6776a7d160f79a2aed5e"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga72154a55274c6776a7d160f79a2aed5e">VA_RT_FORMAT_YUV422_10</a>&#160;&#160;&#160;0x00000200</td></tr>
<tr class="memdesc:ga72154a55274c6776a7d160f79a2aed5e"><td class="mdescLeft">&#160;</td><td class="mdescRight">YUV 4:2:2 10-bit. <br /></td></tr>
<tr class="separator:ga72154a55274c6776a7d160f79a2aed5e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gab9cb54233ebf4b4d29f2f1a58c44f903"><td class="memItemLeft" align="right" valign="top"><a id="gab9cb54233ebf4b4d29f2f1a58c44f903"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gab9cb54233ebf4b4d29f2f1a58c44f903">VA_RT_FORMAT_YUV444_10</a>&#160;&#160;&#160;0x00000400</td></tr>
<tr class="memdesc:gab9cb54233ebf4b4d29f2f1a58c44f903"><td class="mdescLeft">&#160;</td><td class="mdescRight">YUV 4:4:4 10-bit. <br /></td></tr>
<tr class="separator:gab9cb54233ebf4b4d29f2f1a58c44f903"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga17c7dde4fa898c84a04a46f18a8c54a2"><td class="memItemLeft" align="right" valign="top"><a id="ga17c7dde4fa898c84a04a46f18a8c54a2"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga17c7dde4fa898c84a04a46f18a8c54a2">VA_RT_FORMAT_YUV420_12</a>&#160;&#160;&#160;0x00001000</td></tr>
<tr class="memdesc:ga17c7dde4fa898c84a04a46f18a8c54a2"><td class="mdescLeft">&#160;</td><td class="mdescRight">YUV 4:2:0 12-bit. <br /></td></tr>
<tr class="separator:ga17c7dde4fa898c84a04a46f18a8c54a2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga87ca542b9ca5399eca16972eefe33825"><td class="memItemLeft" align="right" valign="top"><a id="ga87ca542b9ca5399eca16972eefe33825"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga87ca542b9ca5399eca16972eefe33825">VA_RT_FORMAT_YUV422_12</a>&#160;&#160;&#160;0x00002000</td></tr>
<tr class="memdesc:ga87ca542b9ca5399eca16972eefe33825"><td class="mdescLeft">&#160;</td><td class="mdescRight">YUV 4:2:2 12-bit. <br /></td></tr>
<tr class="separator:ga87ca542b9ca5399eca16972eefe33825"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga2c26ce10afa4ea787fc28ca49eb58571"><td class="memItemLeft" align="right" valign="top"><a id="ga2c26ce10afa4ea787fc28ca49eb58571"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga2c26ce10afa4ea787fc28ca49eb58571">VA_RT_FORMAT_YUV444_12</a>&#160;&#160;&#160;0x00004000</td></tr>
<tr class="memdesc:ga2c26ce10afa4ea787fc28ca49eb58571"><td class="mdescLeft">&#160;</td><td class="mdescRight">YUV 4:4:4 12-bit. <br /></td></tr>
<tr class="separator:ga2c26ce10afa4ea787fc28ca49eb58571"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga6e53916f03f78a027cd3180f75ee9328"><td class="memItemLeft" align="right" valign="top"><a id="ga6e53916f03f78a027cd3180f75ee9328"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga6e53916f03f78a027cd3180f75ee9328">VA_RT_FORMAT_RGB16</a>&#160;&#160;&#160;0x00010000</td></tr>
<tr class="memdesc:ga6e53916f03f78a027cd3180f75ee9328"><td class="mdescLeft">&#160;</td><td class="mdescRight">Packed RGB, 16 bits per pixel. <br /></td></tr>
<tr class="separator:ga6e53916f03f78a027cd3180f75ee9328"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga9cc9b579c351f1ab639a1d8f6b8e4d84"><td class="memItemLeft" align="right" valign="top"><a id="ga9cc9b579c351f1ab639a1d8f6b8e4d84"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga9cc9b579c351f1ab639a1d8f6b8e4d84">VA_RT_FORMAT_RGB32</a>&#160;&#160;&#160;0x00020000</td></tr>
<tr class="memdesc:ga9cc9b579c351f1ab639a1d8f6b8e4d84"><td class="mdescLeft">&#160;</td><td class="mdescRight">Packed RGB, 32 bits per pixel, 8 bits per colour sample. <br /></td></tr>
<tr class="separator:ga9cc9b579c351f1ab639a1d8f6b8e4d84"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga5c4f381e8bbb8ad7240c5c8029d37c72"><td class="memItemLeft" align="right" valign="top"><a id="ga5c4f381e8bbb8ad7240c5c8029d37c72"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga5c4f381e8bbb8ad7240c5c8029d37c72">VA_RT_FORMAT_RGBP</a>&#160;&#160;&#160;0x00100000</td></tr>
<tr class="memdesc:ga5c4f381e8bbb8ad7240c5c8029d37c72"><td class="mdescLeft">&#160;</td><td class="mdescRight">Planar RGB, 8 bits per sample. <br /></td></tr>
<tr class="separator:ga5c4f381e8bbb8ad7240c5c8029d37c72"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaf3f42b30603c169ed89cf71d5c82f9b3"><td class="memItemLeft" align="right" valign="top"><a id="gaf3f42b30603c169ed89cf71d5c82f9b3"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gaf3f42b30603c169ed89cf71d5c82f9b3">VA_RT_FORMAT_RGB32_10</a>&#160;&#160;&#160;0x00200000</td></tr>
<tr class="memdesc:gaf3f42b30603c169ed89cf71d5c82f9b3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Packed RGB, 32 bits per pixel, 10 bits per colour sample. <br /></td></tr>
<tr class="separator:gaf3f42b30603c169ed89cf71d5c82f9b3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae1c4093783110899a548372bd63bf161"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gae1c4093783110899a548372bd63bf161">VA_RT_FORMAT_RGB32_10BPP</a>&#160;&#160;&#160;<a class="el" href="group__api__core.html#gaf3f42b30603c169ed89cf71d5c82f9b3">VA_RT_FORMAT_RGB32_10</a></td></tr>
<tr class="separator:gae1c4093783110899a548372bd63bf161"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaf0a40b7ab606d8e855c7a8934d7bf48a"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gaf0a40b7ab606d8e855c7a8934d7bf48a">VA_RT_FORMAT_YUV420_10BPP</a>&#160;&#160;&#160;<a class="el" href="group__api__core.html#gadbe9fc438a72830f1eb803d6ca9bc448">VA_RT_FORMAT_YUV420_10</a></td></tr>
<tr class="separator:gaf0a40b7ab606d8e855c7a8934d7bf48a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga13a541a66a4585335e74a2e2c9f1a5da"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga13a541a66a4585335e74a2e2c9f1a5da">VA_ATTRIB_NOT_SUPPORTED</a>&#160;&#160;&#160;0x80000000</td></tr>
<tr class="separator:ga13a541a66a4585335e74a2e2c9f1a5da"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga6836ddbf3178e7cbf49599a820fe17a9"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga6836ddbf3178e7cbf49599a820fe17a9">VA_ENCRYPTION_TYPE_FULLSAMPLE_CTR</a>&#160;&#160;&#160;0x00000001 /* AES CTR fullsample */</td></tr>
<tr class="separator:ga6836ddbf3178e7cbf49599a820fe17a9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga3fd349cafd4b89440b25e690f4bbba25"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga3fd349cafd4b89440b25e690f4bbba25">VA_SLICE_DATA_FLAG_ALL</a>&#160;&#160;&#160;0x00 /* whole slice is in the buffer */</td></tr>
<tr class="separator:ga3fd349cafd4b89440b25e690f4bbba25"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga7437a12fa7c585fa7a51313c640652c0"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga7437a12fa7c585fa7a51313c640652c0">VA_CODED_BUF_STATUS_PICTURE_AVE_QP_MASK</a>&#160;&#160;&#160;0xff</td></tr>
<tr class="separator:ga7437a12fa7c585fa7a51313c640652c0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae10f59ca74aee7a081a25c01f8366717"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gae10f59ca74aee7a081a25c01f8366717">VA_CODED_BUF_STATUS_FRAME_SIZE_OVERFLOW</a>&#160;&#160;&#160;0x1000</td></tr>
<tr class="memdesc:gae10f59ca74aee7a081a25c01f8366717"><td class="mdescLeft">&#160;</td><td class="mdescRight">The frame has exceeded the maximum requested size. <a href="#gae10f59ca74aee7a081a25c01f8366717">More...</a><br /></td></tr>
<tr class="separator:gae10f59ca74aee7a081a25c01f8366717"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae895fa8a22356910d2473390ee19c20b"><td class="memItemLeft" align="right" valign="top"><a id="gae895fa8a22356910d2473390ee19c20b"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gae895fa8a22356910d2473390ee19c20b">VA_CODED_BUF_STATUS_BAD_BITSTREAM</a>&#160;&#160;&#160;0x8000</td></tr>
<tr class="memdesc:gae895fa8a22356910d2473390ee19c20b"><td class="mdescLeft">&#160;</td><td class="mdescRight">the bitstream is bad or corrupt. <br /></td></tr>
<tr class="separator:gae895fa8a22356910d2473390ee19c20b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga947a17699652aaa2b09ad722e35d7b9e"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga947a17699652aaa2b09ad722e35d7b9e">VA_CODED_BUF_STATUS_NUMBER_PASSES_MASK</a>&#160;&#160;&#160;0xf000000</td></tr>
<tr class="memdesc:ga947a17699652aaa2b09ad722e35d7b9e"><td class="mdescLeft">&#160;</td><td class="mdescRight">The coded buffer segment status contains frame encoding passes number. <a href="#ga947a17699652aaa2b09ad722e35d7b9e">More...</a><br /></td></tr>
<tr class="separator:ga947a17699652aaa2b09ad722e35d7b9e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga9d8677743988fe043f524e3477f25099"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga9d8677743988fe043f524e3477f25099">VA_CODED_BUF_STATUS_SINGLE_NALU</a>&#160;&#160;&#160;0x10000000</td></tr>
<tr class="memdesc:ga9d8677743988fe043f524e3477f25099"><td class="mdescLeft">&#160;</td><td class="mdescRight">The coded buffer segment contains a single NAL unit. <a href="#ga9d8677743988fe043f524e3477f25099">More...</a><br /></td></tr>
<tr class="separator:ga9d8677743988fe043f524e3477f25099"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gac0e360011669d9189528618e5d585d99"><td class="memItemLeft" align="right" valign="top"><a id="gac0e360011669d9189528618e5d585d99"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gac0e360011669d9189528618e5d585d99">VA_TIMEOUT_INFINITE</a>&#160;&#160;&#160;0xFFFFFFFFFFFFFFFF</td></tr>
<tr class="memdesc:gac0e360011669d9189528618e5d585d99"><td class="mdescLeft">&#160;</td><td class="mdescRight">Indicates an infinite timeout. <br /></td></tr>
<tr class="separator:gac0e360011669d9189528618e5d585d99"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gad955482c2432c19c3db3d05ffa1bb1e3"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gad955482c2432c19c3db3d05ffa1bb1e3">VA_FOURCC</a>(ch0, ch1, ch2, ch3)</td></tr>
<tr class="separator:gad955482c2432c19c3db3d05ffa1bb1e3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gad017021aea788f8b8a2165719605c627"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gad017021aea788f8b8a2165719605c627">VA_FOURCC_NV12</a>&#160;&#160;&#160;0x3231564E</td></tr>
<tr class="separator:gad017021aea788f8b8a2165719605c627"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga1e7c5b8eb5acbee401b56264f1b4149e"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga1e7c5b8eb5acbee401b56264f1b4149e">VA_FOURCC_NV21</a>&#160;&#160;&#160;0x3132564E</td></tr>
<tr class="separator:ga1e7c5b8eb5acbee401b56264f1b4149e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gad9e41915a24cf645acb5ceca8498368a"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gad9e41915a24cf645acb5ceca8498368a">VA_FOURCC_AI44</a>&#160;&#160;&#160;0x34344149</td></tr>
<tr class="separator:gad9e41915a24cf645acb5ceca8498368a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga7f856f264dbf0ffacf6d19f52c87b662"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga7f856f264dbf0ffacf6d19f52c87b662">VA_FOURCC_RGBA</a>&#160;&#160;&#160;0x41424752</td></tr>
<tr class="separator:ga7f856f264dbf0ffacf6d19f52c87b662"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga58d2ee5e78e566dea8c091331554d1ab"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga58d2ee5e78e566dea8c091331554d1ab">VA_FOURCC_RGBX</a>&#160;&#160;&#160;0x58424752</td></tr>
<tr class="separator:ga58d2ee5e78e566dea8c091331554d1ab"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae517b1ac9199ab8638ee4af132451f73"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gae517b1ac9199ab8638ee4af132451f73">VA_FOURCC_BGRA</a>&#160;&#160;&#160;0x41524742</td></tr>
<tr class="separator:gae517b1ac9199ab8638ee4af132451f73"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga12233a1f6cbd11a970159b79fbc7c179"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga12233a1f6cbd11a970159b79fbc7c179">VA_FOURCC_BGRX</a>&#160;&#160;&#160;0x58524742</td></tr>
<tr class="separator:ga12233a1f6cbd11a970159b79fbc7c179"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gafd8946dd39a18c7c5d35b45ac7cc140c"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gafd8946dd39a18c7c5d35b45ac7cc140c">VA_FOURCC_ARGB</a>&#160;&#160;&#160;0x42475241</td></tr>
<tr class="separator:gafd8946dd39a18c7c5d35b45ac7cc140c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gacd3c115dbd9b80791a2ad6db08617141"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gacd3c115dbd9b80791a2ad6db08617141">VA_FOURCC_XRGB</a>&#160;&#160;&#160;0x42475258</td></tr>
<tr class="separator:gacd3c115dbd9b80791a2ad6db08617141"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaa445a3d08bb22285f5f35f706d740c50"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gaa445a3d08bb22285f5f35f706d740c50">VA_FOURCC_ABGR</a>&#160;&#160;&#160;0x52474241</td></tr>
<tr class="separator:gaa445a3d08bb22285f5f35f706d740c50"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga08134a315490c1c0e1d5eaedca8e4f9c"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga08134a315490c1c0e1d5eaedca8e4f9c">VA_FOURCC_XBGR</a>&#160;&#160;&#160;0x52474258</td></tr>
<tr class="separator:ga08134a315490c1c0e1d5eaedca8e4f9c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga9588390eb559be613894cbc091cf1e43"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga9588390eb559be613894cbc091cf1e43">VA_FOURCC_UYVY</a>&#160;&#160;&#160;0x59565955</td></tr>
<tr class="separator:ga9588390eb559be613894cbc091cf1e43"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga37316eecf03734173036b876c491af91"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga37316eecf03734173036b876c491af91">VA_FOURCC_YUY2</a>&#160;&#160;&#160;0x32595559</td></tr>
<tr class="separator:ga37316eecf03734173036b876c491af91"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga2abba001ddcd7f23a7372d98a68afc89"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga2abba001ddcd7f23a7372d98a68afc89">VA_FOURCC_AYUV</a>&#160;&#160;&#160;0x56555941</td></tr>
<tr class="separator:ga2abba001ddcd7f23a7372d98a68afc89"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga7d9433e65d21b8fcc85386b1f603ce71"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga7d9433e65d21b8fcc85386b1f603ce71">VA_FOURCC_NV11</a>&#160;&#160;&#160;0x3131564e</td></tr>
<tr class="separator:ga7d9433e65d21b8fcc85386b1f603ce71"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gab2ef88aa914142b406fc50f223e644f3"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gab2ef88aa914142b406fc50f223e644f3">VA_FOURCC_YV12</a>&#160;&#160;&#160;0x32315659</td></tr>
<tr class="separator:gab2ef88aa914142b406fc50f223e644f3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gabc6e0c598a4df8c4c75a5d674e84a86b"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gabc6e0c598a4df8c4c75a5d674e84a86b">VA_FOURCC_P208</a>&#160;&#160;&#160;0x38303250</td></tr>
<tr class="separator:gabc6e0c598a4df8c4c75a5d674e84a86b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga927a384d9a4166218e37eea93b91926d"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga927a384d9a4166218e37eea93b91926d">VA_FOURCC_I420</a>&#160;&#160;&#160;0x30323449</td></tr>
<tr class="separator:ga927a384d9a4166218e37eea93b91926d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga563c133bcdb464e95b5416f1c2579cc9"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga563c133bcdb464e95b5416f1c2579cc9">VA_FOURCC_YV24</a>&#160;&#160;&#160;0x34325659</td></tr>
<tr class="separator:ga563c133bcdb464e95b5416f1c2579cc9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga84a5975f3a4f66ded024d8998d8ca1ff"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga84a5975f3a4f66ded024d8998d8ca1ff">VA_FOURCC_YV32</a>&#160;&#160;&#160;0x32335659</td></tr>
<tr class="separator:ga84a5975f3a4f66ded024d8998d8ca1ff"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gacbb9bb3f3702ca56ee77bc505e6bfd76"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gacbb9bb3f3702ca56ee77bc505e6bfd76">VA_FOURCC_Y800</a>&#160;&#160;&#160;0x30303859</td></tr>
<tr class="separator:gacbb9bb3f3702ca56ee77bc505e6bfd76"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaa199dbf58fb225f4e612ce156fce87ce"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gaa199dbf58fb225f4e612ce156fce87ce">VA_FOURCC_IMC3</a>&#160;&#160;&#160;0x33434D49</td></tr>
<tr class="separator:gaa199dbf58fb225f4e612ce156fce87ce"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga681ccd40b9afae021cdeb806f39f2293"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga681ccd40b9afae021cdeb806f39f2293">VA_FOURCC_411P</a>&#160;&#160;&#160;0x50313134</td></tr>
<tr class="separator:ga681ccd40b9afae021cdeb806f39f2293"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gac3c45435c72d84429b2f257cd77713fd"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gac3c45435c72d84429b2f257cd77713fd">VA_FOURCC_411R</a>&#160;&#160;&#160;0x52313134</td></tr>
<tr class="separator:gac3c45435c72d84429b2f257cd77713fd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga7b54cc35d77a6a0fe16de9206c0e3c05"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga7b54cc35d77a6a0fe16de9206c0e3c05">VA_FOURCC_422H</a>&#160;&#160;&#160;0x48323234</td></tr>
<tr class="separator:ga7b54cc35d77a6a0fe16de9206c0e3c05"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gacaa4a7596c39f077da952e20d83f7bee"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gacaa4a7596c39f077da952e20d83f7bee">VA_FOURCC_422V</a>&#160;&#160;&#160;0x56323234</td></tr>
<tr class="separator:gacaa4a7596c39f077da952e20d83f7bee"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gab97c13e91207458675234cffa294bcd8"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gab97c13e91207458675234cffa294bcd8">VA_FOURCC_444P</a>&#160;&#160;&#160;0x50343434</td></tr>
<tr class="separator:gab97c13e91207458675234cffa294bcd8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaaac3890eb5fd8fb5444956165afb9608"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gaaac3890eb5fd8fb5444956165afb9608">VA_FOURCC_RGBP</a>&#160;&#160;&#160;0x50424752</td></tr>
<tr class="separator:gaaac3890eb5fd8fb5444956165afb9608"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga3dae1b647d3d32cea6f9104cbc7f3cfe"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga3dae1b647d3d32cea6f9104cbc7f3cfe">VA_FOURCC_BGRP</a>&#160;&#160;&#160;0x50524742</td></tr>
<tr class="separator:ga3dae1b647d3d32cea6f9104cbc7f3cfe"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga3f5864281ce1c3ef62cae1f1f1d6552c"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga3f5864281ce1c3ef62cae1f1f1d6552c">VA_FOURCC_RGB565</a>&#160;&#160;&#160;0x36314752</td></tr>
<tr class="separator:ga3f5864281ce1c3ef62cae1f1f1d6552c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaf26ac95b4a001189552a890bd8ba9b1c"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gaf26ac95b4a001189552a890bd8ba9b1c">VA_FOURCC_BGR565</a>&#160;&#160;&#160;0x36314742</td></tr>
<tr class="separator:gaf26ac95b4a001189552a890bd8ba9b1c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga730635180d1dd50463b264a53fed8dde"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga730635180d1dd50463b264a53fed8dde">VA_FOURCC_Y210</a>&#160;&#160;&#160;0x30313259</td></tr>
<tr class="separator:ga730635180d1dd50463b264a53fed8dde"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaa75ff7c6ed66afae2b0dff1b891ce0db"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gaa75ff7c6ed66afae2b0dff1b891ce0db">VA_FOURCC_Y212</a>&#160;&#160;&#160;0x32313259</td></tr>
<tr class="separator:gaa75ff7c6ed66afae2b0dff1b891ce0db"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga414b3d49d1e9b19699bf29d72b2afeb5"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga414b3d49d1e9b19699bf29d72b2afeb5">VA_FOURCC_Y216</a>&#160;&#160;&#160;0x36313259</td></tr>
<tr class="separator:ga414b3d49d1e9b19699bf29d72b2afeb5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gac16f27a9610065a3c5031c2552cbf220"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gac16f27a9610065a3c5031c2552cbf220">VA_FOURCC_Y410</a>&#160;&#160;&#160;0x30313459</td></tr>
<tr class="separator:gac16f27a9610065a3c5031c2552cbf220"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae494c1e515d472b0f62b47abfde3b8e2"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gae494c1e515d472b0f62b47abfde3b8e2">VA_FOURCC_Y412</a>&#160;&#160;&#160;0x32313459</td></tr>
<tr class="separator:gae494c1e515d472b0f62b47abfde3b8e2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga33f92599d153a9e36ff65b66c2f61ed9"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga33f92599d153a9e36ff65b66c2f61ed9">VA_FOURCC_Y416</a>&#160;&#160;&#160;0x36313459</td></tr>
<tr class="separator:ga33f92599d153a9e36ff65b66c2f61ed9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga25a7cdd0745dbd007b3b65fb8b55777d"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga25a7cdd0745dbd007b3b65fb8b55777d">VA_FOURCC_YV16</a>&#160;&#160;&#160;0x36315659</td></tr>
<tr class="separator:ga25a7cdd0745dbd007b3b65fb8b55777d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga8c02ad279c93468632ad85169156057e"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga8c02ad279c93468632ad85169156057e">VA_FOURCC_P010</a>&#160;&#160;&#160;0x30313050</td></tr>
<tr class="separator:ga8c02ad279c93468632ad85169156057e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga5587560692e1b4dd9c1a31562fc4c309"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga5587560692e1b4dd9c1a31562fc4c309">VA_FOURCC_P012</a>&#160;&#160;&#160;0x32313050</td></tr>
<tr class="separator:ga5587560692e1b4dd9c1a31562fc4c309"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gacf9899f55f39e50f77dc5965f03a5d03"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gacf9899f55f39e50f77dc5965f03a5d03">VA_FOURCC_P016</a>&#160;&#160;&#160;0x36313050</td></tr>
<tr class="separator:gacf9899f55f39e50f77dc5965f03a5d03"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga200e07025ef1447c3e33f3534f987911"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga200e07025ef1447c3e33f3534f987911">VA_FOURCC_I010</a>&#160;&#160;&#160;0x30313049</td></tr>
<tr class="separator:ga200e07025ef1447c3e33f3534f987911"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga6ed94da0b1543db329f4c8385370103a"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga6ed94da0b1543db329f4c8385370103a">VA_FOURCC_IYUV</a>&#160;&#160;&#160;0x56555949</td></tr>
<tr class="separator:ga6ed94da0b1543db329f4c8385370103a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga00c430c1562118c5ee7cd8c004f496b3"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga00c430c1562118c5ee7cd8c004f496b3">VA_FOURCC_A2R10G10B10</a>&#160;&#160;&#160;0x30335241 /* VA_FOURCC('A','R','3','0') */</td></tr>
<tr class="separator:ga00c430c1562118c5ee7cd8c004f496b3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga573bbff5818402f73dd9bc073b49b46c"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga573bbff5818402f73dd9bc073b49b46c">VA_FOURCC_A2B10G10R10</a>&#160;&#160;&#160;0x30334241 /* VA_FOURCC('A','B','3','0') */</td></tr>
<tr class="separator:ga573bbff5818402f73dd9bc073b49b46c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gad7c2a6c7c8af57eebf3ee786d32f27e3"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gad7c2a6c7c8af57eebf3ee786d32f27e3">VA_FOURCC_X2R10G10B10</a>&#160;&#160;&#160;0x30335258 /* VA_FOURCC('X','R','3','0') */</td></tr>
<tr class="separator:gad7c2a6c7c8af57eebf3ee786d32f27e3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaccacd791cd681155531cdf7a26fb56b1"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gaccacd791cd681155531cdf7a26fb56b1">VA_FOURCC_X2B10G10R10</a>&#160;&#160;&#160;0x30334258 /* VA_FOURCC('X','B','3','0') */</td></tr>
<tr class="separator:gaccacd791cd681155531cdf7a26fb56b1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaedd954937b36b4bb7717a88b8538904b"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gaedd954937b36b4bb7717a88b8538904b">VA_FOURCC_Y8</a>&#160;&#160;&#160;0x20203859</td></tr>
<tr class="separator:gaedd954937b36b4bb7717a88b8538904b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gace862315b8ad74021fc05424afaeaf73"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gace862315b8ad74021fc05424afaeaf73">VA_FOURCC_Y16</a>&#160;&#160;&#160;0x20363159</td></tr>
<tr class="separator:gace862315b8ad74021fc05424afaeaf73"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga739b622bec47ad0a3e3414595781554c"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga739b622bec47ad0a3e3414595781554c">VA_FOURCC_VYUY</a>&#160;&#160;&#160;0x59555956</td></tr>
<tr class="separator:ga739b622bec47ad0a3e3414595781554c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga32279f0e2de86641cab440120e884280"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga32279f0e2de86641cab440120e884280">VA_FOURCC_YVYU</a>&#160;&#160;&#160;0x55595659</td></tr>
<tr class="separator:ga32279f0e2de86641cab440120e884280"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaf381ffb104032f02d5cbf3550c0aabd5"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gaf381ffb104032f02d5cbf3550c0aabd5">VA_FOURCC_ARGB64</a>&#160;&#160;&#160;0x34475241</td></tr>
<tr class="separator:gaf381ffb104032f02d5cbf3550c0aabd5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gacdc713382bb52e675f9d988493631283"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gacdc713382bb52e675f9d988493631283">VA_FOURCC_ABGR64</a>&#160;&#160;&#160;0x34474241</td></tr>
<tr class="separator:gacdc713382bb52e675f9d988493631283"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga8df81eeda033139c8ed283e7eca7cc6f"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga8df81eeda033139c8ed283e7eca7cc6f">VA_FOURCC_XYUV</a>&#160;&#160;&#160;0x56555958</td></tr>
<tr class="separator:ga8df81eeda033139c8ed283e7eca7cc6f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga93dfe25c489bf1ab5416a9a96d80c5a0"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga93dfe25c489bf1ab5416a9a96d80c5a0">VA_SUBPICTURE_CHROMA_KEYING</a>&#160;&#160;&#160;0x0001</td></tr>
<tr class="separator:ga93dfe25c489bf1ab5416a9a96d80c5a0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaf2b89a27c2f6f5af305d54a6f25a4a01"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gaf2b89a27c2f6f5af305d54a6f25a4a01">VA_ROTATION_NONE</a>&#160;&#160;&#160;0x00000000</td></tr>
<tr class="separator:gaf2b89a27c2f6f5af305d54a6f25a4a01"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
Typedefs</h2></td></tr>
<tr class="memitem:gad534cae750fddc9ad30d0dc267deffa3"><td class="memItemLeft" align="right" valign="top">typedef void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a></td></tr>
<tr class="separator:gad534cae750fddc9ad30d0dc267deffa3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga26fd64e5d522004ce30dc8159a57f240"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga26fd64e5d522004ce30dc8159a57f240">VAMessageCallback</a>) (void *user_context, const char *message)</td></tr>
<tr class="separator:ga26fd64e5d522004ce30dc8159a57f240"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga832b992b8a244ddedf180915e1b19f94"><td class="memItemLeft" align="right" valign="top">typedef void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga832b992b8a244ddedf180915e1b19f94">VANativeDisplay</a></td></tr>
<tr class="separator:ga832b992b8a244ddedf180915e1b19f94"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gab3ee763380573fdd05464ca16cf46d1d"><td class="memItemLeft" align="right" valign="top">typedef unsigned int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gab3ee763380573fdd05464ca16cf46d1d">VAGenericID</a></td></tr>
<tr class="separator:gab3ee763380573fdd05464ca16cf46d1d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga4af336e410aefeb4ca4315e2c7cbd653"><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="group__api__core.html#gab3ee763380573fdd05464ca16cf46d1d">VAGenericID</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga4af336e410aefeb4ca4315e2c7cbd653">VAContextID</a></td></tr>
<tr class="separator:ga4af336e410aefeb4ca4315e2c7cbd653"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga3d1141c32fee94fc0139695ef8a923ea"><td class="memItemLeft" align="right" valign="top"><a id="ga3d1141c32fee94fc0139695ef8a923ea"></a>
typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga3d1141c32fee94fc0139695ef8a923ea">VAGenericFunc</a>) (void)</td></tr>
<tr class="memdesc:ga3d1141c32fee94fc0139695ef8a923ea"><td class="mdescLeft">&#160;</td><td class="mdescRight">Generic function type. <br /></td></tr>
<tr class="separator:ga3d1141c32fee94fc0139695ef8a923ea"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gad26441ddf2f4441ef65bbefa4662607f"><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="group__api__core.html#gab3ee763380573fdd05464ca16cf46d1d">VAGenericID</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gad26441ddf2f4441ef65bbefa4662607f">VABufferID</a></td></tr>
<tr class="separator:gad26441ddf2f4441ef65bbefa4662607f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga13b0f287a77772b1f8b07dd555230cce"><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="group__api__core.html#gab3ee763380573fdd05464ca16cf46d1d">VAGenericID</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga13b0f287a77772b1f8b07dd555230cce">VASubpictureID</a></td></tr>
<tr class="separator:ga13b0f287a77772b1f8b07dd555230cce"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
Enumerations</h2></td></tr>
<tr class="memitem:gaa4851f694a48c22af8877f5cfbb11bde"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gaa4851f694a48c22af8877f5cfbb11bde">VAProfile</a> { <a class="el" href="group__api__core.html#ggaa4851f694a48c22af8877f5cfbb11bdea7bf6725096e5927f03deb20205e1adbc">VAProfileNone</a> = -1
, <a class="el" href="group__api__core.html#gga8ed0af9059a2d06bca1a54e774e679eaa86d498fbfde9d7a847864d6b6c67e2aa">va_deprecated_enum</a> = 5
, <a class="el" href="group__api__core.html#ggaa4851f694a48c22af8877f5cfbb11bdea5edf00635e9f778c2e64ecc2e8b98b34">VAProfileProtected</a> = 35
}</td></tr>
<tr class="separator:gaa4851f694a48c22af8877f5cfbb11bde"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga5f3bcbb940e51be2e84097463557321e"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga5f3bcbb940e51be2e84097463557321e">VAEntrypoint</a> { , <br />
&#160;&#160;<a class="el" href="group__api__core.html#gga5f3bcbb940e51be2e84097463557321ead8ac61c5e6d11ed2a34a332655b774ab">VAEntrypointVideoProc</a> = 10,
<a class="el" href="group__api__core.html#gga5f3bcbb940e51be2e84097463557321ea64b89833bc0c5106ad3edcfd62348e1b">VAEntrypointFEI</a> = 11,
<a class="el" href="group__api__core.html#gga5f3bcbb940e51be2e84097463557321ead9de31161ebcd23b348d1be0f7da37c0">VAEntrypointStats</a> = 12,
<a class="el" href="group__api__core.html#gga5f3bcbb940e51be2e84097463557321ea694df146749b5d6b70ec9908e7161ba4">VAEntrypointProtectedTEEComm</a> = 13,
<br />
&#160;&#160;<a class="el" href="group__api__core.html#gga5f3bcbb940e51be2e84097463557321eafbd8339b9116b5edad5274a141c8dfd3">VAEntrypointProtectedContent</a> = 14
<br />
}</td></tr>
<tr class="separator:ga5f3bcbb940e51be2e84097463557321e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga2c3be94ce142fb92a4bf93e9b1b4fa01"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga2c3be94ce142fb92a4bf93e9b1b4fa01">VAConfigAttribType</a> { , <br />
&#160;&#160;<a class="el" href="group__api__core.html#gga2c3be94ce142fb92a4bf93e9b1b4fa01a5ef86d4585ba9fc22e0f1908a1a778a8">VAConfigAttribDecSliceMode</a> = 6,
<a class="el" href="group__api__core.html#gga2c3be94ce142fb92a4bf93e9b1b4fa01a5b746c21e32b666d1ecb80a7cf181bcc">VAConfigAttribDecJPEG</a> = 7,
<a class="el" href="group__api__core.html#gga2c3be94ce142fb92a4bf93e9b1b4fa01abd1e51160543e655f2992cb9f9370281">VAConfigAttribDecProcessing</a> = 8,
<a class="el" href="group__api__core.html#gga2c3be94ce142fb92a4bf93e9b1b4fa01af64b4c14c0b3709dafe38068eedd5ac8">VAConfigAttribEncPackedHeaders</a> = 10,
<br />
&#160;&#160;<a class="el" href="group__api__core.html#gga2c3be94ce142fb92a4bf93e9b1b4fa01ace3bc7b87026cb9d0c06c8fd87288a93">VAConfigAttribEncInterlaced</a> = 11,
<a class="el" href="group__api__core.html#gga2c3be94ce142fb92a4bf93e9b1b4fa01a9633aa64b8b6fba51f7c08e824bcf143">VAConfigAttribEncMaxRefFrames</a> = 13,
<a class="el" href="group__api__core.html#gga2c3be94ce142fb92a4bf93e9b1b4fa01a5e84af515c1824966aea655cf74292fb">VAConfigAttribEncMaxSlices</a> = 14,
<a class="el" href="group__api__core.html#gga2c3be94ce142fb92a4bf93e9b1b4fa01a8e783e50798795cdda06ff76b05bcbcf">VAConfigAttribEncSliceStructure</a> = 15,
<br />
&#160;&#160;<a class="el" href="group__api__core.html#gga2c3be94ce142fb92a4bf93e9b1b4fa01a1441ecd7aeb8af9c1f98304cad603c90">VAConfigAttribEncMacroblockInfo</a> = 16,
<a class="el" href="group__api__core.html#gga2c3be94ce142fb92a4bf93e9b1b4fa01aa88d632c8c071d0899b09197087e4906">VAConfigAttribMaxPictureWidth</a> = 18,
<a class="el" href="group__api__core.html#gga2c3be94ce142fb92a4bf93e9b1b4fa01a0d21a48495393f1499fbb49470dccc1a">VAConfigAttribMaxPictureHeight</a> = 19,
<a class="el" href="group__api__core.html#gga2c3be94ce142fb92a4bf93e9b1b4fa01ace2a4a15828bc88b3a51a4dd3b3b4375">VAConfigAttribEncJPEG</a> = 20,
<br />
&#160;&#160;<a class="el" href="group__api__core.html#gga2c3be94ce142fb92a4bf93e9b1b4fa01a712c0cb5474a2dbd4047418ca6226d05">VAConfigAttribEncQualityRange</a> = 21,
<a class="el" href="group__api__core.html#gga2c3be94ce142fb92a4bf93e9b1b4fa01a3a26f7a11484ef550ecc476f5b7b19a0">VAConfigAttribEncQuantization</a> = 22,
<a class="el" href="group__api__core.html#gga2c3be94ce142fb92a4bf93e9b1b4fa01ab778a031e25a5b971423d1562815130a">VAConfigAttribEncIntraRefresh</a> = 23,
<a class="el" href="group__api__core.html#gga2c3be94ce142fb92a4bf93e9b1b4fa01a62f2483748f09833a9ba1ecc57fad098">VAConfigAttribEncSkipFrame</a> = 24,
<br />
&#160;&#160;<a class="el" href="group__api__core.html#gga2c3be94ce142fb92a4bf93e9b1b4fa01a79844b332bc11795b0578a759fa99483">VAConfigAttribEncROI</a> = 25,
<a class="el" href="group__api__core.html#gga2c3be94ce142fb92a4bf93e9b1b4fa01aa14c8b88424e1e23f90654f5cda57f96">VAConfigAttribEncRateControlExt</a> = 26,
<a class="el" href="group__api__core.html#gga2c3be94ce142fb92a4bf93e9b1b4fa01a06a0d8fe970dd8314e385d5746f7adf6">VAConfigAttribProcessingRate</a> = 27,
<a class="el" href="group__api__core.html#gga2c3be94ce142fb92a4bf93e9b1b4fa01af91236f0f6d9d000ab12f9c0206aee58">VAConfigAttribEncDirtyRect</a> = 28,
<br />
&#160;&#160;<a class="el" href="group__api__core.html#gga2c3be94ce142fb92a4bf93e9b1b4fa01ac84407886c0309b159cbe4046464225e">VAConfigAttribEncParallelRateControl</a> = 29,
<a class="el" href="group__api__core.html#gga2c3be94ce142fb92a4bf93e9b1b4fa01a769dfd34309929f3d6236db59e77bb05">VAConfigAttribEncDynamicScaling</a> = 30,
<a class="el" href="group__api__core.html#gga2c3be94ce142fb92a4bf93e9b1b4fa01a27f88f63de9b809d52dabfc6e1680e03">VAConfigAttribFrameSizeToleranceSupport</a> = 31,
<a class="el" href="group__api__core.html#gga2c3be94ce142fb92a4bf93e9b1b4fa01ac744d89de3e1428f3acfdd38e02b718c">VAConfigAttribFEIFunctionType</a> = 32,
<br />
&#160;&#160;<a class="el" href="group__api__core.html#gga2c3be94ce142fb92a4bf93e9b1b4fa01a7a9b510fc99714e0d14ca42000e9d792">VAConfigAttribFEIMVPredictors</a> = 33,
<a class="el" href="group__api__core.html#gga2c3be94ce142fb92a4bf93e9b1b4fa01a93703f2e1193333663732445e2f2e9b8">VAConfigAttribStats</a> = 34,
<a class="el" href="group__api__core.html#gga2c3be94ce142fb92a4bf93e9b1b4fa01a791dfeaf40af42750f5941f530aad7c9">VAConfigAttribEncTileSupport</a> = 35,
<a class="el" href="group__api__core.html#gga2c3be94ce142fb92a4bf93e9b1b4fa01a601dc0ce6a43bfb71e40f34e44c10c04">VAConfigAttribCustomRoundingControl</a> = 36,
<br />
&#160;&#160;<a class="el" href="group__api__core.html#gga2c3be94ce142fb92a4bf93e9b1b4fa01a9f7962b0a2179de360ea4508e82bf705">VAConfigAttribQPBlockSize</a> = 37,
<a class="el" href="group__api__core.html#gga2c3be94ce142fb92a4bf93e9b1b4fa01a5b596b2918aed4c9147bc856e5c599f2">VAConfigAttribMaxFrameSize</a> = 38,
<a class="el" href="group__api__core.html#gga2c3be94ce142fb92a4bf93e9b1b4fa01abf3c5a944baa8338d7f1d4d26188f0bf">VAConfigAttribPredictionDirection</a> = 39,
<a class="el" href="group__api__core.html#gga2c3be94ce142fb92a4bf93e9b1b4fa01adf7e59a2ba81583888eace99181e14c2">VAConfigAttribMultipleFrame</a> = 40,
<br />
&#160;&#160;<a class="el" href="group__api__core.html#gga2c3be94ce142fb92a4bf93e9b1b4fa01a3337f5f60820fcbb4109d9ae2b1f5cb8">VAConfigAttribContextPriority</a> = 41,
<a class="el" href="group__api__core.html#gga2c3be94ce142fb92a4bf93e9b1b4fa01ac780378cd29ea67801726e82fc07ef03">VAConfigAttribDecAV1Features</a> = 42,
<a class="el" href="group__api__core.html#gga2c3be94ce142fb92a4bf93e9b1b4fa01ac047584673c8940601fe11205848a18e">VAConfigAttribTEEType</a> = 43,
<a class="el" href="group__api__core.html#gga2c3be94ce142fb92a4bf93e9b1b4fa01a565218180e548af439b4bd921ad329e1">VAConfigAttribTEETypeClient</a> = 44,
<br />
&#160;&#160;<a class="el" href="group__api__core.html#gga2c3be94ce142fb92a4bf93e9b1b4fa01afb39c2e76fab3b7a3a84131497ec95f7">VAConfigAttribProtectedContentCipherAlgorithm</a> = 45,
<a class="el" href="group__api__core.html#gga2c3be94ce142fb92a4bf93e9b1b4fa01ad408edc12ad2edeabc02be43a3710145">VAConfigAttribProtectedContentCipherBlockSize</a> = 46,
<a class="el" href="group__api__core.html#gga2c3be94ce142fb92a4bf93e9b1b4fa01a0d94a6ba968b758d7b53c05e1070cc7a">VAConfigAttribProtectedContentCipherMode</a> = 47,
<a class="el" href="group__api__core.html#gga2c3be94ce142fb92a4bf93e9b1b4fa01a4d3947eb7d70bb6ade7001eca036f863">VAConfigAttribProtectedContentCipherSampleType</a> = 48,
<br />
&#160;&#160;<a class="el" href="group__api__core.html#gga2c3be94ce142fb92a4bf93e9b1b4fa01a3787994abd0e4b2e55761b43ab7729d9">VAConfigAttribProtectedContentUsage</a> = 49,
<a class="el" href="group__api__core.html#gga2c3be94ce142fb92a4bf93e9b1b4fa01a691f6ee84de2a248b3bbb3689b2bfc27">VAConfigAttribEncHEVCFeatures</a> = 50,
<a class="el" href="group__api__core.html#gga2c3be94ce142fb92a4bf93e9b1b4fa01aa6f0d08af09071301832df0ae9f61340">VAConfigAttribEncHEVCBlockSizes</a> = 51,
<b>VAConfigAttribTypeMax</b>
<br />
}</td></tr>
<tr class="separator:ga2c3be94ce142fb92a4bf93e9b1b4fa01"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga1f3f8c94a3a732e25ba7ceb9b6abacc4"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga1f3f8c94a3a732e25ba7ceb9b6abacc4">VAGenericValueType</a> { <a class="el" href="group__api__core.html#gga1f3f8c94a3a732e25ba7ceb9b6abacc4a3172df10949251b0b6e9fb2a670d04b0">VAGenericValueTypeInteger</a> = 1,
<a class="el" href="group__api__core.html#gga1f3f8c94a3a732e25ba7ceb9b6abacc4a8940ac87877146f85acec30a700130b7">VAGenericValueTypeFloat</a>,
<a class="el" href="group__api__core.html#gga1f3f8c94a3a732e25ba7ceb9b6abacc4a929a93d62c0bdd061d4c01256b5b2119">VAGenericValueTypePointer</a>,
<a class="el" href="group__api__core.html#gga1f3f8c94a3a732e25ba7ceb9b6abacc4acc2fcbac763e2a7a0f259fbb1e89cad0">VAGenericValueTypeFunc</a>
}<tr class="memdesc:ga1f3f8c94a3a732e25ba7ceb9b6abacc4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Generic value types. <a href="group__api__core.html#ga1f3f8c94a3a732e25ba7ceb9b6abacc4">More...</a><br /></td></tr>
</td></tr>
<tr class="separator:ga1f3f8c94a3a732e25ba7ceb9b6abacc4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga4b89190eeab82e047c06e31edaf0b9b7"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga4b89190eeab82e047c06e31edaf0b9b7">VASurfaceAttribType</a> { , <br />
&#160;&#160;<a class="el" href="group__api__core.html#gga4b89190eeab82e047c06e31edaf0b9b7ae2e9a570df9f7e3625ef0b4b533aeaa3">VASurfaceAttribPixelFormat</a>,
<a class="el" href="group__api__core.html#gga4b89190eeab82e047c06e31edaf0b9b7adbcbadf8228bf2d66052700a5db0b66e">VASurfaceAttribMinWidth</a>,
<a class="el" href="group__api__core.html#gga4b89190eeab82e047c06e31edaf0b9b7a02ce5758f071e20ecb018e852ccdacf8">VASurfaceAttribMaxWidth</a>,
<a class="el" href="group__api__core.html#gga4b89190eeab82e047c06e31edaf0b9b7aebd7d7cdfeaa688df644865cbbde72eb">VASurfaceAttribMinHeight</a>,
<br />
&#160;&#160;<a class="el" href="group__api__core.html#gga4b89190eeab82e047c06e31edaf0b9b7a9fe635927ad444bc335f40696c54c79a">VASurfaceAttribMaxHeight</a>,
<a class="el" href="group__api__core.html#gga4b89190eeab82e047c06e31edaf0b9b7a8da3acb9a5defa586c5a0cd7933b0413">VASurfaceAttribMemoryType</a>,
<a class="el" href="group__api__core.html#gga4b89190eeab82e047c06e31edaf0b9b7adc8741cdd7e0daf805085ffceec5d180">VASurfaceAttribExternalBufferDescriptor</a>,
<a class="el" href="group__api__core.html#gga4b89190eeab82e047c06e31edaf0b9b7a0a04ea3d5e15b28d41a2853f9b795fd7">VASurfaceAttribUsageHint</a>,
<br />
&#160;&#160;<a class="el" href="group__api__core.html#gga4b89190eeab82e047c06e31edaf0b9b7ace6541c469406786363a6fcd9ed7e227">VASurfaceAttribDRMFormatModifiers</a>,
<a class="el" href="group__api__core.html#gga4b89190eeab82e047c06e31edaf0b9b7ae87a47fe190ef5a8655d98aa97656308">VASurfaceAttribCount</a>
<br />
}<tr class="memdesc:ga4b89190eeab82e047c06e31edaf0b9b7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Surface attribute types. <a href="group__api__core.html#ga4b89190eeab82e047c06e31edaf0b9b7">More...</a><br /></td></tr>
</td></tr>
<tr class="separator:ga4b89190eeab82e047c06e31edaf0b9b7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga24da9776c5d3a5ce29cb592cf22c00db"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga24da9776c5d3a5ce29cb592cf22c00db">VABufferType</a> { , <br />
&#160;&#160;<a class="el" href="group__api__core.html#gga24da9776c5d3a5ce29cb592cf22c00dba54c423290b67035d11937a4b85ab9b95">VAEncQPBufferType</a> = 30,
<a class="el" href="group__api__core.html#gga24da9776c5d3a5ce29cb592cf22c00dba13667c8204336ec80cfc68d1d4dee593">VAProcPipelineParameterBufferType</a> = 41,
<a class="el" href="group__api__core.html#gga24da9776c5d3a5ce29cb592cf22c00dba8c3862f3b099ed92870a93f278248e65">VAProcFilterParameterBufferType</a> = 42,
<a class="el" href="group__api__core.html#gga24da9776c5d3a5ce29cb592cf22c00dbaee3b07dde33764f72851c035ee7d51f9">VAEncFEIMVBufferType</a> = 43
, <br />
&#160;&#160;<a class="el" href="group__api__core.html#gga24da9776c5d3a5ce29cb592cf22c00dbab3e14edb8e030eb8ed3bfe2cc0131673">VAStatsStatisticsBufferType</a> = 49,
<a class="el" href="group__api__core.html#gga24da9776c5d3a5ce29cb592cf22c00dbad64569bae4d2eba946cbf6f683fa00be">VAStatsStatisticsBottomFieldBufferType</a> = 50
, <a class="el" href="group__api__core.html#gga24da9776c5d3a5ce29cb592cf22c00dba6dfe491eeeb2806226378120bb8f73d9">VAEncMacroblockDisableSkipMapBufferType</a> = 53,
<a class="el" href="group__api__core.html#gga24da9776c5d3a5ce29cb592cf22c00dba82cd75724db5851bcf598e543c477e07">VAEncFEICTBCmdBufferType</a> = 54,
<br />
&#160;&#160;<a class="el" href="group__api__core.html#gga24da9776c5d3a5ce29cb592cf22c00dbad7face34fb46abf8fcddb9812628f9a7">VAEncFEICURecordBufferType</a> = 55,
<a class="el" href="group__api__core.html#gga24da9776c5d3a5ce29cb592cf22c00dbae1261056098eebd8fddb896bf7edbb2e">VADecodeStreamoutBufferType</a> = 56,
<a class="el" href="group__api__core.html#gga24da9776c5d3a5ce29cb592cf22c00dba2dbecadf914e502be2d9bcda52b8ed67">VASubsetsParameterBufferType</a> = 57,
<a class="el" href="group__api__core.html#gga24da9776c5d3a5ce29cb592cf22c00dba376b3a8e2e04babb89984fc9779e616e">VAContextParameterUpdateBufferType</a> = 58,
<br />
&#160;&#160;<a class="el" href="group__api__core.html#gga24da9776c5d3a5ce29cb592cf22c00dba7a2ea7b1732bc899a151543e7bd79ddd">VAProtectedSessionExecuteBufferType</a> = 59,
<a class="el" href="group__api__core.html#gga24da9776c5d3a5ce29cb592cf22c00dbadce96bfbad3362a27848b18e2a3843f5">VAEncryptionParameterBufferType</a> = 60
<br />
}</td></tr>
<tr class="separator:ga24da9776c5d3a5ce29cb592cf22c00db"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga07644ee718d2c12c44f7ad7d440533f5"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga07644ee718d2c12c44f7ad7d440533f5">VAEncMiscParameterType</a> { , <br />
&#160;&#160;<a class="el" href="group__api__core.html#gga07644ee718d2c12c44f7ad7d440533f5a87b8908521d461bd16a4c068702bae9d">VAEncMiscParameterTypeMaxFrameSize</a> = 4,
<a class="el" href="group__api__core.html#gga07644ee718d2c12c44f7ad7d440533f5a4488a1e98538de5ab69111767c222984">VAEncMiscParameterTypeHRD</a> = 5
, <a class="el" href="group__api__core.html#gga07644ee718d2c12c44f7ad7d440533f5a1a436c1c24cf3d94cb66f9a42efe2b6a">VAEncMiscParameterTypeRIR</a> = 7,
<a class="el" href="group__api__core.html#gga07644ee718d2c12c44f7ad7d440533f5a729ae8e20adfe5338c29b9f6c7ed7593">VAEncMiscParameterTypeQuantization</a> = 8,
<br />
&#160;&#160;<a class="el" href="group__api__core.html#gga07644ee718d2c12c44f7ad7d440533f5ad4d2f33c8b49e1cf1248bf271444cc7b">VAEncMiscParameterTypeSkipFrame</a> = 9,
<a class="el" href="group__api__core.html#gga07644ee718d2c12c44f7ad7d440533f5a58a2a3560142660d9e1ec2a72351f64d">VAEncMiscParameterTypeROI</a> = 10,
<a class="el" href="group__api__core.html#gga07644ee718d2c12c44f7ad7d440533f5abb3e4254efc4742dd9930c94704aa33d">VAEncMiscParameterTypeMultiPassFrameSize</a> = 11,
<a class="el" href="group__api__core.html#gga07644ee718d2c12c44f7ad7d440533f5a86a0af4d592b1f9635a92851f5488d8d">VAEncMiscParameterTypeTemporalLayerStructure</a> = 12,
<br />
&#160;&#160;<a class="el" href="group__api__core.html#gga07644ee718d2c12c44f7ad7d440533f5a6f23a3cf5981ebb8d95587d8ae88d38c">VAEncMiscParameterTypeDirtyRect</a> = 13,
<a class="el" href="group__api__core.html#gga07644ee718d2c12c44f7ad7d440533f5a198051d6d3ef9cabe291a7974f87ee1b">VAEncMiscParameterTypeParallelBRC</a> = 14,
<a class="el" href="group__api__core.html#gga07644ee718d2c12c44f7ad7d440533f5a62c26bf17c15068a4623ce3b02017863">VAEncMiscParameterTypeSubMbPartPel</a> = 15,
<a class="el" href="group__api__core.html#gga07644ee718d2c12c44f7ad7d440533f5a64cde4efd374f2b48aa5dbd9812c639e">VAEncMiscParameterTypeEncQuality</a> = 16,
<br />
&#160;&#160;<a class="el" href="group__api__core.html#gga07644ee718d2c12c44f7ad7d440533f5a2d8997c17998a6c80d6c52831a52d10e">VAEncMiscParameterTypeCustomRoundingControl</a> = 17,
<a class="el" href="group__api__core.html#gga07644ee718d2c12c44f7ad7d440533f5afbd83aaa206a3430a60ffe00db036dfd">VAEncMiscParameterTypeFEIFrameControl</a> = 18,
<a class="el" href="group__api__core.html#gga07644ee718d2c12c44f7ad7d440533f5a1030f2a544a8d23047e1fd3a96150180">VAEncMiscParameterTypeExtensionData</a> = 19
<br />
}</td></tr>
<tr class="separator:ga07644ee718d2c12c44f7ad7d440533f5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga8ed0af9059a2d06bca1a54e774e679ea"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga8ed0af9059a2d06bca1a54e774e679ea">VAEncPackedHeaderType</a> { <br />
&#160;&#160;<a class="el" href="group__api__core.html#gga8ed0af9059a2d06bca1a54e774e679eaaeec200fbe559dc7faa077aac8c658a48">VAEncPackedHeaderSequence</a> = 1,
<a class="el" href="group__api__core.html#gga8ed0af9059a2d06bca1a54e774e679eaa9eca82077d8df9033c989f1507616072">VAEncPackedHeaderPicture</a> = 2,
<a class="el" href="group__api__core.html#gga8ed0af9059a2d06bca1a54e774e679eaafdedf8f436cda64d2f09b80540a04d99">VAEncPackedHeaderSlice</a> = 3,
<a class="el" href="group__api__core.html#gga8ed0af9059a2d06bca1a54e774e679eaab891c02e7895b75b251b91c1847f2ed5">VAEncPackedHeaderRawData</a> = 4,
<br />
&#160;&#160;<a class="el" href="group__api__core.html#gga8ed0af9059a2d06bca1a54e774e679eaa86d498fbfde9d7a847864d6b6c67e2aa">va_deprecated_enum</a> = 5
<br />
}<tr class="memdesc:ga8ed0af9059a2d06bca1a54e774e679ea"><td class="mdescLeft">&#160;</td><td class="mdescRight">Packed header type. <a href="group__api__core.html#ga8ed0af9059a2d06bca1a54e774e679ea">More...</a><br /></td></tr>
</td></tr>
<tr class="separator:ga8ed0af9059a2d06bca1a54e774e679ea"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga0398483623835033d4e9553dde171dd0"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga0398483623835033d4e9553dde171dd0">VAMvModeVC1</a> </td></tr>
<tr class="separator:ga0398483623835033d4e9553dde171dd0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga0f8dad8977fc45641f49b76cd19fb6b4"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga0f8dad8977fc45641f49b76cd19fb6b4">VADisplayAttribBLEMode</a> </td></tr>
<tr class="separator:ga0f8dad8977fc45641f49b76cd19fb6b4"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:ga19303a24fb5e3ddc7bf1842c7c90c494"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga19303a24fb5e3ddc7bf1842c7c90c494">vaErrorStr</a> (VAStatus error_status)</td></tr>
<tr class="separator:ga19303a24fb5e3ddc7bf1842c7c90c494"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga725ab6efbccb5cd05bbad31227b22a0c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__api__core.html#ga26fd64e5d522004ce30dc8159a57f240">VAMessageCallback</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga725ab6efbccb5cd05bbad31227b22a0c">vaSetErrorCallback</a> (<a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a> dpy, <a class="el" href="group__api__core.html#ga26fd64e5d522004ce30dc8159a57f240">VAMessageCallback</a> callback, void *user_context)</td></tr>
<tr class="separator:ga725ab6efbccb5cd05bbad31227b22a0c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaf00808befa17df8edc6619f9dd6a9429"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__api__core.html#ga26fd64e5d522004ce30dc8159a57f240">VAMessageCallback</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gaf00808befa17df8edc6619f9dd6a9429">vaSetInfoCallback</a> (<a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a> dpy, <a class="el" href="group__api__core.html#ga26fd64e5d522004ce30dc8159a57f240">VAMessageCallback</a> callback, void *user_context)</td></tr>
<tr class="separator:gaf00808befa17df8edc6619f9dd6a9429"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga32b3e0ef7dae82f7279e96b1658b6d0c"><td class="memItemLeft" align="right" valign="top">VAStatus&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga32b3e0ef7dae82f7279e96b1658b6d0c">vaSetDriverName</a> (<a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a> dpy, char *driver_name)</td></tr>
<tr class="separator:ga32b3e0ef7dae82f7279e96b1658b6d0c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga266154ed3b1f38e873caa0af680d733e"><td class="memItemLeft" align="right" valign="top">VAStatus&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga266154ed3b1f38e873caa0af680d733e">vaInitialize</a> (<a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a> dpy, int *major_version, int *minor_version)</td></tr>
<tr class="separator:ga266154ed3b1f38e873caa0af680d733e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga00514156193ed9b5c621d33f248b07d4"><td class="memItemLeft" align="right" valign="top">VAStatus&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga00514156193ed9b5c621d33f248b07d4">vaTerminate</a> (<a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a> dpy)</td></tr>
<tr class="separator:ga00514156193ed9b5c621d33f248b07d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga636ce2eb0c5380df66ff9f6733f6435d"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga636ce2eb0c5380df66ff9f6733f6435d">vaQueryVendorString</a> (<a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a> dpy)</td></tr>
<tr class="separator:ga636ce2eb0c5380df66ff9f6733f6435d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gacb4937e46e862704a3dd2bf2ebde6ef8"><td class="memItemLeft" align="right" valign="top">VAPrivFunc&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gacb4937e46e862704a3dd2bf2ebde6ef8">vaGetLibFunc</a> (<a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a> dpy, const char *func)</td></tr>
<tr class="separator:gacb4937e46e862704a3dd2bf2ebde6ef8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga44f8a9dd55a39f999004ecc73394e676"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga44f8a9dd55a39f999004ecc73394e676">vaMaxNumProfiles</a> (<a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a> dpy)</td></tr>
<tr class="separator:ga44f8a9dd55a39f999004ecc73394e676"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga4f595f04fb847dd8c241c7fd74f8396c"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga4f595f04fb847dd8c241c7fd74f8396c">vaMaxNumEntrypoints</a> (<a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a> dpy)</td></tr>
<tr class="separator:ga4f595f04fb847dd8c241c7fd74f8396c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga151aa810eea4c6092440a6047cf961be"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga151aa810eea4c6092440a6047cf961be">vaMaxNumConfigAttributes</a> (<a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a> dpy)</td></tr>
<tr class="separator:ga151aa810eea4c6092440a6047cf961be"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga198a34eb408790b172710071a248b660"><td class="memItemLeft" align="right" valign="top">VAStatus&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga198a34eb408790b172710071a248b660">vaQueryConfigProfiles</a> (<a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a> dpy, <a class="el" href="group__api__core.html#gaa4851f694a48c22af8877f5cfbb11bde">VAProfile</a> *profile_list, int *num_profiles)</td></tr>
<tr class="separator:ga198a34eb408790b172710071a248b660"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga7c6ec979697dafc172123c5d3ad80d8e"><td class="memItemLeft" align="right" valign="top">VAStatus&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga7c6ec979697dafc172123c5d3ad80d8e">vaQueryConfigEntrypoints</a> (<a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a> dpy, <a class="el" href="group__api__core.html#gaa4851f694a48c22af8877f5cfbb11bde">VAProfile</a> profile, <a class="el" href="group__api__core.html#ga5f3bcbb940e51be2e84097463557321e">VAEntrypoint</a> *entrypoint_list, int *num_entrypoints)</td></tr>
<tr class="separator:ga7c6ec979697dafc172123c5d3ad80d8e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae51cad2e388d6cc63ce3d4221798f9fd"><td class="memItemLeft" align="right" valign="top">VAStatus&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gae51cad2e388d6cc63ce3d4221798f9fd">vaGetConfigAttributes</a> (<a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a> dpy, <a class="el" href="group__api__core.html#gaa4851f694a48c22af8877f5cfbb11bde">VAProfile</a> profile, <a class="el" href="group__api__core.html#ga5f3bcbb940e51be2e84097463557321e">VAEntrypoint</a> entrypoint, <a class="el" href="structVAConfigAttrib.html">VAConfigAttrib</a> *attrib_list, int num_attribs)</td></tr>
<tr class="separator:gae51cad2e388d6cc63ce3d4221798f9fd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga9ff7833d425406cb1834c783b0a47652"><td class="memItemLeft" align="right" valign="top">VAStatus&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga9ff7833d425406cb1834c783b0a47652">vaCreateConfig</a> (<a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a> dpy, <a class="el" href="group__api__core.html#gaa4851f694a48c22af8877f5cfbb11bde">VAProfile</a> profile, <a class="el" href="group__api__core.html#ga5f3bcbb940e51be2e84097463557321e">VAEntrypoint</a> entrypoint, <a class="el" href="structVAConfigAttrib.html">VAConfigAttrib</a> *attrib_list, int num_attribs, VAConfigID *config_id)</td></tr>
<tr class="separator:ga9ff7833d425406cb1834c783b0a47652"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga65a7ccfb6db8c287b79ab3e28701e5f4"><td class="memItemLeft" align="right" valign="top">VAStatus&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga65a7ccfb6db8c287b79ab3e28701e5f4">vaDestroyConfig</a> (<a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a> dpy, VAConfigID config_id)</td></tr>
<tr class="separator:ga65a7ccfb6db8c287b79ab3e28701e5f4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga593da1618f3495a3f3ac13853a64794c"><td class="memItemLeft" align="right" valign="top">VAStatus&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga593da1618f3495a3f3ac13853a64794c">vaQueryConfigAttributes</a> (<a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a> dpy, VAConfigID config_id, <a class="el" href="group__api__core.html#gaa4851f694a48c22af8877f5cfbb11bde">VAProfile</a> *profile, <a class="el" href="group__api__core.html#ga5f3bcbb940e51be2e84097463557321e">VAEntrypoint</a> *entrypoint, <a class="el" href="structVAConfigAttrib.html">VAConfigAttrib</a> *attrib_list, int *num_attribs)</td></tr>
<tr class="separator:ga593da1618f3495a3f3ac13853a64794c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga6b10b88a628c56377268714cc72090ce"><td class="memItemLeft" align="right" valign="top">VAStatus&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga6b10b88a628c56377268714cc72090ce">vaQuerySurfaceAttributes</a> (<a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a> dpy, VAConfigID config, <a class="el" href="structVASurfaceAttrib.html">VASurfaceAttrib</a> *attrib_list, unsigned int *num_attribs)</td></tr>
<tr class="memdesc:ga6b10b88a628c56377268714cc72090ce"><td class="mdescLeft">&#160;</td><td class="mdescRight">Queries surface attributes for the supplied config. <a href="#ga6b10b88a628c56377268714cc72090ce">More...</a><br /></td></tr>
<tr class="separator:ga6b10b88a628c56377268714cc72090ce"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gac970ea0eec412326667549f58c44129b"><td class="memItemLeft" align="right" valign="top">VAStatus&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gac970ea0eec412326667549f58c44129b">vaCreateSurfaces</a> (<a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a> dpy, unsigned int format, unsigned int width, unsigned int height, VASurfaceID *surfaces, unsigned int num_surfaces, <a class="el" href="structVASurfaceAttrib.html">VASurfaceAttrib</a> *attrib_list, unsigned int num_attribs)</td></tr>
<tr class="memdesc:gac970ea0eec412326667549f58c44129b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates an array of surfaces. <a href="#gac970ea0eec412326667549f58c44129b">More...</a><br /></td></tr>
<tr class="separator:gac970ea0eec412326667549f58c44129b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga108b11751ff3e1113732780bb5b3d547"><td class="memItemLeft" align="right" valign="top">VAStatus&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga108b11751ff3e1113732780bb5b3d547">vaDestroySurfaces</a> (<a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a> dpy, VASurfaceID *surfaces, int num_surfaces)</td></tr>
<tr class="separator:ga108b11751ff3e1113732780bb5b3d547"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga7a0e774a793545058d1a311bed9bb8cf"><td class="memItemLeft" align="right" valign="top">VAStatus&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga7a0e774a793545058d1a311bed9bb8cf">vaCreateContext</a> (<a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a> dpy, VAConfigID config_id, int picture_width, int picture_height, int flag, VASurfaceID *render_targets, int num_render_targets, <a class="el" href="group__api__core.html#ga4af336e410aefeb4ca4315e2c7cbd653">VAContextID</a> *context)</td></tr>
<tr class="separator:ga7a0e774a793545058d1a311bed9bb8cf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga2333b7b9d86fc00c0ec00a2c66eaeeba"><td class="memItemLeft" align="right" valign="top">VAStatus&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga2333b7b9d86fc00c0ec00a2c66eaeeba">vaDestroyContext</a> (<a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a> dpy, <a class="el" href="group__api__core.html#ga4af336e410aefeb4ca4315e2c7cbd653">VAContextID</a> context)</td></tr>
<tr class="separator:ga2333b7b9d86fc00c0ec00a2c66eaeeba"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gad3fef89dabb600a7c12c2c1fc06084ca"><td class="memItemLeft" align="right" valign="top">VAStatus&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gad3fef89dabb600a7c12c2c1fc06084ca">vaCreateMFContext</a> (<a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a> dpy, VAMFContextID *mf_context)</td></tr>
<tr class="separator:gad3fef89dabb600a7c12c2c1fc06084ca"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gab3e179a1a16929d1c9f745850fce0075"><td class="memItemLeft" align="right" valign="top">VAStatus&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gab3e179a1a16929d1c9f745850fce0075">vaMFAddContext</a> (<a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a> dpy, VAMFContextID mf_context, <a class="el" href="group__api__core.html#ga4af336e410aefeb4ca4315e2c7cbd653">VAContextID</a> context)</td></tr>
<tr class="separator:gab3e179a1a16929d1c9f745850fce0075"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga29fc56f99c6b7037455a39e58c018f40"><td class="memItemLeft" align="right" valign="top">VAStatus&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga29fc56f99c6b7037455a39e58c018f40">vaMFReleaseContext</a> (<a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a> dpy, VAMFContextID mf_context, <a class="el" href="group__api__core.html#ga4af336e410aefeb4ca4315e2c7cbd653">VAContextID</a> context)</td></tr>
<tr class="separator:ga29fc56f99c6b7037455a39e58c018f40"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae132bacffb040cfa39e5599664ac1a7e"><td class="memItemLeft" align="right" valign="top">VAStatus&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gae132bacffb040cfa39e5599664ac1a7e">vaQueryProcessingRate</a> (<a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a> dpy, VAConfigID config, VAProcessingRateParameter *proc_buf, unsigned int *processing_rate)</td></tr>
<tr class="memdesc:gae132bacffb040cfa39e5599664ac1a7e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Queries processing rate for the supplied config. <a href="#gae132bacffb040cfa39e5599664ac1a7e">More...</a><br /></td></tr>
<tr class="separator:gae132bacffb040cfa39e5599664ac1a7e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaba254978bf0d32781f4a9e67f1fa7a78"><td class="memItemLeft" align="right" valign="top">VAStatus&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gaba254978bf0d32781f4a9e67f1fa7a78">vaCreateBuffer</a> (<a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a> dpy, <a class="el" href="group__api__core.html#ga4af336e410aefeb4ca4315e2c7cbd653">VAContextID</a> context, <a class="el" href="group__api__core.html#ga24da9776c5d3a5ce29cb592cf22c00db">VABufferType</a> type, unsigned int size, unsigned int num_elements, void *data, <a class="el" href="group__api__core.html#gad26441ddf2f4441ef65bbefa4662607f">VABufferID</a> *buf_id)</td></tr>
<tr class="separator:gaba254978bf0d32781f4a9e67f1fa7a78"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gad7aced6e79f86161b2817d73b9ae1180"><td class="memItemLeft" align="right" valign="top">VAStatus&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gad7aced6e79f86161b2817d73b9ae1180">vaCreateBuffer2</a> (<a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a> dpy, <a class="el" href="group__api__core.html#ga4af336e410aefeb4ca4315e2c7cbd653">VAContextID</a> context, <a class="el" href="group__api__core.html#ga24da9776c5d3a5ce29cb592cf22c00db">VABufferType</a> type, unsigned int width, unsigned int height, unsigned int *unit_size, unsigned int *pitch, <a class="el" href="group__api__core.html#gad26441ddf2f4441ef65bbefa4662607f">VABufferID</a> *buf_id)</td></tr>
<tr class="separator:gad7aced6e79f86161b2817d73b9ae1180"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gacf5513796ce9eef7c609c765a06ef145"><td class="memItemLeft" align="right" valign="top">VAStatus&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gacf5513796ce9eef7c609c765a06ef145">vaBufferSetNumElements</a> (<a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a> dpy, <a class="el" href="group__api__core.html#gad26441ddf2f4441ef65bbefa4662607f">VABufferID</a> buf_id, unsigned int num_elements)</td></tr>
<tr class="separator:gacf5513796ce9eef7c609c765a06ef145"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaf14c698af1d0920f4aeb5eb11f81b6aa"><td class="memItemLeft" align="right" valign="top">VAStatus&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gaf14c698af1d0920f4aeb5eb11f81b6aa">vaMapBuffer</a> (<a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a> dpy, <a class="el" href="group__api__core.html#gad26441ddf2f4441ef65bbefa4662607f">VABufferID</a> buf_id, void **pbuf)</td></tr>
<tr class="separator:gaf14c698af1d0920f4aeb5eb11f81b6aa"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae9b81871416c64b07e81d3eb54b6d579"><td class="memItemLeft" align="right" valign="top">VAStatus&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gae9b81871416c64b07e81d3eb54b6d579">vaUnmapBuffer</a> (<a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a> dpy, <a class="el" href="group__api__core.html#gad26441ddf2f4441ef65bbefa4662607f">VABufferID</a> buf_id)</td></tr>
<tr class="separator:gae9b81871416c64b07e81d3eb54b6d579"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaa2d1d886aed7b104ed2e50883aa8ccde"><td class="memItemLeft" align="right" valign="top">VAStatus&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gaa2d1d886aed7b104ed2e50883aa8ccde">vaDestroyBuffer</a> (<a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a> dpy, <a class="el" href="group__api__core.html#gad26441ddf2f4441ef65bbefa4662607f">VABufferID</a> buffer_id)</td></tr>
<tr class="separator:gaa2d1d886aed7b104ed2e50883aa8ccde"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga36dc61a5fc1552d7037d102bc7d35703"><td class="memItemLeft" align="right" valign="top">VAStatus&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga36dc61a5fc1552d7037d102bc7d35703">vaAcquireBufferHandle</a> (<a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a> dpy, <a class="el" href="group__api__core.html#gad26441ddf2f4441ef65bbefa4662607f">VABufferID</a> buf_id, <a class="el" href="structVABufferInfo.html">VABufferInfo</a> *buf_info)</td></tr>
<tr class="memdesc:ga36dc61a5fc1552d7037d102bc7d35703"><td class="mdescLeft">&#160;</td><td class="mdescRight">Acquires buffer handle for external API usage. <a href="#ga36dc61a5fc1552d7037d102bc7d35703">More...</a><br /></td></tr>
<tr class="separator:ga36dc61a5fc1552d7037d102bc7d35703"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gada319455dd3bc1c2b88670eadc4a09ac"><td class="memItemLeft" align="right" valign="top">VAStatus&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gada319455dd3bc1c2b88670eadc4a09ac">vaReleaseBufferHandle</a> (<a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a> dpy, <a class="el" href="group__api__core.html#gad26441ddf2f4441ef65bbefa4662607f">VABufferID</a> buf_id)</td></tr>
<tr class="memdesc:gada319455dd3bc1c2b88670eadc4a09ac"><td class="mdescLeft">&#160;</td><td class="mdescRight">Releases buffer after usage from external API. <a href="#gada319455dd3bc1c2b88670eadc4a09ac">More...</a><br /></td></tr>
<tr class="separator:gada319455dd3bc1c2b88670eadc4a09ac"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga404be4f513f3a15b9a831ff561b1b179"><td class="memItemLeft" align="right" valign="top">VAStatus&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga404be4f513f3a15b9a831ff561b1b179">vaExportSurfaceHandle</a> (<a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a> dpy, VASurfaceID surface_id, uint32_t mem_type, uint32_t flags, void *descriptor)</td></tr>
<tr class="memdesc:ga404be4f513f3a15b9a831ff561b1b179"><td class="mdescLeft">&#160;</td><td class="mdescRight">Export a handle to a surface for use with an external API. <a href="#ga404be4f513f3a15b9a831ff561b1b179">More...</a><br /></td></tr>
<tr class="separator:ga404be4f513f3a15b9a831ff561b1b179"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gacf031b9aaf39365bf8d79d92372f2ec8"><td class="memItemLeft" align="right" valign="top">VAStatus&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gacf031b9aaf39365bf8d79d92372f2ec8">vaBeginPicture</a> (<a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a> dpy, <a class="el" href="group__api__core.html#ga4af336e410aefeb4ca4315e2c7cbd653">VAContextID</a> context, VASurfaceID render_target)</td></tr>
<tr class="separator:gacf031b9aaf39365bf8d79d92372f2ec8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga3facc622a14fc901d5d44dcda845cb6f"><td class="memItemLeft" align="right" valign="top">VAStatus&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga3facc622a14fc901d5d44dcda845cb6f">vaRenderPicture</a> (<a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a> dpy, <a class="el" href="group__api__core.html#ga4af336e410aefeb4ca4315e2c7cbd653">VAContextID</a> context, <a class="el" href="group__api__core.html#gad26441ddf2f4441ef65bbefa4662607f">VABufferID</a> *buffers, int num_buffers)</td></tr>
<tr class="separator:ga3facc622a14fc901d5d44dcda845cb6f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaffbd38af17b5f061707010287e7d4c97"><td class="memItemLeft" align="right" valign="top">VAStatus&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gaffbd38af17b5f061707010287e7d4c97">vaEndPicture</a> (<a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a> dpy, <a class="el" href="group__api__core.html#ga4af336e410aefeb4ca4315e2c7cbd653">VAContextID</a> context)</td></tr>
<tr class="separator:gaffbd38af17b5f061707010287e7d4c97"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gadf2b7bb47c9a69b1a1a5554a0b9d049a"><td class="memItemLeft" align="right" valign="top">VAStatus&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gadf2b7bb47c9a69b1a1a5554a0b9d049a">vaMFSubmit</a> (<a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a> dpy, VAMFContextID mf_context, <a class="el" href="group__api__core.html#ga4af336e410aefeb4ca4315e2c7cbd653">VAContextID</a> *contexts, int num_contexts)</td></tr>
<tr class="separator:gadf2b7bb47c9a69b1a1a5554a0b9d049a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaa2b9b82de6eb2985574a6eca35445b3f"><td class="memItemLeft" align="right" valign="top">VAStatus&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gaa2b9b82de6eb2985574a6eca35445b3f">vaSyncSurface</a> (<a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a> dpy, VASurfaceID render_target)</td></tr>
<tr class="separator:gaa2b9b82de6eb2985574a6eca35445b3f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga8fe118269188636d4f61bc9cf73ffaef"><td class="memItemLeft" align="right" valign="top">VAStatus&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga8fe118269188636d4f61bc9cf73ffaef">vaSyncSurface2</a> (<a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a> dpy, VASurfaceID surface, uint64_t timeout_ns)</td></tr>
<tr class="memdesc:ga8fe118269188636d4f61bc9cf73ffaef"><td class="mdescLeft">&#160;</td><td class="mdescRight">Synchronizes pending operations associated with the supplied surface. <a href="#ga8fe118269188636d4f61bc9cf73ffaef">More...</a><br /></td></tr>
<tr class="separator:ga8fe118269188636d4f61bc9cf73ffaef"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga59e5c937c8554f1bab043f80427c2fa8"><td class="memItemLeft" align="right" valign="top">VAStatus&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga59e5c937c8554f1bab043f80427c2fa8">vaQuerySurfaceStatus</a> (<a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a> dpy, VASurfaceID render_target, VASurfaceStatus *status)</td></tr>
<tr class="separator:ga59e5c937c8554f1bab043f80427c2fa8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga3f8de8dbd54db159368a1e768d065342"><td class="memItemLeft" align="right" valign="top">VAStatus&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga3f8de8dbd54db159368a1e768d065342">vaQuerySurfaceError</a> (<a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a> dpy, VASurfaceID surface, VAStatus error_status, void **error_info)</td></tr>
<tr class="separator:ga3f8de8dbd54db159368a1e768d065342"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaca1b16e84bf974ce45f708f36b32bc3a"><td class="memItemLeft" align="right" valign="top">VAStatus&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gaca1b16e84bf974ce45f708f36b32bc3a">vaSyncBuffer</a> (<a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a> dpy, <a class="el" href="group__api__core.html#gad26441ddf2f4441ef65bbefa4662607f">VABufferID</a> buf_id, uint64_t timeout_ns)</td></tr>
<tr class="memdesc:gaca1b16e84bf974ce45f708f36b32bc3a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Synchronizes pending operations associated with the supplied buffer. <a href="#gaca1b16e84bf974ce45f708f36b32bc3a">More...</a><br /></td></tr>
<tr class="separator:gaca1b16e84bf974ce45f708f36b32bc3a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gad2c42a695feaf1a0913604368d344155"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gad2c42a695feaf1a0913604368d344155">vaMaxNumImageFormats</a> (<a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a> dpy)</td></tr>
<tr class="separator:gad2c42a695feaf1a0913604368d344155"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gacaafd538e7a9c79fdd9753c4243be3b8"><td class="memItemLeft" align="right" valign="top">VAStatus&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gacaafd538e7a9c79fdd9753c4243be3b8">vaQueryImageFormats</a> (<a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a> dpy, VAImageFormat *format_list, int *num_formats)</td></tr>
<tr class="separator:gacaafd538e7a9c79fdd9753c4243be3b8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga8a20d15bc66cc091e9a529ff52ee5872"><td class="memItemLeft" align="right" valign="top">VAStatus&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga8a20d15bc66cc091e9a529ff52ee5872">vaCreateImage</a> (<a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a> dpy, VAImageFormat *format, int width, int height, VAImage *image)</td></tr>
<tr class="separator:ga8a20d15bc66cc091e9a529ff52ee5872"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gac0d2a42eb98f6d38295c1969d8ff4cf6"><td class="memItemLeft" align="right" valign="top">VAStatus&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gac0d2a42eb98f6d38295c1969d8ff4cf6">vaDestroyImage</a> (<a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a> dpy, VAImageID image)</td></tr>
<tr class="separator:gac0d2a42eb98f6d38295c1969d8ff4cf6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga3d56f2eaf0be528a512cc935aca35418"><td class="memItemLeft" align="right" valign="top">VAStatus&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga3d56f2eaf0be528a512cc935aca35418">vaGetImage</a> (<a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a> dpy, VASurfaceID surface, int x, int y, unsigned int width, unsigned int height, VAImageID image)</td></tr>
<tr class="separator:ga3d56f2eaf0be528a512cc935aca35418"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gac18bbe67f0869a2b1f1d10fafb3a274c"><td class="memItemLeft" align="right" valign="top">VAStatus&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gac18bbe67f0869a2b1f1d10fafb3a274c">vaPutImage</a> (<a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a> dpy, VASurfaceID surface, VAImageID image, int src_x, int src_y, unsigned int src_width, unsigned int src_height, int dest_x, int dest_y, unsigned int dest_width, unsigned int dest_height)</td></tr>
<tr class="separator:gac18bbe67f0869a2b1f1d10fafb3a274c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaaddbbd4c6ea5bcfe928adc991cc5faab"><td class="memItemLeft" align="right" valign="top">VAStatus&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gaaddbbd4c6ea5bcfe928adc991cc5faab">vaDeriveImage</a> (<a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a> dpy, VASurfaceID surface, VAImage *image)</td></tr>
<tr class="separator:gaaddbbd4c6ea5bcfe928adc991cc5faab"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaf2e1d2acddcaf7d653316c1c198bba9b"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gaf2e1d2acddcaf7d653316c1c198bba9b">vaMaxNumSubpictureFormats</a> (<a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a> dpy)</td></tr>
<tr class="separator:gaf2e1d2acddcaf7d653316c1c198bba9b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaa6ad0aa47b587a3eb81cd17fd69866a1"><td class="memItemLeft" align="right" valign="top">VAStatus&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gaa6ad0aa47b587a3eb81cd17fd69866a1">vaQuerySubpictureFormats</a> (<a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a> dpy, VAImageFormat *format_list, unsigned int *flags, unsigned int *num_formats)</td></tr>
<tr class="separator:gaa6ad0aa47b587a3eb81cd17fd69866a1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga700ee27f4a77269d7971b12449d69db1"><td class="memItemLeft" align="right" valign="top">VAStatus&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga700ee27f4a77269d7971b12449d69db1">vaCreateSubpicture</a> (<a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a> dpy, VAImageID image, <a class="el" href="group__api__core.html#ga13b0f287a77772b1f8b07dd555230cce">VASubpictureID</a> *subpicture)</td></tr>
<tr class="separator:ga700ee27f4a77269d7971b12449d69db1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaa6bed710094261240a2b9fd2ed6b72fc"><td class="memItemLeft" align="right" valign="top">VAStatus&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gaa6bed710094261240a2b9fd2ed6b72fc">vaDestroySubpicture</a> (<a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a> dpy, <a class="el" href="group__api__core.html#ga13b0f287a77772b1f8b07dd555230cce">VASubpictureID</a> subpicture)</td></tr>
<tr class="separator:gaa6bed710094261240a2b9fd2ed6b72fc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga44b7f6361bd4917ea4e25c10c024739c"><td class="memItemLeft" align="right" valign="top">VAStatus&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga44b7f6361bd4917ea4e25c10c024739c">vaSetSubpictureImage</a> (<a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a> dpy, <a class="el" href="group__api__core.html#ga13b0f287a77772b1f8b07dd555230cce">VASubpictureID</a> subpicture, VAImageID image)</td></tr>
<tr class="separator:ga44b7f6361bd4917ea4e25c10c024739c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga3d1af09269f34d9a3b51f96bf974c292"><td class="memItemLeft" align="right" valign="top">VAStatus&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga3d1af09269f34d9a3b51f96bf974c292">vaSetSubpictureChromakey</a> (<a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a> dpy, <a class="el" href="group__api__core.html#ga13b0f287a77772b1f8b07dd555230cce">VASubpictureID</a> subpicture, unsigned int chromakey_min, unsigned int chromakey_max, unsigned int chromakey_mask)</td></tr>
<tr class="separator:ga3d1af09269f34d9a3b51f96bf974c292"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga84b33ea8c86f5be04ccb27d76b15173c"><td class="memItemLeft" align="right" valign="top">VAStatus&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga84b33ea8c86f5be04ccb27d76b15173c">vaSetSubpictureGlobalAlpha</a> (<a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a> dpy, <a class="el" href="group__api__core.html#ga13b0f287a77772b1f8b07dd555230cce">VASubpictureID</a> subpicture, float global_alpha)</td></tr>
<tr class="separator:ga84b33ea8c86f5be04ccb27d76b15173c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga6f235c87fbad9dfef30a6d81a41be574"><td class="memItemLeft" align="right" valign="top">VAStatus&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga6f235c87fbad9dfef30a6d81a41be574">vaAssociateSubpicture</a> (<a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a> dpy, <a class="el" href="group__api__core.html#ga13b0f287a77772b1f8b07dd555230cce">VASubpictureID</a> subpicture, VASurfaceID *target_surfaces, int num_surfaces, int16_t src_x, int16_t src_y, uint16_t src_width, uint16_t src_height, int16_t dest_x, int16_t dest_y, uint16_t dest_width, uint16_t dest_height, uint32_t flags)</td></tr>
<tr class="separator:ga6f235c87fbad9dfef30a6d81a41be574"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gabde94b380a4a42ab2f9660af2a8a1604"><td class="memItemLeft" align="right" valign="top">VAStatus&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gabde94b380a4a42ab2f9660af2a8a1604">vaDeassociateSubpicture</a> (<a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a> dpy, <a class="el" href="group__api__core.html#ga13b0f287a77772b1f8b07dd555230cce">VASubpictureID</a> subpicture, VASurfaceID *target_surfaces, int num_surfaces)</td></tr>
<tr class="separator:gabde94b380a4a42ab2f9660af2a8a1604"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="member-group"></a>
Attribute values for VAConfigAttribRateControl</h2></td></tr>
<tr class="memitem:gab10cf4da1ef5db32d76e365c1866f77a"><td class="memItemLeft" align="right" valign="top"><a id="gab10cf4da1ef5db32d76e365c1866f77a"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gab10cf4da1ef5db32d76e365c1866f77a">VA_RC_NONE</a>&#160;&#160;&#160;0x00000001</td></tr>
<tr class="memdesc:gab10cf4da1ef5db32d76e365c1866f77a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Driver does not support any form of rate control. <br /></td></tr>
<tr class="separator:gab10cf4da1ef5db32d76e365c1866f77a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaa57577c08c899f30861ef30a9579c6e1"><td class="memItemLeft" align="right" valign="top"><a id="gaa57577c08c899f30861ef30a9579c6e1"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gaa57577c08c899f30861ef30a9579c6e1">VA_RC_CBR</a>&#160;&#160;&#160;0x00000002</td></tr>
<tr class="memdesc:gaa57577c08c899f30861ef30a9579c6e1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constant bitrate. <br /></td></tr>
<tr class="separator:gaa57577c08c899f30861ef30a9579c6e1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga2ada19db3fc9a6f9d936c3998bb2f9a1"><td class="memItemLeft" align="right" valign="top"><a id="ga2ada19db3fc9a6f9d936c3998bb2f9a1"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga2ada19db3fc9a6f9d936c3998bb2f9a1">VA_RC_VBR</a>&#160;&#160;&#160;0x00000004</td></tr>
<tr class="memdesc:ga2ada19db3fc9a6f9d936c3998bb2f9a1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Variable bitrate. <br /></td></tr>
<tr class="separator:ga2ada19db3fc9a6f9d936c3998bb2f9a1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga2ed57b5340f383c664d8982a9f87cfb1"><td class="memItemLeft" align="right" valign="top"><a id="ga2ed57b5340f383c664d8982a9f87cfb1"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga2ed57b5340f383c664d8982a9f87cfb1">VA_RC_VCM</a>&#160;&#160;&#160;0x00000008</td></tr>
<tr class="memdesc:ga2ed57b5340f383c664d8982a9f87cfb1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Video conference mode. <br /></td></tr>
<tr class="separator:ga2ed57b5340f383c664d8982a9f87cfb1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga6efd5a7ec33229f63fae20d65c53dc7f"><td class="memItemLeft" align="right" valign="top"><a id="ga6efd5a7ec33229f63fae20d65c53dc7f"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga6efd5a7ec33229f63fae20d65c53dc7f">VA_RC_CQP</a>&#160;&#160;&#160;0x00000010</td></tr>
<tr class="memdesc:ga6efd5a7ec33229f63fae20d65c53dc7f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constant QP. <br /></td></tr>
<tr class="separator:ga6efd5a7ec33229f63fae20d65c53dc7f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae6b9ee41f788fd0460901f2c86e5f1a4"><td class="memItemLeft" align="right" valign="top"><a id="gae6b9ee41f788fd0460901f2c86e5f1a4"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gae6b9ee41f788fd0460901f2c86e5f1a4">VA_RC_VBR_CONSTRAINED</a>&#160;&#160;&#160;0x00000020</td></tr>
<tr class="memdesc:gae6b9ee41f788fd0460901f2c86e5f1a4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Variable bitrate with peak rate higher than average bitrate. <br /></td></tr>
<tr class="separator:gae6b9ee41f788fd0460901f2c86e5f1a4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga2298b49fa7326aa9be1afb8743bdf8d4"><td class="memItemLeft" align="right" valign="top"><a id="ga2298b49fa7326aa9be1afb8743bdf8d4"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga2298b49fa7326aa9be1afb8743bdf8d4">VA_RC_ICQ</a>&#160;&#160;&#160;0x00000040</td></tr>
<tr class="memdesc:ga2298b49fa7326aa9be1afb8743bdf8d4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Intelligent Constant Quality. Provided an initial ICQ_quality_factor, adjusts QP at a frame and MB level based on motion to improve subjective quality. <br /></td></tr>
<tr class="separator:ga2298b49fa7326aa9be1afb8743bdf8d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga53327f60f58a8eb1a3fe5355406d275f"><td class="memItemLeft" align="right" valign="top"><a id="ga53327f60f58a8eb1a3fe5355406d275f"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga53327f60f58a8eb1a3fe5355406d275f">VA_RC_MB</a>&#160;&#160;&#160;0x00000080</td></tr>
<tr class="memdesc:ga53327f60f58a8eb1a3fe5355406d275f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Macroblock based rate control. Per MB control is decided internally in the encoder. It may be combined with other RC modes, except CQP. <br /></td></tr>
<tr class="separator:ga53327f60f58a8eb1a3fe5355406d275f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga6da2ff1056f0d08964f1b328761083b9"><td class="memItemLeft" align="right" valign="top"><a id="ga6da2ff1056f0d08964f1b328761083b9"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga6da2ff1056f0d08964f1b328761083b9">VA_RC_CFS</a>&#160;&#160;&#160;0x00000100</td></tr>
<tr class="memdesc:ga6da2ff1056f0d08964f1b328761083b9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constant Frame Size, it is used for small tolerent. <br /></td></tr>
<tr class="separator:ga6da2ff1056f0d08964f1b328761083b9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gadff6600305c303977d0f1f4e101dd850"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gadff6600305c303977d0f1f4e101dd850">VA_RC_PARALLEL</a>&#160;&#160;&#160;0x00000200</td></tr>
<tr class="memdesc:gadff6600305c303977d0f1f4e101dd850"><td class="mdescLeft">&#160;</td><td class="mdescRight">Parallel BRC, for hierachical B. <a href="#gadff6600305c303977d0f1f4e101dd850">More...</a><br /></td></tr>
<tr class="separator:gadff6600305c303977d0f1f4e101dd850"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gadb097bc35bdddb568ac0d569befc654b"><td class="memItemLeft" align="right" valign="top"><a id="gadb097bc35bdddb568ac0d569befc654b"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gadb097bc35bdddb568ac0d569befc654b">VA_RC_QVBR</a>&#160;&#160;&#160;0x00000400</td></tr>
<tr class="memdesc:gadb097bc35bdddb568ac0d569befc654b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Quality defined VBR Use Quality factor to determine the good enough QP for each MB such that good enough quality can be obtained without waste of bits for this BRC mode, you must set all legacy VBR parameters and reuse quality_factor in <code><a class="el" href="structVAEncMiscParameterRateControl.html" title="Rate control parameters. ">VAEncMiscParameterRateControl</a></code>. <br /></td></tr>
<tr class="separator:gadb097bc35bdddb568ac0d569befc654b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga4256f3e1e60811f59e5ef6c2cd4927f1"><td class="memItemLeft" align="right" valign="top"><a id="ga4256f3e1e60811f59e5ef6c2cd4927f1"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga4256f3e1e60811f59e5ef6c2cd4927f1">VA_RC_AVBR</a>&#160;&#160;&#160;0x00000800</td></tr>
<tr class="memdesc:ga4256f3e1e60811f59e5ef6c2cd4927f1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Average VBR Average variable bitrate control algorithm focuses on overall encoding quality while meeting the specified target bitrate, within the accuracy range, after a convergence period. bits_per_second in <a class="el" href="structVAEncMiscParameterRateControl.html" title="Rate control parameters. ">VAEncMiscParameterRateControl</a> is target bitrate for AVBR. Convergence is specified in the unit of frame. window_size in <a class="el" href="structVAEncMiscParameterRateControl.html" title="Rate control parameters. ">VAEncMiscParameterRateControl</a> is equal to convergence for AVBR. Accuracy is in the range of [1,100], 1 means one percent, and so on. target_percentage in <a class="el" href="structVAEncMiscParameterRateControl.html" title="Rate control parameters. ">VAEncMiscParameterRateControl</a> is equal to accuracy for AVBR. <br /></td></tr>
<tr class="separator:ga4256f3e1e60811f59e5ef6c2cd4927f1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaf7c031977fdb02515fc8d6752d0e9aa4"><td class="memItemLeft" align="right" valign="top"><a id="gaf7c031977fdb02515fc8d6752d0e9aa4"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gaf7c031977fdb02515fc8d6752d0e9aa4">VA_RC_TCBRC</a>&#160;&#160;&#160;0x00001000</td></tr>
<tr class="memdesc:gaf7c031977fdb02515fc8d6752d0e9aa4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Transport Controlled BRC Specific bitrate control for real time streaming. TCBRC can instantly react to channel change to remove or significantly reduce the delay. Application (transport) provides channel feedback to driver through TargetFrameSize. When channel condition is very good (almost no constraint on instant frame size), the app should set target frame size as zero. Otherwise, channel capacity divided by fps should be used. <br /></td></tr>
<tr class="separator:gaf7c031977fdb02515fc8d6752d0e9aa4"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="member-group"></a>
Attribute values for VAConfigAttribDecSliceMode</h2></td></tr>
<tr class="memitem:gae2d0625bec928b28d0ac6d7cb47f29f9"><td class="memItemLeft" align="right" valign="top"><a id="gae2d0625bec928b28d0ac6d7cb47f29f9"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gae2d0625bec928b28d0ac6d7cb47f29f9">VA_DEC_SLICE_MODE_NORMAL</a>&#160;&#160;&#160;0x00000001</td></tr>
<tr class="memdesc:gae2d0625bec928b28d0ac6d7cb47f29f9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Driver supports normal mode for slice decoding. <br /></td></tr>
<tr class="separator:gae2d0625bec928b28d0ac6d7cb47f29f9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga30449527cc59f81f9344f7419b23b0b2"><td class="memItemLeft" align="right" valign="top"><a id="ga30449527cc59f81f9344f7419b23b0b2"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga30449527cc59f81f9344f7419b23b0b2">VA_DEC_SLICE_MODE_BASE</a>&#160;&#160;&#160;0x00000002</td></tr>
<tr class="memdesc:ga30449527cc59f81f9344f7419b23b0b2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Driver supports base mode for slice decoding. <br /></td></tr>
<tr class="separator:ga30449527cc59f81f9344f7419b23b0b2"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="member-group"></a>
Attribute values for VAConfigAttribDecProcessing</h2></td></tr>
<tr class="memitem:ga1c5df2e444277f66ae2827d1e565fa1d"><td class="memItemLeft" align="right" valign="top"><a id="ga1c5df2e444277f66ae2827d1e565fa1d"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga1c5df2e444277f66ae2827d1e565fa1d">VA_DEC_PROCESSING_NONE</a>&#160;&#160;&#160;0x00000000</td></tr>
<tr class="memdesc:ga1c5df2e444277f66ae2827d1e565fa1d"><td class="mdescLeft">&#160;</td><td class="mdescRight">No decoding + processing in a single decoding call. <br /></td></tr>
<tr class="separator:ga1c5df2e444277f66ae2827d1e565fa1d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaf548e1e4e920f998de80a591e8aed303"><td class="memItemLeft" align="right" valign="top"><a id="gaf548e1e4e920f998de80a591e8aed303"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gaf548e1e4e920f998de80a591e8aed303">VA_DEC_PROCESSING</a>&#160;&#160;&#160;0x00000001</td></tr>
<tr class="memdesc:gaf548e1e4e920f998de80a591e8aed303"><td class="mdescLeft">&#160;</td><td class="mdescRight">Decode + processing in a single decoding call. <br /></td></tr>
<tr class="separator:gaf548e1e4e920f998de80a591e8aed303"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="member-group"></a>
Attribute values for VAConfigAttribEncPackedHeaders</h2></td></tr>
<tr class="memitem:ga2341eec0ffb8afbae14c8f5df7446a3e"><td class="memItemLeft" align="right" valign="top"><a id="ga2341eec0ffb8afbae14c8f5df7446a3e"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga2341eec0ffb8afbae14c8f5df7446a3e">VA_ENC_PACKED_HEADER_NONE</a>&#160;&#160;&#160;0x00000000</td></tr>
<tr class="memdesc:ga2341eec0ffb8afbae14c8f5df7446a3e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Driver does not support any packed headers mode. <br /></td></tr>
<tr class="separator:ga2341eec0ffb8afbae14c8f5df7446a3e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gabc0ce3bf75ea6aca65d6ed751f12369f"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gabc0ce3bf75ea6aca65d6ed751f12369f">VA_ENC_PACKED_HEADER_SEQUENCE</a>&#160;&#160;&#160;0x00000001</td></tr>
<tr class="memdesc:gabc0ce3bf75ea6aca65d6ed751f12369f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Driver supports packed sequence headers. e.g. SPS for H.264. <a href="#gabc0ce3bf75ea6aca65d6ed751f12369f">More...</a><br /></td></tr>
<tr class="separator:gabc0ce3bf75ea6aca65d6ed751f12369f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga18287dfd8ea1b622cbb461e9232ec01b"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga18287dfd8ea1b622cbb461e9232ec01b">VA_ENC_PACKED_HEADER_PICTURE</a>&#160;&#160;&#160;0x00000002</td></tr>
<tr class="memdesc:ga18287dfd8ea1b622cbb461e9232ec01b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Driver supports packed picture headers. e.g. PPS for H.264. <a href="#ga18287dfd8ea1b622cbb461e9232ec01b">More...</a><br /></td></tr>
<tr class="separator:ga18287dfd8ea1b622cbb461e9232ec01b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gad9ac0328b87d66fd2475f26d008dd360"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gad9ac0328b87d66fd2475f26d008dd360">VA_ENC_PACKED_HEADER_SLICE</a>&#160;&#160;&#160;0x00000004</td></tr>
<tr class="memdesc:gad9ac0328b87d66fd2475f26d008dd360"><td class="mdescLeft">&#160;</td><td class="mdescRight">Driver supports packed slice headers. e.g. slice_header() for H.264. <a href="#gad9ac0328b87d66fd2475f26d008dd360">More...</a><br /></td></tr>
<tr class="separator:gad9ac0328b87d66fd2475f26d008dd360"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga8fb355619e9b0b3e129ca4a2b42c0cfc"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga8fb355619e9b0b3e129ca4a2b42c0cfc">VA_ENC_PACKED_HEADER_MISC</a>&#160;&#160;&#160;0x00000008</td></tr>
<tr class="memdesc:ga8fb355619e9b0b3e129ca4a2b42c0cfc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Driver supports misc packed headers. e.g. SEI for H.264. <a href="#ga8fb355619e9b0b3e129ca4a2b42c0cfc">More...</a><br /></td></tr>
<tr class="separator:ga8fb355619e9b0b3e129ca4a2b42c0cfc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaff681ea3d0af18d84fbb2770905461db"><td class="memItemLeft" align="right" valign="top"><a id="gaff681ea3d0af18d84fbb2770905461db"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gaff681ea3d0af18d84fbb2770905461db">VA_ENC_PACKED_HEADER_RAW_DATA</a>&#160;&#160;&#160;0x00000010</td></tr>
<tr class="memdesc:gaff681ea3d0af18d84fbb2770905461db"><td class="mdescLeft">&#160;</td><td class="mdescRight">Driver supports raw packed header, see VAEncPackedHeaderRawData. <br /></td></tr>
<tr class="separator:gaff681ea3d0af18d84fbb2770905461db"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="member-group"></a>
Attribute values for VAConfigAttribEncInterlaced</h2></td></tr>
<tr class="memitem:gaab7ca15900622df0088e28d9db4e088b"><td class="memItemLeft" align="right" valign="top"><a id="gaab7ca15900622df0088e28d9db4e088b"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gaab7ca15900622df0088e28d9db4e088b">VA_ENC_INTERLACED_NONE</a>&#160;&#160;&#160;0x00000000</td></tr>
<tr class="memdesc:gaab7ca15900622df0088e28d9db4e088b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Driver does not support interlaced coding. <br /></td></tr>
<tr class="separator:gaab7ca15900622df0088e28d9db4e088b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gac1160cfd97952a093e0902427bcee546"><td class="memItemLeft" align="right" valign="top"><a id="gac1160cfd97952a093e0902427bcee546"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gac1160cfd97952a093e0902427bcee546">VA_ENC_INTERLACED_FRAME</a>&#160;&#160;&#160;0x00000001</td></tr>
<tr class="memdesc:gac1160cfd97952a093e0902427bcee546"><td class="mdescLeft">&#160;</td><td class="mdescRight">Driver supports interlaced frame coding. <br /></td></tr>
<tr class="separator:gac1160cfd97952a093e0902427bcee546"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga6440d8611b206df462bf1d4b84a6bd6f"><td class="memItemLeft" align="right" valign="top"><a id="ga6440d8611b206df462bf1d4b84a6bd6f"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga6440d8611b206df462bf1d4b84a6bd6f">VA_ENC_INTERLACED_FIELD</a>&#160;&#160;&#160;0x00000002</td></tr>
<tr class="memdesc:ga6440d8611b206df462bf1d4b84a6bd6f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Driver supports interlaced field coding. <br /></td></tr>
<tr class="separator:ga6440d8611b206df462bf1d4b84a6bd6f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gad2b536a7d426f1dbd5f11be401a3335a"><td class="memItemLeft" align="right" valign="top"><a id="gad2b536a7d426f1dbd5f11be401a3335a"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gad2b536a7d426f1dbd5f11be401a3335a">VA_ENC_INTERLACED_MBAFF</a>&#160;&#160;&#160;0x00000004</td></tr>
<tr class="memdesc:gad2b536a7d426f1dbd5f11be401a3335a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Driver supports macroblock adaptive frame field coding. <br /></td></tr>
<tr class="separator:gad2b536a7d426f1dbd5f11be401a3335a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga7af40a750b6f59bf5dbcfde66b7b607d"><td class="memItemLeft" align="right" valign="top"><a id="ga7af40a750b6f59bf5dbcfde66b7b607d"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga7af40a750b6f59bf5dbcfde66b7b607d">VA_ENC_INTERLACED_PAFF</a>&#160;&#160;&#160;0x00000008</td></tr>
<tr class="memdesc:ga7af40a750b6f59bf5dbcfde66b7b607d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Driver supports picture adaptive frame field coding. <br /></td></tr>
<tr class="separator:ga7af40a750b6f59bf5dbcfde66b7b607d"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="member-group"></a>
Attribute values for VAConfigAttribEncSliceStructure</h2></td></tr>
<tr class="memitem:ga8876c49ae6d8c3af84f7cc9a34fdb486"><td class="memItemLeft" align="right" valign="top"><a id="ga8876c49ae6d8c3af84f7cc9a34fdb486"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga8876c49ae6d8c3af84f7cc9a34fdb486">VA_ENC_SLICE_STRUCTURE_POWER_OF_TWO_ROWS</a>&#160;&#160;&#160;0x00000001</td></tr>
<tr class="memdesc:ga8876c49ae6d8c3af84f7cc9a34fdb486"><td class="mdescLeft">&#160;</td><td class="mdescRight">Driver supports a power-of-two number of rows per slice. <br /></td></tr>
<tr class="separator:ga8876c49ae6d8c3af84f7cc9a34fdb486"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga17d1fe4e9620db340d5b51163d571c04"><td class="memItemLeft" align="right" valign="top"><a id="ga17d1fe4e9620db340d5b51163d571c04"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga17d1fe4e9620db340d5b51163d571c04">VA_ENC_SLICE_STRUCTURE_ARBITRARY_MACROBLOCKS</a>&#160;&#160;&#160;0x00000002</td></tr>
<tr class="memdesc:ga17d1fe4e9620db340d5b51163d571c04"><td class="mdescLeft">&#160;</td><td class="mdescRight">Driver supports an arbitrary number of macroblocks per slice. <br /></td></tr>
<tr class="separator:ga17d1fe4e9620db340d5b51163d571c04"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gab1733ccad68e57b8424b1f8fbb87047e"><td class="memItemLeft" align="right" valign="top"><a id="gab1733ccad68e57b8424b1f8fbb87047e"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gab1733ccad68e57b8424b1f8fbb87047e">VA_ENC_SLICE_STRUCTURE_EQUAL_ROWS</a>&#160;&#160;&#160;0x00000004</td></tr>
<tr class="memdesc:gab1733ccad68e57b8424b1f8fbb87047e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Driver support 1 row per slice. <br /></td></tr>
<tr class="separator:gab1733ccad68e57b8424b1f8fbb87047e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga5e05a89c1a187bb492571c3998394e9c"><td class="memItemLeft" align="right" valign="top"><a id="ga5e05a89c1a187bb492571c3998394e9c"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga5e05a89c1a187bb492571c3998394e9c">VA_ENC_SLICE_STRUCTURE_MAX_SLICE_SIZE</a>&#160;&#160;&#160;0x00000008</td></tr>
<tr class="memdesc:ga5e05a89c1a187bb492571c3998394e9c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Driver support max encoded slice size per slice. <br /></td></tr>
<tr class="separator:ga5e05a89c1a187bb492571c3998394e9c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gac2db5b165d6eaafc5eb1574b9244e9b0"><td class="memItemLeft" align="right" valign="top"><a id="gac2db5b165d6eaafc5eb1574b9244e9b0"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gac2db5b165d6eaafc5eb1574b9244e9b0">VA_ENC_SLICE_STRUCTURE_ARBITRARY_ROWS</a>&#160;&#160;&#160;0x00000010</td></tr>
<tr class="memdesc:gac2db5b165d6eaafc5eb1574b9244e9b0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Driver supports an arbitrary number of rows per slice. <br /></td></tr>
<tr class="separator:gac2db5b165d6eaafc5eb1574b9244e9b0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga14c3baf1c178f2e283bb19af5c10c6ff"><td class="memItemLeft" align="right" valign="top"><a id="ga14c3baf1c178f2e283bb19af5c10c6ff"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga14c3baf1c178f2e283bb19af5c10c6ff">VA_ENC_SLICE_STRUCTURE_EQUAL_MULTI_ROWS</a>&#160;&#160;&#160;0x00000020</td></tr>
<tr class="memdesc:ga14c3baf1c178f2e283bb19af5c10c6ff"><td class="mdescLeft">&#160;</td><td class="mdescRight">Driver supports any number of rows per slice but they must be the same for all slices except for the last one, which must be equal or smaller to the previous slices. <br /></td></tr>
<tr class="separator:ga14c3baf1c178f2e283bb19af5c10c6ff"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="member-group"></a>
Attribute values for VAConfigAttribEncQuantization</h2></td></tr>
<tr class="memitem:ga0359453a775e99d825073b5ab717399d"><td class="memItemLeft" align="right" valign="top"><a id="ga0359453a775e99d825073b5ab717399d"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga0359453a775e99d825073b5ab717399d">VA_ENC_QUANTIZATION_NONE</a>&#160;&#160;&#160;0x00000000</td></tr>
<tr class="memdesc:ga0359453a775e99d825073b5ab717399d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Driver does not support special types of quantization. <br /></td></tr>
<tr class="separator:ga0359453a775e99d825073b5ab717399d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga91d10d4717339a7b1f51fa7d5c4e09f4"><td class="memItemLeft" align="right" valign="top"><a id="ga91d10d4717339a7b1f51fa7d5c4e09f4"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga91d10d4717339a7b1f51fa7d5c4e09f4">VA_ENC_QUANTIZATION_TRELLIS_SUPPORTED</a>&#160;&#160;&#160;0x00000001</td></tr>
<tr class="memdesc:ga91d10d4717339a7b1f51fa7d5c4e09f4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Driver supports trellis quantization. <br /></td></tr>
<tr class="separator:ga91d10d4717339a7b1f51fa7d5c4e09f4"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="member-group"></a>
Attribute values for VAConfigAttribPredictionDirection</h2></td></tr>
<tr class="memitem:ga9280c646f3380f4168ecd300b8f496a3"><td class="memItemLeft" align="right" valign="top"><a id="ga9280c646f3380f4168ecd300b8f496a3"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga9280c646f3380f4168ecd300b8f496a3">VA_PREDICTION_DIRECTION_PREVIOUS</a>&#160;&#160;&#160;0x00000001</td></tr>
<tr class="memdesc:ga9280c646f3380f4168ecd300b8f496a3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Driver support forward reference frame (inter frame for vpx, P frame for H26x MPEG) can work with the VAConfigAttribEncMaxRefFrames. for example: low delay B frame of HEVC. these value can be OR'd together. typical value should be VA_PREDICTION_DIRECTION_PREVIOUS or VA_PREDICTION_DIRECTION_PREVIOUS | VA_PREDICTION_DIRECTION_FUTURE, theoretically, there are no stream only include future reference frame. <br /></td></tr>
<tr class="separator:ga9280c646f3380f4168ecd300b8f496a3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga2e39619c42d3d394149a6a6cd09b724b"><td class="memItemLeft" align="right" valign="top"><a id="ga2e39619c42d3d394149a6a6cd09b724b"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga2e39619c42d3d394149a6a6cd09b724b">VA_PREDICTION_DIRECTION_FUTURE</a>&#160;&#160;&#160;0x00000002</td></tr>
<tr class="memdesc:ga2e39619c42d3d394149a6a6cd09b724b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Driver support backward prediction frame/slice. <br /></td></tr>
<tr class="separator:ga2e39619c42d3d394149a6a6cd09b724b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae946be7903a9085d97e27b905b213308"><td class="memItemLeft" align="right" valign="top"><a id="gae946be7903a9085d97e27b905b213308"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gae946be7903a9085d97e27b905b213308">VA_PREDICTION_DIRECTION_BI_NOT_EMPTY</a>&#160;&#160;&#160;0x00000004</td></tr>
<tr class="memdesc:gae946be7903a9085d97e27b905b213308"><td class="mdescLeft">&#160;</td><td class="mdescRight">Dirver require both reference list must be not empty for inter frame. <br /></td></tr>
<tr class="separator:gae946be7903a9085d97e27b905b213308"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="member-group"></a>
Attribute values for VAConfigAttribEncIntraRefresh</h2></td></tr>
<tr class="memitem:ga872d9368a82e6746396db0b2854a5b08"><td class="memItemLeft" align="right" valign="top"><a id="ga872d9368a82e6746396db0b2854a5b08"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga872d9368a82e6746396db0b2854a5b08">VA_ENC_INTRA_REFRESH_NONE</a>&#160;&#160;&#160;0x00000000</td></tr>
<tr class="memdesc:ga872d9368a82e6746396db0b2854a5b08"><td class="mdescLeft">&#160;</td><td class="mdescRight">Driver does not support intra refresh. <br /></td></tr>
<tr class="separator:ga872d9368a82e6746396db0b2854a5b08"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga978b2a256186556269a05ede84250268"><td class="memItemLeft" align="right" valign="top"><a id="ga978b2a256186556269a05ede84250268"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga978b2a256186556269a05ede84250268">VA_ENC_INTRA_REFRESH_ROLLING_COLUMN</a>&#160;&#160;&#160;0x00000001</td></tr>
<tr class="memdesc:ga978b2a256186556269a05ede84250268"><td class="mdescLeft">&#160;</td><td class="mdescRight">Driver supports column based rolling intra refresh. <br /></td></tr>
<tr class="separator:ga978b2a256186556269a05ede84250268"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga435f1b3d84e6df14d8974ef9ba8ec66d"><td class="memItemLeft" align="right" valign="top"><a id="ga435f1b3d84e6df14d8974ef9ba8ec66d"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga435f1b3d84e6df14d8974ef9ba8ec66d">VA_ENC_INTRA_REFRESH_ROLLING_ROW</a>&#160;&#160;&#160;0x00000002</td></tr>
<tr class="memdesc:ga435f1b3d84e6df14d8974ef9ba8ec66d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Driver supports row based rolling intra refresh. <br /></td></tr>
<tr class="separator:ga435f1b3d84e6df14d8974ef9ba8ec66d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga0b595924431cdfaa087005a60572653c"><td class="memItemLeft" align="right" valign="top"><a id="ga0b595924431cdfaa087005a60572653c"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga0b595924431cdfaa087005a60572653c">VA_ENC_INTRA_REFRESH_ADAPTIVE</a>&#160;&#160;&#160;0x00000010</td></tr>
<tr class="memdesc:ga0b595924431cdfaa087005a60572653c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Driver supports adaptive intra refresh. <br /></td></tr>
<tr class="separator:ga0b595924431cdfaa087005a60572653c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae9489650a70ef0685cf35b41b5279b8b"><td class="memItemLeft" align="right" valign="top"><a id="gae9489650a70ef0685cf35b41b5279b8b"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gae9489650a70ef0685cf35b41b5279b8b">VA_ENC_INTRA_REFRESH_CYCLIC</a>&#160;&#160;&#160;0x00000020</td></tr>
<tr class="memdesc:gae9489650a70ef0685cf35b41b5279b8b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Driver supports cyclic intra refresh. <br /></td></tr>
<tr class="separator:gae9489650a70ef0685cf35b41b5279b8b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gace3f0e64edb226d3e55a08ede91c2612"><td class="memItemLeft" align="right" valign="top"><a id="gace3f0e64edb226d3e55a08ede91c2612"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gace3f0e64edb226d3e55a08ede91c2612">VA_ENC_INTRA_REFRESH_P_FRAME</a>&#160;&#160;&#160;0x00010000</td></tr>
<tr class="memdesc:gace3f0e64edb226d3e55a08ede91c2612"><td class="mdescLeft">&#160;</td><td class="mdescRight">Driver supports intra refresh of P frame. <br /></td></tr>
<tr class="separator:gace3f0e64edb226d3e55a08ede91c2612"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga1bfef0c3331d9e9598d180cb52d23513"><td class="memItemLeft" align="right" valign="top"><a id="ga1bfef0c3331d9e9598d180cb52d23513"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga1bfef0c3331d9e9598d180cb52d23513">VA_ENC_INTRA_REFRESH_B_FRAME</a>&#160;&#160;&#160;0x00020000</td></tr>
<tr class="memdesc:ga1bfef0c3331d9e9598d180cb52d23513"><td class="mdescLeft">&#160;</td><td class="mdescRight">Driver supports intra refresh of B frame. <br /></td></tr>
<tr class="separator:ga1bfef0c3331d9e9598d180cb52d23513"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gac1a0d424cc0bc557d07b61e40ec40bb7"><td class="memItemLeft" align="right" valign="top"><a id="gac1a0d424cc0bc557d07b61e40ec40bb7"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gac1a0d424cc0bc557d07b61e40ec40bb7">VA_ENC_INTRA_REFRESH_MULTI_REF</a>&#160;&#160;&#160;0x00040000</td></tr>
<tr class="memdesc:gac1a0d424cc0bc557d07b61e40ec40bb7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Driver supports intra refresh of multiple reference encoder. <br /></td></tr>
<tr class="separator:gac1a0d424cc0bc557d07b61e40ec40bb7"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="member-group"></a>
Attribute values for VAConfigAttribProtectedContentCipherAlgorithm</h2></td></tr>
<tr class="memitem:gab57437d522d8e236ebbe3c2d4e35f2c3"><td class="memItemLeft" align="right" valign="top"><a id="gab57437d522d8e236ebbe3c2d4e35f2c3"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gab57437d522d8e236ebbe3c2d4e35f2c3">VA_PC_CIPHER_AES</a>&#160;&#160;&#160;0x00000001</td></tr>
<tr class="memdesc:gab57437d522d8e236ebbe3c2d4e35f2c3"><td class="mdescLeft">&#160;</td><td class="mdescRight">AES cipher. <br /></td></tr>
<tr class="separator:gab57437d522d8e236ebbe3c2d4e35f2c3"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="member-group"></a>
Attribute values for VAConfigAttribProtectedContentCipherBlockSize</h2></td></tr>
<tr class="memitem:ga6b105bf49d4c7bfec05f7299e4e6cba0"><td class="memItemLeft" align="right" valign="top"><a id="ga6b105bf49d4c7bfec05f7299e4e6cba0"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga6b105bf49d4c7bfec05f7299e4e6cba0">VA_PC_BLOCK_SIZE_128</a>&#160;&#160;&#160;0x00000001</td></tr>
<tr class="memdesc:ga6b105bf49d4c7bfec05f7299e4e6cba0"><td class="mdescLeft">&#160;</td><td class="mdescRight">128 bits block size <br /></td></tr>
<tr class="separator:ga6b105bf49d4c7bfec05f7299e4e6cba0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaebb14681fb3b38c1fc65e27e0432ee23"><td class="memItemLeft" align="right" valign="top"><a id="gaebb14681fb3b38c1fc65e27e0432ee23"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gaebb14681fb3b38c1fc65e27e0432ee23">VA_PC_BLOCK_SIZE_192</a>&#160;&#160;&#160;0x00000002</td></tr>
<tr class="memdesc:gaebb14681fb3b38c1fc65e27e0432ee23"><td class="mdescLeft">&#160;</td><td class="mdescRight">192 bits block size <br /></td></tr>
<tr class="separator:gaebb14681fb3b38c1fc65e27e0432ee23"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga9def9c533152ef02560aacbfa9ae5978"><td class="memItemLeft" align="right" valign="top"><a id="ga9def9c533152ef02560aacbfa9ae5978"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga9def9c533152ef02560aacbfa9ae5978">VA_PC_BLOCK_SIZE_256</a>&#160;&#160;&#160;0x00000004</td></tr>
<tr class="memdesc:ga9def9c533152ef02560aacbfa9ae5978"><td class="mdescLeft">&#160;</td><td class="mdescRight">256 bits block size <br /></td></tr>
<tr class="separator:ga9def9c533152ef02560aacbfa9ae5978"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="member-group"></a>
Attribute values for VAConfigAttribProtectedContentCipherMode</h2></td></tr>
<tr class="memitem:gaa39452d87348316482feaf965498e4a8"><td class="memItemLeft" align="right" valign="top"><a id="gaa39452d87348316482feaf965498e4a8"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gaa39452d87348316482feaf965498e4a8">VA_PC_CIPHER_MODE_ECB</a>&#160;&#160;&#160;0x00000001</td></tr>
<tr class="memdesc:gaa39452d87348316482feaf965498e4a8"><td class="mdescLeft">&#160;</td><td class="mdescRight">AES ECB. <br /></td></tr>
<tr class="separator:gaa39452d87348316482feaf965498e4a8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga38fe461d9f931d1b5dd407824bf0de6d"><td class="memItemLeft" align="right" valign="top"><a id="ga38fe461d9f931d1b5dd407824bf0de6d"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga38fe461d9f931d1b5dd407824bf0de6d">VA_PC_CIPHER_MODE_CBC</a>&#160;&#160;&#160;0x00000002</td></tr>
<tr class="memdesc:ga38fe461d9f931d1b5dd407824bf0de6d"><td class="mdescLeft">&#160;</td><td class="mdescRight">AES CBC. <br /></td></tr>
<tr class="separator:ga38fe461d9f931d1b5dd407824bf0de6d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaa677db83d1a0d66293f750604db321a8"><td class="memItemLeft" align="right" valign="top"><a id="gaa677db83d1a0d66293f750604db321a8"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gaa677db83d1a0d66293f750604db321a8">VA_PC_CIPHER_MODE_CTR</a>&#160;&#160;&#160;0x00000004</td></tr>
<tr class="memdesc:gaa677db83d1a0d66293f750604db321a8"><td class="mdescLeft">&#160;</td><td class="mdescRight">AES CTR. <br /></td></tr>
<tr class="separator:gaa677db83d1a0d66293f750604db321a8"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="member-group"></a>
Attribute values for VAConfigAttribProtectedContentCipherSampleType</h2></td></tr>
<tr class="memitem:gabe0a8089679372f94ceb8b3bfeadc89a"><td class="memItemLeft" align="right" valign="top"><a id="gabe0a8089679372f94ceb8b3bfeadc89a"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gabe0a8089679372f94ceb8b3bfeadc89a">VA_PC_SAMPLE_TYPE_FULLSAMPLE</a>&#160;&#160;&#160;0x00000001</td></tr>
<tr class="memdesc:gabe0a8089679372f94ceb8b3bfeadc89a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Full sample. <br /></td></tr>
<tr class="separator:gabe0a8089679372f94ceb8b3bfeadc89a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga5e868b40098071600d60ce58e33aa245"><td class="memItemLeft" align="right" valign="top"><a id="ga5e868b40098071600d60ce58e33aa245"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga5e868b40098071600d60ce58e33aa245">VA_PC_SAMPLE_TYPE_SUBSAMPLE</a>&#160;&#160;&#160;0x00000002</td></tr>
<tr class="memdesc:ga5e868b40098071600d60ce58e33aa245"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sub sample. <br /></td></tr>
<tr class="separator:ga5e868b40098071600d60ce58e33aa245"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="member-group"></a>
Attribute values for VAConfigAttribProtectedContentUsage</h2></td></tr>
<tr class="memitem:gafb12b27dbc2e6ed384f9c5a3dde37fbf"><td class="memItemLeft" align="right" valign="top"><a id="gafb12b27dbc2e6ed384f9c5a3dde37fbf"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gafb12b27dbc2e6ed384f9c5a3dde37fbf">VA_PC_USAGE_DEFAULT</a>&#160;&#160;&#160;0x00000000</td></tr>
<tr class="memdesc:gafb12b27dbc2e6ed384f9c5a3dde37fbf"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default usage. <br /></td></tr>
<tr class="separator:gafb12b27dbc2e6ed384f9c5a3dde37fbf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga179b50cf144c068643dd558ef0de34cd"><td class="memItemLeft" align="right" valign="top"><a id="ga179b50cf144c068643dd558ef0de34cd"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga179b50cf144c068643dd558ef0de34cd">VA_PC_USAGE_WIDEVINE</a>&#160;&#160;&#160;0x00000001</td></tr>
<tr class="memdesc:ga179b50cf144c068643dd558ef0de34cd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Widevine. <br /></td></tr>
<tr class="separator:ga179b50cf144c068643dd558ef0de34cd"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="member-group"></a>
Attribute values for VAConfigAttribProcessingRate.</h2></td></tr>
<tr class="memitem:gae8147f6ec24e426dbd061d0b1a4aa5d3"><td class="memItemLeft" align="right" valign="top"><a id="gae8147f6ec24e426dbd061d0b1a4aa5d3"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gae8147f6ec24e426dbd061d0b1a4aa5d3">VA_PROCESSING_RATE_NONE</a>&#160;&#160;&#160;0x00000000</td></tr>
<tr class="memdesc:gae8147f6ec24e426dbd061d0b1a4aa5d3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Driver does not support processing rate report. <br /></td></tr>
<tr class="separator:gae8147f6ec24e426dbd061d0b1a4aa5d3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga327e7df22d7913b6236569ad193f50df"><td class="memItemLeft" align="right" valign="top"><a id="ga327e7df22d7913b6236569ad193f50df"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga327e7df22d7913b6236569ad193f50df">VA_PROCESSING_RATE_ENCODE</a>&#160;&#160;&#160;0x00000001</td></tr>
<tr class="memdesc:ga327e7df22d7913b6236569ad193f50df"><td class="mdescLeft">&#160;</td><td class="mdescRight">Driver supports encode processing rate report. <br /></td></tr>
<tr class="separator:ga327e7df22d7913b6236569ad193f50df"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gac4e578743bd5c26676a50f2312a26732"><td class="memItemLeft" align="right" valign="top"><a id="gac4e578743bd5c26676a50f2312a26732"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gac4e578743bd5c26676a50f2312a26732">VA_PROCESSING_RATE_DECODE</a>&#160;&#160;&#160;0x00000002</td></tr>
<tr class="memdesc:gac4e578743bd5c26676a50f2312a26732"><td class="mdescLeft">&#160;</td><td class="mdescRight">Driver supports decode processing rate report. <br /></td></tr>
<tr class="separator:gac4e578743bd5c26676a50f2312a26732"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="member-group"></a>
Surface attribute flags</h2></td></tr>
<tr class="memitem:ga074ffcf02345a70ca10cd259ae9b8b25"><td class="memItemLeft" align="right" valign="top"><a id="ga074ffcf02345a70ca10cd259ae9b8b25"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga074ffcf02345a70ca10cd259ae9b8b25">VA_SURFACE_ATTRIB_NOT_SUPPORTED</a>&#160;&#160;&#160;0x00000000</td></tr>
<tr class="memdesc:ga074ffcf02345a70ca10cd259ae9b8b25"><td class="mdescLeft">&#160;</td><td class="mdescRight">Surface attribute is not supported. <br /></td></tr>
<tr class="separator:ga074ffcf02345a70ca10cd259ae9b8b25"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gac29ba1781b28fb0f916475932248cdb0"><td class="memItemLeft" align="right" valign="top"><a id="gac29ba1781b28fb0f916475932248cdb0"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gac29ba1781b28fb0f916475932248cdb0">VA_SURFACE_ATTRIB_GETTABLE</a>&#160;&#160;&#160;0x00000001</td></tr>
<tr class="memdesc:gac29ba1781b28fb0f916475932248cdb0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Surface attribute can be got through <a class="el" href="group__api__core.html#ga6b10b88a628c56377268714cc72090ce" title="Queries surface attributes for the supplied config. ">vaQuerySurfaceAttributes()</a>. <br /></td></tr>
<tr class="separator:gac29ba1781b28fb0f916475932248cdb0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga997c27d75ba17caf5fe879b71fa64820"><td class="memItemLeft" align="right" valign="top"><a id="ga997c27d75ba17caf5fe879b71fa64820"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga997c27d75ba17caf5fe879b71fa64820">VA_SURFACE_ATTRIB_SETTABLE</a>&#160;&#160;&#160;0x00000002</td></tr>
<tr class="memdesc:ga997c27d75ba17caf5fe879b71fa64820"><td class="mdescLeft">&#160;</td><td class="mdescRight">Surface attribute can be set through <a class="el" href="group__api__core.html#gac970ea0eec412326667549f58c44129b" title="Creates an array of surfaces. ">vaCreateSurfaces()</a>. <br /></td></tr>
<tr class="separator:ga997c27d75ba17caf5fe879b71fa64820"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="member-group"></a>
VASurfaceAttribMemoryType values in bit fields.</h2></td></tr>
<tr><td class="ititle" colspan="2"><p><a class="anchor" id="amgrpe87051bcf8912242af39342b8effae81"></a>Bit 0:7 are reserved for generic types, Bit 31:28 are reserved for Linux DRM, Bit 23:20 are reserved for Android. DRM and Android specific types are defined in DRM and Android header files. </p>
</td></tr>
<tr class="memitem:ga4df50c026f0029fff7a0651a7b8642df"><td class="memItemLeft" align="right" valign="top"><a id="ga4df50c026f0029fff7a0651a7b8642df"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga4df50c026f0029fff7a0651a7b8642df">VA_SURFACE_ATTRIB_MEM_TYPE_VA</a>&#160;&#160;&#160;0x00000001</td></tr>
<tr class="memdesc:ga4df50c026f0029fff7a0651a7b8642df"><td class="mdescLeft">&#160;</td><td class="mdescRight">VA memory type (default) is supported. <br /></td></tr>
<tr class="separator:ga4df50c026f0029fff7a0651a7b8642df"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga055e073a1feb4b3d2292a76e76ba5372"><td class="memItemLeft" align="right" valign="top"><a id="ga055e073a1feb4b3d2292a76e76ba5372"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga055e073a1feb4b3d2292a76e76ba5372">VA_SURFACE_ATTRIB_MEM_TYPE_V4L2</a>&#160;&#160;&#160;0x00000002</td></tr>
<tr class="memdesc:ga055e073a1feb4b3d2292a76e76ba5372"><td class="mdescLeft">&#160;</td><td class="mdescRight">V4L2 buffer memory type is supported. <br /></td></tr>
<tr class="separator:ga055e073a1feb4b3d2292a76e76ba5372"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gacaa9a60214c9437d3ec243054bcef8c6"><td class="memItemLeft" align="right" valign="top"><a id="gacaa9a60214c9437d3ec243054bcef8c6"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gacaa9a60214c9437d3ec243054bcef8c6">VA_SURFACE_ATTRIB_MEM_TYPE_USER_PTR</a>&#160;&#160;&#160;0x00000004</td></tr>
<tr class="memdesc:gacaa9a60214c9437d3ec243054bcef8c6"><td class="mdescLeft">&#160;</td><td class="mdescRight">User pointer memory type is supported. <br /></td></tr>
<tr class="separator:gacaa9a60214c9437d3ec243054bcef8c6"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="member-group"></a>
VASurfaceAttribExternalBuffers flags</h2></td></tr>
<tr class="memitem:ga4dbd78b1de0625d69d2ec42b7d7e8aeb"><td class="memItemLeft" align="right" valign="top"><a id="ga4dbd78b1de0625d69d2ec42b7d7e8aeb"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga4dbd78b1de0625d69d2ec42b7d7e8aeb">VA_SURFACE_EXTBUF_DESC_ENABLE_TILING</a>&#160;&#160;&#160;0x00000001</td></tr>
<tr class="memdesc:ga4dbd78b1de0625d69d2ec42b7d7e8aeb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Enable memory tiling. <br /></td></tr>
<tr class="separator:ga4dbd78b1de0625d69d2ec42b7d7e8aeb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga7c987ed659b3b492d98669d8fc7221e4"><td class="memItemLeft" align="right" valign="top"><a id="ga7c987ed659b3b492d98669d8fc7221e4"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga7c987ed659b3b492d98669d8fc7221e4">VA_SURFACE_EXTBUF_DESC_CACHED</a>&#160;&#160;&#160;0x00000002</td></tr>
<tr class="memdesc:ga7c987ed659b3b492d98669d8fc7221e4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Memory is cacheable. <br /></td></tr>
<tr class="separator:ga7c987ed659b3b492d98669d8fc7221e4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga53435d8cb3fc648ca1ccd91f5efc3b65"><td class="memItemLeft" align="right" valign="top"><a id="ga53435d8cb3fc648ca1ccd91f5efc3b65"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga53435d8cb3fc648ca1ccd91f5efc3b65">VA_SURFACE_EXTBUF_DESC_UNCACHED</a>&#160;&#160;&#160;0x00000004</td></tr>
<tr class="memdesc:ga53435d8cb3fc648ca1ccd91f5efc3b65"><td class="mdescLeft">&#160;</td><td class="mdescRight">Memory is non-cacheable. <br /></td></tr>
<tr class="separator:ga53435d8cb3fc648ca1ccd91f5efc3b65"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaa32567b966dbc2520433c50ca59cf947"><td class="memItemLeft" align="right" valign="top"><a id="gaa32567b966dbc2520433c50ca59cf947"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gaa32567b966dbc2520433c50ca59cf947">VA_SURFACE_EXTBUF_DESC_WC</a>&#160;&#160;&#160;0x00000008</td></tr>
<tr class="memdesc:gaa32567b966dbc2520433c50ca59cf947"><td class="mdescLeft">&#160;</td><td class="mdescRight">Memory is write-combined. <br /></td></tr>
<tr class="separator:gaa32567b966dbc2520433c50ca59cf947"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga550c387e62cdbeb0cc2e45d1b96b62f0"><td class="memItemLeft" align="right" valign="top"><a id="ga550c387e62cdbeb0cc2e45d1b96b62f0"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga550c387e62cdbeb0cc2e45d1b96b62f0">VA_SURFACE_EXTBUF_DESC_PROTECTED</a>&#160;&#160;&#160;0x80000000</td></tr>
<tr class="memdesc:ga550c387e62cdbeb0cc2e45d1b96b62f0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Memory is protected. <br /></td></tr>
<tr class="separator:ga550c387e62cdbeb0cc2e45d1b96b62f0"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="member-group"></a>
VASurfaceAttribUsageHint attribute usage hint flags</h2></td></tr>
<tr class="memitem:ga662b193a3da2c985417d16c4d57c1e93"><td class="memItemLeft" align="right" valign="top"><a id="ga662b193a3da2c985417d16c4d57c1e93"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga662b193a3da2c985417d16c4d57c1e93">VA_SURFACE_ATTRIB_USAGE_HINT_GENERIC</a>&#160;&#160;&#160;0x00000000</td></tr>
<tr class="memdesc:ga662b193a3da2c985417d16c4d57c1e93"><td class="mdescLeft">&#160;</td><td class="mdescRight">Surface usage not indicated. <br /></td></tr>
<tr class="separator:ga662b193a3da2c985417d16c4d57c1e93"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga91b7cb3036ee2dc7d3f0b49d070fd399"><td class="memItemLeft" align="right" valign="top"><a id="ga91b7cb3036ee2dc7d3f0b49d070fd399"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga91b7cb3036ee2dc7d3f0b49d070fd399">VA_SURFACE_ATTRIB_USAGE_HINT_DECODER</a>&#160;&#160;&#160;0x00000001</td></tr>
<tr class="memdesc:ga91b7cb3036ee2dc7d3f0b49d070fd399"><td class="mdescLeft">&#160;</td><td class="mdescRight">Surface used by video decoder. <br /></td></tr>
<tr class="separator:ga91b7cb3036ee2dc7d3f0b49d070fd399"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gad330a0ad32b189a9b6edd9cd49e5c773"><td class="memItemLeft" align="right" valign="top"><a id="gad330a0ad32b189a9b6edd9cd49e5c773"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gad330a0ad32b189a9b6edd9cd49e5c773">VA_SURFACE_ATTRIB_USAGE_HINT_ENCODER</a>&#160;&#160;&#160;0x00000002</td></tr>
<tr class="memdesc:gad330a0ad32b189a9b6edd9cd49e5c773"><td class="mdescLeft">&#160;</td><td class="mdescRight">Surface used by video encoder. <br /></td></tr>
<tr class="separator:gad330a0ad32b189a9b6edd9cd49e5c773"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga299fa1b6559acf0ea5e93a14db7ed6f9"><td class="memItemLeft" align="right" valign="top"><a id="ga299fa1b6559acf0ea5e93a14db7ed6f9"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga299fa1b6559acf0ea5e93a14db7ed6f9">VA_SURFACE_ATTRIB_USAGE_HINT_VPP_READ</a>&#160;&#160;&#160;0x00000004</td></tr>
<tr class="memdesc:ga299fa1b6559acf0ea5e93a14db7ed6f9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Surface read by video post-processing. <br /></td></tr>
<tr class="separator:ga299fa1b6559acf0ea5e93a14db7ed6f9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gad2b861a6911f8e7a2399efc97bdb4eb2"><td class="memItemLeft" align="right" valign="top"><a id="gad2b861a6911f8e7a2399efc97bdb4eb2"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gad2b861a6911f8e7a2399efc97bdb4eb2">VA_SURFACE_ATTRIB_USAGE_HINT_VPP_WRITE</a>&#160;&#160;&#160;0x00000008</td></tr>
<tr class="memdesc:gad2b861a6911f8e7a2399efc97bdb4eb2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Surface written by video post-processing. <br /></td></tr>
<tr class="separator:gad2b861a6911f8e7a2399efc97bdb4eb2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gac32196b0c46eb2252ff1c74b458e89bf"><td class="memItemLeft" align="right" valign="top"><a id="gac32196b0c46eb2252ff1c74b458e89bf"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gac32196b0c46eb2252ff1c74b458e89bf">VA_SURFACE_ATTRIB_USAGE_HINT_DISPLAY</a>&#160;&#160;&#160;0x00000010</td></tr>
<tr class="memdesc:gac32196b0c46eb2252ff1c74b458e89bf"><td class="mdescLeft">&#160;</td><td class="mdescRight">Surface used for display. <br /></td></tr>
<tr class="separator:gac32196b0c46eb2252ff1c74b458e89bf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga7ff0998deb3912e12c61f7440ae657f6"><td class="memItemLeft" align="right" valign="top"><a id="ga7ff0998deb3912e12c61f7440ae657f6"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga7ff0998deb3912e12c61f7440ae657f6">VA_SURFACE_ATTRIB_USAGE_HINT_EXPORT</a>&#160;&#160;&#160;0x00000020</td></tr>
<tr class="memdesc:ga7ff0998deb3912e12c61f7440ae657f6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Surface used for export to third-party APIs, e.g. via <a class="el" href="group__api__core.html#ga404be4f513f3a15b9a831ff561b1b179" title="Export a handle to a surface for use with an external API. ">vaExportSurfaceHandle()</a>. <br /></td></tr>
<tr class="separator:ga7ff0998deb3912e12c61f7440ae657f6"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="member-group"></a>
vaExportSurfaceHandle() flags</h2></td></tr>
<tr class="memitem:ga22bb2593142a87f61a159e54114f7a95"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga22bb2593142a87f61a159e54114f7a95">VA_EXPORT_SURFACE_READ_ONLY</a>&#160;&#160;&#160;0x0001</td></tr>
<tr class="separator:ga22bb2593142a87f61a159e54114f7a95"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga93a462fd2178ff9d803275a715309ad2"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga93a462fd2178ff9d803275a715309ad2">VA_EXPORT_SURFACE_WRITE_ONLY</a>&#160;&#160;&#160;0x0002</td></tr>
<tr class="separator:ga93a462fd2178ff9d803275a715309ad2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae4f6bacaa50b576d6d1e7774d8507604"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gae4f6bacaa50b576d6d1e7774d8507604">VA_EXPORT_SURFACE_READ_WRITE</a>&#160;&#160;&#160;0x0003</td></tr>
<tr class="separator:gae4f6bacaa50b576d6d1e7774d8507604"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga1eafc62ad88550c0e9bed7545a07d008"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#ga1eafc62ad88550c0e9bed7545a07d008">VA_EXPORT_SURFACE_SEPARATE_LAYERS</a>&#160;&#160;&#160;0x0004</td></tr>
<tr class="separator:ga1eafc62ad88550c0e9bed7545a07d008"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae3ff9dcf480ccbe181f847d89216059c"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__api__core.html#gae3ff9dcf480ccbe181f847d89216059c">VA_EXPORT_SURFACE_COMPOSED_LAYERS</a>&#160;&#160;&#160;0x0008</td></tr>
<tr class="separator:gae3ff9dcf480ccbe181f847d89216059c"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<h2 class="groupheader">Macro Definition Documentation</h2>
<a id="ga13a541a66a4585335e74a2e2c9f1a5da"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga13a541a66a4585335e74a2e2c9f1a5da">&#9670;&nbsp;</a></span>VA_ATTRIB_NOT_SUPPORTED</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_ATTRIB_NOT_SUPPORTED&#160;&#160;&#160;0x80000000</td>
</tr>
</table>
</div><div class="memdoc">
<p>if an attribute is not applicable for a given profile/entrypoint pair, then set the value to the following </p>
</div>
</div>
<a id="gabc4afddf8913d08d48454955be3e6d03"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gabc4afddf8913d08d48454955be3e6d03">&#9670;&nbsp;</a></span>VA_CLEAR_DRAWABLE</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_CLEAR_DRAWABLE&#160;&#160;&#160;0x00000008</td>
</tr>
</table>
</div><div class="memdoc">
<p>Clears the drawable with background color. for hardware overlay based implementation this flag can be used to turn off the overlay </p>
</div>
</div>
<a id="gae10f59ca74aee7a081a25c01f8366717"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gae10f59ca74aee7a081a25c01f8366717">&#9670;&nbsp;</a></span>VA_CODED_BUF_STATUS_FRAME_SIZE_OVERFLOW</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_CODED_BUF_STATUS_FRAME_SIZE_OVERFLOW&#160;&#160;&#160;0x1000</td>
</tr>
</table>
</div><div class="memdoc">
<p>The frame has exceeded the maximum requested size. </p>
<p>This flag indicates that the encoded frame size exceeds the value specified through a misc parameter buffer of type <a class="el" href="group__api__core.html#gga07644ee718d2c12c44f7ad7d440533f5a87b8908521d461bd16a4c068702bae9d" title="Buffer type used to express a maximum frame size (in bits). ">VAEncMiscParameterTypeMaxFrameSize</a>. </p>
</div>
</div>
<a id="ga947a17699652aaa2b09ad722e35d7b9e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga947a17699652aaa2b09ad722e35d7b9e">&#9670;&nbsp;</a></span>VA_CODED_BUF_STATUS_NUMBER_PASSES_MASK</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_CODED_BUF_STATUS_NUMBER_PASSES_MASK&#160;&#160;&#160;0xf000000</td>
</tr>
</table>
</div><div class="memdoc">
<p>The coded buffer segment status contains frame encoding passes number. </p>
<p>This is the mask to get the number of encoding passes from the coded buffer segment status. NUMBER_PASS(bit24~bit27): the number for encoding passes executed for the coded frame. </p>
</div>
</div>
<a id="ga7437a12fa7c585fa7a51313c640652c0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga7437a12fa7c585fa7a51313c640652c0">&#9670;&nbsp;</a></span>VA_CODED_BUF_STATUS_PICTURE_AVE_QP_MASK</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_CODED_BUF_STATUS_PICTURE_AVE_QP_MASK&#160;&#160;&#160;0xff</td>
</tr>
</table>
</div><div class="memdoc">
<p>device independent data structure for codedbuffer </p>
</div>
</div>
<a id="ga9d8677743988fe043f524e3477f25099"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga9d8677743988fe043f524e3477f25099">&#9670;&nbsp;</a></span>VA_CODED_BUF_STATUS_SINGLE_NALU</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_CODED_BUF_STATUS_SINGLE_NALU&#160;&#160;&#160;0x10000000</td>
</tr>
</table>
</div><div class="memdoc">
<p>The coded buffer segment contains a single NAL unit. </p>
<p>This flag indicates that the coded buffer segment contains a single NAL unit. This flag might be useful to the user for processing the coded buffer. </p>
</div>
</div>
<a id="ga6fa356c030c9d8b8507a20cda3e71a4a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga6fa356c030c9d8b8507a20cda3e71a4a">&#9670;&nbsp;</a></span>VA_ENABLE_BLEND</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_ENABLE_BLEND&#160;&#160;&#160;0x00000004 /* video area blend with the constant color */</td>
</tr>
</table>
</div><div class="memdoc">
<p>Enabled the positioning/cropping/blending feature: 1, specify the video playback position in the isurface 2, specify the cropping info for video playback 3, encoded video will blend with background color </p>
</div>
</div>
<a id="ga8fb355619e9b0b3e129ca4a2b42c0cfc"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga8fb355619e9b0b3e129ca4a2b42c0cfc">&#9670;&nbsp;</a></span>VA_ENC_PACKED_HEADER_MISC</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_ENC_PACKED_HEADER_MISC&#160;&#160;&#160;0x00000008</td>
</tr>
</table>
</div><div class="memdoc">
<p>Driver supports misc packed headers. e.g. SEI for H.264. </p>
<dl class="deprecated"><dt><b><a class="el" href="deprecated.html#_deprecated000003">Deprecated:</a></b></dt><dd>This is a deprecated packed header flag, All applications can use <code>VA_ENC_PACKED_HEADER_RAW_DATA</code> to pass the corresponding packed header data buffer to the driver </dd></dl>
</div>
</div>
<a id="ga18287dfd8ea1b622cbb461e9232ec01b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga18287dfd8ea1b622cbb461e9232ec01b">&#9670;&nbsp;</a></span>VA_ENC_PACKED_HEADER_PICTURE</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_ENC_PACKED_HEADER_PICTURE&#160;&#160;&#160;0x00000002</td>
</tr>
</table>
</div><div class="memdoc">
<p>Driver supports packed picture headers. e.g. PPS for H.264. </p>
<p>Application must provide it to driver once this falg is returned through <a class="el" href="group__api__core.html#gae51cad2e388d6cc63ce3d4221798f9fd">vaGetConfigAttributes()</a> </p>
</div>
</div>
<a id="gabc0ce3bf75ea6aca65d6ed751f12369f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gabc0ce3bf75ea6aca65d6ed751f12369f">&#9670;&nbsp;</a></span>VA_ENC_PACKED_HEADER_SEQUENCE</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_ENC_PACKED_HEADER_SEQUENCE&#160;&#160;&#160;0x00000001</td>
</tr>
</table>
</div><div class="memdoc">
<p>Driver supports packed sequence headers. e.g. SPS for H.264. </p>
<p>Application must provide it to driver once this flag is returned through <a class="el" href="group__api__core.html#gae51cad2e388d6cc63ce3d4221798f9fd">vaGetConfigAttributes()</a> </p>
</div>
</div>
<a id="gad9ac0328b87d66fd2475f26d008dd360"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gad9ac0328b87d66fd2475f26d008dd360">&#9670;&nbsp;</a></span>VA_ENC_PACKED_HEADER_SLICE</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_ENC_PACKED_HEADER_SLICE&#160;&#160;&#160;0x00000004</td>
</tr>
</table>
</div><div class="memdoc">
<p>Driver supports packed slice headers. e.g. slice_header() for H.264. </p>
<p>Application must provide it to driver once this flag is returned through <a class="el" href="group__api__core.html#gae51cad2e388d6cc63ce3d4221798f9fd">vaGetConfigAttributes()</a> </p>
</div>
</div>
<a id="ga6836ddbf3178e7cbf49599a820fe17a9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga6836ddbf3178e7cbf49599a820fe17a9">&#9670;&nbsp;</a></span>VA_ENCRYPTION_TYPE_FULLSAMPLE_CTR</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_ENCRYPTION_TYPE_FULLSAMPLE_CTR&#160;&#160;&#160;0x00000001 /* AES CTR fullsample */</td>
</tr>
</table>
</div><div class="memdoc">
<p>These ENCRYPTION_TYPEs are used for the attribute values for <code>VAConfigAttribEncryption</code> and for encryption_type in <a class="el" href="structVAEncryptionParameters.html" title="Encryption parameters buffer for VAEncryptionParameterBufferType. ">VAEncryptionParameters</a>.</p>
<p>When used for <code>VAConfigAttribEncryption</code>, it be used via vaQueryConfigEntrypoints to check which type are supported for specific profile or not.</p>
<p>When used for encryption_type in <a class="el" href="structVAEncryptionParameters.html" title="Encryption parameters buffer for VAEncryptionParameterBufferType. ">VAEncryptionParameters</a>, it tells driver the parameters in <a class="el" href="structVAEncryptionParameters.html" title="Encryption parameters buffer for VAEncryptionParameterBufferType. ">VAEncryptionParameters</a> are used for which encryption type. </p>
</div>
</div>
<a id="gafcb3bbf17dd0467c6919d6dacea2cb58"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gafcb3bbf17dd0467c6919d6dacea2cb58">&#9670;&nbsp;</a></span>VA_EXEC_ASYNC</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_EXEC_ASYNC&#160;&#160;&#160;0x1</td>
</tr>
</table>
</div><div class="memdoc">
<p>asynchronization,application should call additonal sync operation to access output </p>
</div>
</div>
<a id="ga156a739d58e21452b0ffafa4c0a40333"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga156a739d58e21452b0ffafa4c0a40333">&#9670;&nbsp;</a></span>VA_EXEC_MODE_DEFAULT</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_EXEC_MODE_DEFAULT&#160;&#160;&#160;0x0</td>
</tr>
</table>
</div><div class="memdoc">
<p>operation mode </p>
</div>
</div>
<a id="ga9f1d4f1f14aaf5dc289cf4d11c746c59"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga9f1d4f1f14aaf5dc289cf4d11c746c59">&#9670;&nbsp;</a></span>VA_EXEC_SYNC</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_EXEC_SYNC&#160;&#160;&#160;0x0</td>
</tr>
</table>
</div><div class="memdoc">
<p>operation options synchronization, block call, output should be ready after execution function return </p>
</div>
</div>
<a id="gae3ff9dcf480ccbe181f847d89216059c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gae3ff9dcf480ccbe181f847d89216059c">&#9670;&nbsp;</a></span>VA_EXPORT_SURFACE_COMPOSED_LAYERS</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_EXPORT_SURFACE_COMPOSED_LAYERS&#160;&#160;&#160;0x0008</td>
</tr>
</table>
</div><div class="memdoc">
<p>Export surface with composed layers.</p>
<p>For example, NV12 surfaces should be exported as a single NV12 composed object. </p>
</div>
</div>
<a id="ga22bb2593142a87f61a159e54114f7a95"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga22bb2593142a87f61a159e54114f7a95">&#9670;&nbsp;</a></span>VA_EXPORT_SURFACE_READ_ONLY</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_EXPORT_SURFACE_READ_ONLY&#160;&#160;&#160;0x0001</td>
</tr>
</table>
</div><div class="memdoc">
<p>Export surface to be read by external API. </p>
</div>
</div>
<a id="gae4f6bacaa50b576d6d1e7774d8507604"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gae4f6bacaa50b576d6d1e7774d8507604">&#9670;&nbsp;</a></span>VA_EXPORT_SURFACE_READ_WRITE</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_EXPORT_SURFACE_READ_WRITE&#160;&#160;&#160;0x0003</td>
</tr>
</table>
</div><div class="memdoc">
<p>Export surface to be both read and written by external API. </p>
</div>
</div>
<a id="ga1eafc62ad88550c0e9bed7545a07d008"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga1eafc62ad88550c0e9bed7545a07d008">&#9670;&nbsp;</a></span>VA_EXPORT_SURFACE_SEPARATE_LAYERS</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_EXPORT_SURFACE_SEPARATE_LAYERS&#160;&#160;&#160;0x0004</td>
</tr>
</table>
</div><div class="memdoc">
<p>Export surface with separate layers.</p>
<p>For example, NV12 surfaces should be exported as two separate planes for luma and chroma. </p>
</div>
</div>
<a id="ga93a462fd2178ff9d803275a715309ad2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga93a462fd2178ff9d803275a715309ad2">&#9670;&nbsp;</a></span>VA_EXPORT_SURFACE_WRITE_ONLY</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_EXPORT_SURFACE_WRITE_ONLY&#160;&#160;&#160;0x0002</td>
</tr>
</table>
</div><div class="memdoc">
<p>Export surface to be written by external API. </p>
</div>
</div>
<a id="ga552bdf90e54e30a5a29a29f02f756e34"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga552bdf90e54e30a5a29a29f02f756e34">&#9670;&nbsp;</a></span>VA_FEATURE_NOT_SUPPORTED</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_FEATURE_NOT_SUPPORTED&#160;&#160;&#160;0</td>
</tr>
</table>
</div><div class="memdoc">
<p>The feature is not supported by the device.</p>
<p>Any corresponding feature flag must not be set. </p>
</div>
</div>
<a id="ga986974c9d57736c66314932140edfba5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga986974c9d57736c66314932140edfba5">&#9670;&nbsp;</a></span>VA_FEATURE_REQUIRED</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_FEATURE_REQUIRED&#160;&#160;&#160;2</td>
</tr>
</table>
</div><div class="memdoc">
<p>The feature is required by the device.</p>
<p>The device does not support not enabling this feature, so any corresponding feature flag must be set and any additional configuration needed by the feature must be supplied. </p>
</div>
</div>
<a id="ga5917cb64fd2f69489751c856ad710609"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga5917cb64fd2f69489751c856ad710609">&#9670;&nbsp;</a></span>VA_FEATURE_SUPPORTED</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_FEATURE_SUPPORTED&#160;&#160;&#160;1</td>
</tr>
</table>
</div><div class="memdoc">
<p>The feature is supported by the device.</p>
<p>The user may decide whether or not to use this feature.</p>
<p>Note that support for a feature only indicates that the hardware is able to use it; whether it is actually a positive change to enable it in a given situation will depend on other factors including the input provided by the user. </p>
</div>
</div>
<a id="ga76b44bf3d5b003e149f84a4953bf430e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga76b44bf3d5b003e149f84a4953bf430e">&#9670;&nbsp;</a></span>VA_FILTER_INTERPOLATION_DEFAULT</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_FILTER_INTERPOLATION_DEFAULT&#160;&#160;&#160;0x00000000</td>
</tr>
</table>
</div><div class="memdoc">
<p>Interpolation method for scaling </p>
</div>
</div>
<a id="gaee1ba68046de52cfbd207d3cc8214201"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gaee1ba68046de52cfbd207d3cc8214201">&#9670;&nbsp;</a></span>VA_FILTER_SCALING_DEFAULT</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_FILTER_SCALING_DEFAULT&#160;&#160;&#160;0x00000000</td>
</tr>
</table>
</div><div class="memdoc">
<p>Scaling flags for vaPutSurface() </p>
</div>
</div>
<a id="gad955482c2432c19c3db3d05ffa1bb1e3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gad955482c2432c19c3db3d05ffa1bb1e3">&#9670;&nbsp;</a></span>VA_FOURCC</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_FOURCC</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">ch0, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&#160;</td>
<td class="paramname">ch1, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&#160;</td>
<td class="paramname">ch2, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&#160;</td>
<td class="paramname">ch3&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line">((<span class="keywordtype">unsigned</span> long)(<span class="keywordtype">unsigned</span> <span class="keywordtype">char</span>) (ch0) | ((<span class="keywordtype">unsigned</span> <span class="keywordtype">long</span>)(<span class="keywordtype">unsigned</span> char) (ch1) &lt;&lt; 8) | \</div><div class="line"> ((<span class="keywordtype">unsigned</span> <span class="keywordtype">long</span>)(<span class="keywordtype">unsigned</span> char) (ch2) &lt;&lt; 16) | ((<span class="keywordtype">unsigned</span> <span class="keywordtype">long</span>)(<span class="keywordtype">unsigned</span> char) (ch3) &lt;&lt; 24 ))</div></div><!-- fragment --><p>Notes about synchronization interfaces: vaSyncSurface:</p><ol type="1">
<li>Allows to synchronize output surface (i.e. from decoding or VP)</li>
<li>Allows to synchronize all bitstreams being encoded from the given input surface (1-&gt;N pipelines).</li>
</ol>
<p>vaSyncSurface2:</p><ol type="1">
<li>The same as vaSyncSurface but allows to specify a timeout</li>
</ol>
<p>vaSyncBuffer:</p><ol type="1">
<li>Allows to synchronize output buffer (e.g. bitstream from encoding). Comparing to vaSyncSurface this function synchronizes given bitstream only. Images and Subpictures VAImage is used to either get the surface data to client memory, or to copy image data in client memory to a surface. Both images, subpictures and surfaces follow the same 2D coordinate system where origin is at the upper left corner with positive X to the right and positive Y down </li>
</ol>
</div>
</div>
<a id="ga681ccd40b9afae021cdeb806f39f2293"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga681ccd40b9afae021cdeb806f39f2293">&#9670;&nbsp;</a></span>VA_FOURCC_411P</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_FOURCC_411P&#160;&#160;&#160;0x50313134</td>
</tr>
</table>
</div><div class="memdoc">
<p>411P: three-plane 8-bit YUV 4:1:1.</p>
<p>The three planes contain Y, U and V respectively. </p>
</div>
</div>
<a id="gac3c45435c72d84429b2f257cd77713fd"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gac3c45435c72d84429b2f257cd77713fd">&#9670;&nbsp;</a></span>VA_FOURCC_411R</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_FOURCC_411R&#160;&#160;&#160;0x52313134</td>
</tr>
</table>
</div><div class="memdoc">
<p>411R: three-plane 8-bit YUV.</p>
<p>The subsampling is the transpose of 4:1:1 - full chroma appears on every fourth line. The three planes contain Y, U and V respectively. </p>
</div>
</div>
<a id="ga7b54cc35d77a6a0fe16de9206c0e3c05"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga7b54cc35d77a6a0fe16de9206c0e3c05">&#9670;&nbsp;</a></span>VA_FOURCC_422H</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_FOURCC_422H&#160;&#160;&#160;0x48323234</td>
</tr>
</table>
</div><div class="memdoc">
<p>422H: three-plane 8-bit YUV 4:2:2.</p>
<p>The three planes contain Y, U and V respectively. </p>
</div>
</div>
<a id="gacaa4a7596c39f077da952e20d83f7bee"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gacaa4a7596c39f077da952e20d83f7bee">&#9670;&nbsp;</a></span>VA_FOURCC_422V</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_FOURCC_422V&#160;&#160;&#160;0x56323234</td>
</tr>
</table>
</div><div class="memdoc">
<p>422V: three-plane 8-bit YUV 4:4:0.</p>
<p>The three planes contain Y, U and V respectively. </p>
</div>
</div>
<a id="gab97c13e91207458675234cffa294bcd8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gab97c13e91207458675234cffa294bcd8">&#9670;&nbsp;</a></span>VA_FOURCC_444P</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_FOURCC_444P&#160;&#160;&#160;0x50343434</td>
</tr>
</table>
</div><div class="memdoc">
<p>444P: three-plane 8-bit YUV 4:4:4.</p>
<p>The three planes contain Y, U and V respectively. </p>
</div>
</div>
<a id="ga573bbff5818402f73dd9bc073b49b46c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga573bbff5818402f73dd9bc073b49b46c">&#9670;&nbsp;</a></span>VA_FOURCC_A2B10G10R10</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_FOURCC_A2B10G10R10&#160;&#160;&#160;0x30334241 /* VA_FOURCC('A','B','3','0') */</td>
</tr>
</table>
</div><div class="memdoc">
<p>10-bit Pixel BGR formats. </p>
</div>
</div>
<a id="ga00c430c1562118c5ee7cd8c004f496b3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga00c430c1562118c5ee7cd8c004f496b3">&#9670;&nbsp;</a></span>VA_FOURCC_A2R10G10B10</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_FOURCC_A2R10G10B10&#160;&#160;&#160;0x30335241 /* VA_FOURCC('A','R','3','0') */</td>
</tr>
</table>
</div><div class="memdoc">
<p>10-bit Pixel RGB formats. </p>
</div>
</div>
<a id="gaa445a3d08bb22285f5f35f706d740c50"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gaa445a3d08bb22285f5f35f706d740c50">&#9670;&nbsp;</a></span>VA_FOURCC_ABGR</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_FOURCC_ABGR&#160;&#160;&#160;0x52474241</td>
</tr>
</table>
</div><div class="memdoc">
<p>ABGR: packed 8-bit RGBA.</p>
<p>Four bytes per pixel: alpha, blue, green, red. </p>
</div>
</div>
<a id="gacdc713382bb52e675f9d988493631283"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gacdc713382bb52e675f9d988493631283">&#9670;&nbsp;</a></span>VA_FOURCC_ABGR64</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_FOURCC_ABGR64&#160;&#160;&#160;0x34474241</td>
</tr>
</table>
</div><div class="memdoc">
<p>ABGR64: three-plane 16-bit ABGR 16:16:16:16</p>
<p>The four planes contain: alpha, blue, green, red respectively. </p>
</div>
</div>
<a id="gad9e41915a24cf645acb5ceca8498368a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gad9e41915a24cf645acb5ceca8498368a">&#9670;&nbsp;</a></span>VA_FOURCC_AI44</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_FOURCC_AI44&#160;&#160;&#160;0x34344149</td>
</tr>
</table>
</div><div class="memdoc">
<p>AI44: packed 4-bit YA.</p>
<p>The bottom half of each byte contains luma, the top half contains alpha. </p>
</div>
</div>
<a id="gafd8946dd39a18c7c5d35b45ac7cc140c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gafd8946dd39a18c7c5d35b45ac7cc140c">&#9670;&nbsp;</a></span>VA_FOURCC_ARGB</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_FOURCC_ARGB&#160;&#160;&#160;0x42475241</td>
</tr>
</table>
</div><div class="memdoc">
<p>ARGB: packed 8-bit RGBA.</p>
<p>Four bytes per pixel: alpha, red, green, blue. </p>
</div>
</div>
<a id="gaf381ffb104032f02d5cbf3550c0aabd5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gaf381ffb104032f02d5cbf3550c0aabd5">&#9670;&nbsp;</a></span>VA_FOURCC_ARGB64</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_FOURCC_ARGB64&#160;&#160;&#160;0x34475241</td>
</tr>
</table>
</div><div class="memdoc">
<p>AGRB64: three-plane 16-bit ARGB 16:16:16:16</p>
<p>The four planes contain: alpha, red, green, blue respectively. </p>
</div>
</div>
<a id="ga2abba001ddcd7f23a7372d98a68afc89"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga2abba001ddcd7f23a7372d98a68afc89">&#9670;&nbsp;</a></span>VA_FOURCC_AYUV</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_FOURCC_AYUV&#160;&#160;&#160;0x56555941</td>
</tr>
</table>
</div><div class="memdoc">
<p>AYUV: packed 8-bit YUVA 4:4:4.</p>
<p>Four bytes per pixel: A, Y, U, V. </p>
</div>
</div>
<a id="gaf26ac95b4a001189552a890bd8ba9b1c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gaf26ac95b4a001189552a890bd8ba9b1c">&#9670;&nbsp;</a></span>VA_FOURCC_BGR565</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_FOURCC_BGR565&#160;&#160;&#160;0x36314742</td>
</tr>
</table>
</div><div class="memdoc">
<p>BG16: packed 5/6-bit RGB.</p>
<p>Each pixel is a two-byte little-endian value. Blue, green and red are found in bits 15:11, 10:5, 4:0 respectively. </p>
</div>
</div>
<a id="gae517b1ac9199ab8638ee4af132451f73"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gae517b1ac9199ab8638ee4af132451f73">&#9670;&nbsp;</a></span>VA_FOURCC_BGRA</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_FOURCC_BGRA&#160;&#160;&#160;0x41524742</td>
</tr>
</table>
</div><div class="memdoc">
<p>BGRA: packed 8-bit RGBA.</p>
<p>Four bytes per pixel: blue, green, red, alpha. </p>
</div>
</div>
<a id="ga3dae1b647d3d32cea6f9104cbc7f3cfe"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga3dae1b647d3d32cea6f9104cbc7f3cfe">&#9670;&nbsp;</a></span>VA_FOURCC_BGRP</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_FOURCC_BGRP&#160;&#160;&#160;0x50524742</td>
</tr>
</table>
</div><div class="memdoc">
<p>BGRP: three-plane 8-bit RGB.</p>
<p>The three planes contain blue, green and red respectively. </p>
</div>
</div>
<a id="ga12233a1f6cbd11a970159b79fbc7c179"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga12233a1f6cbd11a970159b79fbc7c179">&#9670;&nbsp;</a></span>VA_FOURCC_BGRX</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_FOURCC_BGRX&#160;&#160;&#160;0x58524742</td>
</tr>
</table>
</div><div class="memdoc">
<p>BGRX: packed 8-bit RGB.</p>
<p>Four bytes per pixel: blue, green, red, unspecified. </p>
</div>
</div>
<a id="ga200e07025ef1447c3e33f3534f987911"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga200e07025ef1447c3e33f3534f987911">&#9670;&nbsp;</a></span>VA_FOURCC_I010</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_FOURCC_I010&#160;&#160;&#160;0x30313049</td>
</tr>
</table>
</div><div class="memdoc">
<p>I010: three-plane 10-bit YUV 4:2:0.</p>
<p>Each sample is a two-byte little-endian value with the top six bits ignored. The three planes contain Y, V and U respectively. </p>
</div>
</div>
<a id="ga927a384d9a4166218e37eea93b91926d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga927a384d9a4166218e37eea93b91926d">&#9670;&nbsp;</a></span>VA_FOURCC_I420</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_FOURCC_I420&#160;&#160;&#160;0x30323449</td>
</tr>
</table>
</div><div class="memdoc">
<p>I420: three-plane 8-bit YUV 4:2:0.</p>
<p>The three planes contain Y, U and V respectively. </p>
</div>
</div>
<a id="gaa199dbf58fb225f4e612ce156fce87ce"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gaa199dbf58fb225f4e612ce156fce87ce">&#9670;&nbsp;</a></span>VA_FOURCC_IMC3</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_FOURCC_IMC3&#160;&#160;&#160;0x33434D49</td>
</tr>
</table>
</div><div class="memdoc">
<p>IMC3: three-plane 8-bit YUV 4:2:0.</p>
<p>Equivalent to YV12, but with the additional constraint that the pitch of all three planes must be the same. </p>
</div>
</div>
<a id="ga6ed94da0b1543db329f4c8385370103a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga6ed94da0b1543db329f4c8385370103a">&#9670;&nbsp;</a></span>VA_FOURCC_IYUV</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_FOURCC_IYUV&#160;&#160;&#160;0x56555949</td>
</tr>
</table>
</div><div class="memdoc">
<p>IYUV: three-plane 8-bit YUV 4:2:0.</p>
<dl class="deprecated"><dt><b><a class="el" href="deprecated.html#_deprecated000005">Deprecated:</a></b></dt><dd>Use I420 instead. </dd></dl>
</div>
</div>
<a id="ga7d9433e65d21b8fcc85386b1f603ce71"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga7d9433e65d21b8fcc85386b1f603ce71">&#9670;&nbsp;</a></span>VA_FOURCC_NV11</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_FOURCC_NV11&#160;&#160;&#160;0x3131564e</td>
</tr>
</table>
</div><div class="memdoc">
<p>NV11: two-plane 8-bit YUV 4:1:1.</p>
<p>The first plane contains Y, the second plane contains U and V in pairs of bytes. </p>
</div>
</div>
<a id="gad017021aea788f8b8a2165719605c627"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gad017021aea788f8b8a2165719605c627">&#9670;&nbsp;</a></span>VA_FOURCC_NV12</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_FOURCC_NV12&#160;&#160;&#160;0x3231564E</td>
</tr>
</table>
</div><div class="memdoc">
<p>NV12: two-plane 8-bit YUV 4:2:0. The first plane contains Y, the second plane contains U and V in pairs of bytes. </p>
</div>
</div>
<a id="ga1e7c5b8eb5acbee401b56264f1b4149e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga1e7c5b8eb5acbee401b56264f1b4149e">&#9670;&nbsp;</a></span>VA_FOURCC_NV21</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_FOURCC_NV21&#160;&#160;&#160;0x3132564E</td>
</tr>
</table>
</div><div class="memdoc">
<p>NV21: two-plane 8-bit YUV 4:2:0. Same as NV12, but with U and V swapped. </p>
</div>
</div>
<a id="ga8c02ad279c93468632ad85169156057e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga8c02ad279c93468632ad85169156057e">&#9670;&nbsp;</a></span>VA_FOURCC_P010</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_FOURCC_P010&#160;&#160;&#160;0x30313050</td>
</tr>
</table>
</div><div class="memdoc">
<p>P010: two-plane 10-bit YUV 4:2:0.</p>
<p>Each sample is a two-byte little-endian value with the bottom six bits ignored. The first plane contains Y, the second plane contains U and V in pairs of samples. </p>
</div>
</div>
<a id="ga5587560692e1b4dd9c1a31562fc4c309"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga5587560692e1b4dd9c1a31562fc4c309">&#9670;&nbsp;</a></span>VA_FOURCC_P012</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_FOURCC_P012&#160;&#160;&#160;0x32313050</td>
</tr>
</table>
</div><div class="memdoc">
<p>P012: two-plane 12-bit YUV 4:2:0.</p>
<p>Each sample is a two-byte little-endian value with the bottom four bits ignored. The first plane contains Y, the second plane contains U and V in pairs of samples. </p>
</div>
</div>
<a id="gacf9899f55f39e50f77dc5965f03a5d03"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gacf9899f55f39e50f77dc5965f03a5d03">&#9670;&nbsp;</a></span>VA_FOURCC_P016</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_FOURCC_P016&#160;&#160;&#160;0x36313050</td>
</tr>
</table>
</div><div class="memdoc">
<p>P016: two-plane 16-bit YUV 4:2:0.</p>
<p>Each sample is a two-byte little-endian value. The first plane contains Y, the second plane contains U and V in pairs of samples. </p>
</div>
</div>
<a id="gabc6e0c598a4df8c4c75a5d674e84a86b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gabc6e0c598a4df8c4c75a5d674e84a86b">&#9670;&nbsp;</a></span>VA_FOURCC_P208</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_FOURCC_P208&#160;&#160;&#160;0x38303250</td>
</tr>
</table>
</div><div class="memdoc">
<p>P208: two-plane 8-bit YUV 4:2:2.</p>
<p>The first plane contains Y, the second plane contains U and V in pairs of bytes. </p>
</div>
</div>
<a id="ga3f5864281ce1c3ef62cae1f1f1d6552c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga3f5864281ce1c3ef62cae1f1f1d6552c">&#9670;&nbsp;</a></span>VA_FOURCC_RGB565</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_FOURCC_RGB565&#160;&#160;&#160;0x36314752</td>
</tr>
</table>
</div><div class="memdoc">
<p>RG16: packed 5/6-bit RGB.</p>
<p>Each pixel is a two-byte little-endian value. Red, green and blue are found in bits 15:11, 10:5, 4:0 respectively. </p>
</div>
</div>
<a id="ga7f856f264dbf0ffacf6d19f52c87b662"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga7f856f264dbf0ffacf6d19f52c87b662">&#9670;&nbsp;</a></span>VA_FOURCC_RGBA</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_FOURCC_RGBA&#160;&#160;&#160;0x41424752</td>
</tr>
</table>
</div><div class="memdoc">
<p>RGBA: packed 8-bit RGBA.</p>
<p>Four bytes per pixel: red, green, blue, alpha. </p>
</div>
</div>
<a id="gaaac3890eb5fd8fb5444956165afb9608"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gaaac3890eb5fd8fb5444956165afb9608">&#9670;&nbsp;</a></span>VA_FOURCC_RGBP</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_FOURCC_RGBP&#160;&#160;&#160;0x50424752</td>
</tr>
</table>
</div><div class="memdoc">
<p>RGBP: three-plane 8-bit RGB.</p>
<p>The three planes contain red, green and blue respectively. </p>
</div>
</div>
<a id="ga58d2ee5e78e566dea8c091331554d1ab"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga58d2ee5e78e566dea8c091331554d1ab">&#9670;&nbsp;</a></span>VA_FOURCC_RGBX</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_FOURCC_RGBX&#160;&#160;&#160;0x58424752</td>
</tr>
</table>
</div><div class="memdoc">
<p>RGBX: packed 8-bit RGB.</p>
<p>Four bytes per pixel: red, green, blue, unspecified. </p>
</div>
</div>
<a id="ga9588390eb559be613894cbc091cf1e43"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga9588390eb559be613894cbc091cf1e43">&#9670;&nbsp;</a></span>VA_FOURCC_UYVY</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_FOURCC_UYVY&#160;&#160;&#160;0x59565955</td>
</tr>
</table>
</div><div class="memdoc">
<p>UYUV: packed 8-bit YUV 4:2:2.</p>
<p>Four bytes per pair of pixels: U, Y, U, V. </p>
</div>
</div>
<a id="ga739b622bec47ad0a3e3414595781554c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga739b622bec47ad0a3e3414595781554c">&#9670;&nbsp;</a></span>VA_FOURCC_VYUY</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_FOURCC_VYUY&#160;&#160;&#160;0x59555956</td>
</tr>
</table>
</div><div class="memdoc">
<p>VYUV: packed 8-bit YUV 4:2:2.</p>
<p>Four bytes per pair of pixels: V, Y, U, V. </p>
</div>
</div>
<a id="gaccacd791cd681155531cdf7a26fb56b1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gaccacd791cd681155531cdf7a26fb56b1">&#9670;&nbsp;</a></span>VA_FOURCC_X2B10G10R10</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_FOURCC_X2B10G10R10&#160;&#160;&#160;0x30334258 /* VA_FOURCC('X','B','3','0') */</td>
</tr>
</table>
</div><div class="memdoc">
<p>10-bit Pixel BGR formats without alpha. </p>
</div>
</div>
<a id="gad7c2a6c7c8af57eebf3ee786d32f27e3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gad7c2a6c7c8af57eebf3ee786d32f27e3">&#9670;&nbsp;</a></span>VA_FOURCC_X2R10G10B10</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_FOURCC_X2R10G10B10&#160;&#160;&#160;0x30335258 /* VA_FOURCC('X','R','3','0') */</td>
</tr>
</table>
</div><div class="memdoc">
<p>10-bit Pixel RGB formats without alpha. </p>
</div>
</div>
<a id="ga08134a315490c1c0e1d5eaedca8e4f9c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga08134a315490c1c0e1d5eaedca8e4f9c">&#9670;&nbsp;</a></span>VA_FOURCC_XBGR</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_FOURCC_XBGR&#160;&#160;&#160;0x52474258</td>
</tr>
</table>
</div><div class="memdoc">
<p>XBGR: packed 8-bit RGB.</p>
<p>Four bytes per pixel: unspecified, blue, green, red. </p>
</div>
</div>
<a id="gacd3c115dbd9b80791a2ad6db08617141"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gacd3c115dbd9b80791a2ad6db08617141">&#9670;&nbsp;</a></span>VA_FOURCC_XRGB</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_FOURCC_XRGB&#160;&#160;&#160;0x42475258</td>
</tr>
</table>
</div><div class="memdoc">
<p>XRGB: packed 8-bit RGB.</p>
<p>Four bytes per pixel: unspecified, red, green, blue. </p>
</div>
</div>
<a id="ga8df81eeda033139c8ed283e7eca7cc6f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga8df81eeda033139c8ed283e7eca7cc6f">&#9670;&nbsp;</a></span>VA_FOURCC_XYUV</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_FOURCC_XYUV&#160;&#160;&#160;0x56555958</td>
</tr>
</table>
</div><div class="memdoc">
<p>XYUV: packed 8-bit YUVX 4:4:4.</p>
<p>Four bytes per pixel: X, Y, U, V. </p>
</div>
</div>
<a id="gace862315b8ad74021fc05424afaeaf73"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gace862315b8ad74021fc05424afaeaf73">&#9670;&nbsp;</a></span>VA_FOURCC_Y16</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_FOURCC_Y16&#160;&#160;&#160;0x20363159</td>
</tr>
</table>
</div><div class="memdoc">
<p>Y16: 16-bit greyscale.</p>
<p>Only a single sample, 16 bit Y plane for monochrome images </p>
</div>
</div>
<a id="ga730635180d1dd50463b264a53fed8dde"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga730635180d1dd50463b264a53fed8dde">&#9670;&nbsp;</a></span>VA_FOURCC_Y210</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_FOURCC_Y210&#160;&#160;&#160;0x30313259</td>
</tr>
</table>
</div><div class="memdoc">
<p>Y210: packed 10-bit YUV 4:2:2.</p>
<p>Eight bytes represent a pair of pixels. Each sample is a two-byte little-endian value, with the bottom six bits ignored. The samples are in the order Y, U, Y, V. </p>
</div>
</div>
<a id="gaa75ff7c6ed66afae2b0dff1b891ce0db"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gaa75ff7c6ed66afae2b0dff1b891ce0db">&#9670;&nbsp;</a></span>VA_FOURCC_Y212</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_FOURCC_Y212&#160;&#160;&#160;0x32313259</td>
</tr>
</table>
</div><div class="memdoc">
<p>Y212: packed 12-bit YUV 4:2:2.</p>
<p>Eight bytes represent a pair of pixels. Each sample is a two-byte little-endian value. The samples are in the order Y, U, Y, V. </p>
</div>
</div>
<a id="ga414b3d49d1e9b19699bf29d72b2afeb5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga414b3d49d1e9b19699bf29d72b2afeb5">&#9670;&nbsp;</a></span>VA_FOURCC_Y216</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_FOURCC_Y216&#160;&#160;&#160;0x36313259</td>
</tr>
</table>
</div><div class="memdoc">
<p>Y216: packed 16-bit YUV 4:2:2.</p>
<p>Eight bytes represent a pair of pixels. Each sample is a two-byte little-endian value. The samples are in the order Y, U, Y, V. </p>
</div>
</div>
<a id="gac16f27a9610065a3c5031c2552cbf220"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gac16f27a9610065a3c5031c2552cbf220">&#9670;&nbsp;</a></span>VA_FOURCC_Y410</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_FOURCC_Y410&#160;&#160;&#160;0x30313459</td>
</tr>
</table>
</div><div class="memdoc">
<p>Y410: packed 10-bit YUVA 4:4:4.</p>
<p>Each pixel is a four-byte little-endian value. A, V, Y, U are found in bits 31:30, 29:20, 19:10, 9:0 respectively. </p>
</div>
</div>
<a id="gae494c1e515d472b0f62b47abfde3b8e2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gae494c1e515d472b0f62b47abfde3b8e2">&#9670;&nbsp;</a></span>VA_FOURCC_Y412</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_FOURCC_Y412&#160;&#160;&#160;0x32313459</td>
</tr>
</table>
</div><div class="memdoc">
<p>Y412 packed 12-bit YUVA 4:4:4.</p>
<p>Each pixel is a set of four samples, each of which is a two-byte little-endian value. The samples are in the order A, V, Y, U. </p>
</div>
</div>
<a id="ga33f92599d153a9e36ff65b66c2f61ed9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga33f92599d153a9e36ff65b66c2f61ed9">&#9670;&nbsp;</a></span>VA_FOURCC_Y416</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_FOURCC_Y416&#160;&#160;&#160;0x36313459</td>
</tr>
</table>
</div><div class="memdoc">
<p>Y416: packed 16-bit YUVA 4:4:4.</p>
<p>Each pixel is a set of four samples, each of which is a two-byte little-endian value. The samples are in the order A, V, Y, U. </p>
</div>
</div>
<a id="gaedd954937b36b4bb7717a88b8538904b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gaedd954937b36b4bb7717a88b8538904b">&#9670;&nbsp;</a></span>VA_FOURCC_Y8</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_FOURCC_Y8&#160;&#160;&#160;0x20203859</td>
</tr>
</table>
</div><div class="memdoc">
<p>Y8: 8-bit greyscale.</p>
<p>Only a single sample, 8 bit Y plane for monochrome images </p>
</div>
</div>
<a id="gacbb9bb3f3702ca56ee77bc505e6bfd76"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gacbb9bb3f3702ca56ee77bc505e6bfd76">&#9670;&nbsp;</a></span>VA_FOURCC_Y800</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_FOURCC_Y800&#160;&#160;&#160;0x30303859</td>
</tr>
</table>
</div><div class="memdoc">
<p>Y800: 8-bit greyscale. </p>
</div>
</div>
<a id="ga37316eecf03734173036b876c491af91"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga37316eecf03734173036b876c491af91">&#9670;&nbsp;</a></span>VA_FOURCC_YUY2</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_FOURCC_YUY2&#160;&#160;&#160;0x32595559</td>
</tr>
</table>
</div><div class="memdoc">
<p>YUY2: packed 8-bit YUV 4:2:2.</p>
<p>Four bytes per pair of pixels: Y, U, Y, V. </p>
</div>
</div>
<a id="gab2ef88aa914142b406fc50f223e644f3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gab2ef88aa914142b406fc50f223e644f3">&#9670;&nbsp;</a></span>VA_FOURCC_YV12</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_FOURCC_YV12&#160;&#160;&#160;0x32315659</td>
</tr>
</table>
</div><div class="memdoc">
<p>YV12: three-plane 8-bit YUV 4:2:0.</p>
<p>The three planes contain Y, V and U respectively. </p>
</div>
</div>
<a id="ga25a7cdd0745dbd007b3b65fb8b55777d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga25a7cdd0745dbd007b3b65fb8b55777d">&#9670;&nbsp;</a></span>VA_FOURCC_YV16</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_FOURCC_YV16&#160;&#160;&#160;0x36315659</td>
</tr>
</table>
</div><div class="memdoc">
<p>YV16: three-plane 8-bit YUV 4:2:2.</p>
<p>The three planes contain Y, V and U respectively. </p>
</div>
</div>
<a id="ga563c133bcdb464e95b5416f1c2579cc9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga563c133bcdb464e95b5416f1c2579cc9">&#9670;&nbsp;</a></span>VA_FOURCC_YV24</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_FOURCC_YV24&#160;&#160;&#160;0x34325659</td>
</tr>
</table>
</div><div class="memdoc">
<p>YV24: three-plane 8-bit YUV 4:4:4.</p>
<p>The three planes contain Y, V and U respectively. </p>
</div>
</div>
<a id="ga84a5975f3a4f66ded024d8998d8ca1ff"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga84a5975f3a4f66ded024d8998d8ca1ff">&#9670;&nbsp;</a></span>VA_FOURCC_YV32</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_FOURCC_YV32&#160;&#160;&#160;0x32335659</td>
</tr>
</table>
</div><div class="memdoc">
<p>YV32: four-plane 8-bit YUVA 4:4:4</p>
<p>The four planes contain Y, V, U and A respectively. </p>
</div>
</div>
<a id="ga32279f0e2de86641cab440120e884280"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga32279f0e2de86641cab440120e884280">&#9670;&nbsp;</a></span>VA_FOURCC_YVYU</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_FOURCC_YVYU&#160;&#160;&#160;0x55595659</td>
</tr>
</table>
</div><div class="memdoc">
<p>YVYU: packed 8-bit YUV 4:2:2.</p>
<p>Four bytes per pair of pixels: Y, V, Y, U. </p>
</div>
</div>
<a id="gab5ad65ad225291300cb5bd59e7528858"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gab5ad65ad225291300cb5bd59e7528858">&#9670;&nbsp;</a></span>VA_FRAME_PICTURE</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_FRAME_PICTURE&#160;&#160;&#160;0x00000000</td>
</tr>
</table>
</div><div class="memdoc">
<ol type="1">
<li>De-interlacing flags for vaPutSurface()</li>
<li>Surface sample type for input/output surface flag<ul>
<li>Progressive: VA_FRAME_PICTURE</li>
<li>Interleaved: VA_TOP_FIELD_FIRST, VA_BOTTOM_FIELD_FIRST</li>
<li>Field: VA_TOP_FIELD, VA_BOTTOM_FIELD </li>
</ul>
</li>
</ol>
</div>
</div>
<a id="gaaa4fb20d1c2606379cccfa562c2ebb3b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gaaa4fb20d1c2606379cccfa562c2ebb3b">&#9670;&nbsp;</a></span>VA_PADDING_LOW</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_PADDING_LOW&#160;&#160;&#160;4</td>
</tr>
</table>
</div><div class="memdoc">
<p>Padding size in 4-bytes </p>
</div>
</div>
<a id="gadff6600305c303977d0f1f4e101dd850"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gadff6600305c303977d0f1f4e101dd850">&#9670;&nbsp;</a></span>VA_RC_PARALLEL</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_RC_PARALLEL&#160;&#160;&#160;0x00000200</td>
</tr>
</table>
</div><div class="memdoc">
<p>Parallel BRC, for hierachical B. </p>
<p>For hierachical B, B frames can be refered by other B frames. Currently three layers of hierachy are defined: B0 - regular B, no reference to other B frames. B1 - reference to only I, P and regular B0 frames. B2 - reference to any other frames, including B1. In Hierachical B structure, B frames on the same layer can be processed simultaneously. And BRC would adjust accordingly. This is so called Parallel BRC. </p>
</div>
</div>
<a id="gaf2b89a27c2f6f5af305d54a6f25a4a01"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gaf2b89a27c2f6f5af305d54a6f25a4a01">&#9670;&nbsp;</a></span>VA_ROTATION_NONE</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_ROTATION_NONE&#160;&#160;&#160;0x00000000</td>
</tr>
</table>
</div><div class="memdoc">
<p>attribute value for VADisplayAttribRotation </p>
</div>
</div>
<a id="gae1c4093783110899a548372bd63bf161"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gae1c4093783110899a548372bd63bf161">&#9670;&nbsp;</a></span>VA_RT_FORMAT_RGB32_10BPP</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_RT_FORMAT_RGB32_10BPP&#160;&#160;&#160;<a class="el" href="group__api__core.html#gaf3f42b30603c169ed89cf71d5c82f9b3">VA_RT_FORMAT_RGB32_10</a></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="deprecated"><dt><b><a class="el" href="deprecated.html#_deprecated000001">Deprecated:</a></b></dt><dd>use VA_RT_FORMAT_RGB32_10 instead. </dd></dl>
</div>
</div>
<a id="gaf0a40b7ab606d8e855c7a8934d7bf48a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gaf0a40b7ab606d8e855c7a8934d7bf48a">&#9670;&nbsp;</a></span>VA_RT_FORMAT_YUV420_10BPP</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_RT_FORMAT_YUV420_10BPP&#160;&#160;&#160;<a class="el" href="group__api__core.html#gadbe9fc438a72830f1eb803d6ca9bc448">VA_RT_FORMAT_YUV420_10</a></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="deprecated"><dt><b><a class="el" href="deprecated.html#_deprecated000002">Deprecated:</a></b></dt><dd>use VA_RT_FORMAT_YUV420_10 instead. </dd></dl>
</div>
</div>
<a id="ga3fd349cafd4b89440b25e690f4bbba25"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga3fd349cafd4b89440b25e690f4bbba25">&#9670;&nbsp;</a></span>VA_SLICE_DATA_FLAG_ALL</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_SLICE_DATA_FLAG_ALL&#160;&#160;&#160;0x00 /* whole slice is in the buffer */</td>
</tr>
</table>
</div><div class="memdoc">
<p>There will be cases where the bitstream buffer will not have enough room to hold the data for the entire slice, and the following flags will be used in the slice parameter to signal to the server for the possible cases. If a slice parameter buffer and slice data buffer pair is sent to the server with the slice data partially in the slice data buffer (BEGIN and MIDDLE cases below), then a slice parameter and data buffer needs to be sent again to complete this slice. </p>
</div>
</div>
<a id="ga6f807dfeeb70b935d83d16fbaf5f2e92"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga6f807dfeeb70b935d83d16fbaf5f2e92">&#9670;&nbsp;</a></span>VA_SRC_COLOR_MASK</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_SRC_COLOR_MASK&#160;&#160;&#160;0x000000f0</td>
</tr>
</table>
</div><div class="memdoc">
<p>Color space conversion flags for vaPutSurface() </p>
</div>
</div>
<a id="gaa721c40f7082f2af3df09e26be6cf37b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gaa721c40f7082f2af3df09e26be6cf37b">&#9670;&nbsp;</a></span>VA_STATUS_ERROR_INVALID_VALUE</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_STATUS_ERROR_INVALID_VALUE&#160;&#160;&#160;0x00000019</td>
</tr>
</table>
</div><div class="memdoc">
<p>An invalid/unsupported value was supplied. </p>
<p>This is a catch-all error code for invalid or unsupported values. e.g. value exceeding the valid range, invalid type in the context of generic attribute values. </p>
</div>
</div>
<a id="ga1058e4dfef31ee2711f080c5a5d12463"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga1058e4dfef31ee2711f080c5a5d12463">&#9670;&nbsp;</a></span>VA_STATUS_SUCCESS</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_STATUS_SUCCESS&#160;&#160;&#160;0x00000000</td>
</tr>
</table>
</div><div class="memdoc">
<p>Return status type from functions Values for the return status </p>
</div>
</div>
<a id="ga93dfe25c489bf1ab5416a9a96d80c5a0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga93dfe25c489bf1ab5416a9a96d80c5a0">&#9670;&nbsp;</a></span>VA_SUBPICTURE_CHROMA_KEYING</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VA_SUBPICTURE_CHROMA_KEYING&#160;&#160;&#160;0x0001</td>
</tr>
</table>
</div><div class="memdoc">
<p>flags for subpictures </p>
</div>
</div>
<h2 class="groupheader">Typedef Documentation</h2>
<a id="gad26441ddf2f4441ef65bbefa4662607f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gad26441ddf2f4441ef65bbefa4662607f">&#9670;&nbsp;</a></span>VABufferID</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">typedef <a class="el" href="group__api__core.html#gab3ee763380573fdd05464ca16cf46d1d">VAGenericID</a> <a class="el" href="group__api__core.html#gad26441ddf2f4441ef65bbefa4662607f">VABufferID</a></td>
</tr>
</table>
</div><div class="memdoc">
<p>Buffers Buffers are used to pass various types of data from the client to the server. The server maintains a data store for each buffer created, and the client idenfies a buffer through a unique buffer id assigned by the server. </p>
</div>
</div>
<a id="ga4af336e410aefeb4ca4315e2c7cbd653"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga4af336e410aefeb4ca4315e2c7cbd653">&#9670;&nbsp;</a></span>VAContextID</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">typedef <a class="el" href="group__api__core.html#gab3ee763380573fdd05464ca16cf46d1d">VAGenericID</a> <a class="el" href="group__api__core.html#ga4af336e410aefeb4ca4315e2c7cbd653">VAContextID</a></td>
</tr>
</table>
</div><div class="memdoc">
<p>Contexts and Surfaces</p>
<p>Context represents a "virtual" video decode, encode or video processing pipeline. Surfaces are render targets for a given context. The data in the surfaces are not accessible to the client except if derived image is supported and the internal data format of the surface is implementation specific.</p>
<p>Surfaces are provided as a hint of what surfaces will be used when the context is created through <a class="el" href="group__api__core.html#ga7a0e774a793545058d1a311bed9bb8cf">vaCreateContext()</a>. A surface may be used by different contexts at the same time as soon as application can make sure the operations are synchronized between different contexts, e.g. a surface is used as the output of a decode context and the input of a video process context. Surfaces can only be destroyed after all contexts using these surfaces have been destroyed.</p>
<p>Both contexts and surfaces are identified by unique IDs and its implementation specific internals are kept opaque to the clients </p>
</div>
</div>
<a id="gad534cae750fddc9ad30d0dc267deffa3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gad534cae750fddc9ad30d0dc267deffa3">&#9670;&nbsp;</a></span>VADisplay</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">typedef void* <a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a></td>
</tr>
</table>
</div><div class="memdoc">
<p>Overview</p>
<p>The VA API is intended to provide an interface between a video decode/encode/processing application (client) and a hardware accelerator (server), to off-load video decode/encode/processing operations from the host to the hardware accelerator at various entry-points.</p>
<p>The basic operation steps are:</p>
<ul>
<li>Negotiate a mutually acceptable configuration with the server to lock down profile, entrypoints, and other attributes that will not change on a frame-by-frame basis.</li>
<li>Create a video decode, encode or processing context which represents a "virtualized" hardware device</li>
<li>Get and fill the render buffers with the corresponding data (depending on profiles and entrypoints)</li>
<li>Pass the render buffers to the server to handle the current frame</li>
</ul>
<p>Initialization &amp; Configuration Management</p>
<ul>
<li>Find out supported profiles</li>
<li>Find out entrypoints for a given profile</li>
<li>Find out configuration attributes for a given profile/entrypoint pair</li>
<li>Create a configuration for use by the application </li>
</ul>
</div>
</div>
<a id="gab3ee763380573fdd05464ca16cf46d1d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gab3ee763380573fdd05464ca16cf46d1d">&#9670;&nbsp;</a></span>VAGenericID</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">typedef unsigned int <a class="el" href="group__api__core.html#gab3ee763380573fdd05464ca16cf46d1d">VAGenericID</a></td>
</tr>
</table>
</div><div class="memdoc">
<p>Generic ID type, can be re-typed for specific implementation </p>
</div>
</div>
<a id="ga26fd64e5d522004ce30dc8159a57f240"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga26fd64e5d522004ce30dc8159a57f240">&#9670;&nbsp;</a></span>VAMessageCallback</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">typedef void(* VAMessageCallback) (void *user_context, const char *message)</td>
</tr>
</table>
</div><div class="memdoc">
<p>Type of a message callback, used for both error and info log. </p>
</div>
</div>
<a id="ga832b992b8a244ddedf180915e1b19f94"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga832b992b8a244ddedf180915e1b19f94">&#9670;&nbsp;</a></span>VANativeDisplay</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">typedef void* <a class="el" href="group__api__core.html#ga832b992b8a244ddedf180915e1b19f94">VANativeDisplay</a></td>
</tr>
</table>
</div><div class="memdoc">
<p>Initialization: A display must be obtained by calling vaGetDisplay() before calling <a class="el" href="group__api__core.html#ga266154ed3b1f38e873caa0af680d733e">vaInitialize()</a> and other functions. This connects the API to the native window system. For X Windows, native_dpy would be from XOpenDisplay() </p>
</div>
</div>
<a id="ga13b0f287a77772b1f8b07dd555230cce"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga13b0f287a77772b1f8b07dd555230cce">&#9670;&nbsp;</a></span>VASubpictureID</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">typedef <a class="el" href="group__api__core.html#gab3ee763380573fdd05464ca16cf46d1d">VAGenericID</a> <a class="el" href="group__api__core.html#ga13b0f287a77772b1f8b07dd555230cce">VASubpictureID</a></td>
</tr>
</table>
</div><div class="memdoc">
<p>Subpictures Subpicture is a special type of image that can be blended with a surface during vaPutSurface(). Subpicture can be used to render DVD sub-titles or closed captioning text etc. </p>
</div>
</div>
<h2 class="groupheader">Enumeration Type Documentation</h2>
<a id="ga24da9776c5d3a5ce29cb592cf22c00db"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga24da9776c5d3a5ce29cb592cf22c00db">&#9670;&nbsp;</a></span>VABufferType</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="group__api__core.html#ga24da9776c5d3a5ce29cb592cf22c00db">VABufferType</a></td>
</tr>
</table>
</div><div class="memdoc">
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="gga24da9776c5d3a5ce29cb592cf22c00dba54c423290b67035d11937a4b85ab9b95"></a>VAEncQPBufferType&#160;</td><td class="fielddoc"><p>Encoding QP buffer. </p>
<p>This buffer contains QP per MB for encoding. Currently VAEncQPBufferH264 is defined for H.264 encoding, see #VAEncQPBufferH264 for details </p>
</td></tr>
<tr><td class="fieldname"><a id="gga24da9776c5d3a5ce29cb592cf22c00dba13667c8204336ec80cfc68d1d4dee593"></a>VAProcPipelineParameterBufferType&#160;</td><td class="fielddoc"><p>Video processing pipeline parameter buffer. </p>
<p>This buffer describes the video processing pipeline. See <a class="el" href="structVAProcPipelineParameterBuffer.html" title="Video processing pipeline configuration. ">VAProcPipelineParameterBuffer</a> for details. </p>
</td></tr>
<tr><td class="fieldname"><a id="gga24da9776c5d3a5ce29cb592cf22c00dba8c3862f3b099ed92870a93f278248e65"></a>VAProcFilterParameterBufferType&#160;</td><td class="fielddoc"><p>Video filter parameter buffer. </p>
<p>This buffer describes the video filter parameters. All buffers inherit from <a class="el" href="structVAProcFilterParameterBufferBase.html" title="Filter parameter buffer base. ">VAProcFilterParameterBufferBase</a>, thus including a unique filter buffer type.</p>
<p>The default buffer used by most filters is <a class="el" href="structVAProcFilterParameterBuffer.html" title="Default filter parametrization. ">VAProcFilterParameterBuffer</a>. Filters requiring advanced parameters include, but are not limited to, deinterlacing (<a class="el" href="structVAProcFilterParameterBufferDeinterlacing.html" title="Deinterlacing filter parametrization. ">VAProcFilterParameterBufferDeinterlacing</a>), color balance (<a class="el" href="structVAProcFilterParameterBufferColorBalance.html" title="Color balance filter parametrization. ">VAProcFilterParameterBufferColorBalance</a>), etc. </p>
</td></tr>
<tr><td class="fieldname"><a id="gga24da9776c5d3a5ce29cb592cf22c00dbaee3b07dde33764f72851c035ee7d51f9"></a>VAEncFEIMVBufferType&#160;</td><td class="fielddoc"><p>FEI specific buffer types. </p>
</td></tr>
<tr><td class="fieldname"><a id="gga24da9776c5d3a5ce29cb592cf22c00dbab3e14edb8e030eb8ed3bfe2cc0131673"></a>VAStatsStatisticsBufferType&#160;</td><td class="fielddoc"><p>Statistics output for VAEntrypointStats progressive and top field of interlaced case. </p>
</td></tr>
<tr><td class="fieldname"><a id="gga24da9776c5d3a5ce29cb592cf22c00dbad64569bae4d2eba946cbf6f683fa00be"></a>VAStatsStatisticsBottomFieldBufferType&#160;</td><td class="fielddoc"><p>Statistics output for VAEntrypointStats bottom field of interlaced case. </p>
</td></tr>
<tr><td class="fieldname"><a id="gga24da9776c5d3a5ce29cb592cf22c00dba6dfe491eeeb2806226378120bb8f73d9"></a>VAEncMacroblockDisableSkipMapBufferType&#160;</td><td class="fielddoc"><p>Force MB's to be non skip for encode.it's per-mb control buffer, The width of the MB map Surface is (width of the Picture in MB unit) * 1 byte, multiple of 64 bytes. The height is (height of the picture in MB unit). The picture is either frame or non-interleaved top or bottom field. If the application provides this surface, it will override the "skipCheckDisable" setting in <a class="el" href="structVAEncMiscParameterEncQuality.html">VAEncMiscParameterEncQuality</a>. </p>
</td></tr>
<tr><td class="fieldname"><a id="gga24da9776c5d3a5ce29cb592cf22c00dba82cd75724db5851bcf598e543c477e07"></a>VAEncFEICTBCmdBufferType&#160;</td><td class="fielddoc"><p>HEVC FEI CTB level cmd buffer it is CTB level information for future usage. </p>
</td></tr>
<tr><td class="fieldname"><a id="gga24da9776c5d3a5ce29cb592cf22c00dbad7face34fb46abf8fcddb9812628f9a7"></a>VAEncFEICURecordBufferType&#160;</td><td class="fielddoc"><p>HEVC FEI CU level data buffer it's CTB level information for future usage. </p>
</td></tr>
<tr><td class="fieldname"><a id="gga24da9776c5d3a5ce29cb592cf22c00dbae1261056098eebd8fddb896bf7edbb2e"></a>VADecodeStreamoutBufferType&#160;</td><td class="fielddoc"><p>decode stream out buffer, intermedia data of decode, it may include MV, MB mode etc. it can be used to detect motion and analyze the frame contain </p>
</td></tr>
<tr><td class="fieldname"><a id="gga24da9776c5d3a5ce29cb592cf22c00dba2dbecadf914e502be2d9bcda52b8ed67"></a>VASubsetsParameterBufferType&#160;</td><td class="fielddoc"><p>HEVC Decoding Subset Parameter buffer type. </p>
<p>The subsets parameter buffer is concatenation with one or multiple subset entry point offsets. All the offset values are layed out one by one according to slice order with first slice segment first, second slice segment second, etc... The entry number is indicated by parameter num_entry_point_offsets. And the first entry position of the entry point offsets for any slice segment is indicated by parameter entry_offset_to_subset_array in <a class="el" href="structVAPictureParameterBufferHEVC.html" title="HEVC Decoding Picture Parameter Buffer Structure. ">VAPictureParameterBufferHEVC</a> data structure. </p>
</td></tr>
<tr><td class="fieldname"><a id="gga24da9776c5d3a5ce29cb592cf22c00dba376b3a8e2e04babb89984fc9779e616e"></a>VAContextParameterUpdateBufferType&#160;</td><td class="fielddoc"><p>adjust context parameters dynamically </p>
<p>this parameter is used to update context parameters, detail parameter is in <code><a class="el" href="structVAContextParameterUpdateBuffer.html" title="update the context parameter this structure is used to update context parameters, such as priority of...">VAContextParameterUpdateBuffer</a></code> </p>
</td></tr>
<tr><td class="fieldname"><a id="gga24da9776c5d3a5ce29cb592cf22c00dba7a2ea7b1732bc899a151543e7bd79ddd"></a>VAProtectedSessionExecuteBufferType&#160;</td><td class="fielddoc"><p>Protected session execution buffer type. </p>
<p>It's for TEE execution usage (<a class="el" href="group__api__prot.html#ga3aa87ed9c82cf09a4c90c6285af6357b" title="Execute provides a general mechanism for TEE client tasks execution. ">vaProtectedSessionExecute()</a>). The buffer structure is in <code><a class="el" href="structVAProtectedSessionExecuteBuffer.html" title="Buffer for vaProtectedSessionExecute() ">VAProtectedSessionExecuteBuffer</a></code> </p>
</td></tr>
<tr><td class="fieldname"><a id="gga24da9776c5d3a5ce29cb592cf22c00dbadce96bfbad3362a27848b18e2a3843f5"></a>VAEncryptionParameterBufferType&#160;</td><td class="fielddoc"><p>Encryption parameters buffer for protected content session. </p>
<p>Refer to <code><a class="el" href="structVAEncryptionParameters.html" title="Encryption parameters buffer for VAEncryptionParameterBufferType. ">VAEncryptionParameters</a></code> </p>
</td></tr>
</table>
</div>
</div>
<a id="ga2c3be94ce142fb92a4bf93e9b1b4fa01"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga2c3be94ce142fb92a4bf93e9b1b4fa01">&#9670;&nbsp;</a></span>VAConfigAttribType</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="group__api__core.html#ga2c3be94ce142fb92a4bf93e9b1b4fa01">VAConfigAttribType</a></td>
</tr>
</table>
</div><div class="memdoc">
<p>Currently defined configuration attribute types </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="gga2c3be94ce142fb92a4bf93e9b1b4fa01a5ef86d4585ba9fc22e0f1908a1a778a8"></a>VAConfigAttribDecSliceMode&#160;</td><td class="fielddoc"><p>Slice Decoding mode. Read/write. </p>
<p>This attribute determines what mode the driver supports for slice decoding, through <a class="el" href="group__api__core.html#gae51cad2e388d6cc63ce3d4221798f9fd">vaGetConfigAttributes()</a>; and what mode the user will be providing to the driver, through <a class="el" href="group__api__core.html#ga9ff7833d425406cb1834c783b0a47652">vaCreateConfig()</a>, if the driver supports those. If this attribute is not set by the user then it is assumed that VA_DEC_SLICE_MODE_NORMAL mode is used.</p>
<p>See <code>VA_DEC_SLICE_MODE_xxx</code> for the list of slice decoding modes. </p>
</td></tr>
<tr><td class="fieldname"><a id="gga2c3be94ce142fb92a4bf93e9b1b4fa01a5b746c21e32b666d1ecb80a7cf181bcc"></a>VAConfigAttribDecJPEG&#160;</td><td class="fielddoc"><p>JPEG decoding attribute. Read-only. </p>
<p>This attribute exposes a number of capabilities of the underlying JPEG implementation. The attribute value is partitioned into fields as defined in the VAConfigAttribValDecJPEG union. </p>
</td></tr>
<tr><td class="fieldname"><a id="gga2c3be94ce142fb92a4bf93e9b1b4fa01abd1e51160543e655f2992cb9f9370281"></a>VAConfigAttribDecProcessing&#160;</td><td class="fielddoc"><p>Decode processing support. Read/write. </p>
<p>This attribute determines if the driver supports video processing with decoding using the decoding context in a single call, through <a class="el" href="group__api__core.html#gae51cad2e388d6cc63ce3d4221798f9fd">vaGetConfigAttributes()</a>; and if the user may use this feature, through <a class="el" href="group__api__core.html#ga9ff7833d425406cb1834c783b0a47652">vaCreateConfig()</a>, if the driver supports the user scenario. The user will essentially create a regular decode VAContext. Therefore, the parameters of <a class="el" href="group__api__core.html#ga7a0e774a793545058d1a311bed9bb8cf">vaCreateContext()</a> such as picture_width, picture_height and render_targets are in relation to the decode output parameters (not processing output parameters) as normal. If this attribute is not set by the user then it is assumed that no extra processing is done after decoding for this decode context.</p>
<p>Since essentially the application is creating a decoder config and context, all function calls that take in the config (e.g. <a class="el" href="group__api__core.html#ga6b10b88a628c56377268714cc72090ce" title="Queries surface attributes for the supplied config. ">vaQuerySurfaceAttributes()</a>) or context are in relation to the decoder, except those video processing function specified in the next paragraph.</p>
<p>Once the decode config and context are created, the user must further query the supported processing filters using <a class="el" href="group__api__vpp.html#ga05286f03bec73c5d6354b4f097c49b3c" title="Queries video processing filters. ">vaQueryVideoProcFilters()</a>, <a class="el" href="group__api__vpp.html#ga353ba3cf71da948de3e08a7f34734f13" title="Queries video filter capabilities. ">vaQueryVideoProcFilterCaps()</a>, <a class="el" href="group__api__vpp.html#gafcf3b8c6f75cfa2850ff9b9e3f0f339e" title="Queries video processing pipeline capabilities. ">vaQueryVideoProcPipelineCaps()</a> by specifying the created decode context. The user must provide processing information and extra processing output surfaces as "additional_outputs" to the driver through VAProcPipelineParameterBufferType. The render_target specified at <a class="el" href="group__api__core.html#gacf031b9aaf39365bf8d79d92372f2ec8">vaBeginPicture()</a> time refers to the decode output surface. The target surface for the output of processing needs to be a different surface since the decode process requires the original reconstructed buffer. The “surface” member of <a class="el" href="structVAProcPipelineParameterBuffer.html" title="Video processing pipeline configuration. ">VAProcPipelineParameterBuffer</a> should be set to the same as “render_target” set in <a class="el" href="group__api__core.html#gacf031b9aaf39365bf8d79d92372f2ec8">vaBeginPicture()</a>, but the driver may choose to ignore this parameter. </p>
</td></tr>
<tr><td class="fieldname"><a id="gga2c3be94ce142fb92a4bf93e9b1b4fa01af64b4c14c0b3709dafe38068eedd5ac8"></a>VAConfigAttribEncPackedHeaders&#160;</td><td class="fielddoc"><p>Packed headers mode. Read/write. </p>
<p>This attribute determines what packed headers the driver supports, through <a class="el" href="group__api__core.html#gae51cad2e388d6cc63ce3d4221798f9fd">vaGetConfigAttributes()</a>; and what packed headers the user will be providing to the driver, through <a class="el" href="group__api__core.html#ga9ff7833d425406cb1834c783b0a47652">vaCreateConfig()</a>, if the driver supports those.</p>
<p>See <code>VA_ENC_PACKED_HEADER_xxx</code> for the list of packed headers. </p>
</td></tr>
<tr><td class="fieldname"><a id="gga2c3be94ce142fb92a4bf93e9b1b4fa01ace3bc7b87026cb9d0c06c8fd87288a93"></a>VAConfigAttribEncInterlaced&#160;</td><td class="fielddoc"><p>Interlaced mode. Read/write. </p>
<p>This attribute determines what kind of interlaced encoding mode the driver supports.</p>
<p>See <code>VA_ENC_INTERLACED_xxx</code> for the list of interlaced modes. </p>
</td></tr>
<tr><td class="fieldname"><a id="gga2c3be94ce142fb92a4bf93e9b1b4fa01a9633aa64b8b6fba51f7c08e824bcf143"></a>VAConfigAttribEncMaxRefFrames&#160;</td><td class="fielddoc"><p>Maximum number of reference frames. Read-only. </p>
<p>This attribute determines the maximum number of reference frames supported for encoding.</p>
<p>Note: for H.264 encoding, the value represents the maximum number of reference frames for both the reference picture list 0 (bottom 16 bits) and the reference picture list 1 (top 16 bits). </p>
</td></tr>
<tr><td class="fieldname"><a id="gga2c3be94ce142fb92a4bf93e9b1b4fa01a5e84af515c1824966aea655cf74292fb"></a>VAConfigAttribEncMaxSlices&#160;</td><td class="fielddoc"><p>Maximum number of slices per frame. Read-only. </p>
<p>This attribute determines the maximum number of slices the driver can support to encode a single frame. </p>
</td></tr>
<tr><td class="fieldname"><a id="gga2c3be94ce142fb92a4bf93e9b1b4fa01a8e783e50798795cdda06ff76b05bcbcf"></a>VAConfigAttribEncSliceStructure&#160;</td><td class="fielddoc"><p>Slice structure. Read-only. </p>
<p>This attribute determines slice structures supported by the driver for encoding. This attribute is a hint to the user so that he can choose a suitable surface size and how to arrange the encoding process of multiple slices per frame.</p>
<p>More specifically, for H.264 encoding, this attribute determines the range of accepted values to <a class="el" href="structVAEncSliceParameterBufferH264.html#affea8a882436cce2824a07e9db2db9e4" title="Starting MB address for this slice. ">VAEncSliceParameterBufferH264::macroblock_address</a> and <a class="el" href="structVAEncSliceParameterBufferH264.html#a070c1f9beecf31d1a08ed462dcdf32a6" title="Number of macroblocks in this slice. ">VAEncSliceParameterBufferH264::num_macroblocks</a>.</p>
<p>See <code>VA_ENC_SLICE_STRUCTURE_xxx</code> for the supported slice structure types. </p>
</td></tr>
<tr><td class="fieldname"><a id="gga2c3be94ce142fb92a4bf93e9b1b4fa01a1441ecd7aeb8af9c1f98304cad603c90"></a>VAConfigAttribEncMacroblockInfo&#160;</td><td class="fielddoc"><p>Macroblock information. Read-only. </p>
<p>This attribute determines whether the driver supports extra encoding information per-macroblock. e.g. QP.</p>
<p>More specifically, for H.264 encoding, if the driver returns a non-zero value for this attribute, this means the application can create additional <a class="el" href="structVAEncMacroblockParameterBufferH264.html" title="Macroblock parameter for H.264 encoding in baseline, main &amp; high profiles. ">VAEncMacroblockParameterBufferH264</a> buffers referenced through <a class="el" href="structVAEncSliceParameterBufferH264.html#a17657da9522371e9ea108cddad17f5fe" title="Per-MB encoder configuration buffer, or VA_INVALID_ID. ">VAEncSliceParameterBufferH264::macroblock_info</a>. </p>
</td></tr>
<tr><td class="fieldname"><a id="gga2c3be94ce142fb92a4bf93e9b1b4fa01aa88d632c8c071d0899b09197087e4906"></a>VAConfigAttribMaxPictureWidth&#160;</td><td class="fielddoc"><p>Maximum picture width. Read-only. </p>
<p>This attribute determines the maximum picture width the driver supports for a given configuration. </p>
</td></tr>
<tr><td class="fieldname"><a id="gga2c3be94ce142fb92a4bf93e9b1b4fa01a0d21a48495393f1499fbb49470dccc1a"></a>VAConfigAttribMaxPictureHeight&#160;</td><td class="fielddoc"><p>Maximum picture height. Read-only. </p>
<p>This attribute determines the maximum picture height the driver supports for a given configuration. </p>
</td></tr>
<tr><td class="fieldname"><a id="gga2c3be94ce142fb92a4bf93e9b1b4fa01ace2a4a15828bc88b3a51a4dd3b3b4375"></a>VAConfigAttribEncJPEG&#160;</td><td class="fielddoc"><p>JPEG encoding attribute. Read-only. </p>
<p>This attribute exposes a number of capabilities of the underlying JPEG implementation. The attribute value is partitioned into fields as defined in the <a class="el" href="unionVAConfigAttribValEncJPEG.html" title="Attribute value for VAConfigAttribEncJPEG. ">VAConfigAttribValEncJPEG</a> union. </p>
</td></tr>
<tr><td class="fieldname"><a id="gga2c3be94ce142fb92a4bf93e9b1b4fa01a712c0cb5474a2dbd4047418ca6226d05"></a>VAConfigAttribEncQualityRange&#160;</td><td class="fielddoc"><p>Encoding quality range attribute. Read-only. </p>
<p>This attribute conveys whether the driver supports different quality level settings for encoding. A value less than or equal to 1 means that the encoder only has a single quality setting, and a value greater than 1 represents the number of quality levels that can be configured. e.g. a value of 2 means there are two distinct quality levels. </p>
</td></tr>
<tr><td class="fieldname"><a id="gga2c3be94ce142fb92a4bf93e9b1b4fa01a3a26f7a11484ef550ecc476f5b7b19a0"></a>VAConfigAttribEncQuantization&#160;</td><td class="fielddoc"><p>Encoding quantization attribute. Read-only. </p>
<p>This attribute conveys whether the driver supports certain types of quantization methods for encoding (e.g. trellis). See <code>VA_ENC_QUANTIZATION_xxx</code> for the list of quantization methods </p>
</td></tr>
<tr><td class="fieldname"><a id="gga2c3be94ce142fb92a4bf93e9b1b4fa01ab778a031e25a5b971423d1562815130a"></a>VAConfigAttribEncIntraRefresh&#160;</td><td class="fielddoc"><p>Encoding intra refresh attribute. Read-only. </p>
<p>This attribute conveys whether the driver supports certain types of intra refresh methods for encoding (e.g. adaptive intra refresh or rolling intra refresh). See <code>VA_ENC_INTRA_REFRESH_xxx</code> for intra refresh methods </p>
</td></tr>
<tr><td class="fieldname"><a id="gga2c3be94ce142fb92a4bf93e9b1b4fa01a62f2483748f09833a9ba1ecc57fad098"></a>VAConfigAttribEncSkipFrame&#160;</td><td class="fielddoc"><p>Encoding skip frame attribute. Read-only. </p>
<p>This attribute conveys whether the driver supports sending skip frame parameters (VAEncMiscParameterTypeSkipFrame) to the encoder's rate control, when the user has externally skipped frames. </p>
</td></tr>
<tr><td class="fieldname"><a id="gga2c3be94ce142fb92a4bf93e9b1b4fa01a79844b332bc11795b0578a759fa99483"></a>VAConfigAttribEncROI&#160;</td><td class="fielddoc"><p>Encoding region-of-interest (ROI) attribute. Read-only. </p>
<p>This attribute conveys whether the driver supports region-of-interest (ROI) encoding, based on user provided ROI rectangles. The attribute value is partitioned into fields as defined in the <a class="el" href="unionVAConfigAttribValEncROI.html" title="Attribute value for VAConfigAttribEncROI. ">VAConfigAttribValEncROI</a> union.</p>
<p>If ROI encoding is supported, the ROI information is passed to the driver using VAEncMiscParameterTypeROI. </p>
</td></tr>
<tr><td class="fieldname"><a id="gga2c3be94ce142fb92a4bf93e9b1b4fa01aa14c8b88424e1e23f90654f5cda57f96"></a>VAConfigAttribEncRateControlExt&#160;</td><td class="fielddoc"><p>Encoding extended rate control attribute. Read-only. </p>
<p>This attribute conveys whether the driver supports any extended rate control features The attribute value is partitioned into fields as defined in the <a class="el" href="unionVAConfigAttribValEncRateControlExt.html" title="Attribute value for VAConfigAttribEncRateControlExt. ">VAConfigAttribValEncRateControlExt</a> union. </p>
</td></tr>
<tr><td class="fieldname"><a id="gga2c3be94ce142fb92a4bf93e9b1b4fa01a06a0d8fe970dd8314e385d5746f7adf6"></a>VAConfigAttribProcessingRate&#160;</td><td class="fielddoc"><p>Processing rate reporting attribute. Read-only. </p>
<p>This attribute conveys whether the driver supports reporting of encode/decode processing rate based on certain set of parameters (i.e. levels, I frame internvals) for a given configuration. If this is supported, <a class="el" href="group__api__core.html#gae132bacffb040cfa39e5599664ac1a7e" title="Queries processing rate for the supplied config. ">vaQueryProcessingRate()</a> can be used to get encode or decode processing rate. See <code>VA_PROCESSING_RATE_xxx</code> for encode/decode processing rate </p>
</td></tr>
<tr><td class="fieldname"><a id="gga2c3be94ce142fb92a4bf93e9b1b4fa01af91236f0f6d9d000ab12f9c0206aee58"></a>VAConfigAttribEncDirtyRect&#160;</td><td class="fielddoc"><p>Encoding dirty rectangle. Read-only. </p>
<p>This attribute conveys whether the driver supports dirty rectangle. encoding, based on user provided ROI rectangles which indicate the rectangular areas where the content has changed as compared to the previous picture. The regions of the picture that are not covered by dirty rect rectangles are assumed to have not changed compared to the previous picture. The encoder may do some optimizations based on this information. The attribute value returned indicates the number of regions that are supported. e.g. A value of 0 means dirty rect encoding is not supported. If dirty rect encoding is supported, the ROI information is passed to the driver using VAEncMiscParameterTypeDirtyRect. </p>
</td></tr>
<tr><td class="fieldname"><a id="gga2c3be94ce142fb92a4bf93e9b1b4fa01ac84407886c0309b159cbe4046464225e"></a>VAConfigAttribEncParallelRateControl&#160;</td><td class="fielddoc"><p>Parallel Rate Control (hierachical B) attribute. Read-only. </p>
<p>This attribute conveys whether the encoder supports parallel rate control. It is a integer value 0 - unsupported, &gt; 0 - maximum layer supported. This is the way when hireachical B frames are encoded, multiple independent B frames on the same layer may be processed at same time. If supported, app may enable it by setting enable_parallel_brc in <a class="el" href="structVAEncMiscParameterRateControl.html" title="Rate control parameters. ">VAEncMiscParameterRateControl</a>,and the number of B frames per layer per GOP will be passed to driver through <a class="el" href="structVAEncMiscParameterParallelRateControl.html" title="Attribute value for VAConfigAttribEncParallelRateControl. ">VAEncMiscParameterParallelRateControl</a> structure.Currently three layers are defined. </p>
</td></tr>
<tr><td class="fieldname"><a id="gga2c3be94ce142fb92a4bf93e9b1b4fa01a769dfd34309929f3d6236db59e77bb05"></a>VAConfigAttribEncDynamicScaling&#160;</td><td class="fielddoc"><p>Dynamic Scaling Attribute. Read-only. </p>
<p>This attribute conveys whether encoder is capable to determine dynamic frame resolutions adaptive to bandwidth utilization and processing power, etc. It is a boolean value 0 - unsupported, 1 - supported. If it is supported,for VP9, suggested frame resolution can be retrieved from <a class="el" href="structVACodedBufferVP9Status.html" title="VP9 Encoding Status Data Buffer Structure. ">VACodedBufferVP9Status</a>. </p>
</td></tr>
<tr><td class="fieldname"><a id="gga2c3be94ce142fb92a4bf93e9b1b4fa01a27f88f63de9b809d52dabfc6e1680e03"></a>VAConfigAttribFrameSizeToleranceSupport&#160;</td><td class="fielddoc"><p>frame size tolerance support it indicates the tolerance of frame size </p>
</td></tr>
<tr><td class="fieldname"><a id="gga2c3be94ce142fb92a4bf93e9b1b4fa01ac744d89de3e1428f3acfdd38e02b718c"></a>VAConfigAttribFEIFunctionType&#160;</td><td class="fielddoc"><p>Encode function type for FEI. </p>
<p>This attribute conveys whether the driver supports different function types for encode. It can be VA_FEI_FUNCTION_ENC, VA_FEI_FUNCTION_PAK, or VA_FEI_FUNCTION_ENC_PAK. Currently it is for FEI entry point only. Default is VA_FEI_FUNCTION_ENC_PAK. </p>
</td></tr>
<tr><td class="fieldname"><a id="gga2c3be94ce142fb92a4bf93e9b1b4fa01a7a9b510fc99714e0d14ca42000e9d792"></a>VAConfigAttribFEIMVPredictors&#160;</td><td class="fielddoc"><p>Maximum number of FEI MV predictors. Read-only. </p>
<p>This attribute determines the maximum number of MV predictors the driver can support to encode a single frame. 0 means no MV predictor is supported. Currently it is for FEI entry point only. </p>
</td></tr>
<tr><td class="fieldname"><a id="gga2c3be94ce142fb92a4bf93e9b1b4fa01a93703f2e1193333663732445e2f2e9b8"></a>VAConfigAttribStats&#160;</td><td class="fielddoc"><p>Statistics attribute. Read-only. </p>
<p>This attribute exposes a number of capabilities of the VAEntrypointStats entry point. The attribute value is partitioned into fields as defined in the <a class="el" href="unionVAConfigAttribValStats.html" title="Attribute value for VAConfigAttribStats. ">VAConfigAttribValStats</a> union. Currently it is for VAEntrypointStats only. </p>
</td></tr>
<tr><td class="fieldname"><a id="gga2c3be94ce142fb92a4bf93e9b1b4fa01a791dfeaf40af42750f5941f530aad7c9"></a>VAConfigAttribEncTileSupport&#160;</td><td class="fielddoc"><p>Tile Support Attribute. Read-only. </p>
<p>This attribute conveys whether encoder is capable to support tiles. If not supported, the tile related parameters sent to encoder, such as tiling structure, should be ignored. 0 - unsupported, 1 - supported. </p>
</td></tr>
<tr><td class="fieldname"><a id="gga2c3be94ce142fb92a4bf93e9b1b4fa01a601dc0ce6a43bfb71e40f34e44c10c04"></a>VAConfigAttribCustomRoundingControl&#160;</td><td class="fielddoc"><p>whether accept rouding setting from application. Read-only. This attribute is for encode quality, if it is report, application can change the rounding setting by VAEncMiscParameterTypeCustomRoundingControl </p>
</td></tr>
<tr><td class="fieldname"><a id="gga2c3be94ce142fb92a4bf93e9b1b4fa01a9f7962b0a2179de360ea4508e82bf705"></a>VAConfigAttribQPBlockSize&#160;</td><td class="fielddoc"><p>Encoding QP info block size attribute. Read-only. This attribute conveys the block sizes that underlying driver support for QP info for buffer #VAEncQpBuffer. </p>
</td></tr>
<tr><td class="fieldname"><a id="gga2c3be94ce142fb92a4bf93e9b1b4fa01a5b596b2918aed4c9147bc856e5c599f2"></a>VAConfigAttribMaxFrameSize&#160;</td><td class="fielddoc"><p>encode max frame size attribute. Read-only attribute value <code><a class="el" href="unionVAConfigAttribValMaxFrameSize.html" title="Attribute value for VAConfigAttribMaxFrameSize. ">VAConfigAttribValMaxFrameSize</a></code> represent max frame size support </p>
</td></tr>
<tr><td class="fieldname"><a id="gga2c3be94ce142fb92a4bf93e9b1b4fa01abf3c5a944baa8338d7f1d4d26188f0bf"></a>VAConfigAttribPredictionDirection&#160;</td><td class="fielddoc"><p>inter frame prediction directrion attribute. Read-only. this attribute conveys the prediction direction (backward or forword) for specific config the value could be VA_PREDICTION_DIRECTION_XXXX. it can be combined with VAConfigAttribEncMaxRefFrames to describe reference list , and the prediction direction. if this attrib is not present,both direction should be supported, no restriction. for example: normal HEVC encoding , maximum reference frame number in reflist 0 and reflist 1 is deduced by VAConfigAttribEncMaxRefFrames. so there are typical P frame, B frame, if VAConfigAttribPredictionDirection is also present. it will stipulate prediction direction in both reference list. if only one prediction direction present(such as PREVIOUS),all reference frame should be previous frame (PoC &lt; current). </p>
</td></tr>
<tr><td class="fieldname"><a id="gga2c3be94ce142fb92a4bf93e9b1b4fa01adf7e59a2ba81583888eace99181e14c2"></a>VAConfigAttribMultipleFrame&#160;</td><td class="fielddoc"><p>combined submission of multiple frames from different streams, it is optimization for different HW implementation, multiple frames encode/decode can improve HW concurrency </p>
</td></tr>
<tr><td class="fieldname"><a id="gga2c3be94ce142fb92a4bf93e9b1b4fa01a3337f5f60820fcbb4109d9ae2b1f5cb8"></a>VAConfigAttribContextPriority&#160;</td><td class="fielddoc"><p>priority setting for the context. Read-Write attribute value is <code><a class="el" href="unionVAConfigAttribValContextPriority.html">VAConfigAttribValContextPriority</a></code> this setting also could be update by <code><a class="el" href="structVAContextParameterUpdateBuffer.html" title="update the context parameter this structure is used to update context parameters, such as priority of...">VAContextParameterUpdateBuffer</a></code> </p>
</td></tr>
<tr><td class="fieldname"><a id="gga2c3be94ce142fb92a4bf93e9b1b4fa01ac780378cd29ea67801726e82fc07ef03"></a>VAConfigAttribDecAV1Features&#160;</td><td class="fielddoc"><p>AV1 decoding features. Read-only. </p>
<p>This attribute describes the supported features of an AV1 decoder configuration. The value returned uses the <a class="el" href="unionVAConfigAttribValDecAV1Features.html">VAConfigAttribValDecAV1Features</a> type. </p>
</td></tr>
<tr><td class="fieldname"><a id="gga2c3be94ce142fb92a4bf93e9b1b4fa01ac047584673c8940601fe11205848a18e"></a>VAConfigAttribTEEType&#160;</td><td class="fielddoc"><p>TEE could be any HW secure device. Read-only. </p>
</td></tr>
<tr><td class="fieldname"><a id="gga2c3be94ce142fb92a4bf93e9b1b4fa01a565218180e548af439b4bd921ad329e1"></a>VAConfigAttribTEETypeClient&#160;</td><td class="fielddoc"><p>TEE type client is a specific module supporting specific functions in TEE. Read-only. </p>
</td></tr>
<tr><td class="fieldname"><a id="gga2c3be94ce142fb92a4bf93e9b1b4fa01afb39c2e76fab3b7a3a84131497ec95f7"></a>VAConfigAttribProtectedContentCipherAlgorithm&#160;</td><td class="fielddoc"><p>Cipher algorithm of the protected content session. </p>
<p>This attribute specifies the cipher algorithm of the protected content session. It could be <code>VA_PC_CIPHER_AES</code>, etc.... </p>
</td></tr>
<tr><td class="fieldname"><a id="gga2c3be94ce142fb92a4bf93e9b1b4fa01ad408edc12ad2edeabc02be43a3710145"></a>VAConfigAttribProtectedContentCipherBlockSize&#160;</td><td class="fielddoc"><p>Cipher block size of the protected content session. </p>
<p>This attribute specifies the block size of the protected content session. It could be <code>VA_PC_BLOCK_SIZE_128</code>, <code>VA_PC_BLOCK_SIZE_192</code>, or <code>VA_PC_BLOCK_SIZE_256</code>, etc.... </p>
</td></tr>
<tr><td class="fieldname"><a id="gga2c3be94ce142fb92a4bf93e9b1b4fa01a0d94a6ba968b758d7b53c05e1070cc7a"></a>VAConfigAttribProtectedContentCipherMode&#160;</td><td class="fielddoc"><p>Cipher mode of the protected content session. </p>
<p>This attribute specifies the cipher mode of the protected content session. It could be <code>VA_PC_CIPHER_MODE_ECB</code>, <code>VA_PC_CIPHER_MODE_CBC</code>, <code>VA_PC_CIPHER_MODE_CTR</code>, etc... </p>
</td></tr>
<tr><td class="fieldname"><a id="gga2c3be94ce142fb92a4bf93e9b1b4fa01a4d3947eb7d70bb6ade7001eca036f863"></a>VAConfigAttribProtectedContentCipherSampleType&#160;</td><td class="fielddoc"><p>Decryption sample type of the protected content session. </p>
<p>This attribute specifies the decryption sample type of the protected content session. It could be <code>VA_PC_SAMPLE_TYPE_FULLSAMPLE</code> or <code>VA_PC_SAMPLE_TYPE_SUBSAMPLE</code>. </p>
</td></tr>
<tr><td class="fieldname"><a id="gga2c3be94ce142fb92a4bf93e9b1b4fa01a3787994abd0e4b2e55761b43ab7729d9"></a>VAConfigAttribProtectedContentUsage&#160;</td><td class="fielddoc"><p>Special usage attribute of the protected session. </p>
<p>The attribute specifies the flow for the protected session could be used. For example, it could be <code>VA_PC_USAGE_DEFAULT</code>, <code>VA_PC_USAGE_WIDEVINE</code>, etc.... </p>
</td></tr>
<tr><td class="fieldname"><a id="gga2c3be94ce142fb92a4bf93e9b1b4fa01a691f6ee84de2a248b3bbb3689b2bfc27"></a>VAConfigAttribEncHEVCFeatures&#160;</td><td class="fielddoc"><p>HEVC/H.265 encoding features. Read-only. </p>
<p>This attribute describes the supported features of an HEVC/H.265 encoder configuration. The value returned uses the <a class="el" href="unionVAConfigAttribValEncHEVCFeatures.html">VAConfigAttribValEncHEVCFeatures</a> type.</p>
<p>If this attribute is supported by a driver then it must also support the VAConfigAttribEncHEVCBlockSizes attribute. </p>
</td></tr>
<tr><td class="fieldname"><a id="gga2c3be94ce142fb92a4bf93e9b1b4fa01aa6f0d08af09071301832df0ae9f61340"></a>VAConfigAttribEncHEVCBlockSizes&#160;</td><td class="fielddoc"><p>HEVC/H.265 encoding block sizes. Read-only. </p>
<p>This attribute describes the supported coding tree and transform block sizes of an HEVC/H.265 encoder configuration. The value returned uses the <a class="el" href="unionVAConfigAttribValEncHEVCBlockSizes.html">VAConfigAttribValEncHEVCBlockSizes</a> type.</p>
<p>If this attribute is supported by a driver then it must also support the VAConfigAttribEncHEVCFeatures attribute. </p>
</td></tr>
</table>
</div>
</div>
<a id="ga0f8dad8977fc45641f49b76cd19fb6b4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga0f8dad8977fc45641f49b76cd19fb6b4">&#9670;&nbsp;</a></span>VADisplayAttribBLEMode</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="group__api__core.html#ga0f8dad8977fc45641f49b76cd19fb6b4">VADisplayAttribBLEMode</a></td>
</tr>
</table>
</div><div class="memdoc">
<p>Display attributes Display attributes are used to control things such as contrast, hue, saturation, brightness etc. in the rendering process. The application can query what attributes are supported by the driver, and then set the appropriate attributes before calling vaPutSurface()</p>
<p>Display attributes can also be used to query/set platform or display adaptor (vaDisplay) related information. These attributes do not depend on vaConfig, and could not be used for vaPutSurface. Application can use vaQueryDisplayAttributes/vaGetDisplayAttributes at anytime after vaInitialize, but (for settable attributes) vaSetDisplayAttributes should be called after vaInitialize and before any other function call.</p>
<p>To distinguish these two types of display attributes, display adaptor related attributes should be marked as "HW attribute" in the description. </p>
</div>
</div>
<a id="ga07644ee718d2c12c44f7ad7d440533f5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga07644ee718d2c12c44f7ad7d440533f5">&#9670;&nbsp;</a></span>VAEncMiscParameterType</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="group__api__core.html#ga07644ee718d2c12c44f7ad7d440533f5">VAEncMiscParameterType</a></td>
</tr>
</table>
</div><div class="memdoc">
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="gga07644ee718d2c12c44f7ad7d440533f5a87b8908521d461bd16a4c068702bae9d"></a>VAEncMiscParameterTypeMaxFrameSize&#160;</td><td class="fielddoc"><p>Buffer type used to express a maximum frame size (in bits). </p>
</td></tr>
<tr><td class="fieldname"><a id="gga07644ee718d2c12c44f7ad7d440533f5a4488a1e98538de5ab69111767c222984"></a>VAEncMiscParameterTypeHRD&#160;</td><td class="fielddoc"><p>Buffer type used for HRD parameters. </p>
</td></tr>
<tr><td class="fieldname"><a id="gga07644ee718d2c12c44f7ad7d440533f5a1a436c1c24cf3d94cb66f9a42efe2b6a"></a>VAEncMiscParameterTypeRIR&#160;</td><td class="fielddoc"><p>Buffer type used for Rolling intra refresh. </p>
</td></tr>
<tr><td class="fieldname"><a id="gga07644ee718d2c12c44f7ad7d440533f5a729ae8e20adfe5338c29b9f6c7ed7593"></a>VAEncMiscParameterTypeQuantization&#160;</td><td class="fielddoc"><p>Buffer type used for quantization parameters, it's per-sequence parameter. </p>
</td></tr>
<tr><td class="fieldname"><a id="gga07644ee718d2c12c44f7ad7d440533f5ad4d2f33c8b49e1cf1248bf271444cc7b"></a>VAEncMiscParameterTypeSkipFrame&#160;</td><td class="fielddoc"><p>Buffer type used for sending skip frame parameters to the encoder's rate control, when the user has externally skipped frames. </p>
</td></tr>
<tr><td class="fieldname"><a id="gga07644ee718d2c12c44f7ad7d440533f5a58a2a3560142660d9e1ec2a72351f64d"></a>VAEncMiscParameterTypeROI&#160;</td><td class="fielddoc"><p>Buffer type used for region-of-interest (ROI) parameters. </p>
</td></tr>
<tr><td class="fieldname"><a id="gga07644ee718d2c12c44f7ad7d440533f5abb3e4254efc4742dd9930c94704aa33d"></a>VAEncMiscParameterTypeMultiPassFrameSize&#160;</td><td class="fielddoc"><p>Buffer type used to express a maximum frame size (in bytes) settings for multiple pass. </p>
</td></tr>
<tr><td class="fieldname"><a id="gga07644ee718d2c12c44f7ad7d440533f5a86a0af4d592b1f9635a92851f5488d8d"></a>VAEncMiscParameterTypeTemporalLayerStructure&#160;</td><td class="fielddoc"><p>Buffer type used for temporal layer structure. </p>
</td></tr>
<tr><td class="fieldname"><a id="gga07644ee718d2c12c44f7ad7d440533f5a6f23a3cf5981ebb8d95587d8ae88d38c"></a>VAEncMiscParameterTypeDirtyRect&#160;</td><td class="fielddoc"><p>Buffer type used for dirty region-of-interest (ROI) parameters. </p>
</td></tr>
<tr><td class="fieldname"><a id="gga07644ee718d2c12c44f7ad7d440533f5a198051d6d3ef9cabe291a7974f87ee1b"></a>VAEncMiscParameterTypeParallelBRC&#160;</td><td class="fielddoc"><p>Buffer type used for parallel BRC parameters. </p>
</td></tr>
<tr><td class="fieldname"><a id="gga07644ee718d2c12c44f7ad7d440533f5a62c26bf17c15068a4623ce3b02017863"></a>VAEncMiscParameterTypeSubMbPartPel&#160;</td><td class="fielddoc"><p>Set MB partion mode mask and Half-pel/Quant-pel motion search. </p>
</td></tr>
<tr><td class="fieldname"><a id="gga07644ee718d2c12c44f7ad7d440533f5a64cde4efd374f2b48aa5dbd9812c639e"></a>VAEncMiscParameterTypeEncQuality&#160;</td><td class="fielddoc"><p>set encode quality tuning </p>
</td></tr>
<tr><td class="fieldname"><a id="gga07644ee718d2c12c44f7ad7d440533f5a2d8997c17998a6c80d6c52831a52d10e"></a>VAEncMiscParameterTypeCustomRoundingControl&#160;</td><td class="fielddoc"><p>Buffer type used for encoder rounding offset parameters. </p>
</td></tr>
<tr><td class="fieldname"><a id="gga07644ee718d2c12c44f7ad7d440533f5afbd83aaa206a3430a60ffe00db036dfd"></a>VAEncMiscParameterTypeFEIFrameControl&#160;</td><td class="fielddoc"><p>Buffer type used for FEI input frame level parameters. </p>
</td></tr>
<tr><td class="fieldname"><a id="gga07644ee718d2c12c44f7ad7d440533f5a1030f2a544a8d23047e1fd3a96150180"></a>VAEncMiscParameterTypeExtensionData&#160;</td><td class="fielddoc"><p>encode extension buffer, ect. MPEG2 Sequence extenstion data </p>
</td></tr>
</table>
</div>
</div>
<a id="ga8ed0af9059a2d06bca1a54e774e679ea"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga8ed0af9059a2d06bca1a54e774e679ea">&#9670;&nbsp;</a></span>VAEncPackedHeaderType</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="group__api__core.html#ga8ed0af9059a2d06bca1a54e774e679ea">VAEncPackedHeaderType</a></td>
</tr>
</table>
</div><div class="memdoc">
<p>Packed header type. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="gga8ed0af9059a2d06bca1a54e774e679eaaeec200fbe559dc7faa077aac8c658a48"></a>VAEncPackedHeaderSequence&#160;</td><td class="fielddoc"><p>Packed sequence header. </p>
</td></tr>
<tr><td class="fieldname"><a id="gga8ed0af9059a2d06bca1a54e774e679eaa9eca82077d8df9033c989f1507616072"></a>VAEncPackedHeaderPicture&#160;</td><td class="fielddoc"><p>Packed picture header. </p>
</td></tr>
<tr><td class="fieldname"><a id="gga8ed0af9059a2d06bca1a54e774e679eaafdedf8f436cda64d2f09b80540a04d99"></a>VAEncPackedHeaderSlice&#160;</td><td class="fielddoc"><p>Packed slice header. </p>
</td></tr>
<tr><td class="fieldname"><a id="gga8ed0af9059a2d06bca1a54e774e679eaab891c02e7895b75b251b91c1847f2ed5"></a>VAEncPackedHeaderRawData&#160;</td><td class="fielddoc"><p>Packed raw header. </p>
<p>Packed raw data header can be used by the client to insert a header into the bitstream data buffer at the point it is passed, the driver will handle the raw packed header based on "has_emulation_bytes" field in the packed header parameter structure. </p>
</td></tr>
<tr><td class="fieldname"><a id="gga8ed0af9059a2d06bca1a54e774e679eaa86d498fbfde9d7a847864d6b6c67e2aa"></a>va_deprecated_enum&#160;</td><td class="fielddoc"><p>Misc packed header. See codec-specific definitions. </p>
<dl class="deprecated"><dt><b><a class="el" href="deprecated.html#_deprecated000006">Deprecated:</a></b></dt><dd>This is a deprecated packed header type. All applications can use <code>VAEncPackedHeaderRawData</code> to insert a codec-specific packed header </dd></dl>
</td></tr>
</table>
</div>
</div>
<a id="ga5f3bcbb940e51be2e84097463557321e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga5f3bcbb940e51be2e84097463557321e">&#9670;&nbsp;</a></span>VAEntrypoint</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="group__api__core.html#ga5f3bcbb940e51be2e84097463557321e">VAEntrypoint</a></td>
</tr>
</table>
</div><div class="memdoc">
<p>Currently defined entrypoints </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="gga5f3bcbb940e51be2e84097463557321ead8ac61c5e6d11ed2a34a332655b774ab"></a>VAEntrypointVideoProc&#160;</td><td class="fielddoc"><p>Video pre/post-processing. </p>
</td></tr>
<tr><td class="fieldname"><a id="gga5f3bcbb940e51be2e84097463557321ea64b89833bc0c5106ad3edcfd62348e1b"></a>VAEntrypointFEI&#160;</td><td class="fielddoc"><p>VAEntrypointFEI. </p>
<p>The purpose of FEI (Flexible Encoding Infrastructure) is to allow applications to have more controls and trade off quality for speed with their own IPs. The application can optionally provide input to ENC for extra encode control and get the output from ENC. Application can chose to modify the ENC output/PAK input during encoding, but the performance impact is significant.</p>
<p>On top of the existing buffers for normal encode, there will be one extra input buffer (VAEncMiscParameterFEIFrameControl) and three extra output buffers (VAEncFEIMVBufferType, VAEncFEIMBModeBufferType and VAEncFEIDistortionBufferType) for VAEntrypointFEI entry function. If separate PAK is set, two extra input buffers (VAEncFEIMVBufferType, VAEncFEIMBModeBufferType) are needed for PAK input. </p>
</td></tr>
<tr><td class="fieldname"><a id="gga5f3bcbb940e51be2e84097463557321ead9de31161ebcd23b348d1be0f7da37c0"></a>VAEntrypointStats&#160;</td><td class="fielddoc"><p>VAEntrypointStats. </p>
<p>A pre-processing function for getting some statistics and motion vectors is added, and some extra controls for Encode pipeline are provided. The application can optionally call the statistics function to get motion vectors and statistics like variances, distortions before calling Encode function via this entry point.</p>
<p>Checking whether Statistics is supported can be performed with <a class="el" href="group__api__core.html#ga7c6ec979697dafc172123c5d3ad80d8e">vaQueryConfigEntrypoints()</a>. If Statistics entry point is supported, then the list of returned entry-points will include <a class="el" href="group__api__core.html#gga5f3bcbb940e51be2e84097463557321ead9de31161ebcd23b348d1be0f7da37c0" title="VAEntrypointStats. ">VAEntrypointStats</a>. Supported pixel format, maximum resolution and statistics specific attributes can be obtained via normal attribute query. One input buffer (VAStatsStatisticsParameterBufferType) and one or two output buffers (VAStatsStatisticsBufferType, VAStatsStatisticsBottomFieldBufferType (for interlace only) and VAStatsMVBufferType) are needed for this entry point. </p>
</td></tr>
<tr><td class="fieldname"><a id="gga5f3bcbb940e51be2e84097463557321ea694df146749b5d6b70ec9908e7161ba4"></a>VAEntrypointProtectedTEEComm&#160;</td><td class="fielddoc"><p>VAEntrypointProtectedTEEComm. </p>
<p>A function for communicating with TEE (Trusted Execution Environment). </p>
</td></tr>
<tr><td class="fieldname"><a id="gga5f3bcbb940e51be2e84097463557321eafbd8339b9116b5edad5274a141c8dfd3"></a>VAEntrypointProtectedContent&#160;</td><td class="fielddoc"><p>VAEntrypointProtectedContent. </p>
<p>A function for protected content to decrypt encrypted content. </p>
</td></tr>
</table>
</div>
</div>
<a id="ga1f3f8c94a3a732e25ba7ceb9b6abacc4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga1f3f8c94a3a732e25ba7ceb9b6abacc4">&#9670;&nbsp;</a></span>VAGenericValueType</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="group__api__core.html#ga1f3f8c94a3a732e25ba7ceb9b6abacc4">VAGenericValueType</a></td>
</tr>
</table>
</div><div class="memdoc">
<p>Generic value types. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="gga1f3f8c94a3a732e25ba7ceb9b6abacc4a3172df10949251b0b6e9fb2a670d04b0"></a>VAGenericValueTypeInteger&#160;</td><td class="fielddoc"><p>32-bit signed integer. </p>
</td></tr>
<tr><td class="fieldname"><a id="gga1f3f8c94a3a732e25ba7ceb9b6abacc4a8940ac87877146f85acec30a700130b7"></a>VAGenericValueTypeFloat&#160;</td><td class="fielddoc"><p>32-bit floating-point value. </p>
</td></tr>
<tr><td class="fieldname"><a id="gga1f3f8c94a3a732e25ba7ceb9b6abacc4a929a93d62c0bdd061d4c01256b5b2119"></a>VAGenericValueTypePointer&#160;</td><td class="fielddoc"><p>Generic pointer type </p>
</td></tr>
<tr><td class="fieldname"><a id="gga1f3f8c94a3a732e25ba7ceb9b6abacc4acc2fcbac763e2a7a0f259fbb1e89cad0"></a>VAGenericValueTypeFunc&#160;</td><td class="fielddoc"><p>Pointer to function </p>
</td></tr>
</table>
</div>
</div>
<a id="ga0398483623835033d4e9553dde171dd0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga0398483623835033d4e9553dde171dd0">&#9670;&nbsp;</a></span>VAMvModeVC1</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="group__api__core.html#ga0398483623835033d4e9553dde171dd0">VAMvModeVC1</a></td>
</tr>
</table>
</div><div class="memdoc">
<p>VC-1 data structures </p>
</div>
</div>
<a id="gaa4851f694a48c22af8877f5cfbb11bde"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gaa4851f694a48c22af8877f5cfbb11bde">&#9670;&nbsp;</a></span>VAProfile</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="group__api__core.html#gaa4851f694a48c22af8877f5cfbb11bde">VAProfile</a></td>
</tr>
</table>
</div><div class="memdoc">
<p>Currently defined profiles </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="ggaa4851f694a48c22af8877f5cfbb11bdea7bf6725096e5927f03deb20205e1adbc"></a>VAProfileNone&#160;</td><td class="fielddoc"><p>Profile ID used for video processing. </p>
</td></tr>
<tr><td class="fieldname"><a id="gga8ed0af9059a2d06bca1a54e774e679eaa86d498fbfde9d7a847864d6b6c67e2aa"></a>va_deprecated_enum&#160;</td><td class="fielddoc"><p>Misc packed header. See codec-specific definitions. </p>
<dl class="deprecated"><dt><b><a class="el" href="deprecated.html#_deprecated000006">Deprecated:</a></b></dt><dd>This is a deprecated packed header type. All applications can use <code>VAEncPackedHeaderRawData</code> to insert a codec-specific packed header </dd></dl>
</td></tr>
<tr><td class="fieldname"><a id="ggaa4851f694a48c22af8877f5cfbb11bdea5edf00635e9f778c2e64ecc2e8b98b34"></a>VAProfileProtected&#160;</td><td class="fielddoc"><p>Profile ID used for protected video playback. </p>
</td></tr>
</table>
</div>
</div>
<a id="ga4b89190eeab82e047c06e31edaf0b9b7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga4b89190eeab82e047c06e31edaf0b9b7">&#9670;&nbsp;</a></span>VASurfaceAttribType</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="group__api__core.html#ga4b89190eeab82e047c06e31edaf0b9b7">VASurfaceAttribType</a></td>
</tr>
</table>
</div><div class="memdoc">
<p>Surface attribute types. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="gga4b89190eeab82e047c06e31edaf0b9b7ae2e9a570df9f7e3625ef0b4b533aeaa3"></a>VASurfaceAttribPixelFormat&#160;</td><td class="fielddoc"><p>Pixel format as a FOURCC (int, read/write). </p>
<p>When <a class="el" href="group__api__core.html#ga6b10b88a628c56377268714cc72090ce" title="Queries surface attributes for the supplied config. ">vaQuerySurfaceAttributes()</a> is called, the driver will return one PixelFormat attribute per supported pixel format.</p>
<p>When provided as an input to <a class="el" href="group__api__core.html#gac970ea0eec412326667549f58c44129b" title="Creates an array of surfaces. ">vaCreateSurfaces()</a>, the driver will allocate a surface with the provided pixel format. </p>
</td></tr>
<tr><td class="fieldname"><a id="gga4b89190eeab82e047c06e31edaf0b9b7adbcbadf8228bf2d66052700a5db0b66e"></a>VASurfaceAttribMinWidth&#160;</td><td class="fielddoc"><p>Minimal width in pixels (int, read-only). </p>
</td></tr>
<tr><td class="fieldname"><a id="gga4b89190eeab82e047c06e31edaf0b9b7a02ce5758f071e20ecb018e852ccdacf8"></a>VASurfaceAttribMaxWidth&#160;</td><td class="fielddoc"><p>Maximal width in pixels (int, read-only). </p>
</td></tr>
<tr><td class="fieldname"><a id="gga4b89190eeab82e047c06e31edaf0b9b7aebd7d7cdfeaa688df644865cbbde72eb"></a>VASurfaceAttribMinHeight&#160;</td><td class="fielddoc"><p>Minimal height in pixels (int, read-only). </p>
</td></tr>
<tr><td class="fieldname"><a id="gga4b89190eeab82e047c06e31edaf0b9b7a9fe635927ad444bc335f40696c54c79a"></a>VASurfaceAttribMaxHeight&#160;</td><td class="fielddoc"><p>Maximal height in pixels (int, read-only). </p>
</td></tr>
<tr><td class="fieldname"><a id="gga4b89190eeab82e047c06e31edaf0b9b7a8da3acb9a5defa586c5a0cd7933b0413"></a>VASurfaceAttribMemoryType&#160;</td><td class="fielddoc"><p>Surface memory type expressed in bit fields (int, read/write). </p>
</td></tr>
<tr><td class="fieldname"><a id="gga4b89190eeab82e047c06e31edaf0b9b7adc8741cdd7e0daf805085ffceec5d180"></a>VASurfaceAttribExternalBufferDescriptor&#160;</td><td class="fielddoc"><p>External buffer descriptor (pointer, write). </p>
<p>Refer to the documentation for the memory type being created to determine what descriptor structure to pass here. If not otherwise stated, the common <a class="el" href="structVASurfaceAttribExternalBuffers.html" title="VASurfaceAttribExternalBuffers structure for the VASurfaceAttribExternalBufferDescriptor attribute...">VASurfaceAttribExternalBuffers</a> should be used. </p>
</td></tr>
<tr><td class="fieldname"><a id="gga4b89190eeab82e047c06e31edaf0b9b7a0a04ea3d5e15b28d41a2853f9b795fd7"></a>VASurfaceAttribUsageHint&#160;</td><td class="fielddoc"><p>Surface usage hint, gives the driver a hint of intended usage to optimize allocation (e.g. tiling) (int, read/write). </p>
</td></tr>
<tr><td class="fieldname"><a id="gga4b89190eeab82e047c06e31edaf0b9b7ace6541c469406786363a6fcd9ed7e227"></a>VASurfaceAttribDRMFormatModifiers&#160;</td><td class="fielddoc"><p>List of possible DRM format modifiers (pointer, write). </p>
<p>The value must be a pointer to a VADRMFormatModifierList. This can only be used when allocating a new buffer, it's invalid to use this attribute when importing an existing buffer. </p>
</td></tr>
<tr><td class="fieldname"><a id="gga4b89190eeab82e047c06e31edaf0b9b7ae87a47fe190ef5a8655d98aa97656308"></a>VASurfaceAttribCount&#160;</td><td class="fielddoc"><p>Number of surface attributes. </p>
</td></tr>
</table>
</div>
</div>
<h2 class="groupheader">Function Documentation</h2>
<a id="ga36dc61a5fc1552d7037d102bc7d35703"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga36dc61a5fc1552d7037d102bc7d35703">&#9670;&nbsp;</a></span>vaAcquireBufferHandle()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">VAStatus vaAcquireBufferHandle </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a>&#160;</td>
<td class="paramname"><em>dpy</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="group__api__core.html#gad26441ddf2f4441ef65bbefa4662607f">VABufferID</a>&#160;</td>
<td class="paramname"><em>buf_id</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="structVABufferInfo.html">VABufferInfo</a> *&#160;</td>
<td class="paramname"><em>buf_info</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Acquires buffer handle for external API usage. </p>
<p>Locks the VA buffer object buf_id for external API usage like EGL or OpenCL (OCL). This function is a synchronization point. This means that any pending operation is guaranteed to be completed prior to returning from the function.</p>
<p>If the referenced VA buffer object is the backing store of a VA surface, then this function acts as if <a class="el" href="group__api__core.html#gaa2b9b82de6eb2985574a6eca35445b3f">vaSyncSurface()</a> on the parent surface was called first.</p>
<p>The <a class="el" href="structVABufferInfo.html">VABufferInfo</a> argument shall be zero'ed on input. On successful output, the data structure is filled in with all the necessary buffer level implementation details like handle, type, memory type and memory size.</p>
<p>Note: the external API implementation, or the application, can express the memory types it is interested in by filling in the mem_type field accordingly. On successful output, the memory type that fits best the request and that was used is updated in the <a class="el" href="structVABufferInfo.html">VABufferInfo</a> data structure. If none of the supplied memory types is supported, then a <a class="el" href="group__api__core.html#ga3ad6349d24e84f50d5238056535c4812">VA_STATUS_ERROR_UNSUPPORTED_MEMORY_TYPE</a> error is returned.</p>
<p>The <a class="el" href="structVABufferInfo.html">VABufferInfo</a> data is valid until <a class="el" href="group__api__core.html#gada319455dd3bc1c2b88670eadc4a09ac" title="Releases buffer after usage from external API. ">vaReleaseBufferHandle()</a> is called. Besides, no additional operation is allowed on any of the buffer parent object until <a class="el" href="group__api__core.html#gada319455dd3bc1c2b88670eadc4a09ac" title="Releases buffer after usage from external API. ">vaReleaseBufferHandle()</a> is called. e.g. decoding into a VA surface backed with the supplied VA buffer object buf_id would fail with a VA_STATUS_ERROR_SURFACE_BUSY error.</p>
<p>Possible errors:</p><ul>
<li>VA_STATUS_ERROR_UNIMPLEMENTED: the VA driver implementation does not support this interface</li>
<li>VA_STATUS_ERROR_INVALID_DISPLAY: an invalid display was supplied</li>
<li>VA_STATUS_ERROR_INVALID_BUFFER: an invalid buffer was supplied</li>
<li>VA_STATUS_ERROR_UNSUPPORTED_BUFFERTYPE: the implementation does not support exporting buffers of the specified type</li>
<li>VA_STATUS_ERROR_UNSUPPORTED_MEMORY_TYPE: none of the requested memory types in <a class="el" href="structVABufferInfo.html#a6332b7ffab1163a9f30a5674fc32e834">VABufferInfo::mem_type</a> was supported</li>
</ul>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">dpy</td><td>the VA display </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">buf_id</td><td>the VA buffer </td></tr>
<tr><td class="paramdir">[in,out]</td><td class="paramname">buf_info</td><td>the associated VA buffer information </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>VA_STATUS_SUCCESS if successful </dd></dl>
</div>
</div>
<a id="ga6f235c87fbad9dfef30a6d81a41be574"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga6f235c87fbad9dfef30a6d81a41be574">&#9670;&nbsp;</a></span>vaAssociateSubpicture()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">VAStatus vaAssociateSubpicture </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a>&#160;</td>
<td class="paramname"><em>dpy</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="group__api__core.html#ga13b0f287a77772b1f8b07dd555230cce">VASubpictureID</a>&#160;</td>
<td class="paramname"><em>subpicture</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">VASurfaceID *&#160;</td>
<td class="paramname"><em>target_surfaces</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>num_surfaces</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int16_t&#160;</td>
<td class="paramname"><em>src_x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int16_t&#160;</td>
<td class="paramname"><em>src_y</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint16_t&#160;</td>
<td class="paramname"><em>src_width</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint16_t&#160;</td>
<td class="paramname"><em>src_height</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int16_t&#160;</td>
<td class="paramname"><em>dest_x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int16_t&#160;</td>
<td class="paramname"><em>dest_y</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint16_t&#160;</td>
<td class="paramname"><em>dest_width</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint16_t&#160;</td>
<td class="paramname"><em>dest_height</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint32_t&#160;</td>
<td class="paramname"><em>flags</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>vaAssociateSubpicture associates the subpicture with target_surfaces. It defines the region mapping between the subpicture and the target surfaces through source and destination rectangles (with the same width and height). Both will be displayed at the next call to vaPutSurface. Additional associations before the call to vaPutSurface simply overrides the association. </p>
</div>
</div>
<a id="gacf031b9aaf39365bf8d79d92372f2ec8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gacf031b9aaf39365bf8d79d92372f2ec8">&#9670;&nbsp;</a></span>vaBeginPicture()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">VAStatus vaBeginPicture </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a>&#160;</td>
<td class="paramname"><em>dpy</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="group__api__core.html#ga4af336e410aefeb4ca4315e2c7cbd653">VAContextID</a>&#160;</td>
<td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">VASurfaceID&#160;</td>
<td class="paramname"><em>render_target</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Render (Video Decode/Encode/Processing) Pictures</p>
<p>A picture represents either a frame or a field.</p>
<p>The Begin/Render/End sequence sends the video decode/encode/processing buffers to the server Get ready for a video pipeline</p><ul>
<li>decode a picture to a target surface</li>
<li>encode a picture from a target surface</li>
<li>process a picture to a target surface </li>
</ul>
</div>
</div>
<a id="gacf5513796ce9eef7c609c765a06ef145"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gacf5513796ce9eef7c609c765a06ef145">&#9670;&nbsp;</a></span>vaBufferSetNumElements()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">VAStatus vaBufferSetNumElements </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a>&#160;</td>
<td class="paramname"><em>dpy</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="group__api__core.html#gad26441ddf2f4441ef65bbefa4662607f">VABufferID</a>&#160;</td>
<td class="paramname"><em>buf_id</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">unsigned int&#160;</td>
<td class="paramname"><em>num_elements</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Convey to the server how many valid elements are in the buffer. e.g. if multiple slice parameters are being held in a single buffer, this will communicate to the server the number of slice parameters that are valid in the buffer. </p>
</div>
</div>
<a id="gaba254978bf0d32781f4a9e67f1fa7a78"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gaba254978bf0d32781f4a9e67f1fa7a78">&#9670;&nbsp;</a></span>vaCreateBuffer()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">VAStatus vaCreateBuffer </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a>&#160;</td>
<td class="paramname"><em>dpy</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="group__api__core.html#ga4af336e410aefeb4ca4315e2c7cbd653">VAContextID</a>&#160;</td>
<td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="group__api__core.html#ga24da9776c5d3a5ce29cb592cf22c00db">VABufferType</a>&#160;</td>
<td class="paramname"><em>type</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">unsigned int&#160;</td>
<td class="paramname"><em>size</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">unsigned int&#160;</td>
<td class="paramname"><em>num_elements</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">void *&#160;</td>
<td class="paramname"><em>data</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="group__api__core.html#gad26441ddf2f4441ef65bbefa4662607f">VABufferID</a> *&#160;</td>
<td class="paramname"><em>buf_id</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Buffer functions Creates a buffer for "num_elements" elements of "size" bytes and initalize with "data". if "data" is null, then the contents of the buffer data store are undefined. Basically there are two ways to get buffer data to the server side. One is to call <a class="el" href="group__api__core.html#gaba254978bf0d32781f4a9e67f1fa7a78">vaCreateBuffer()</a> with a non-null "data", which results the data being copied to the data store on the server side. A different method that eliminates this copy is to pass null as "data" when calling <a class="el" href="group__api__core.html#gaba254978bf0d32781f4a9e67f1fa7a78">vaCreateBuffer()</a>, and then use <a class="el" href="group__api__core.html#gaf14c698af1d0920f4aeb5eb11f81b6aa">vaMapBuffer()</a> to map the data store from the server side to the client address space for access. The user must call <a class="el" href="group__api__core.html#gaa2d1d886aed7b104ed2e50883aa8ccde">vaDestroyBuffer()</a> to destroy a buffer. Note: image buffers are created by the library, not the client. Please see vaCreateImage on how image buffers are managed. </p>
</div>
</div>
<a id="gad7aced6e79f86161b2817d73b9ae1180"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gad7aced6e79f86161b2817d73b9ae1180">&#9670;&nbsp;</a></span>vaCreateBuffer2()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">VAStatus vaCreateBuffer2 </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a>&#160;</td>
<td class="paramname"><em>dpy</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="group__api__core.html#ga4af336e410aefeb4ca4315e2c7cbd653">VAContextID</a>&#160;</td>
<td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="group__api__core.html#ga24da9776c5d3a5ce29cb592cf22c00db">VABufferType</a>&#160;</td>
<td class="paramname"><em>type</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">unsigned int&#160;</td>
<td class="paramname"><em>width</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">unsigned int&#160;</td>
<td class="paramname"><em>height</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">unsigned int *&#160;</td>
<td class="paramname"><em>unit_size</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">unsigned int *&#160;</td>
<td class="paramname"><em>pitch</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="group__api__core.html#gad26441ddf2f4441ef65bbefa4662607f">VABufferID</a> *&#160;</td>
<td class="paramname"><em>buf_id</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Create a buffer for given width &amp; height get unit_size, pitch, buf_id for 2D buffer for permb qp buffer, it will return unit_size for one MB or LCU and the pitch for alignments can call vaMapBuffer with this Buffer ID to get virtual address. e.g. AVC 1080P encode, 1920x1088, the size in MB is 120x68,but inside driver, maybe it should align with 256, and one byte present one Qp.so, call the function. then get unit_size = 1, pitch = 256. call vaMapBuffer to get the virtual address (pBuf). then read write the memory like 2D. the size is 256x68, application can only use 120x68 pBuf + 256 is the start of next line. different driver implementation maybe return different unit_size and pitch </p>
</div>
</div>
<a id="ga9ff7833d425406cb1834c783b0a47652"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga9ff7833d425406cb1834c783b0a47652">&#9670;&nbsp;</a></span>vaCreateConfig()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">VAStatus vaCreateConfig </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a>&#160;</td>
<td class="paramname"><em>dpy</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="group__api__core.html#gaa4851f694a48c22af8877f5cfbb11bde">VAProfile</a>&#160;</td>
<td class="paramname"><em>profile</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="group__api__core.html#ga5f3bcbb940e51be2e84097463557321e">VAEntrypoint</a>&#160;</td>
<td class="paramname"><em>entrypoint</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="structVAConfigAttrib.html">VAConfigAttrib</a> *&#160;</td>
<td class="paramname"><em>attrib_list</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>num_attribs</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">VAConfigID *&#160;</td>
<td class="paramname"><em>config_id</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Create a configuration for the video decode/encode/processing pipeline it passes in the attribute list that specifies the attributes it cares about, with the rest taking default values. </p>
</div>
</div>
<a id="ga7a0e774a793545058d1a311bed9bb8cf"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga7a0e774a793545058d1a311bed9bb8cf">&#9670;&nbsp;</a></span>vaCreateContext()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">VAStatus vaCreateContext </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a>&#160;</td>
<td class="paramname"><em>dpy</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">VAConfigID&#160;</td>
<td class="paramname"><em>config_id</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>picture_width</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>picture_height</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>flag</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">VASurfaceID *&#160;</td>
<td class="paramname"><em>render_targets</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>num_render_targets</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="group__api__core.html#ga4af336e410aefeb4ca4315e2c7cbd653">VAContextID</a> *&#160;</td>
<td class="paramname"><em>context</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>vaCreateContext - Create a context dpy: display config_id: configuration for the context picture_width: coded picture width picture_height: coded picture height flag: any combination of the following: VA_PROGRESSIVE (only progressive frame pictures in the sequence when set) render_targets: a hint for render targets (surfaces) tied to the context num_render_targets: number of render targets in the above array context: created context id upon return </p>
</div>
</div>
<a id="ga8a20d15bc66cc091e9a529ff52ee5872"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga8a20d15bc66cc091e9a529ff52ee5872">&#9670;&nbsp;</a></span>vaCreateImage()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">VAStatus vaCreateImage </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a>&#160;</td>
<td class="paramname"><em>dpy</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">VAImageFormat *&#160;</td>
<td class="paramname"><em>format</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>width</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>height</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">VAImage *&#160;</td>
<td class="paramname"><em>image</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Create a VAImage structure The width and height fields returned in the VAImage structure may get enlarged for some YUV formats. Upon return from this function, image-&gt;buf has been created and proper storage allocated by the library. The client can access the image through the Map/Unmap calls. </p>
</div>
</div>
<a id="gad3fef89dabb600a7c12c2c1fc06084ca"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gad3fef89dabb600a7c12c2c1fc06084ca">&#9670;&nbsp;</a></span>vaCreateMFContext()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">VAStatus vaCreateMFContext </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a>&#160;</td>
<td class="paramname"><em>dpy</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">VAMFContextID *&#160;</td>
<td class="paramname"><em>mf_context</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>vaCreateMFContext - Create a multi-frame context interface encapsulating common for all streams memory objects and structures required for single GPU task submission from several VAContextID's. Allocation: This call only creates an instance, doesn't allocate any additional memory. Support identification: Application can identify multi-frame feature support by ability to create multi-frame context. If driver supports multi-frame - call successful, mf_context != NULL and VAStatus = VA_STATUS_SUCCESS, otherwise if multi-frame processing not supported driver returns VA_STATUS_ERROR_UNIMPLEMENTED and mf_context = NULL. return values: VA_STATUS_SUCCESS - operation successful. VA_STATUS_ERROR_UNIMPLEMENTED - no support for multi-frame. dpy: display adapter. mf_context: Multi-Frame context encapsulating all associated context for multi-frame submission. </p>
</div>
</div>
<a id="ga700ee27f4a77269d7971b12449d69db1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga700ee27f4a77269d7971b12449d69db1">&#9670;&nbsp;</a></span>vaCreateSubpicture()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">VAStatus vaCreateSubpicture </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a>&#160;</td>
<td class="paramname"><em>dpy</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">VAImageID&#160;</td>
<td class="paramname"><em>image</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="group__api__core.html#ga13b0f287a77772b1f8b07dd555230cce">VASubpictureID</a> *&#160;</td>
<td class="paramname"><em>subpicture</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Subpictures are created with an image associated. </p>
</div>
</div>
<a id="gac970ea0eec412326667549f58c44129b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gac970ea0eec412326667549f58c44129b">&#9670;&nbsp;</a></span>vaCreateSurfaces()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">VAStatus vaCreateSurfaces </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a>&#160;</td>
<td class="paramname"><em>dpy</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">unsigned int&#160;</td>
<td class="paramname"><em>format</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">unsigned int&#160;</td>
<td class="paramname"><em>width</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">unsigned int&#160;</td>
<td class="paramname"><em>height</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">VASurfaceID *&#160;</td>
<td class="paramname"><em>surfaces</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">unsigned int&#160;</td>
<td class="paramname"><em>num_surfaces</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="structVASurfaceAttrib.html">VASurfaceAttrib</a> *&#160;</td>
<td class="paramname"><em>attrib_list</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">unsigned int&#160;</td>
<td class="paramname"><em>num_attribs</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Creates an array of surfaces. </p>
<p>Creates an array of surfaces. The optional list of attributes shall be constructed based on what the underlying hardware could expose through <a class="el" href="group__api__core.html#ga6b10b88a628c56377268714cc72090ce" title="Queries surface attributes for the supplied config. ">vaQuerySurfaceAttributes()</a>.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">dpy</td><td>the VA display </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">format</td><td>the desired surface format. See <code>VA_RT_FORMAT_*</code> </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">width</td><td>the surface width </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">height</td><td>the surface height </td></tr>
<tr><td class="paramdir">[out]</td><td class="paramname">surfaces</td><td>the array of newly created surfaces </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">num_surfaces</td><td>the number of surfaces to create </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">attrib_list</td><td>the list of (optional) attributes, or <code>NULL</code> </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">num_attribs</td><td>the number of attributes supplied in <code>attrib_list</code>, or zero </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="gabde94b380a4a42ab2f9660af2a8a1604"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gabde94b380a4a42ab2f9660af2a8a1604">&#9670;&nbsp;</a></span>vaDeassociateSubpicture()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">VAStatus vaDeassociateSubpicture </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a>&#160;</td>
<td class="paramname"><em>dpy</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="group__api__core.html#ga13b0f287a77772b1f8b07dd555230cce">VASubpictureID</a>&#160;</td>
<td class="paramname"><em>subpicture</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">VASurfaceID *&#160;</td>
<td class="paramname"><em>target_surfaces</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>num_surfaces</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>vaDeassociateSubpicture removes the association of the subpicture with target_surfaces. </p>
</div>
</div>
<a id="gaaddbbd4c6ea5bcfe928adc991cc5faab"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gaaddbbd4c6ea5bcfe928adc991cc5faab">&#9670;&nbsp;</a></span>vaDeriveImage()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">VAStatus vaDeriveImage </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a>&#160;</td>
<td class="paramname"><em>dpy</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">VASurfaceID&#160;</td>
<td class="paramname"><em>surface</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">VAImage *&#160;</td>
<td class="paramname"><em>image</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Derive an VAImage from an existing surface. This interface will derive a VAImage and corresponding image buffer from an existing VA Surface. The image buffer can then be mapped/unmapped for direct CPU access. This operation is only possible on implementations with direct rendering capabilities and internal surface formats that can be represented with a VAImage. When the operation is not possible this interface will return VA_STATUS_ERROR_OPERATION_FAILED. Clients should then fall back to using vaCreateImage + vaPutImage to accomplish the same task in an indirect manner.</p>
<p>Implementations should only return success when the resulting image buffer would be useable with vaMap/Unmap.</p>
<p>When directly accessing a surface special care must be taken to insure proper synchronization with the graphics hardware. Clients should call vaQuerySurfaceStatus to insure that a surface is not the target of concurrent rendering or currently being displayed by an overlay.</p>
<p>Additionally nothing about the contents of a surface should be assumed following a vaPutSurface. Implementations are free to modify the surface for scaling or subpicture blending within a call to vaPutImage.</p>
<p>Calls to vaPutImage or vaGetImage using the same surface from which the image has been derived will return VA_STATUS_ERROR_SURFACE_BUSY. vaPutImage or vaGetImage with other surfaces is supported.</p>
<p>An image created with vaDeriveImage should be freed with vaDestroyImage. The image and image buffer structures will be destroyed; however, the underlying surface will remain unchanged until freed with vaDestroySurfaces. </p>
</div>
</div>
<a id="gaa2d1d886aed7b104ed2e50883aa8ccde"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gaa2d1d886aed7b104ed2e50883aa8ccde">&#9670;&nbsp;</a></span>vaDestroyBuffer()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">VAStatus vaDestroyBuffer </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a>&#160;</td>
<td class="paramname"><em>dpy</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="group__api__core.html#gad26441ddf2f4441ef65bbefa4662607f">VABufferID</a>&#160;</td>
<td class="paramname"><em>buffer_id</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>After this call, the buffer is deleted and this buffer_id is no longer valid</p>
<p>A buffer can be re-used and sent to the server by another Begin/Render/End sequence if <a class="el" href="group__api__core.html#gaa2d1d886aed7b104ed2e50883aa8ccde">vaDestroyBuffer()</a> is not called with this buffer.</p>
<p>Note re-using a shared buffer (e.g. a slice data buffer) between the host and the hardware accelerator can result in performance dropping. </p>
</div>
</div>
<a id="ga65a7ccfb6db8c287b79ab3e28701e5f4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga65a7ccfb6db8c287b79ab3e28701e5f4">&#9670;&nbsp;</a></span>vaDestroyConfig()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">VAStatus vaDestroyConfig </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a>&#160;</td>
<td class="paramname"><em>dpy</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">VAConfigID&#160;</td>
<td class="paramname"><em>config_id</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Free resources associdated with a given config </p>
</div>
</div>
<a id="ga2333b7b9d86fc00c0ec00a2c66eaeeba"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga2333b7b9d86fc00c0ec00a2c66eaeeba">&#9670;&nbsp;</a></span>vaDestroyContext()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">VAStatus vaDestroyContext </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a>&#160;</td>
<td class="paramname"><em>dpy</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="group__api__core.html#ga4af336e410aefeb4ca4315e2c7cbd653">VAContextID</a>&#160;</td>
<td class="paramname"><em>context</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>vaDestroyContext - Destroy a context dpy: display context: context to be destroyed </p>
</div>
</div>
<a id="gac0d2a42eb98f6d38295c1969d8ff4cf6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gac0d2a42eb98f6d38295c1969d8ff4cf6">&#9670;&nbsp;</a></span>vaDestroyImage()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">VAStatus vaDestroyImage </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a>&#160;</td>
<td class="paramname"><em>dpy</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">VAImageID&#160;</td>
<td class="paramname"><em>image</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Should call DestroyImage before destroying the surface it is bound to </p>
</div>
</div>
<a id="gaa6bed710094261240a2b9fd2ed6b72fc"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gaa6bed710094261240a2b9fd2ed6b72fc">&#9670;&nbsp;</a></span>vaDestroySubpicture()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">VAStatus vaDestroySubpicture </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a>&#160;</td>
<td class="paramname"><em>dpy</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="group__api__core.html#ga13b0f287a77772b1f8b07dd555230cce">VASubpictureID</a>&#160;</td>
<td class="paramname"><em>subpicture</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Destroy the subpicture before destroying the image it is assocated to </p>
</div>
</div>
<a id="ga108b11751ff3e1113732780bb5b3d547"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga108b11751ff3e1113732780bb5b3d547">&#9670;&nbsp;</a></span>vaDestroySurfaces()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">VAStatus vaDestroySurfaces </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a>&#160;</td>
<td class="paramname"><em>dpy</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">VASurfaceID *&#160;</td>
<td class="paramname"><em>surfaces</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>num_surfaces</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>vaDestroySurfaces - Destroy resources associated with surfaces. Surfaces can only be destroyed after all contexts using these surfaces have been destroyed. dpy: display surfaces: array of surfaces to destroy num_surfaces: number of surfaces in the array to be destroyed. </p>
</div>
</div>
<a id="gaffbd38af17b5f061707010287e7d4c97"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gaffbd38af17b5f061707010287e7d4c97">&#9670;&nbsp;</a></span>vaEndPicture()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">VAStatus vaEndPicture </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a>&#160;</td>
<td class="paramname"><em>dpy</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="group__api__core.html#ga4af336e410aefeb4ca4315e2c7cbd653">VAContextID</a>&#160;</td>
<td class="paramname"><em>context</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Make the end of rendering for a picture. The server should start processing all pending operations for this surface. This call is non-blocking. The client can start another Begin/Render/End sequence on a different render target. if VAContextID used in this function previously successfully passed vaMFAddContext call, real processing will be started during vaMFSubmit </p>
</div>
</div>
<a id="ga19303a24fb5e3ddc7bf1842c7c90c494"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga19303a24fb5e3ddc7bf1842c7c90c494">&#9670;&nbsp;</a></span>vaErrorStr()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const char* vaErrorStr </td>
<td>(</td>
<td class="paramtype">VAStatus&#160;</td>
<td class="paramname"><em>error_status</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns a short english description of error_status </p>
</div>
</div>
<a id="ga404be4f513f3a15b9a831ff561b1b179"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga404be4f513f3a15b9a831ff561b1b179">&#9670;&nbsp;</a></span>vaExportSurfaceHandle()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">VAStatus vaExportSurfaceHandle </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a>&#160;</td>
<td class="paramname"><em>dpy</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">VASurfaceID&#160;</td>
<td class="paramname"><em>surface_id</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint32_t&#160;</td>
<td class="paramname"><em>mem_type</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint32_t&#160;</td>
<td class="paramname"><em>flags</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">void *&#160;</td>
<td class="paramname"><em>descriptor</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Export a handle to a surface for use with an external API. </p>
<p>The exported handles are owned by the caller, and the caller is responsible for freeing them when no longer needed (e.g. by closing DRM PRIME file descriptors).</p>
<p>This does not perform any synchronisation. If the contents of the surface will be read, <a class="el" href="group__api__core.html#gaa2b9b82de6eb2985574a6eca35445b3f">vaSyncSurface()</a> must be called before doing so. If the contents of the surface are written, then all operations must be completed externally before using the surface again by via VA-API functions.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">dpy</td><td>VA display. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">surface_id</td><td>Surface to export. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">mem_type</td><td>Memory type to export to. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">flags</td><td>Combination of flags to apply (VA_EXPORT_SURFACE_*). </td></tr>
<tr><td class="paramdir">[out]</td><td class="paramname">descriptor</td><td>Pointer to the descriptor structure to fill with the handle details. The type of this structure depends on the value of mem_type.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Status code:<ul>
<li>VA_STATUS_SUCCESS: Success.</li>
<li>VA_STATUS_ERROR_INVALID_DISPLAY: The display is not valid.</li>
<li>VA_STATUS_ERROR_UNIMPLEMENTED: The driver does not implement this interface.</li>
<li>VA_STATUS_ERROR_INVALID_SURFACE: The surface is not valid, or the surface is not exportable in the specified way.</li>
<li>VA_STATUS_ERROR_UNSUPPORTED_MEMORY_TYPE: The driver does not support exporting surfaces to the specified memory type. </li>
</ul>
</dd></dl>
</div>
</div>
<a id="gae51cad2e388d6cc63ce3d4221798f9fd"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gae51cad2e388d6cc63ce3d4221798f9fd">&#9670;&nbsp;</a></span>vaGetConfigAttributes()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">VAStatus vaGetConfigAttributes </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a>&#160;</td>
<td class="paramname"><em>dpy</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="group__api__core.html#gaa4851f694a48c22af8877f5cfbb11bde">VAProfile</a>&#160;</td>
<td class="paramname"><em>profile</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="group__api__core.html#ga5f3bcbb940e51be2e84097463557321e">VAEntrypoint</a>&#160;</td>
<td class="paramname"><em>entrypoint</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="structVAConfigAttrib.html">VAConfigAttrib</a> *&#160;</td>
<td class="paramname"><em>attrib_list</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>num_attribs</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Get attributes for a given profile/entrypoint pair The caller must provide an "attrib_list" with all attributes to be retrieved. Upon return, the attributes in "attrib_list" have been updated with their value. Unknown attributes or attributes that are not supported for the given profile/entrypoint pair will have their value set to VA_ATTRIB_NOT_SUPPORTED </p>
</div>
</div>
<a id="ga3d56f2eaf0be528a512cc935aca35418"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga3d56f2eaf0be528a512cc935aca35418">&#9670;&nbsp;</a></span>vaGetImage()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">VAStatus vaGetImage </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a>&#160;</td>
<td class="paramname"><em>dpy</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">VASurfaceID&#160;</td>
<td class="paramname"><em>surface</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>y</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">unsigned int&#160;</td>
<td class="paramname"><em>width</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">unsigned int&#160;</td>
<td class="paramname"><em>height</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">VAImageID&#160;</td>
<td class="paramname"><em>image</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Retrive surface data into a VAImage Image must be in a format supported by the implementation </p>
</div>
</div>
<a id="gacb4937e46e862704a3dd2bf2ebde6ef8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gacb4937e46e862704a3dd2bf2ebde6ef8">&#9670;&nbsp;</a></span>vaGetLibFunc()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">VAPrivFunc vaGetLibFunc </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a>&#160;</td>
<td class="paramname"><em>dpy</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>func</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Return a function pointer given a function name in the library. This allows private interfaces into the library </p>
</div>
</div>
<a id="ga266154ed3b1f38e873caa0af680d733e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga266154ed3b1f38e873caa0af680d733e">&#9670;&nbsp;</a></span>vaInitialize()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">VAStatus vaInitialize </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a>&#160;</td>
<td class="paramname"><em>dpy</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int *&#160;</td>
<td class="paramname"><em>major_version</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int *&#160;</td>
<td class="paramname"><em>minor_version</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Initialize the library </p>
</div>
</div>
<a id="gaf14c698af1d0920f4aeb5eb11f81b6aa"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gaf14c698af1d0920f4aeb5eb11f81b6aa">&#9670;&nbsp;</a></span>vaMapBuffer()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">VAStatus vaMapBuffer </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a>&#160;</td>
<td class="paramname"><em>dpy</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="group__api__core.html#gad26441ddf2f4441ef65bbefa4662607f">VABufferID</a>&#160;</td>
<td class="paramname"><em>buf_id</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">void **&#160;</td>
<td class="paramname"><em>pbuf</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Map data store of the buffer into the client's address space <a class="el" href="group__api__core.html#gaba254978bf0d32781f4a9e67f1fa7a78">vaCreateBuffer()</a> needs to be called with "data" set to NULL before calling <a class="el" href="group__api__core.html#gaf14c698af1d0920f4aeb5eb11f81b6aa">vaMapBuffer()</a></p>
<p>if buffer type is VAEncCodedBufferType, pbuf points to link-list of <a class="el" href="structVACodedBufferSegment.html" title="Coded buffer segment. ">VACodedBufferSegment</a>, and the list is terminated if "next" is NULL </p>
</div>
</div>
<a id="ga151aa810eea4c6092440a6047cf961be"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga151aa810eea4c6092440a6047cf961be">&#9670;&nbsp;</a></span>vaMaxNumConfigAttributes()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int vaMaxNumConfigAttributes </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a>&#160;</td>
<td class="paramname"><em>dpy</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Get maximum number of attributs supported by the implementation </p>
</div>
</div>
<a id="ga4f595f04fb847dd8c241c7fd74f8396c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga4f595f04fb847dd8c241c7fd74f8396c">&#9670;&nbsp;</a></span>vaMaxNumEntrypoints()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int vaMaxNumEntrypoints </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a>&#160;</td>
<td class="paramname"><em>dpy</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Get maximum number of entrypoints supported by the implementation </p>
</div>
</div>
<a id="gad2c42a695feaf1a0913604368d344155"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gad2c42a695feaf1a0913604368d344155">&#9670;&nbsp;</a></span>vaMaxNumImageFormats()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int vaMaxNumImageFormats </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a>&#160;</td>
<td class="paramname"><em>dpy</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Get maximum number of image formats supported by the implementation </p>
</div>
</div>
<a id="ga44f8a9dd55a39f999004ecc73394e676"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga44f8a9dd55a39f999004ecc73394e676">&#9670;&nbsp;</a></span>vaMaxNumProfiles()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int vaMaxNumProfiles </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a>&#160;</td>
<td class="paramname"><em>dpy</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Get maximum number of profiles supported by the implementation </p>
</div>
</div>
<a id="gaf2e1d2acddcaf7d653316c1c198bba9b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gaf2e1d2acddcaf7d653316c1c198bba9b">&#9670;&nbsp;</a></span>vaMaxNumSubpictureFormats()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int vaMaxNumSubpictureFormats </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a>&#160;</td>
<td class="paramname"><em>dpy</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Get maximum number of subpicture formats supported by the implementation </p>
</div>
</div>
<a id="gab3e179a1a16929d1c9f745850fce0075"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gab3e179a1a16929d1c9f745850fce0075">&#9670;&nbsp;</a></span>vaMFAddContext()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">VAStatus vaMFAddContext </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a>&#160;</td>
<td class="paramname"><em>dpy</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">VAMFContextID&#160;</td>
<td class="paramname"><em>mf_context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="group__api__core.html#ga4af336e410aefeb4ca4315e2c7cbd653">VAContextID</a>&#160;</td>
<td class="paramname"><em>context</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>vaMFAddContext - Provide ability to associate each context used for Multi-Frame submission and common Multi-Frame context. Try to add context to understand if it is supported. Allocation: this call allocates and/or reallocates all memory objects common for all contexts associated with particular Multi-Frame context. All memory required for each context(pixel buffers, internal driver buffers required for processing) allocated during standard vaCreateContext call for each context. Runtime dependency - if current implementation doesn't allow to run different entry points/profile, first context added will set entry point/profile for whole Multi-Frame context, all other entry points and profiles can be rejected to be added. Return values: VA_STATUS_SUCCESS - operation successful, context was added. VA_STATUS_ERROR_OPERATION_FAILED - something unexpected happened - application have to close current mf_context and associated contexts and start working with new ones. VA_STATUS_ERROR_INVALID_CONTEXT - ContextID is invalid, means: 1 - mf_context is not valid context or 2 - driver can't suport different VAEntrypoint or VAProfile simultaneosly and current context contradicts with previously added, application can continue with current mf_context and other contexts passed this call, rejected context can continue work in stand-alone mode or other mf_context. VA_STATUS_ERROR_UNSUPPORTED_ENTRYPOINT - particular context being added was created with with unsupported VAEntrypoint. Application can continue with current mf_context and other contexts passed this call, rejected context can continue work in stand-alone mode. VA_STATUS_ERROR_UNSUPPORTED_PROFILE - Current context with Particular VAEntrypoint is supported but VAProfile is not supported. Application can continue with current mf_context and other contexts passed this call, rejected context can continue work in stand-alone mode. dpy: display adapter. context: context being associated with Multi-Frame context. mf_context: - multi-frame context used to associate contexts for multi-frame submission. </p>
</div>
</div>
<a id="ga29fc56f99c6b7037455a39e58c018f40"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga29fc56f99c6b7037455a39e58c018f40">&#9670;&nbsp;</a></span>vaMFReleaseContext()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">VAStatus vaMFReleaseContext </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a>&#160;</td>
<td class="paramname"><em>dpy</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">VAMFContextID&#160;</td>
<td class="paramname"><em>mf_context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="group__api__core.html#ga4af336e410aefeb4ca4315e2c7cbd653">VAContextID</a>&#160;</td>
<td class="paramname"><em>context</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>vaMFReleaseContext - Removes context from multi-frame and association with multi-frame context. After association removed vaEndPicture will submit tasks, but not vaMFSubmit. Return values: VA_STATUS_SUCCESS - operation successful, context was removed. VA_STATUS_ERROR_OPERATION_FAILED - something unexpected happened. application need to destroy this VAMFContextID and all assotiated VAContextID dpy: display mf_context: VAMFContextID where context is added context: VAContextID to be added </p>
</div>
</div>
<a id="gadf2b7bb47c9a69b1a1a5554a0b9d049a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gadf2b7bb47c9a69b1a1a5554a0b9d049a">&#9670;&nbsp;</a></span>vaMFSubmit()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">VAStatus vaMFSubmit </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a>&#160;</td>
<td class="paramname"><em>dpy</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">VAMFContextID&#160;</td>
<td class="paramname"><em>mf_context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="group__api__core.html#ga4af336e410aefeb4ca4315e2c7cbd653">VAContextID</a> *&#160;</td>
<td class="paramname"><em>contexts</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>num_contexts</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Make the end of rendering for a pictures in contexts passed with submission. The server should start processing all pending operations for contexts. All contexts passed should be associated through vaMFAddContext and call sequence Begin/Render/End performed. This call is non-blocking. The client can start another Begin/Render/End/vaMFSubmit sequence on a different render targets. Return values: VA_STATUS_SUCCESS - operation successful, context was removed. VA_STATUS_ERROR_INVALID_CONTEXT - mf_context or one of contexts are invalid due to mf_context not created or one of contexts not assotiated with mf_context through vaAddContext. VA_STATUS_ERROR_INVALID_PARAMETER - one of context has not submitted it's frame through vaBeginPicture vaRenderPicture vaEndPicture call sequence. dpy: display mf_context: Multi-Frame context contexts: list of contexts submitting their tasks for multi-frame operation. num_contexts: number of passed contexts. </p>
</div>
</div>
<a id="gac18bbe67f0869a2b1f1d10fafb3a274c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gac18bbe67f0869a2b1f1d10fafb3a274c">&#9670;&nbsp;</a></span>vaPutImage()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">VAStatus vaPutImage </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a>&#160;</td>
<td class="paramname"><em>dpy</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">VASurfaceID&#160;</td>
<td class="paramname"><em>surface</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">VAImageID&#160;</td>
<td class="paramname"><em>image</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>src_x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>src_y</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">unsigned int&#160;</td>
<td class="paramname"><em>src_width</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">unsigned int&#160;</td>
<td class="paramname"><em>src_height</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>dest_x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>dest_y</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">unsigned int&#160;</td>
<td class="paramname"><em>dest_width</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">unsigned int&#160;</td>
<td class="paramname"><em>dest_height</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Copy data from a VAImage to a surface Image must be in a format supported by the implementation Returns a VA_STATUS_ERROR_SURFACE_BUSY if the surface shouldn't be rendered into when this is called </p>
</div>
</div>
<a id="ga593da1618f3495a3f3ac13853a64794c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga593da1618f3495a3f3ac13853a64794c">&#9670;&nbsp;</a></span>vaQueryConfigAttributes()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">VAStatus vaQueryConfigAttributes </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a>&#160;</td>
<td class="paramname"><em>dpy</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">VAConfigID&#160;</td>
<td class="paramname"><em>config_id</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="group__api__core.html#gaa4851f694a48c22af8877f5cfbb11bde">VAProfile</a> *&#160;</td>
<td class="paramname"><em>profile</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="group__api__core.html#ga5f3bcbb940e51be2e84097463557321e">VAEntrypoint</a> *&#160;</td>
<td class="paramname"><em>entrypoint</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="structVAConfigAttrib.html">VAConfigAttrib</a> *&#160;</td>
<td class="paramname"><em>attrib_list</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int *&#160;</td>
<td class="paramname"><em>num_attribs</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Query all attributes for a given configuration The profile of the configuration is returned in "profile" The entrypoint of the configuration is returned in "entrypoint" The caller must provide an "attrib_list" array that can hold at least <a class="el" href="group__api__core.html#ga151aa810eea4c6092440a6047cf961be">vaMaxNumConfigAttributes()</a> entries. The actual number of attributes returned in "attrib_list" is returned in "num_attribs" </p>
</div>
</div>
<a id="ga7c6ec979697dafc172123c5d3ad80d8e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga7c6ec979697dafc172123c5d3ad80d8e">&#9670;&nbsp;</a></span>vaQueryConfigEntrypoints()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">VAStatus vaQueryConfigEntrypoints </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a>&#160;</td>
<td class="paramname"><em>dpy</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="group__api__core.html#gaa4851f694a48c22af8877f5cfbb11bde">VAProfile</a>&#160;</td>
<td class="paramname"><em>profile</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="group__api__core.html#ga5f3bcbb940e51be2e84097463557321e">VAEntrypoint</a> *&#160;</td>
<td class="paramname"><em>entrypoint_list</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int *&#160;</td>
<td class="paramname"><em>num_entrypoints</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Query supported entrypoints for a given profile The caller must provide an "entrypoint_list" array that can hold at least <a class="el" href="group__api__core.html#ga4f595f04fb847dd8c241c7fd74f8396c">vaMaxNumEntrypoints()</a> entries. The actual number of entrypoints returned in "entrypoint_list" is returned in "num_entrypoints". </p>
</div>
</div>
<a id="ga198a34eb408790b172710071a248b660"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga198a34eb408790b172710071a248b660">&#9670;&nbsp;</a></span>vaQueryConfigProfiles()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">VAStatus vaQueryConfigProfiles </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a>&#160;</td>
<td class="paramname"><em>dpy</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="group__api__core.html#gaa4851f694a48c22af8877f5cfbb11bde">VAProfile</a> *&#160;</td>
<td class="paramname"><em>profile_list</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int *&#160;</td>
<td class="paramname"><em>num_profiles</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Query supported profiles The caller must provide a "profile_list" array that can hold at least vaMaxNumProfile() entries. The actual number of profiles returned in "profile_list" is returned in "num_profile". </p>
</div>
</div>
<a id="gacaafd538e7a9c79fdd9753c4243be3b8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gacaafd538e7a9c79fdd9753c4243be3b8">&#9670;&nbsp;</a></span>vaQueryImageFormats()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">VAStatus vaQueryImageFormats </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a>&#160;</td>
<td class="paramname"><em>dpy</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">VAImageFormat *&#160;</td>
<td class="paramname"><em>format_list</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int *&#160;</td>
<td class="paramname"><em>num_formats</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Query supported image formats The caller must provide a "format_list" array that can hold at least <a class="el" href="group__api__core.html#gad2c42a695feaf1a0913604368d344155">vaMaxNumImageFormats()</a> entries. The actual number of formats returned in "format_list" is returned in "num_formats". </p>
</div>
</div>
<a id="gae132bacffb040cfa39e5599664ac1a7e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gae132bacffb040cfa39e5599664ac1a7e">&#9670;&nbsp;</a></span>vaQueryProcessingRate()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">VAStatus vaQueryProcessingRate </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a>&#160;</td>
<td class="paramname"><em>dpy</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">VAConfigID&#160;</td>
<td class="paramname"><em>config</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">VAProcessingRateParameter *&#160;</td>
<td class="paramname"><em>proc_buf</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">unsigned int *&#160;</td>
<td class="paramname"><em>processing_rate</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Queries processing rate for the supplied config. </p>
<p>This function queries the processing rate based on parameters in <code>proc_buf</code> for the given <code>config</code>. Upon successful return, the processing rate value will be stored in <code>processing_rate</code>. Processing rate is specified as the number of macroblocks/CTU per second.</p>
<p>If NULL is passed to the <code>proc_buf</code>, the default processing rate for the given configuration will be returned.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">dpy</td><td>the VA display </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">config</td><td>the config identifying a codec or a video processing pipeline </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">proc_buf</td><td>the buffer that contains the parameters for either the encode or decode processing rate </td></tr>
<tr><td class="paramdir">[out]</td><td class="paramname">processing_rate</td><td>processing rate in number of macroblocks per second constrained by parameters specified in proc_buf </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="gaa6ad0aa47b587a3eb81cd17fd69866a1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gaa6ad0aa47b587a3eb81cd17fd69866a1">&#9670;&nbsp;</a></span>vaQuerySubpictureFormats()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">VAStatus vaQuerySubpictureFormats </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a>&#160;</td>
<td class="paramname"><em>dpy</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">VAImageFormat *&#160;</td>
<td class="paramname"><em>format_list</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">unsigned int *&#160;</td>
<td class="paramname"><em>flags</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">unsigned int *&#160;</td>
<td class="paramname"><em>num_formats</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Query supported subpicture formats The caller must provide a "format_list" array that can hold at least <a class="el" href="group__api__core.html#gaf2e1d2acddcaf7d653316c1c198bba9b">vaMaxNumSubpictureFormats()</a> entries. The flags arrary holds the flag for each format to indicate additional capabilities for that format. The actual number of formats returned in "format_list" is returned in "num_formats". flags: returned value to indicate addtional capabilities VA_SUBPICTURE_CHROMA_KEYING - supports chroma-keying VA_SUBPICTURE_GLOBAL_ALPHA - supports global alpha VA_SUBPICTURE_DESTINATION_IS_SCREEN_COORD - supports unscaled screen relative subpictures for On Screen Display </p>
</div>
</div>
<a id="ga6b10b88a628c56377268714cc72090ce"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga6b10b88a628c56377268714cc72090ce">&#9670;&nbsp;</a></span>vaQuerySurfaceAttributes()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">VAStatus vaQuerySurfaceAttributes </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a>&#160;</td>
<td class="paramname"><em>dpy</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">VAConfigID&#160;</td>
<td class="paramname"><em>config</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="structVASurfaceAttrib.html">VASurfaceAttrib</a> *&#160;</td>
<td class="paramname"><em>attrib_list</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">unsigned int *&#160;</td>
<td class="paramname"><em>num_attribs</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Queries surface attributes for the supplied config. </p>
<p>This function queries for all supported attributes for the supplied VA . In particular, if the underlying hardware supports the creation of VA surfaces in various formats, then this function will enumerate all pixel formats that are supported.</p>
<p>The <code>attrib_list</code> array is allocated by the user and <code>num_attribs</code> shall be initialized to the number of allocated elements in that array. Upon successful return, the actual number of attributes will be overwritten into <code>num_attribs</code>. Otherwise, <code>VA_STATUS_ERROR_MAX_NUM_EXCEEDED</code> is returned and <code>num_attribs</code> is adjusted to the number of elements that would be returned if enough space was available.</p>
<p>Note: it is perfectly valid to pass NULL to the <code>attrib_list</code> argument when <a class="el" href="group__api__core.html#ga6b10b88a628c56377268714cc72090ce" title="Queries surface attributes for the supplied config. ">vaQuerySurfaceAttributes()</a> is used to determine the actual number of elements that need to be allocated.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">dpy</td><td>the VA display </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">config</td><td>the config identifying a codec or a video processing pipeline </td></tr>
<tr><td class="paramdir">[out]</td><td class="paramname">attrib_list</td><td>the output array of <a class="el" href="structVASurfaceAttrib.html" title="Surface attribute. ">VASurfaceAttrib</a> elements </td></tr>
<tr><td class="paramdir">[in,out]</td><td class="paramname">num_attribs</td><td>the number of elements allocated on input, the number of elements actually filled in output </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="ga3f8de8dbd54db159368a1e768d065342"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga3f8de8dbd54db159368a1e768d065342">&#9670;&nbsp;</a></span>vaQuerySurfaceError()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">VAStatus vaQuerySurfaceError </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a>&#160;</td>
<td class="paramname"><em>dpy</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">VASurfaceID&#160;</td>
<td class="paramname"><em>surface</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">VAStatus&#160;</td>
<td class="paramname"><em>error_status</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">void **&#160;</td>
<td class="paramname"><em>error_info</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>After the application gets VA_STATUS_ERROR_DECODING_ERROR after calling <a class="el" href="group__api__core.html#gaa2b9b82de6eb2985574a6eca35445b3f">vaSyncSurface()</a>, it can call vaQuerySurfaceError to find out further details on the particular error. VA_STATUS_ERROR_DECODING_ERROR should be passed in as "error_status", upon the return, error_info will point to an array of _VASurfaceDecodeMBErrors structure, which is allocated and filled by libVA with detailed information on the missing or error macroblocks. The array is terminated if "status==-1" is detected. </p>
</div>
</div>
<a id="ga59e5c937c8554f1bab043f80427c2fa8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga59e5c937c8554f1bab043f80427c2fa8">&#9670;&nbsp;</a></span>vaQuerySurfaceStatus()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">VAStatus vaQuerySurfaceStatus </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a>&#160;</td>
<td class="paramname"><em>dpy</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">VASurfaceID&#160;</td>
<td class="paramname"><em>render_target</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">VASurfaceStatus *&#160;</td>
<td class="paramname"><em>status</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Find out any pending ops on the render target </p>
</div>
</div>
<a id="ga636ce2eb0c5380df66ff9f6733f6435d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga636ce2eb0c5380df66ff9f6733f6435d">&#9670;&nbsp;</a></span>vaQueryVendorString()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const char* vaQueryVendorString </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a>&#160;</td>
<td class="paramname"><em>dpy</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>vaQueryVendorString returns a pointer to a zero-terminated string describing some aspects of the VA implemenation on a specific hardware accelerator. The format of the returned string is vendor specific and at the discretion of the implementer. e.g. for the Intel GMA500 implementation, an example would be: "Intel GMA500 - 2.0.0.32L.0005" </p>
</div>
</div>
<a id="gada319455dd3bc1c2b88670eadc4a09ac"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gada319455dd3bc1c2b88670eadc4a09ac">&#9670;&nbsp;</a></span>vaReleaseBufferHandle()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">VAStatus vaReleaseBufferHandle </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a>&#160;</td>
<td class="paramname"><em>dpy</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="group__api__core.html#gad26441ddf2f4441ef65bbefa4662607f">VABufferID</a>&#160;</td>
<td class="paramname"><em>buf_id</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Releases buffer after usage from external API. </p>
<p>Unlocks the VA buffer object buf_id from external API usage like EGL or OpenCL (OCL). This function is a synchronization point. This means that any pending operation is guaranteed to be completed prior to returning from the function.</p>
<p>The <a class="el" href="structVABufferInfo.html">VABufferInfo</a> argument shall point to the original data structure that was obtained from <a class="el" href="group__api__core.html#ga36dc61a5fc1552d7037d102bc7d35703" title="Acquires buffer handle for external API usage. ">vaAcquireBufferHandle()</a>, unaltered. This is necessary so that the VA driver implementation could deallocate any resources that were needed.</p>
<p>In any case, returning from this function invalidates any contents in <a class="el" href="structVABufferInfo.html">VABufferInfo</a>. i.e. the underlyng buffer handle is no longer valid. Therefore, VA driver implementations are free to reset this data structure to safe defaults.</p>
<p>Possible errors:</p><ul>
<li>VA_STATUS_ERROR_UNIMPLEMENTED: the VA driver implementation does not support this interface</li>
<li>VA_STATUS_ERROR_INVALID_DISPLAY: an invalid display was supplied</li>
<li>VA_STATUS_ERROR_INVALID_BUFFER: an invalid buffer was supplied</li>
<li>VA_STATUS_ERROR_UNSUPPORTED_BUFFERTYPE: the implementation does not support exporting buffers of the specified type</li>
</ul>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">dpy</td><td>the VA display </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">buf_id</td><td>the VA buffer </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>VA_STATUS_SUCCESS if successful </dd></dl>
</div>
</div>
<a id="ga3facc622a14fc901d5d44dcda845cb6f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga3facc622a14fc901d5d44dcda845cb6f">&#9670;&nbsp;</a></span>vaRenderPicture()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">VAStatus vaRenderPicture </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a>&#160;</td>
<td class="paramname"><em>dpy</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="group__api__core.html#ga4af336e410aefeb4ca4315e2c7cbd653">VAContextID</a>&#160;</td>
<td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="group__api__core.html#gad26441ddf2f4441ef65bbefa4662607f">VABufferID</a> *&#160;</td>
<td class="paramname"><em>buffers</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>num_buffers</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Send video decode, encode or processing buffers to the server. </p>
</div>
</div>
<a id="ga32b3e0ef7dae82f7279e96b1658b6d0c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga32b3e0ef7dae82f7279e96b1658b6d0c">&#9670;&nbsp;</a></span>vaSetDriverName()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">VAStatus vaSetDriverName </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a>&#160;</td>
<td class="paramname"><em>dpy</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">char *&#160;</td>
<td class="paramname"><em>driver_name</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Set the override driver name instead of queried driver driver. </p>
</div>
</div>
<a id="ga725ab6efbccb5cd05bbad31227b22a0c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga725ab6efbccb5cd05bbad31227b22a0c">&#9670;&nbsp;</a></span>vaSetErrorCallback()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="group__api__core.html#ga26fd64e5d522004ce30dc8159a57f240">VAMessageCallback</a> vaSetErrorCallback </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a>&#160;</td>
<td class="paramname"><em>dpy</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="group__api__core.html#ga26fd64e5d522004ce30dc8159a57f240">VAMessageCallback</a>&#160;</td>
<td class="paramname"><em>callback</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">void *&#160;</td>
<td class="paramname"><em>user_context</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Set the callback for error messages, or NULL for no logging. Returns the previous one, or NULL if it was disabled. </p>
</div>
</div>
<a id="gaf00808befa17df8edc6619f9dd6a9429"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gaf00808befa17df8edc6619f9dd6a9429">&#9670;&nbsp;</a></span>vaSetInfoCallback()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="group__api__core.html#ga26fd64e5d522004ce30dc8159a57f240">VAMessageCallback</a> vaSetInfoCallback </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a>&#160;</td>
<td class="paramname"><em>dpy</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="group__api__core.html#ga26fd64e5d522004ce30dc8159a57f240">VAMessageCallback</a>&#160;</td>
<td class="paramname"><em>callback</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">void *&#160;</td>
<td class="paramname"><em>user_context</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Set the callback for info messages, or NULL for no logging. Returns the previous one, or NULL if it was disabled. </p>
</div>
</div>
<a id="ga3d1af09269f34d9a3b51f96bf974c292"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga3d1af09269f34d9a3b51f96bf974c292">&#9670;&nbsp;</a></span>vaSetSubpictureChromakey()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">VAStatus vaSetSubpictureChromakey </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a>&#160;</td>
<td class="paramname"><em>dpy</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="group__api__core.html#ga13b0f287a77772b1f8b07dd555230cce">VASubpictureID</a>&#160;</td>
<td class="paramname"><em>subpicture</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">unsigned int&#160;</td>
<td class="paramname"><em>chromakey_min</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">unsigned int&#160;</td>
<td class="paramname"><em>chromakey_max</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">unsigned int&#160;</td>
<td class="paramname"><em>chromakey_mask</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>If chromakey is enabled, then the area where the source value falls within the chromakey [min, max] range is transparent The chromakey component format is the following: For RGB: [0:7] Red [8:15] Blue [16:23] Green For YUV: [0:7] V [8:15] U [16:23] Y The chromakey mask can be used to mask out certain components for chromakey comparision </p>
</div>
</div>
<a id="ga84b33ea8c86f5be04ccb27d76b15173c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga84b33ea8c86f5be04ccb27d76b15173c">&#9670;&nbsp;</a></span>vaSetSubpictureGlobalAlpha()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">VAStatus vaSetSubpictureGlobalAlpha </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a>&#160;</td>
<td class="paramname"><em>dpy</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="group__api__core.html#ga13b0f287a77772b1f8b07dd555230cce">VASubpictureID</a>&#160;</td>
<td class="paramname"><em>subpicture</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">float&#160;</td>
<td class="paramname"><em>global_alpha</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Global alpha value is between 0 and 1. A value of 1 means fully opaque and a value of 0 means fully transparent. If per-pixel alpha is also specified then the overall alpha is per-pixel alpha multiplied by the global alpha </p>
</div>
</div>
<a id="ga44b7f6361bd4917ea4e25c10c024739c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga44b7f6361bd4917ea4e25c10c024739c">&#9670;&nbsp;</a></span>vaSetSubpictureImage()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">VAStatus vaSetSubpictureImage </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a>&#160;</td>
<td class="paramname"><em>dpy</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="group__api__core.html#ga13b0f287a77772b1f8b07dd555230cce">VASubpictureID</a>&#160;</td>
<td class="paramname"><em>subpicture</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">VAImageID&#160;</td>
<td class="paramname"><em>image</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Bind an image to the subpicture. This image will now be associated with the subpicture instead of the one at creation. </p>
</div>
</div>
<a id="gaca1b16e84bf974ce45f708f36b32bc3a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gaca1b16e84bf974ce45f708f36b32bc3a">&#9670;&nbsp;</a></span>vaSyncBuffer()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">VAStatus vaSyncBuffer </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a>&#160;</td>
<td class="paramname"><em>dpy</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="group__api__core.html#gad26441ddf2f4441ef65bbefa4662607f">VABufferID</a>&#160;</td>
<td class="paramname"><em>buf_id</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint64_t&#160;</td>
<td class="paramname"><em>timeout_ns</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Synchronizes pending operations associated with the supplied buffer. </p>
<p>This function blocks during specified timeout (in nanoseconds) until all pending operations on the supplied buffer have been completed. If timeout is zero, the function returns immediately.</p>
<p>Possible errors:</p><ul>
<li>VA_STATUS_ERROR_UNIMPLEMENTED: the VA driver implementation does not support this interface</li>
<li>VA_STATUS_ERROR_INVALID_DISPLAY: an invalid display was supplied</li>
<li>VA_STATUS_ERROR_INVALID_BUFFER: an invalid buffer was supplied</li>
<li>VA_STATUS_ERROR_TIMEDOUT: synchronization is still in progress, client should call the function again to complete synchronization</li>
</ul>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">dpy</td><td>the VA display </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">buf_id</td><td>the buffer for which synchronization is performed </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">timeout_ns</td><td>the timeout in nanoseconds </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="gaa2b9b82de6eb2985574a6eca35445b3f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gaa2b9b82de6eb2985574a6eca35445b3f">&#9670;&nbsp;</a></span>vaSyncSurface()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">VAStatus vaSyncSurface </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a>&#160;</td>
<td class="paramname"><em>dpy</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">VASurfaceID&#160;</td>
<td class="paramname"><em>render_target</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>This function blocks until all pending operations on the render target have been completed. Upon return it is safe to use the render target for a different picture. </p>
</div>
</div>
<a id="ga8fe118269188636d4f61bc9cf73ffaef"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga8fe118269188636d4f61bc9cf73ffaef">&#9670;&nbsp;</a></span>vaSyncSurface2()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">VAStatus vaSyncSurface2 </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a>&#160;</td>
<td class="paramname"><em>dpy</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">VASurfaceID&#160;</td>
<td class="paramname"><em>surface</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint64_t&#160;</td>
<td class="paramname"><em>timeout_ns</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Synchronizes pending operations associated with the supplied surface. </p>
<p>This function blocks during specified timeout (in nanoseconds) until all pending operations on the render target have been completed. If timeout is zero, the function returns immediately.</p>
<p>Possible errors:</p><ul>
<li>VA_STATUS_ERROR_UNIMPLEMENTED: the VA driver implementation does not support this interface</li>
<li>VA_STATUS_ERROR_INVALID_DISPLAY: an invalid display was supplied</li>
<li>VA_STATUS_ERROR_INVALID_SURFACE: an invalid surface was supplied</li>
<li>VA_STATUS_ERROR_TIMEDOUT: synchronization is still in progress, client should call the function again to complete synchronization</li>
</ul>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">dpy</td><td>the VA display </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">surface</td><td>the surface for which synchronization is performed </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">timeout_ns</td><td>the timeout in nanoseconds </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="ga00514156193ed9b5c621d33f248b07d4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga00514156193ed9b5c621d33f248b07d4">&#9670;&nbsp;</a></span>vaTerminate()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">VAStatus vaTerminate </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a>&#160;</td>
<td class="paramname"><em>dpy</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>After this call, all library internal resources will be cleaned up </p>
</div>
</div>
<a id="gae9b81871416c64b07e81d3eb54b6d579"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gae9b81871416c64b07e81d3eb54b6d579">&#9670;&nbsp;</a></span>vaUnmapBuffer()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">VAStatus vaUnmapBuffer </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__api__core.html#gad534cae750fddc9ad30d0dc267deffa3">VADisplay</a>&#160;</td>
<td class="paramname"><em>dpy</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="group__api__core.html#gad26441ddf2f4441ef65bbefa4662607f">VABufferID</a>&#160;</td>
<td class="paramname"><em>buf_id</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>After client making changes to a mapped data store, it needs to "Unmap" it to let the server know that the data is ready to be consumed by the server </p>
</div>
</div>
</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>