blob: f53abf4e8f4aff014bcd45cdbe38032a7cb1856c [file] [edit]
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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.9.1"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>VA-API: VASliceStructVVC Struct Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">VA-API
&#160;<span id="projectnumber">2.23.0</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.1 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search','.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-attribs">Public Attributes</a> &#124;
<a href="structVASliceStructVVC-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">VASliceStructVVC Struct Reference<div class="ingroups"><a class="el" href="group__api__dec__vvc.html">VVC decoding API</a></div></div> </div>
</div><!--header-->
<div class="contents">
<p>data buffer of tile widths and heights. VATileBufferType is used to send this buffer.
<a href="structVASliceStructVVC.html#details">More...</a></p>
<p><code>#include &lt;<a class="el" href="va__dec__vvc_8h_source.html">va_dec_vvc.h</a>&gt;</code></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
Public Attributes</h2></td></tr>
<tr class="memitem:a2b39889a400dd80c069c6af131715237"><td class="memItemLeft" align="right" valign="top"><a id="a2b39889a400dd80c069c6af131715237"></a>
uint16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structVASliceStructVVC.html#a2b39889a400dd80c069c6af131715237">SliceTopLeftTileIdx</a></td></tr>
<tr class="memdesc:a2b39889a400dd80c069c6af131715237"><td class="mdescLeft">&#160;</td><td class="mdescRight">the tile index of which the starting CTU (top-left) of the slice belongs to. The tile index is in raster scan order. Same syntax variable as in VVC spec. <br /></td></tr>
<tr class="separator:a2b39889a400dd80c069c6af131715237"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a738ddadc0686bb77c75939bf4c8d1454"><td class="memItemLeft" align="right" valign="top"><a id="a738ddadc0686bb77c75939bf4c8d1454"></a>
uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structVASliceStructVVC.html#a738ddadc0686bb77c75939bf4c8d1454">va_reserved</a> [<a class="el" href="group__api__core.html#gaaa4fb20d1c2606379cccfa562c2ebb3b">VA_PADDING_LOW</a>]</td></tr>
<tr class="memdesc:a738ddadc0686bb77c75939bf4c8d1454"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reserved for future use, must be zero. <br /></td></tr>
<tr class="separator:a738ddadc0686bb77c75939bf4c8d1454"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>data buffer of tile widths and heights. VATileBufferType is used to send this buffer. </p>
<p>Host decoder sends in number of pps_num_exp_tile_columns_minus1 + 1 tile column widths of pps_tile_column_width_minus1[i], followed by number of pps_num_exp_tile_rows_minus1 + 1 of tile row heights of pps_tile_row_height_minus1[i], through one or multiple buffers. Each tile width or height is formatted as uint16_t tile_dimension; Each buffer contains an integer number of tile_dimension with no gap in between. The buffers with type VATileBufferType should be submitted for each picture. And driver will derive the tile structure from it. When pps_num_exp_tile_columns_minus1 + pps_num_exp_tile_rows_minus1 equals 0, this buffer is still submitted by app to driver.</p>
<p>VVC SliceStruct Data Structure</p>
<p>Host decoder sends in an array of SliceStruct sets through one or multiple buffers. These SliceStruct sets contain only the "explicit" slices parsed from PPS header. Each SliceStruct set is described by <a class="el" href="structVASliceStructVVC.html" title="data buffer of tile widths and heights. VATileBufferType is used to send this buffer.">VASliceStructVVC</a> data structure. Each buffer contains an integer number of <a class="el" href="structVASliceStructVVC.html" title="data buffer of tile widths and heights. VATileBufferType is used to send this buffer.">VASliceStructVVC</a> data structures, which are laid out sequentially in the order of ascending slice indices according to the spec with no gap in between.</p>
<p>When pps_rect_slice_flag equals 0 or there are no explicit slices, this buffer is not submitted by app to driver. Otherwise, for each picture, this buffer should be submitted.</p>
<p>Note: When pps_slice_width_in_tiles_minus1 + pps_slice_height_in_tiles_minus1 equals 0, if the sum of pps_exp_slice_height_in_ctus_minus1 + 1 of all those slices with same SliceTopLeftTileIdx value is less than the height of tile SliceTopLeftTileIdx in unit of CTUs, driver should derive the rest slices in that tile according to equation (21) in spec section 6.5.1. And <a class="el" href="structVASliceStructVVC.html" title="data buffer of tile widths and heights. VATileBufferType is used to send this buffer.">VASliceStructVVC</a> for these (derived) slices are not passed in to LibVA by App.</p>
<p>App should populate the data entries regardless of values of pps_single_slice_per_subpic_flag or sps_subpic_info_present_flag.</p>
<p>VASliceStructBufferType is used to send this buffer. </p>
</div><hr/>The documentation for this struct was generated from the following file:<ul>
<li><a class="el" href="va__dec__vvc_8h_source.html">va_dec_vvc.h</a></li>
</ul>
</div><!-- contents -->
<hr class="footer"/><address class="footer"><small>
Generated for VA-API by&#160;<a href="http://www.doxygen.org/index.html"><img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.9.1</small></address>
</body>
</html>