Sophie

Sophie

distrib > Mageia > 6 > armv7hl > by-pkgid > b4d0ffc838646a67b3dd59a6006ff212 > files > 66

libgavl-devel-1.4.0-7.mga6.armv7hl.rpm

<!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.12"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>gavl: Video format definitions</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">gavl
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.12 -->
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
  initMenu('',false,false,'search.php','Search');
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#nested-classes">Data Structures</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">Video format definitions<div class="ingroups"><a class="el" href="group__video.html">Video</a></div></div>  </div>
</div><!--header-->
<div class="contents">

<p>Definitions for several variations of video data.  
<a href="#details">More...</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
Data Structures</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="structgavl__video__format__s.html">gavl_video_format_s</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Video format.  <a href="structgavl__video__format__s.html#details">More...</a><br /></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:ga04b9a9a01c859eef903ad5c929b5a376"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__video__format.html#ga04b9a9a01c859eef903ad5c929b5a376">GAVL_PIXFMT_PLANAR</a>&#160;&#160;&#160;(1&lt;&lt;8)</td></tr>
<tr class="separator:ga04b9a9a01c859eef903ad5c929b5a376"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaadfa65377172d2d7780888c1435996b9"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__video__format.html#gaadfa65377172d2d7780888c1435996b9">GAVL_PIXFMT_RGB</a>&#160;&#160;&#160;(1&lt;&lt;9)</td></tr>
<tr class="separator:gaadfa65377172d2d7780888c1435996b9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gab68ea697e8c26f1ac9458ab7dfc5ac2d"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__video__format.html#gab68ea697e8c26f1ac9458ab7dfc5ac2d">GAVL_PIXFMT_YUV</a>&#160;&#160;&#160;(1&lt;&lt;10)</td></tr>
<tr class="separator:gab68ea697e8c26f1ac9458ab7dfc5ac2d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gac9f6894e861877932a3d9e22de68f217"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__video__format.html#gac9f6894e861877932a3d9e22de68f217">GAVL_PIXFMT_YUVJ</a>&#160;&#160;&#160;(1&lt;&lt;11)</td></tr>
<tr class="separator:gac9f6894e861877932a3d9e22de68f217"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga0a439a4323f4f72a1306b4a45d527c4d"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__video__format.html#ga0a439a4323f4f72a1306b4a45d527c4d">GAVL_PIXFMT_ALPHA</a>&#160;&#160;&#160;(1&lt;&lt;12)</td></tr>
<tr class="separator:ga0a439a4323f4f72a1306b4a45d527c4d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga2198acc6ef5344d1a7c1a06703b7b465"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__video__format.html#ga2198acc6ef5344d1a7c1a06703b7b465">GAVL_PIXFMT_GRAY</a>&#160;&#160;&#160;(1&lt;&lt;13)</td></tr>
<tr class="separator:ga2198acc6ef5344d1a7c1a06703b7b465"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gab202d0ec7abde22239f83d1b6cd6ebcf"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__video__format.html#gab202d0ec7abde22239f83d1b6cd6ebcf">GAVL_PIXELFORMAT_1D_8</a>&#160;&#160;&#160;<a class="el" href="group__video__format.html#ggaf1e060e38cb2d9e4e776f7eca3ec2d33a69f10c2c74f64f7bc5c6ddd5022bd1e9">GAVL_GRAY_8</a></td></tr>
<tr class="memdesc:gab202d0ec7abde22239f83d1b6cd6ebcf"><td class="mdescLeft">&#160;</td><td class="mdescRight">Pixelformat for storing 1-dimensional integer data with 8 bits each.  <a href="#gab202d0ec7abde22239f83d1b6cd6ebcf">More...</a><br /></td></tr>
<tr class="separator:gab202d0ec7abde22239f83d1b6cd6ebcf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaa4282924f2ee78d7315f506eb9fb9f6f"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__video__format.html#gaa4282924f2ee78d7315f506eb9fb9f6f">GAVL_PIXELFORMAT_2D_8</a>&#160;&#160;&#160;<a class="el" href="group__video__format.html#ggaf1e060e38cb2d9e4e776f7eca3ec2d33acb8992556bb1905eef5e5fdf856a4a28">GAVL_GRAYA_16</a></td></tr>
<tr class="memdesc:gaa4282924f2ee78d7315f506eb9fb9f6f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Pixelformat for storing 2-dimensional integer data with 8 bits each.  <a href="#gaa4282924f2ee78d7315f506eb9fb9f6f">More...</a><br /></td></tr>
<tr class="separator:gaa4282924f2ee78d7315f506eb9fb9f6f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga2a58de9595570e3559119d781b084f11"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__video__format.html#ga2a58de9595570e3559119d781b084f11">GAVL_PIXELFORMAT_3D_8</a>&#160;&#160;&#160;<a class="el" href="group__video__format.html#ggaf1e060e38cb2d9e4e776f7eca3ec2d33a8211bc654500aecfd275674f6221043f">GAVL_RGB_24</a></td></tr>
<tr class="memdesc:ga2a58de9595570e3559119d781b084f11"><td class="mdescLeft">&#160;</td><td class="mdescRight">Pixelformat for storing 3-dimensional integer data with 8 bits each.  <a href="#ga2a58de9595570e3559119d781b084f11">More...</a><br /></td></tr>
<tr class="separator:ga2a58de9595570e3559119d781b084f11"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga93a7617611792823006645de5cf5260e"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__video__format.html#ga93a7617611792823006645de5cf5260e">GAVL_PIXELFORMAT_4D_8</a>&#160;&#160;&#160;<a class="el" href="group__video__format.html#ggaf1e060e38cb2d9e4e776f7eca3ec2d33addf19307ad488270fa01958f81e49805">GAVL_RGBA_32</a></td></tr>
<tr class="memdesc:ga93a7617611792823006645de5cf5260e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Pixelformat for storing 4-dimensional integer data with 8 bits each.  <a href="#ga93a7617611792823006645de5cf5260e">More...</a><br /></td></tr>
<tr class="separator:ga93a7617611792823006645de5cf5260e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gab0208787b206fe928c36c20ea42a6139"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__video__format.html#gab0208787b206fe928c36c20ea42a6139">GAVL_PIXELFORMAT_1D_16</a>&#160;&#160;&#160;<a class="el" href="group__video__format.html#ggaf1e060e38cb2d9e4e776f7eca3ec2d33ae952bf31e83f79f856f6d7c6f068a9ea">GAVL_GRAY_16</a></td></tr>
<tr class="memdesc:gab0208787b206fe928c36c20ea42a6139"><td class="mdescLeft">&#160;</td><td class="mdescRight">Pixelformat for storing 1-dimensional integer data with 16 bits each.  <a href="#gab0208787b206fe928c36c20ea42a6139">More...</a><br /></td></tr>
<tr class="separator:gab0208787b206fe928c36c20ea42a6139"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaaba615be8b1eed3bf97bf4330f125845"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__video__format.html#gaaba615be8b1eed3bf97bf4330f125845">GAVL_PIXELFORMAT_2D_16</a>&#160;&#160;&#160;<a class="el" href="group__video__format.html#ggaf1e060e38cb2d9e4e776f7eca3ec2d33a27727603e024b74500919f9e3aa29081">GAVL_GRAYA_32</a></td></tr>
<tr class="memdesc:gaaba615be8b1eed3bf97bf4330f125845"><td class="mdescLeft">&#160;</td><td class="mdescRight">Pixelformat for storing 2-dimensional integer data with 16 bits each.  <a href="#gaaba615be8b1eed3bf97bf4330f125845">More...</a><br /></td></tr>
<tr class="separator:gaaba615be8b1eed3bf97bf4330f125845"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga8195086e330e9a2bad124f1fb2b6c780"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__video__format.html#ga8195086e330e9a2bad124f1fb2b6c780">GAVL_PIXELFORMAT_3D_16</a>&#160;&#160;&#160;<a class="el" href="group__video__format.html#ggaf1e060e38cb2d9e4e776f7eca3ec2d33a1a8169a0597e154a27eb24f2415b5286">GAVL_RGB_48</a></td></tr>
<tr class="memdesc:ga8195086e330e9a2bad124f1fb2b6c780"><td class="mdescLeft">&#160;</td><td class="mdescRight">Pixelformat for storing 3-dimensional integer data with 16 bits each.  <a href="#ga8195086e330e9a2bad124f1fb2b6c780">More...</a><br /></td></tr>
<tr class="separator:ga8195086e330e9a2bad124f1fb2b6c780"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae42c8d5ad82972f8c81dba01da22af45"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__video__format.html#gae42c8d5ad82972f8c81dba01da22af45">GAVL_PIXELFORMAT_4D_16</a>&#160;&#160;&#160;<a class="el" href="group__video__format.html#ggaf1e060e38cb2d9e4e776f7eca3ec2d33a84b98bc0e63c1695bc7c4d07d90ca2d7">GAVL_RGBA_64</a></td></tr>
<tr class="memdesc:gae42c8d5ad82972f8c81dba01da22af45"><td class="mdescLeft">&#160;</td><td class="mdescRight">Pixelformat for storing 4-dimensional integer data with 16 bits each.  <a href="#gae42c8d5ad82972f8c81dba01da22af45">More...</a><br /></td></tr>
<tr class="separator:gae42c8d5ad82972f8c81dba01da22af45"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga033fa8cf38ee17c8787c43327369bfa9"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__video__format.html#ga033fa8cf38ee17c8787c43327369bfa9">GAVL_PIXELFORMAT_1D_FLOAT</a>&#160;&#160;&#160;<a class="el" href="group__video__format.html#ggaf1e060e38cb2d9e4e776f7eca3ec2d33acdd40c6cc16c6f44b33e0f57e2e61219">GAVL_GRAY_FLOAT</a></td></tr>
<tr class="memdesc:ga033fa8cf38ee17c8787c43327369bfa9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Pixelformat for storing 1-dimensional FLOAT data.  <a href="#ga033fa8cf38ee17c8787c43327369bfa9">More...</a><br /></td></tr>
<tr class="separator:ga033fa8cf38ee17c8787c43327369bfa9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gafb7ba5af81a0eef371499a37a590b890"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__video__format.html#gafb7ba5af81a0eef371499a37a590b890">GAVL_PIXELFORMAT_2D_FLOAT</a>&#160;&#160;&#160;<a class="el" href="group__video__format.html#ggaf1e060e38cb2d9e4e776f7eca3ec2d33ab1bd641d1567206cfb405293ad8ed797">GAVL_GRAYA_FLOAT</a></td></tr>
<tr class="memdesc:gafb7ba5af81a0eef371499a37a590b890"><td class="mdescLeft">&#160;</td><td class="mdescRight">Pixelformat for storing 2-dimensional FLOAT data.  <a href="#gafb7ba5af81a0eef371499a37a590b890">More...</a><br /></td></tr>
<tr class="separator:gafb7ba5af81a0eef371499a37a590b890"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga9bc6095a4f7bbbbe4b122dbe5665dac4"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__video__format.html#ga9bc6095a4f7bbbbe4b122dbe5665dac4">GAVL_PIXELFORMAT_3D_FLOAT</a>&#160;&#160;&#160;<a class="el" href="group__video__format.html#ggaf1e060e38cb2d9e4e776f7eca3ec2d33a5d444e80ac504e8ce319652f5fcfa50c">GAVL_RGB_FLOAT</a></td></tr>
<tr class="memdesc:ga9bc6095a4f7bbbbe4b122dbe5665dac4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Pixelformat for storing 3-dimensional FLOAT data.  <a href="#ga9bc6095a4f7bbbbe4b122dbe5665dac4">More...</a><br /></td></tr>
<tr class="separator:ga9bc6095a4f7bbbbe4b122dbe5665dac4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga32369e032b8cc4df10b42cfcdf2f846b"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__video__format.html#ga32369e032b8cc4df10b42cfcdf2f846b">GAVL_PIXELFORMAT_4D_FLOAT</a>&#160;&#160;&#160;<a class="el" href="group__video__format.html#ggaf1e060e38cb2d9e4e776f7eca3ec2d33afbfe8d7d8aa64729cf7c2a4a2ce9624e">GAVL_RGBA_FLOAT</a></td></tr>
<tr class="memdesc:ga32369e032b8cc4df10b42cfcdf2f846b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Pixelformat for storing 4-dimensional FLOAT data.  <a href="#ga32369e032b8cc4df10b42cfcdf2f846b">More...</a><br /></td></tr>
<tr class="separator:ga32369e032b8cc4df10b42cfcdf2f846b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaf44add25fc0d3beca7ca05180e5b42f9"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__video__format.html#gaf44add25fc0d3beca7ca05180e5b42f9">gavl_pixelformat_is_gray</a>(fmt)&#160;&#160;&#160;((fmt) &amp; <a class="el" href="group__video__format.html#ga2198acc6ef5344d1a7c1a06703b7b465">GAVL_PIXFMT_GRAY</a>)</td></tr>
<tr class="memdesc:gaf44add25fc0d3beca7ca05180e5b42f9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Check if a pixelformat is grayscale.  <a href="#gaf44add25fc0d3beca7ca05180e5b42f9">More...</a><br /></td></tr>
<tr class="separator:gaf44add25fc0d3beca7ca05180e5b42f9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaa817c92786c87106ffd6e5dc83c9559a"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__video__format.html#gaa817c92786c87106ffd6e5dc83c9559a">gavl_pixelformat_is_rgb</a>(fmt)&#160;&#160;&#160;((fmt) &amp; <a class="el" href="group__video__format.html#gaadfa65377172d2d7780888c1435996b9">GAVL_PIXFMT_RGB</a>)</td></tr>
<tr class="memdesc:gaa817c92786c87106ffd6e5dc83c9559a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Check if a pixelformat is RGB based.  <a href="#gaa817c92786c87106ffd6e5dc83c9559a">More...</a><br /></td></tr>
<tr class="separator:gaa817c92786c87106ffd6e5dc83c9559a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga01053608fe3d999aa9ee5a1c9de92f52"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__video__format.html#ga01053608fe3d999aa9ee5a1c9de92f52">gavl_pixelformat_is_yuv</a>(fmt)&#160;&#160;&#160;((fmt) &amp; <a class="el" href="group__video__format.html#gab68ea697e8c26f1ac9458ab7dfc5ac2d">GAVL_PIXFMT_YUV</a>)</td></tr>
<tr class="memdesc:ga01053608fe3d999aa9ee5a1c9de92f52"><td class="mdescLeft">&#160;</td><td class="mdescRight">Check if a pixelformat is YUV based.  <a href="#ga01053608fe3d999aa9ee5a1c9de92f52">More...</a><br /></td></tr>
<tr class="separator:ga01053608fe3d999aa9ee5a1c9de92f52"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga177fcadc2d94a2a5b44fef3df2551cec"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__video__format.html#ga177fcadc2d94a2a5b44fef3df2551cec">gavl_pixelformat_is_jpeg_scaled</a>(fmt)&#160;&#160;&#160;((fmt) &amp; <a class="el" href="group__video__format.html#gac9f6894e861877932a3d9e22de68f217">GAVL_PIXFMT_YUVJ</a>)</td></tr>
<tr class="memdesc:ga177fcadc2d94a2a5b44fef3df2551cec"><td class="mdescLeft">&#160;</td><td class="mdescRight">Check if a pixelformat is jpeg (full range) scaled.  <a href="#ga177fcadc2d94a2a5b44fef3df2551cec">More...</a><br /></td></tr>
<tr class="separator:ga177fcadc2d94a2a5b44fef3df2551cec"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga05959f9b8dd7b5464b964bdfc50e0bf2"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__video__format.html#ga05959f9b8dd7b5464b964bdfc50e0bf2">gavl_pixelformat_has_alpha</a>(fmt)&#160;&#160;&#160;((fmt) &amp; <a class="el" href="group__video__format.html#ga0a439a4323f4f72a1306b4a45d527c4d">GAVL_PIXFMT_ALPHA</a>)</td></tr>
<tr class="memdesc:ga05959f9b8dd7b5464b964bdfc50e0bf2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Check if a pixelformat has a transparency channel.  <a href="#ga05959f9b8dd7b5464b964bdfc50e0bf2">More...</a><br /></td></tr>
<tr class="separator:ga05959f9b8dd7b5464b964bdfc50e0bf2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaa9d242d428b8e06d245644ab5bb900a4"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__video__format.html#gaa9d242d428b8e06d245644ab5bb900a4">gavl_pixelformat_is_planar</a>(fmt)&#160;&#160;&#160;((fmt) &amp; <a class="el" href="group__video__format.html#ga04b9a9a01c859eef903ad5c929b5a376">GAVL_PIXFMT_PLANAR</a>)</td></tr>
<tr class="memdesc:gaa9d242d428b8e06d245644ab5bb900a4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Check if a pixelformat is planar.  <a href="#gaa9d242d428b8e06d245644ab5bb900a4">More...</a><br /></td></tr>
<tr class="separator:gaa9d242d428b8e06d245644ab5bb900a4"><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:ga0ffc9c60fb71a5fb835e453531fd442c"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structgavl__video__format__s.html">gavl_video_format_s</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__video__format.html#ga0ffc9c60fb71a5fb835e453531fd442c">gavl_video_format_t</a></td></tr>
<tr class="memdesc:ga0ffc9c60fb71a5fb835e453531fd442c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Video format.  <a href="#ga0ffc9c60fb71a5fb835e453531fd442c">More...</a><br /></td></tr>
<tr class="separator:ga0ffc9c60fb71a5fb835e453531fd442c"><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:gaf1e060e38cb2d9e4e776f7eca3ec2d33"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__video__format.html#gaf1e060e38cb2d9e4e776f7eca3ec2d33">gavl_pixelformat_t</a> { <br />
&#160;&#160;<a class="el" href="group__video__format.html#ggaf1e060e38cb2d9e4e776f7eca3ec2d33ac717f2fe9459d34033f9795a652786be">GAVL_PIXELFORMAT_NONE</a> = 0, 
<br />
&#160;&#160;<a class="el" href="group__video__format.html#ggaf1e060e38cb2d9e4e776f7eca3ec2d33a69f10c2c74f64f7bc5c6ddd5022bd1e9">GAVL_GRAY_8</a> = 1 | GAVL_PIXFMT_GRAY, 
<br />
&#160;&#160;<a class="el" href="group__video__format.html#ggaf1e060e38cb2d9e4e776f7eca3ec2d33ae952bf31e83f79f856f6d7c6f068a9ea">GAVL_GRAY_16</a> = 2 | GAVL_PIXFMT_GRAY, 
<br />
&#160;&#160;<a class="el" href="group__video__format.html#ggaf1e060e38cb2d9e4e776f7eca3ec2d33acdd40c6cc16c6f44b33e0f57e2e61219">GAVL_GRAY_FLOAT</a> = 3 | GAVL_PIXFMT_GRAY, 
<br />
&#160;&#160;<a class="el" href="group__video__format.html#ggaf1e060e38cb2d9e4e776f7eca3ec2d33acb8992556bb1905eef5e5fdf856a4a28">GAVL_GRAYA_16</a> = 1 | GAVL_PIXFMT_GRAY | GAVL_PIXFMT_ALPHA, 
<br />
&#160;&#160;<a class="el" href="group__video__format.html#ggaf1e060e38cb2d9e4e776f7eca3ec2d33a27727603e024b74500919f9e3aa29081">GAVL_GRAYA_32</a> = 2 | GAVL_PIXFMT_GRAY | GAVL_PIXFMT_ALPHA, 
<br />
&#160;&#160;<a class="el" href="group__video__format.html#ggaf1e060e38cb2d9e4e776f7eca3ec2d33ab1bd641d1567206cfb405293ad8ed797">GAVL_GRAYA_FLOAT</a> = 3 | GAVL_PIXFMT_GRAY | GAVL_PIXFMT_ALPHA, 
<br />
&#160;&#160;<a class="el" href="group__video__format.html#ggaf1e060e38cb2d9e4e776f7eca3ec2d33af56e3146de38129ab2a77d9c78b68597">GAVL_RGB_15</a> = 1 | GAVL_PIXFMT_RGB, 
<br />
&#160;&#160;<a class="el" href="group__video__format.html#ggaf1e060e38cb2d9e4e776f7eca3ec2d33ab97b65c52e4f22512fc504c318d828f7">GAVL_BGR_15</a> = 2 | GAVL_PIXFMT_RGB, 
<br />
&#160;&#160;<a class="el" href="group__video__format.html#ggaf1e060e38cb2d9e4e776f7eca3ec2d33a3b3ab22b714c2b2dbe8378ba6e665aed">GAVL_RGB_16</a> = 3 | GAVL_PIXFMT_RGB, 
<br />
&#160;&#160;<a class="el" href="group__video__format.html#ggaf1e060e38cb2d9e4e776f7eca3ec2d33aec80b2d18ff47362cc27fcc37d14ad6f">GAVL_BGR_16</a> = 4 | GAVL_PIXFMT_RGB, 
<br />
&#160;&#160;<a class="el" href="group__video__format.html#ggaf1e060e38cb2d9e4e776f7eca3ec2d33a8211bc654500aecfd275674f6221043f">GAVL_RGB_24</a> = 5 | GAVL_PIXFMT_RGB, 
<br />
&#160;&#160;<a class="el" href="group__video__format.html#ggaf1e060e38cb2d9e4e776f7eca3ec2d33a13a997c77aae8666186d41a4b81587fc">GAVL_BGR_24</a> = 6 | GAVL_PIXFMT_RGB, 
<br />
&#160;&#160;<a class="el" href="group__video__format.html#ggaf1e060e38cb2d9e4e776f7eca3ec2d33a1e0326ee4c758091617b60989ca47b0c">GAVL_RGB_32</a> = 7 | GAVL_PIXFMT_RGB, 
<br />
&#160;&#160;<a class="el" href="group__video__format.html#ggaf1e060e38cb2d9e4e776f7eca3ec2d33afed887430acaadf1f5ea53b816dfabd6">GAVL_BGR_32</a> = 8 | GAVL_PIXFMT_RGB, 
<br />
&#160;&#160;<a class="el" href="group__video__format.html#ggaf1e060e38cb2d9e4e776f7eca3ec2d33addf19307ad488270fa01958f81e49805">GAVL_RGBA_32</a> = 9 | GAVL_PIXFMT_RGB | GAVL_PIXFMT_ALPHA, 
<br />
&#160;&#160;<a class="el" href="group__video__format.html#ggaf1e060e38cb2d9e4e776f7eca3ec2d33a1a8169a0597e154a27eb24f2415b5286">GAVL_RGB_48</a> = 10 | GAVL_PIXFMT_RGB, 
<br />
&#160;&#160;<a class="el" href="group__video__format.html#ggaf1e060e38cb2d9e4e776f7eca3ec2d33a84b98bc0e63c1695bc7c4d07d90ca2d7">GAVL_RGBA_64</a> = 11 | GAVL_PIXFMT_RGB | GAVL_PIXFMT_ALPHA, 
<br />
&#160;&#160;<a class="el" href="group__video__format.html#ggaf1e060e38cb2d9e4e776f7eca3ec2d33a5d444e80ac504e8ce319652f5fcfa50c">GAVL_RGB_FLOAT</a> = 12 | GAVL_PIXFMT_RGB, 
<br />
&#160;&#160;<a class="el" href="group__video__format.html#ggaf1e060e38cb2d9e4e776f7eca3ec2d33afbfe8d7d8aa64729cf7c2a4a2ce9624e">GAVL_RGBA_FLOAT</a> = 13 | GAVL_PIXFMT_RGB | GAVL_PIXFMT_ALPHA, 
<br />
&#160;&#160;<a class="el" href="group__video__format.html#ggaf1e060e38cb2d9e4e776f7eca3ec2d33a8d27aaccb4602c8ec8676f9290a5dd5c">GAVL_YUY2</a> = 1 | GAVL_PIXFMT_YUV, 
<br />
&#160;&#160;<a class="el" href="group__video__format.html#ggaf1e060e38cb2d9e4e776f7eca3ec2d33a3d4ff8ef4a77ed775628c32112aa6149">GAVL_UYVY</a> = 2 | GAVL_PIXFMT_YUV, 
<br />
&#160;&#160;<a class="el" href="group__video__format.html#ggaf1e060e38cb2d9e4e776f7eca3ec2d33a38f188147bf813acdbfd186a94b80ded">GAVL_YUVA_32</a> = 3 | GAVL_PIXFMT_YUV | GAVL_PIXFMT_ALPHA, 
<br />
&#160;&#160;<a class="el" href="group__video__format.html#ggaf1e060e38cb2d9e4e776f7eca3ec2d33af07dec1edf32b16bd22f03a3b5eac0f2">GAVL_YUVA_64</a> = 4 | GAVL_PIXFMT_YUV | GAVL_PIXFMT_ALPHA, 
<br />
&#160;&#160;<a class="el" href="group__video__format.html#ggaf1e060e38cb2d9e4e776f7eca3ec2d33adcc84a95ec748160fcb6b7a6a93a84a8">GAVL_YUV_FLOAT</a> = 5 | GAVL_PIXFMT_YUV, 
<br />
&#160;&#160;<a class="el" href="group__video__format.html#ggaf1e060e38cb2d9e4e776f7eca3ec2d33aa29f4a91e89d701ca2e65a080fc3101a">GAVL_YUVA_FLOAT</a> = 6 | GAVL_PIXFMT_YUV | GAVL_PIXFMT_ALPHA, 
<br />
&#160;&#160;<a class="el" href="group__video__format.html#ggaf1e060e38cb2d9e4e776f7eca3ec2d33a20f380c90a1540717452e3a793719b59">GAVL_YUV_420_P</a> = 1 | GAVL_PIXFMT_PLANAR | GAVL_PIXFMT_YUV, 
<br />
&#160;&#160;<a class="el" href="group__video__format.html#ggaf1e060e38cb2d9e4e776f7eca3ec2d33a104f0457d36f00af8a42fb8ea44a04ff">GAVL_YUV_422_P</a> = 2 | GAVL_PIXFMT_PLANAR | GAVL_PIXFMT_YUV, 
<br />
&#160;&#160;<a class="el" href="group__video__format.html#ggaf1e060e38cb2d9e4e776f7eca3ec2d33a53d86fa6e94bb857879932823cd1b299">GAVL_YUV_444_P</a> = 3 | GAVL_PIXFMT_PLANAR | GAVL_PIXFMT_YUV, 
<br />
&#160;&#160;<a class="el" href="group__video__format.html#ggaf1e060e38cb2d9e4e776f7eca3ec2d33acbc562d3d3dabe924be4cf0fda42608b">GAVL_YUV_411_P</a> = 4 | GAVL_PIXFMT_PLANAR | GAVL_PIXFMT_YUV, 
<br />
&#160;&#160;<a class="el" href="group__video__format.html#ggaf1e060e38cb2d9e4e776f7eca3ec2d33a19bb2c8eda0bfdda876921e0de0ae630">GAVL_YUV_410_P</a> = 5 | GAVL_PIXFMT_PLANAR | GAVL_PIXFMT_YUV, 
<br />
&#160;&#160;<a class="el" href="group__video__format.html#ggaf1e060e38cb2d9e4e776f7eca3ec2d33a0e46c4cee26289eee8cc1feef2bcb544">GAVL_YUVJ_420_P</a> = 6 | GAVL_PIXFMT_PLANAR | GAVL_PIXFMT_YUV | GAVL_PIXFMT_YUVJ, 
<br />
&#160;&#160;<a class="el" href="group__video__format.html#ggaf1e060e38cb2d9e4e776f7eca3ec2d33a6532ffb3fbf64ad20c866cbd9c794bad">GAVL_YUVJ_422_P</a> = 7 | GAVL_PIXFMT_PLANAR | GAVL_PIXFMT_YUV | GAVL_PIXFMT_YUVJ, 
<br />
&#160;&#160;<a class="el" href="group__video__format.html#ggaf1e060e38cb2d9e4e776f7eca3ec2d33aa6bb415b453cdfb92c0b6b9cbb745f9a">GAVL_YUVJ_444_P</a> = 8 | GAVL_PIXFMT_PLANAR | GAVL_PIXFMT_YUV | GAVL_PIXFMT_YUVJ, 
<br />
&#160;&#160;<a class="el" href="group__video__format.html#ggaf1e060e38cb2d9e4e776f7eca3ec2d33abed85774258b87ba556036a39b67a98a">GAVL_YUV_444_P_16</a> = 9 | GAVL_PIXFMT_PLANAR | GAVL_PIXFMT_YUV, 
<br />
&#160;&#160;<a class="el" href="group__video__format.html#ggaf1e060e38cb2d9e4e776f7eca3ec2d33a41e6c2b3847dd8a9f18cc9af77064d04">GAVL_YUV_422_P_16</a> = 10 | GAVL_PIXFMT_PLANAR | GAVL_PIXFMT_YUV
<br />
 }<tr class="memdesc:gaf1e060e38cb2d9e4e776f7eca3ec2d33"><td class="mdescLeft">&#160;</td><td class="mdescRight">Pixelformat definition.  <a href="group__video__format.html#gaf1e060e38cb2d9e4e776f7eca3ec2d33">More...</a><br /></td></tr>
</td></tr>
<tr class="separator:gaf1e060e38cb2d9e4e776f7eca3ec2d33"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gac25e4e4e1a7bdc0160bf0e1d6910b87c"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__video__format.html#gac25e4e4e1a7bdc0160bf0e1d6910b87c">gavl_color_channel_t</a> { <br />
&#160;&#160;<a class="el" href="group__video__format.html#ggac25e4e4e1a7bdc0160bf0e1d6910b87ca3c417d9a66b30aea8a7e2d70d4030237">GAVL_CCH_RED</a>, 
<br />
&#160;&#160;<a class="el" href="group__video__format.html#ggac25e4e4e1a7bdc0160bf0e1d6910b87ca935ecdaabed4463d03a233188c279013">GAVL_CCH_GREEN</a>, 
<br />
&#160;&#160;<a class="el" href="group__video__format.html#ggac25e4e4e1a7bdc0160bf0e1d6910b87caf34d3d1d6505a7753f2d02b334062cd9">GAVL_CCH_BLUE</a>, 
<br />
&#160;&#160;<a class="el" href="group__video__format.html#ggac25e4e4e1a7bdc0160bf0e1d6910b87ca2c1b2d1518c2f530407b99f7f829f724">GAVL_CCH_Y</a>, 
<br />
&#160;&#160;<a class="el" href="group__video__format.html#ggac25e4e4e1a7bdc0160bf0e1d6910b87cacd98f6faa2dedd0c524a67dfe63c19f7">GAVL_CCH_CB</a>, 
<br />
&#160;&#160;<a class="el" href="group__video__format.html#ggac25e4e4e1a7bdc0160bf0e1d6910b87ca688e2019c853dc04f1fc246c3d1f4bde">GAVL_CCH_CR</a>, 
<br />
&#160;&#160;<a class="el" href="group__video__format.html#ggac25e4e4e1a7bdc0160bf0e1d6910b87ca9e6559f4221ae2f66b499132cc32c6ca">GAVL_CCH_ALPHA</a>
<br />
 }<tr class="memdesc:gac25e4e4e1a7bdc0160bf0e1d6910b87c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Color channel definitions.  <a href="group__video__format.html#gac25e4e4e1a7bdc0160bf0e1d6910b87c">More...</a><br /></td></tr>
</td></tr>
<tr class="separator:gac25e4e4e1a7bdc0160bf0e1d6910b87c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga1e5257edc9b29af8eba05825db5a0906"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__video__format.html#ga1e5257edc9b29af8eba05825db5a0906">gavl_chroma_placement_t</a> { <br />
&#160;&#160;<a class="el" href="group__video__format.html#gga1e5257edc9b29af8eba05825db5a0906ae18f2501f64f2d4ace44fc84d7c719f7">GAVL_CHROMA_PLACEMENT_DEFAULT</a> = 0, 
<br />
&#160;&#160;<a class="el" href="group__video__format.html#gga1e5257edc9b29af8eba05825db5a0906ad5180e13cd750c7b3618a785b4a87cf6">GAVL_CHROMA_PLACEMENT_MPEG2</a>, 
<br />
&#160;&#160;<a class="el" href="group__video__format.html#gga1e5257edc9b29af8eba05825db5a0906a845aeec284544ec190abf0eeaac0e0be">GAVL_CHROMA_PLACEMENT_DVPAL</a>
<br />
 }<tr class="memdesc:ga1e5257edc9b29af8eba05825db5a0906"><td class="mdescLeft">&#160;</td><td class="mdescRight">Chroma placement.  <a href="group__video__format.html#ga1e5257edc9b29af8eba05825db5a0906">More...</a><br /></td></tr>
</td></tr>
<tr class="separator:ga1e5257edc9b29af8eba05825db5a0906"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga27bc061c95b4416a2ddd2cae2f8ee811"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__video__format.html#ga27bc061c95b4416a2ddd2cae2f8ee811">gavl_framerate_mode_t</a> { <br />
&#160;&#160;<a class="el" href="group__video__format.html#gga27bc061c95b4416a2ddd2cae2f8ee811a300414b65b11483cf8838b38481e8ae9">GAVL_FRAMERATE_UNKNOWN</a> = -1, 
<br />
&#160;&#160;<a class="el" href="group__video__format.html#gga27bc061c95b4416a2ddd2cae2f8ee811a3b8019ccde52a3dc42b337bb21addad7">GAVL_FRAMERATE_CONSTANT</a> = 0, 
<br />
&#160;&#160;<a class="el" href="group__video__format.html#gga27bc061c95b4416a2ddd2cae2f8ee811a72e7a1eec40615145fbc3ef25bdd026e">GAVL_FRAMERATE_VARIABLE</a> = 1, 
<br />
&#160;&#160;<a class="el" href="group__video__format.html#gga27bc061c95b4416a2ddd2cae2f8ee811a45ddb770b81289188a660dee7d742fb0">GAVL_FRAMERATE_STILL</a> = 2
<br />
 }<tr class="memdesc:ga27bc061c95b4416a2ddd2cae2f8ee811"><td class="mdescLeft">&#160;</td><td class="mdescRight">Framerate mode.  <a href="group__video__format.html#ga27bc061c95b4416a2ddd2cae2f8ee811">More...</a><br /></td></tr>
</td></tr>
<tr class="separator:ga27bc061c95b4416a2ddd2cae2f8ee811"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaabe1b351049ab5c62ff328c4e4258fae"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__video__format.html#gaabe1b351049ab5c62ff328c4e4258fae">gavl_interlace_mode_t</a> { <br />
&#160;&#160;<a class="el" href="group__video__format.html#ggaabe1b351049ab5c62ff328c4e4258faeac5b2f83ecbbc20d76138c5dc0f22244c">GAVL_INTERLACE_UNKNOWN</a> = -1, 
<br />
&#160;&#160;<a class="el" href="group__video__format.html#ggaabe1b351049ab5c62ff328c4e4258faea75824d34edcb89aa3b6862ea70dc1f97">GAVL_INTERLACE_NONE</a> = 0, 
<br />
&#160;&#160;<a class="el" href="group__video__format.html#ggaabe1b351049ab5c62ff328c4e4258faeafe84e0cef3df2b894eca9474718a8b99">GAVL_INTERLACE_TOP_FIRST</a> = 1, 
<br />
&#160;&#160;<a class="el" href="group__video__format.html#ggaabe1b351049ab5c62ff328c4e4258faeaac14ef96211f39740c21cfcf6a281483">GAVL_INTERLACE_BOTTOM_FIRST</a> = 2, 
<br />
&#160;&#160;<a class="el" href="group__video__format.html#ggaabe1b351049ab5c62ff328c4e4258faeacdfc8ca442527b5379a5623bbfb07b50">GAVL_INTERLACE_MIXED</a> = 3, 
<br />
&#160;&#160;<a class="el" href="group__video__format.html#ggaabe1b351049ab5c62ff328c4e4258faea73995c8c62d987619469f720980336cf">GAVL_INTERLACE_MIXED_TOP</a> = 4, 
<br />
&#160;&#160;<a class="el" href="group__video__format.html#ggaabe1b351049ab5c62ff328c4e4258faea0164fdbfe0f0260313d5e27804748cc1">GAVL_INTERLACE_MIXED_BOTTOM</a> = 5
<br />
 }<tr class="memdesc:gaabe1b351049ab5c62ff328c4e4258fae"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interlace mode.  <a href="group__video__format.html#gaabe1b351049ab5c62ff328c4e4258fae">More...</a><br /></td></tr>
</td></tr>
<tr class="separator:gaabe1b351049ab5c62ff328c4e4258fae"><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:gabc4c5fc3243dc698d12bcb7c3d514781"><td class="memItemLeft" align="right" valign="top">GAVL_PUBLIC int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__video__format.html#gabc4c5fc3243dc698d12bcb7c3d514781">gavl_pixelformat_num_planes</a> (<a class="el" href="group__video__format.html#gaf1e060e38cb2d9e4e776f7eca3ec2d33">gavl_pixelformat_t</a> pixelformat)</td></tr>
<tr class="memdesc:gabc4c5fc3243dc698d12bcb7c3d514781"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the number of planes.  <a href="#gabc4c5fc3243dc698d12bcb7c3d514781">More...</a><br /></td></tr>
<tr class="separator:gabc4c5fc3243dc698d12bcb7c3d514781"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gafaed26a87cb8acf6c854e99a29f3b9c1"><td class="memItemLeft" align="right" valign="top">GAVL_PUBLIC void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__video__format.html#gafaed26a87cb8acf6c854e99a29f3b9c1">gavl_pixelformat_chroma_sub</a> (<a class="el" href="group__video__format.html#gaf1e060e38cb2d9e4e776f7eca3ec2d33">gavl_pixelformat_t</a> pixelformat, int *sub_h, int *sub_v)</td></tr>
<tr class="memdesc:gafaed26a87cb8acf6c854e99a29f3b9c1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the horizontal and vertical subsampling factors.  <a href="#gafaed26a87cb8acf6c854e99a29f3b9c1">More...</a><br /></td></tr>
<tr class="separator:gafaed26a87cb8acf6c854e99a29f3b9c1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gade6e5f14ab00955ec4b7dc02875d3448"><td class="memItemLeft" align="right" valign="top">GAVL_PUBLIC int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__video__format.html#gade6e5f14ab00955ec4b7dc02875d3448">gavl_pixelformat_bytes_per_component</a> (<a class="el" href="group__video__format.html#gaf1e060e38cb2d9e4e776f7eca3ec2d33">gavl_pixelformat_t</a> pixelformat)</td></tr>
<tr class="memdesc:gade6e5f14ab00955ec4b7dc02875d3448"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get bytes per component for planar formats.  <a href="#gade6e5f14ab00955ec4b7dc02875d3448">More...</a><br /></td></tr>
<tr class="separator:gade6e5f14ab00955ec4b7dc02875d3448"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga1abe2490a266feab4a7a3819f7bb0884"><td class="memItemLeft" align="right" valign="top">GAVL_PUBLIC int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__video__format.html#ga1abe2490a266feab4a7a3819f7bb0884">gavl_pixelformat_bytes_per_pixel</a> (<a class="el" href="group__video__format.html#gaf1e060e38cb2d9e4e776f7eca3ec2d33">gavl_pixelformat_t</a> pixelformat)</td></tr>
<tr class="memdesc:ga1abe2490a266feab4a7a3819f7bb0884"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get bytes per pixel for packed formats.  <a href="#ga1abe2490a266feab4a7a3819f7bb0884">More...</a><br /></td></tr>
<tr class="separator:ga1abe2490a266feab4a7a3819f7bb0884"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gab36e3a7a3110eaa9d768344ed7af231c"><td class="memItemLeft" align="right" valign="top">GAVL_PUBLIC int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__video__format.html#gab36e3a7a3110eaa9d768344ed7af231c">gavl_pixelformat_bits_per_pixel</a> (<a class="el" href="group__video__format.html#gaf1e060e38cb2d9e4e776f7eca3ec2d33">gavl_pixelformat_t</a> pixelformat)</td></tr>
<tr class="memdesc:gab36e3a7a3110eaa9d768344ed7af231c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the effective number of bits for one pixel.  <a href="#gab36e3a7a3110eaa9d768344ed7af231c">More...</a><br /></td></tr>
<tr class="separator:gab36e3a7a3110eaa9d768344ed7af231c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga112a800cc9c95e088f7fe499e165f907"><td class="memItemLeft" align="right" valign="top">GAVL_PUBLIC int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__video__format.html#ga112a800cc9c95e088f7fe499e165f907">gavl_pixelformat_conversion_penalty</a> (<a class="el" href="group__video__format.html#gaf1e060e38cb2d9e4e776f7eca3ec2d33">gavl_pixelformat_t</a> src, <a class="el" href="group__video__format.html#gaf1e060e38cb2d9e4e776f7eca3ec2d33">gavl_pixelformat_t</a> dst)</td></tr>
<tr class="memdesc:ga112a800cc9c95e088f7fe499e165f907"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the conversion penalty for pixelformat conversions.  <a href="#ga112a800cc9c95e088f7fe499e165f907">More...</a><br /></td></tr>
<tr class="separator:ga112a800cc9c95e088f7fe499e165f907"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gad57e1813e11be4c4aee7f542e1d638eb"><td class="memItemLeft" align="right" valign="top">GAVL_PUBLIC <a class="el" href="group__video__format.html#gaf1e060e38cb2d9e4e776f7eca3ec2d33">gavl_pixelformat_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__video__format.html#gad57e1813e11be4c4aee7f542e1d638eb">gavl_pixelformat_get_best</a> (<a class="el" href="group__video__format.html#gaf1e060e38cb2d9e4e776f7eca3ec2d33">gavl_pixelformat_t</a> src, const <a class="el" href="group__video__format.html#gaf1e060e38cb2d9e4e776f7eca3ec2d33">gavl_pixelformat_t</a> *dst_supported, int *penalty)</td></tr>
<tr class="memdesc:gad57e1813e11be4c4aee7f542e1d638eb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the best destination format for a given source format.  <a href="#gad57e1813e11be4c4aee7f542e1d638eb">More...</a><br /></td></tr>
<tr class="separator:gad57e1813e11be4c4aee7f542e1d638eb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga7560314c4a1e12ad925c3bdf062e0b2e"><td class="memItemLeft" align="right" valign="top">GAVL_PUBLIC const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__video__format.html#ga7560314c4a1e12ad925c3bdf062e0b2e">gavl_pixelformat_to_string</a> (<a class="el" href="group__video__format.html#gaf1e060e38cb2d9e4e776f7eca3ec2d33">gavl_pixelformat_t</a> pixelformat)</td></tr>
<tr class="memdesc:ga7560314c4a1e12ad925c3bdf062e0b2e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Translate a pixelformat into a human readable string.  <a href="#ga7560314c4a1e12ad925c3bdf062e0b2e">More...</a><br /></td></tr>
<tr class="separator:ga7560314c4a1e12ad925c3bdf062e0b2e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaabb3686c3275fe97f668804fb5a7e153"><td class="memItemLeft" align="right" valign="top">GAVL_PUBLIC <a class="el" href="group__video__format.html#gaf1e060e38cb2d9e4e776f7eca3ec2d33">gavl_pixelformat_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__video__format.html#gaabb3686c3275fe97f668804fb5a7e153">gavl_string_to_pixelformat</a> (const char *name)</td></tr>
<tr class="memdesc:gaabb3686c3275fe97f668804fb5a7e153"><td class="mdescLeft">&#160;</td><td class="mdescRight">Translate a pixelformat name into a pixelformat.  <a href="#gaabb3686c3275fe97f668804fb5a7e153">More...</a><br /></td></tr>
<tr class="separator:gaabb3686c3275fe97f668804fb5a7e153"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gac4ef623576c6c429d4e9cc0789ef0549"><td class="memItemLeft" align="right" valign="top">GAVL_PUBLIC int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__video__format.html#gac4ef623576c6c429d4e9cc0789ef0549">gavl_num_pixelformats</a> ()</td></tr>
<tr class="memdesc:gac4ef623576c6c429d4e9cc0789ef0549"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get total number of supported pixelformats.  <a href="#gac4ef623576c6c429d4e9cc0789ef0549">More...</a><br /></td></tr>
<tr class="separator:gac4ef623576c6c429d4e9cc0789ef0549"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga66c7d0ad216425adf4f27a65b3e8e8be"><td class="memItemLeft" align="right" valign="top">GAVL_PUBLIC <a class="el" href="group__video__format.html#gaf1e060e38cb2d9e4e776f7eca3ec2d33">gavl_pixelformat_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__video__format.html#ga66c7d0ad216425adf4f27a65b3e8e8be">gavl_get_pixelformat</a> (int index)</td></tr>
<tr class="memdesc:ga66c7d0ad216425adf4f27a65b3e8e8be"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the pixelformat from index.  <a href="#ga66c7d0ad216425adf4f27a65b3e8e8be">More...</a><br /></td></tr>
<tr class="separator:ga66c7d0ad216425adf4f27a65b3e8e8be"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga2258430d4307e686a3dc77e52deaf079"><td class="memItemLeft" align="right" valign="top">GAVL_PUBLIC const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__video__format.html#ga2258430d4307e686a3dc77e52deaf079">gavl_chroma_placement_to_string</a> (<a class="el" href="group__video__format.html#ga1e5257edc9b29af8eba05825db5a0906">gavl_chroma_placement_t</a> mode)</td></tr>
<tr class="memdesc:ga2258430d4307e686a3dc77e52deaf079"><td class="mdescLeft">&#160;</td><td class="mdescRight">Translate a chroma placement into a human readable string.  <a href="#ga2258430d4307e686a3dc77e52deaf079">More...</a><br /></td></tr>
<tr class="separator:ga2258430d4307e686a3dc77e52deaf079"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga0e05fb91c7798060d796ff65c5f129d9"><td class="memItemLeft" align="right" valign="top">GAVL_PUBLIC const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__video__format.html#ga0e05fb91c7798060d796ff65c5f129d9">gavl_framerate_mode_to_string</a> (<a class="el" href="group__video__format.html#ga27bc061c95b4416a2ddd2cae2f8ee811">gavl_framerate_mode_t</a> mode)</td></tr>
<tr class="memdesc:ga0e05fb91c7798060d796ff65c5f129d9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Translate a framerate mode into a human readable string.  <a href="#ga0e05fb91c7798060d796ff65c5f129d9">More...</a><br /></td></tr>
<tr class="separator:ga0e05fb91c7798060d796ff65c5f129d9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga7baa4e63f5f4699ae11d659fa5f806fe"><td class="memItemLeft" align="right" valign="top">GAVL_PUBLIC const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__video__format.html#ga7baa4e63f5f4699ae11d659fa5f806fe">gavl_interlace_mode_to_string</a> (<a class="el" href="group__video__format.html#gaabe1b351049ab5c62ff328c4e4258fae">gavl_interlace_mode_t</a> mode)</td></tr>
<tr class="memdesc:ga7baa4e63f5f4699ae11d659fa5f806fe"><td class="mdescLeft">&#160;</td><td class="mdescRight">Translate an interlace mode into a human readable string.  <a href="#ga7baa4e63f5f4699ae11d659fa5f806fe">More...</a><br /></td></tr>
<tr class="separator:ga7baa4e63f5f4699ae11d659fa5f806fe"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gad2d818069b8b8c1637df0cc1493ce535"><td class="memItemLeft" align="right" valign="top">GAVL_PUBLIC void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__video__format.html#gad2d818069b8b8c1637df0cc1493ce535">gavl_video_format_copy</a> (<a class="el" href="group__video__format.html#ga0ffc9c60fb71a5fb835e453531fd442c">gavl_video_format_t</a> *dst, const <a class="el" href="group__video__format.html#ga0ffc9c60fb71a5fb835e453531fd442c">gavl_video_format_t</a> *src)</td></tr>
<tr class="memdesc:gad2d818069b8b8c1637df0cc1493ce535"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy one video format to another.  <a href="#gad2d818069b8b8c1637df0cc1493ce535">More...</a><br /></td></tr>
<tr class="separator:gad2d818069b8b8c1637df0cc1493ce535"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga35a05c81b67f1f54653c6b1a59da7e44"><td class="memItemLeft" align="right" valign="top">GAVL_PUBLIC int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__video__format.html#ga35a05c81b67f1f54653c6b1a59da7e44">gavl_video_formats_equal</a> (const <a class="el" href="group__video__format.html#ga0ffc9c60fb71a5fb835e453531fd442c">gavl_video_format_t</a> *format_1, const <a class="el" href="group__video__format.html#ga0ffc9c60fb71a5fb835e453531fd442c">gavl_video_format_t</a> *format_2)</td></tr>
<tr class="memdesc:ga35a05c81b67f1f54653c6b1a59da7e44"><td class="mdescLeft">&#160;</td><td class="mdescRight">Compare 2 video formats.  <a href="#ga35a05c81b67f1f54653c6b1a59da7e44">More...</a><br /></td></tr>
<tr class="separator:ga35a05c81b67f1f54653c6b1a59da7e44"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga3c0440c17e56f3e4487628291ce65faa"><td class="memItemLeft" align="right" valign="top">GAVL_PUBLIC void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__video__format.html#ga3c0440c17e56f3e4487628291ce65faa">gavl_video_format_get_chroma_offset</a> (const <a class="el" href="group__video__format.html#ga0ffc9c60fb71a5fb835e453531fd442c">gavl_video_format_t</a> *format, int field, int plane, float *off_x, float *off_y)</td></tr>
<tr class="memdesc:ga3c0440c17e56f3e4487628291ce65faa"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the chroma offsets relative to the luma samples.  <a href="#ga3c0440c17e56f3e4487628291ce65faa">More...</a><br /></td></tr>
<tr class="separator:ga3c0440c17e56f3e4487628291ce65faa"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gacb0b62690147675f68a4117fb404a6a6"><td class="memItemLeft" align="right" valign="top">GAVL_PUBLIC void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__video__format.html#gacb0b62690147675f68a4117fb404a6a6">gavl_video_format_fit_to_source</a> (<a class="el" href="group__video__format.html#ga0ffc9c60fb71a5fb835e453531fd442c">gavl_video_format_t</a> *dst, const <a class="el" href="group__video__format.html#ga0ffc9c60fb71a5fb835e453531fd442c">gavl_video_format_t</a> *src)</td></tr>
<tr class="memdesc:gacb0b62690147675f68a4117fb404a6a6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the image size of a destination format from a source format.  <a href="#gacb0b62690147675f68a4117fb404a6a6">More...</a><br /></td></tr>
<tr class="separator:gacb0b62690147675f68a4117fb404a6a6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga666e64a92f431f7e65a68e5ca281df49"><td class="memItemLeft" align="right" valign="top">GAVL_PUBLIC int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__video__format.html#ga666e64a92f431f7e65a68e5ca281df49">gavl_video_format_get_image_size</a> (const <a class="el" href="group__video__format.html#ga0ffc9c60fb71a5fb835e453531fd442c">gavl_video_format_t</a> *format)</td></tr>
<tr class="memdesc:ga666e64a92f431f7e65a68e5ca281df49"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the unpadded image size.  <a href="#ga666e64a92f431f7e65a68e5ca281df49">More...</a><br /></td></tr>
<tr class="separator:ga666e64a92f431f7e65a68e5ca281df49"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga21bc1aa42164f02929b8f51ba1d8195a"><td class="memItemLeft" align="right" valign="top">GAVL_PUBLIC int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__video__format.html#ga21bc1aa42164f02929b8f51ba1d8195a">gavl_get_color_channel_format</a> (const <a class="el" href="group__video__format.html#ga0ffc9c60fb71a5fb835e453531fd442c">gavl_video_format_t</a> *frame_format, <a class="el" href="group__video__format.html#ga0ffc9c60fb71a5fb835e453531fd442c">gavl_video_format_t</a> *channel_format, <a class="el" href="group__video__format.html#gac25e4e4e1a7bdc0160bf0e1d6910b87c">gavl_color_channel_t</a> ch)</td></tr>
<tr class="memdesc:ga21bc1aa42164f02929b8f51ba1d8195a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the video format for extracting/merging one channel.  <a href="#ga21bc1aa42164f02929b8f51ba1d8195a">More...</a><br /></td></tr>
<tr class="separator:ga21bc1aa42164f02929b8f51ba1d8195a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaeac607499912e661c398eaec2e847334"><td class="memItemLeft" align="right" valign="top">GAVL_PUBLIC void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__video__format.html#gaeac607499912e661c398eaec2e847334">gavl_get_field_format</a> (const <a class="el" href="group__video__format.html#ga0ffc9c60fb71a5fb835e453531fd442c">gavl_video_format_t</a> *frame_format, <a class="el" href="group__video__format.html#ga0ffc9c60fb71a5fb835e453531fd442c">gavl_video_format_t</a> *field_format, int field)</td></tr>
<tr class="memdesc:gaeac607499912e661c398eaec2e847334"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the video format of one field.  <a href="#gaeac607499912e661c398eaec2e847334">More...</a><br /></td></tr>
<tr class="separator:gaeac607499912e661c398eaec2e847334"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga50c31762b5ae3b4fbae13dc4605584bc"><td class="memItemLeft" align="right" valign="top">GAVL_PUBLIC void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__video__format.html#ga50c31762b5ae3b4fbae13dc4605584bc">gavl_video_format_dump</a> (const <a class="el" href="group__video__format.html#ga0ffc9c60fb71a5fb835e453531fd442c">gavl_video_format_t</a> *format)</td></tr>
<tr class="memdesc:ga50c31762b5ae3b4fbae13dc4605584bc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Dump a video format to stderr.  <a href="#ga50c31762b5ae3b4fbae13dc4605584bc">More...</a><br /></td></tr>
<tr class="separator:ga50c31762b5ae3b4fbae13dc4605584bc"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<p>Definitions for several variations of video data. </p>
<h2 class="groupheader">Macro Definition Documentation</h2>
<a id="ga04b9a9a01c859eef903ad5c929b5a376"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga04b9a9a01c859eef903ad5c929b5a376">&sect;&nbsp;</a></span>GAVL_PIXFMT_PLANAR</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define GAVL_PIXFMT_PLANAR&#160;&#160;&#160;(1&lt;&lt;8)</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Flag for planar pixelformats </p>

</div>
</div>
<a id="gaadfa65377172d2d7780888c1435996b9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gaadfa65377172d2d7780888c1435996b9">&sect;&nbsp;</a></span>GAVL_PIXFMT_RGB</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define GAVL_PIXFMT_RGB&#160;&#160;&#160;(1&lt;&lt;9)</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Flag for rgb pixelformats </p>

</div>
</div>
<a id="gab68ea697e8c26f1ac9458ab7dfc5ac2d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gab68ea697e8c26f1ac9458ab7dfc5ac2d">&sect;&nbsp;</a></span>GAVL_PIXFMT_YUV</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define GAVL_PIXFMT_YUV&#160;&#160;&#160;(1&lt;&lt;10)</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Flag for yuv pixelformats </p>

</div>
</div>
<a id="gac9f6894e861877932a3d9e22de68f217"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gac9f6894e861877932a3d9e22de68f217">&sect;&nbsp;</a></span>GAVL_PIXFMT_YUVJ</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define GAVL_PIXFMT_YUVJ&#160;&#160;&#160;(1&lt;&lt;11)</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Flag for yuvj pixelformats </p>

</div>
</div>
<a id="ga0a439a4323f4f72a1306b4a45d527c4d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga0a439a4323f4f72a1306b4a45d527c4d">&sect;&nbsp;</a></span>GAVL_PIXFMT_ALPHA</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define GAVL_PIXFMT_ALPHA&#160;&#160;&#160;(1&lt;&lt;12)</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Alpha flag </p>

</div>
</div>
<a id="ga2198acc6ef5344d1a7c1a06703b7b465"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga2198acc6ef5344d1a7c1a06703b7b465">&sect;&nbsp;</a></span>GAVL_PIXFMT_GRAY</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define GAVL_PIXFMT_GRAY&#160;&#160;&#160;(1&lt;&lt;13)</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Flag for grayscale pixelformats </p>

</div>
</div>
<a id="gab202d0ec7abde22239f83d1b6cd6ebcf"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gab202d0ec7abde22239f83d1b6cd6ebcf">&sect;&nbsp;</a></span>GAVL_PIXELFORMAT_1D_8</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define GAVL_PIXELFORMAT_1D_8&#160;&#160;&#160;<a class="el" href="group__video__format.html#ggaf1e060e38cb2d9e4e776f7eca3ec2d33a69f10c2c74f64f7bc5c6ddd5022bd1e9">GAVL_GRAY_8</a></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Pixelformat for storing 1-dimensional integer data with 8 bits each. </p>

</div>
</div>
<a id="gaa4282924f2ee78d7315f506eb9fb9f6f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gaa4282924f2ee78d7315f506eb9fb9f6f">&sect;&nbsp;</a></span>GAVL_PIXELFORMAT_2D_8</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define GAVL_PIXELFORMAT_2D_8&#160;&#160;&#160;<a class="el" href="group__video__format.html#ggaf1e060e38cb2d9e4e776f7eca3ec2d33acb8992556bb1905eef5e5fdf856a4a28">GAVL_GRAYA_16</a></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Pixelformat for storing 2-dimensional integer data with 8 bits each. </p>

</div>
</div>
<a id="ga2a58de9595570e3559119d781b084f11"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga2a58de9595570e3559119d781b084f11">&sect;&nbsp;</a></span>GAVL_PIXELFORMAT_3D_8</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define GAVL_PIXELFORMAT_3D_8&#160;&#160;&#160;<a class="el" href="group__video__format.html#ggaf1e060e38cb2d9e4e776f7eca3ec2d33a8211bc654500aecfd275674f6221043f">GAVL_RGB_24</a></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Pixelformat for storing 3-dimensional integer data with 8 bits each. </p>

</div>
</div>
<a id="ga93a7617611792823006645de5cf5260e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga93a7617611792823006645de5cf5260e">&sect;&nbsp;</a></span>GAVL_PIXELFORMAT_4D_8</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define GAVL_PIXELFORMAT_4D_8&#160;&#160;&#160;<a class="el" href="group__video__format.html#ggaf1e060e38cb2d9e4e776f7eca3ec2d33addf19307ad488270fa01958f81e49805">GAVL_RGBA_32</a></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Pixelformat for storing 4-dimensional integer data with 8 bits each. </p>

</div>
</div>
<a id="gab0208787b206fe928c36c20ea42a6139"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gab0208787b206fe928c36c20ea42a6139">&sect;&nbsp;</a></span>GAVL_PIXELFORMAT_1D_16</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define GAVL_PIXELFORMAT_1D_16&#160;&#160;&#160;<a class="el" href="group__video__format.html#ggaf1e060e38cb2d9e4e776f7eca3ec2d33ae952bf31e83f79f856f6d7c6f068a9ea">GAVL_GRAY_16</a></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Pixelformat for storing 1-dimensional integer data with 16 bits each. </p>

</div>
</div>
<a id="gaaba615be8b1eed3bf97bf4330f125845"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gaaba615be8b1eed3bf97bf4330f125845">&sect;&nbsp;</a></span>GAVL_PIXELFORMAT_2D_16</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define GAVL_PIXELFORMAT_2D_16&#160;&#160;&#160;<a class="el" href="group__video__format.html#ggaf1e060e38cb2d9e4e776f7eca3ec2d33a27727603e024b74500919f9e3aa29081">GAVL_GRAYA_32</a></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Pixelformat for storing 2-dimensional integer data with 16 bits each. </p>

</div>
</div>
<a id="ga8195086e330e9a2bad124f1fb2b6c780"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga8195086e330e9a2bad124f1fb2b6c780">&sect;&nbsp;</a></span>GAVL_PIXELFORMAT_3D_16</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define GAVL_PIXELFORMAT_3D_16&#160;&#160;&#160;<a class="el" href="group__video__format.html#ggaf1e060e38cb2d9e4e776f7eca3ec2d33a1a8169a0597e154a27eb24f2415b5286">GAVL_RGB_48</a></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Pixelformat for storing 3-dimensional integer data with 16 bits each. </p>

</div>
</div>
<a id="gae42c8d5ad82972f8c81dba01da22af45"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gae42c8d5ad82972f8c81dba01da22af45">&sect;&nbsp;</a></span>GAVL_PIXELFORMAT_4D_16</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define GAVL_PIXELFORMAT_4D_16&#160;&#160;&#160;<a class="el" href="group__video__format.html#ggaf1e060e38cb2d9e4e776f7eca3ec2d33a84b98bc0e63c1695bc7c4d07d90ca2d7">GAVL_RGBA_64</a></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Pixelformat for storing 4-dimensional integer data with 16 bits each. </p>

</div>
</div>
<a id="ga033fa8cf38ee17c8787c43327369bfa9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga033fa8cf38ee17c8787c43327369bfa9">&sect;&nbsp;</a></span>GAVL_PIXELFORMAT_1D_FLOAT</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define GAVL_PIXELFORMAT_1D_FLOAT&#160;&#160;&#160;<a class="el" href="group__video__format.html#ggaf1e060e38cb2d9e4e776f7eca3ec2d33acdd40c6cc16c6f44b33e0f57e2e61219">GAVL_GRAY_FLOAT</a></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Pixelformat for storing 1-dimensional FLOAT data. </p>

</div>
</div>
<a id="gafb7ba5af81a0eef371499a37a590b890"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gafb7ba5af81a0eef371499a37a590b890">&sect;&nbsp;</a></span>GAVL_PIXELFORMAT_2D_FLOAT</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define GAVL_PIXELFORMAT_2D_FLOAT&#160;&#160;&#160;<a class="el" href="group__video__format.html#ggaf1e060e38cb2d9e4e776f7eca3ec2d33ab1bd641d1567206cfb405293ad8ed797">GAVL_GRAYA_FLOAT</a></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Pixelformat for storing 2-dimensional FLOAT data. </p>

</div>
</div>
<a id="ga9bc6095a4f7bbbbe4b122dbe5665dac4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga9bc6095a4f7bbbbe4b122dbe5665dac4">&sect;&nbsp;</a></span>GAVL_PIXELFORMAT_3D_FLOAT</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define GAVL_PIXELFORMAT_3D_FLOAT&#160;&#160;&#160;<a class="el" href="group__video__format.html#ggaf1e060e38cb2d9e4e776f7eca3ec2d33a5d444e80ac504e8ce319652f5fcfa50c">GAVL_RGB_FLOAT</a></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Pixelformat for storing 3-dimensional FLOAT data. </p>

</div>
</div>
<a id="ga32369e032b8cc4df10b42cfcdf2f846b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga32369e032b8cc4df10b42cfcdf2f846b">&sect;&nbsp;</a></span>GAVL_PIXELFORMAT_4D_FLOAT</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define GAVL_PIXELFORMAT_4D_FLOAT&#160;&#160;&#160;<a class="el" href="group__video__format.html#ggaf1e060e38cb2d9e4e776f7eca3ec2d33afbfe8d7d8aa64729cf7c2a4a2ce9624e">GAVL_RGBA_FLOAT</a></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Pixelformat for storing 4-dimensional FLOAT data. </p>

</div>
</div>
<a id="gaf44add25fc0d3beca7ca05180e5b42f9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gaf44add25fc0d3beca7ca05180e5b42f9">&sect;&nbsp;</a></span>gavl_pixelformat_is_gray</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define gavl_pixelformat_is_gray</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">fmt</td><td>)</td>
          <td>&#160;&#160;&#160;((fmt) &amp; <a class="el" href="group__video__format.html#ga2198acc6ef5344d1a7c1a06703b7b465">GAVL_PIXFMT_GRAY</a>)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Check if a pixelformat is grayscale. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">fmt</td><td>A pixelformat </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>1 if the pixelformat is grayscale, 0 else </dd></dl>

</div>
</div>
<a id="gaa817c92786c87106ffd6e5dc83c9559a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gaa817c92786c87106ffd6e5dc83c9559a">&sect;&nbsp;</a></span>gavl_pixelformat_is_rgb</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define gavl_pixelformat_is_rgb</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">fmt</td><td>)</td>
          <td>&#160;&#160;&#160;((fmt) &amp; <a class="el" href="group__video__format.html#gaadfa65377172d2d7780888c1435996b9">GAVL_PIXFMT_RGB</a>)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Check if a pixelformat is RGB based. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">fmt</td><td>A pixelformat </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>1 if the pixelformat is RGB based, 0 else </dd></dl>

</div>
</div>
<a id="ga01053608fe3d999aa9ee5a1c9de92f52"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga01053608fe3d999aa9ee5a1c9de92f52">&sect;&nbsp;</a></span>gavl_pixelformat_is_yuv</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define gavl_pixelformat_is_yuv</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">fmt</td><td>)</td>
          <td>&#160;&#160;&#160;((fmt) &amp; <a class="el" href="group__video__format.html#gab68ea697e8c26f1ac9458ab7dfc5ac2d">GAVL_PIXFMT_YUV</a>)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Check if a pixelformat is YUV based. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">fmt</td><td>A pixelformat </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>1 if the pixelformat is YUV based, 0 else </dd></dl>

</div>
</div>
<a id="ga177fcadc2d94a2a5b44fef3df2551cec"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga177fcadc2d94a2a5b44fef3df2551cec">&sect;&nbsp;</a></span>gavl_pixelformat_is_jpeg_scaled</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define gavl_pixelformat_is_jpeg_scaled</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">fmt</td><td>)</td>
          <td>&#160;&#160;&#160;((fmt) &amp; <a class="el" href="group__video__format.html#gac9f6894e861877932a3d9e22de68f217">GAVL_PIXFMT_YUVJ</a>)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Check if a pixelformat is jpeg (full range) scaled. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">fmt</td><td>A pixelformat </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>1 if the pixelformat is jpeg scaled, 0 else </dd></dl>

</div>
</div>
<a id="ga05959f9b8dd7b5464b964bdfc50e0bf2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga05959f9b8dd7b5464b964bdfc50e0bf2">&sect;&nbsp;</a></span>gavl_pixelformat_has_alpha</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define gavl_pixelformat_has_alpha</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">fmt</td><td>)</td>
          <td>&#160;&#160;&#160;((fmt) &amp; <a class="el" href="group__video__format.html#ga0a439a4323f4f72a1306b4a45d527c4d">GAVL_PIXFMT_ALPHA</a>)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Check if a pixelformat has a transparency channel. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">fmt</td><td>A pixelformat </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>1 if the pixelformat has a transparency channel, 0 else </dd></dl>

</div>
</div>
<a id="gaa9d242d428b8e06d245644ab5bb900a4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gaa9d242d428b8e06d245644ab5bb900a4">&sect;&nbsp;</a></span>gavl_pixelformat_is_planar</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define gavl_pixelformat_is_planar</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">fmt</td><td>)</td>
          <td>&#160;&#160;&#160;((fmt) &amp; <a class="el" href="group__video__format.html#ga04b9a9a01c859eef903ad5c929b5a376">GAVL_PIXFMT_PLANAR</a>)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Check if a pixelformat is planar. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">fmt</td><td>A pixelformat </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>1 if the pixelformat is planar, 0 else </dd></dl>

</div>
</div>
<h2 class="groupheader">Typedef Documentation</h2>
<a id="ga0ffc9c60fb71a5fb835e453531fd442c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga0ffc9c60fb71a5fb835e453531fd442c">&sect;&nbsp;</a></span>gavl_video_format_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef struct <a class="el" href="structgavl__video__format__s.html">gavl_video_format_s</a> <a class="el" href="group__video__format.html#ga0ffc9c60fb71a5fb835e453531fd442c">gavl_video_format_t</a></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Video format. </p>

</div>
</div>
<h2 class="groupheader">Enumeration Type Documentation</h2>
<a id="gaf1e060e38cb2d9e4e776f7eca3ec2d33"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gaf1e060e38cb2d9e4e776f7eca3ec2d33">&sect;&nbsp;</a></span>gavl_pixelformat_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="group__video__format.html#gaf1e060e38cb2d9e4e776f7eca3ec2d33">gavl_pixelformat_t</a></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Pixelformat definition. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="ggaf1e060e38cb2d9e4e776f7eca3ec2d33ac717f2fe9459d34033f9795a652786be"></a>GAVL_PIXELFORMAT_NONE&#160;</td><td class="fielddoc"><p>Undefined. </p>
</td></tr>
<tr><td class="fieldname"><a id="ggaf1e060e38cb2d9e4e776f7eca3ec2d33a69f10c2c74f64f7bc5c6ddd5022bd1e9"></a>GAVL_GRAY_8&#160;</td><td class="fielddoc"><p>8 bit gray, scaled 0x00..0xff </p>
</td></tr>
<tr><td class="fieldname"><a id="ggaf1e060e38cb2d9e4e776f7eca3ec2d33ae952bf31e83f79f856f6d7c6f068a9ea"></a>GAVL_GRAY_16&#160;</td><td class="fielddoc"><p>16 bit gray, scaled 0x0000..0xffff </p>
</td></tr>
<tr><td class="fieldname"><a id="ggaf1e060e38cb2d9e4e776f7eca3ec2d33acdd40c6cc16c6f44b33e0f57e2e61219"></a>GAVL_GRAY_FLOAT&#160;</td><td class="fielddoc"><p>floating point gray, scaled 0.0..1.0 </p>
</td></tr>
<tr><td class="fieldname"><a id="ggaf1e060e38cb2d9e4e776f7eca3ec2d33acb8992556bb1905eef5e5fdf856a4a28"></a>GAVL_GRAYA_16&#160;</td><td class="fielddoc"><p>8 bit gray + alpha, scaled 0x00..0xff </p>
</td></tr>
<tr><td class="fieldname"><a id="ggaf1e060e38cb2d9e4e776f7eca3ec2d33a27727603e024b74500919f9e3aa29081"></a>GAVL_GRAYA_32&#160;</td><td class="fielddoc"><p>16 bit gray + alpha, scaled 0x0000..0xffff </p>
</td></tr>
<tr><td class="fieldname"><a id="ggaf1e060e38cb2d9e4e776f7eca3ec2d33ab1bd641d1567206cfb405293ad8ed797"></a>GAVL_GRAYA_FLOAT&#160;</td><td class="fielddoc"><p>floating point gray + alpha, scaled 0.0..1.0 </p>
</td></tr>
<tr><td class="fieldname"><a id="ggaf1e060e38cb2d9e4e776f7eca3ec2d33af56e3146de38129ab2a77d9c78b68597"></a>GAVL_RGB_15&#160;</td><td class="fielddoc"><p>15 bit RGB. Each pixel is a uint16_t in native byte order. Color masks are: for red: 0x7C00, for green: 0x03e0, for blue: 0x001f </p>
</td></tr>
<tr><td class="fieldname"><a id="ggaf1e060e38cb2d9e4e776f7eca3ec2d33ab97b65c52e4f22512fc504c318d828f7"></a>GAVL_BGR_15&#160;</td><td class="fielddoc"><p>15 bit BGR. Each pixel is a uint16_t in native byte order. Color masks are: for red: 0x001f, for green: 0x03e0, for blue: 0x7C00 </p>
</td></tr>
<tr><td class="fieldname"><a id="ggaf1e060e38cb2d9e4e776f7eca3ec2d33a3b3ab22b714c2b2dbe8378ba6e665aed"></a>GAVL_RGB_16&#160;</td><td class="fielddoc"><p>16 bit RGB. Each pixel is a uint16_t in native byte order. Color masks are: for red: 0xf800, for green: 0x07e0, for blue: 0x001f </p>
</td></tr>
<tr><td class="fieldname"><a id="ggaf1e060e38cb2d9e4e776f7eca3ec2d33aec80b2d18ff47362cc27fcc37d14ad6f"></a>GAVL_BGR_16&#160;</td><td class="fielddoc"><p>16 bit BGR. Each pixel is a uint16_t in native byte order. Color masks are: for red: 0x001f, for green: 0x07e0, for blue: 0xf800 </p>
</td></tr>
<tr><td class="fieldname"><a id="ggaf1e060e38cb2d9e4e776f7eca3ec2d33a8211bc654500aecfd275674f6221043f"></a>GAVL_RGB_24&#160;</td><td class="fielddoc"><p>24 bit RGB. Each color is an uint8_t. Color order is RGBRGB </p>
</td></tr>
<tr><td class="fieldname"><a id="ggaf1e060e38cb2d9e4e776f7eca3ec2d33a13a997c77aae8666186d41a4b81587fc"></a>GAVL_BGR_24&#160;</td><td class="fielddoc"><p>24 bit BGR. Each color is an uint8_t. Color order is BGRBGR </p>
</td></tr>
<tr><td class="fieldname"><a id="ggaf1e060e38cb2d9e4e776f7eca3ec2d33a1e0326ee4c758091617b60989ca47b0c"></a>GAVL_RGB_32&#160;</td><td class="fielddoc"><p>32 bit RGB. Each color is an uint8_t. Color order is RGBXRGBX, where X is unused </p>
</td></tr>
<tr><td class="fieldname"><a id="ggaf1e060e38cb2d9e4e776f7eca3ec2d33afed887430acaadf1f5ea53b816dfabd6"></a>GAVL_BGR_32&#160;</td><td class="fielddoc"><p>32 bit BGR. Each color is an uint8_t. Color order is BGRXBGRX, where X is unused </p>
</td></tr>
<tr><td class="fieldname"><a id="ggaf1e060e38cb2d9e4e776f7eca3ec2d33addf19307ad488270fa01958f81e49805"></a>GAVL_RGBA_32&#160;</td><td class="fielddoc"><p>32 bit RGBA. Each color is an uint8_t. Color order is RGBARGBA </p>
</td></tr>
<tr><td class="fieldname"><a id="ggaf1e060e38cb2d9e4e776f7eca3ec2d33a1a8169a0597e154a27eb24f2415b5286"></a>GAVL_RGB_48&#160;</td><td class="fielddoc"><p>48 bit RGB. Each color is an uint16_t in native byte order. Color order is RGBRGB </p>
</td></tr>
<tr><td class="fieldname"><a id="ggaf1e060e38cb2d9e4e776f7eca3ec2d33a84b98bc0e63c1695bc7c4d07d90ca2d7"></a>GAVL_RGBA_64&#160;</td><td class="fielddoc"><p>64 bit RGBA. Each color is an uint16_t in native byte order. Color order is RGBARGBA </p>
</td></tr>
<tr><td class="fieldname"><a id="ggaf1e060e38cb2d9e4e776f7eca3ec2d33a5d444e80ac504e8ce319652f5fcfa50c"></a>GAVL_RGB_FLOAT&#160;</td><td class="fielddoc"><p>float RGB. Each color is a float (0.0 .. 1.0) in native byte order. Color order is RGBRGB </p>
</td></tr>
<tr><td class="fieldname"><a id="ggaf1e060e38cb2d9e4e776f7eca3ec2d33afbfe8d7d8aa64729cf7c2a4a2ce9624e"></a>GAVL_RGBA_FLOAT&#160;</td><td class="fielddoc"><p>float RGBA. Each color is a float (0.0 .. 1.0) in native byte order. Color order is RGBARGBA </p>
</td></tr>
<tr><td class="fieldname"><a id="ggaf1e060e38cb2d9e4e776f7eca3ec2d33a8d27aaccb4602c8ec8676f9290a5dd5c"></a>GAVL_YUY2&#160;</td><td class="fielddoc"><p>Packed YCbCr 4:2:2. Each component is an uint8_t. Component order is Y1 U1 Y2 V1 </p>
</td></tr>
<tr><td class="fieldname"><a id="ggaf1e060e38cb2d9e4e776f7eca3ec2d33a3d4ff8ef4a77ed775628c32112aa6149"></a>GAVL_UYVY&#160;</td><td class="fielddoc"><p>Packed YCbCr 4:2:2. Each component is an uint8_t. Component order is U1 Y1 V1 Y2 </p>
</td></tr>
<tr><td class="fieldname"><a id="ggaf1e060e38cb2d9e4e776f7eca3ec2d33a38f188147bf813acdbfd186a94b80ded"></a>GAVL_YUVA_32&#160;</td><td class="fielddoc"><p>Packed YCbCrA 4:4:4:4. Each component is an uint8_t. Component order is YUVA. Luma and chroma are video scaled, alpha is 0..255. </p>
</td></tr>
<tr><td class="fieldname"><a id="ggaf1e060e38cb2d9e4e776f7eca3ec2d33af07dec1edf32b16bd22f03a3b5eac0f2"></a>GAVL_YUVA_64&#160;</td><td class="fielddoc"><p>Packed YCbCrA 4:4:4:4. Each component is an uint16_t. Component order is YUVA. Luma and chroma are video scaled, alpha is 0..65535. </p>
</td></tr>
<tr><td class="fieldname"><a id="ggaf1e060e38cb2d9e4e776f7eca3ec2d33adcc84a95ec748160fcb6b7a6a93a84a8"></a>GAVL_YUV_FLOAT&#160;</td><td class="fielddoc"><p>Packed YCbCr 4:4:4. Each component is a float. Luma is scaled 0.0..1.0, chroma is -0.5..0.5 </p>
</td></tr>
<tr><td class="fieldname"><a id="ggaf1e060e38cb2d9e4e776f7eca3ec2d33aa29f4a91e89d701ca2e65a080fc3101a"></a>GAVL_YUVA_FLOAT&#160;</td><td class="fielddoc"><p>Packed YCbCrA 4:4:4:4. Each component is a float. Luma is scaled 0.0..1.0, chroma is -0.5..0.5 </p>
</td></tr>
<tr><td class="fieldname"><a id="ggaf1e060e38cb2d9e4e776f7eca3ec2d33a20f380c90a1540717452e3a793719b59"></a>GAVL_YUV_420_P&#160;</td><td class="fielddoc"><p>Packed YCbCrA 4:4:4:4. Each component is an uint16_t. Component order is YUVA. Luma and chroma are video scaled, alpha is 0..65535. </p>
</td></tr>
<tr><td class="fieldname"><a id="ggaf1e060e38cb2d9e4e776f7eca3ec2d33a104f0457d36f00af8a42fb8ea44a04ff"></a>GAVL_YUV_422_P&#160;</td><td class="fielddoc"><p>Planar YCbCr 4:2:2. Each component is an uint8_t </p>
</td></tr>
<tr><td class="fieldname"><a id="ggaf1e060e38cb2d9e4e776f7eca3ec2d33a53d86fa6e94bb857879932823cd1b299"></a>GAVL_YUV_444_P&#160;</td><td class="fielddoc"><p>Planar YCbCr 4:4:4. Each component is an uint8_t </p>
</td></tr>
<tr><td class="fieldname"><a id="ggaf1e060e38cb2d9e4e776f7eca3ec2d33acbc562d3d3dabe924be4cf0fda42608b"></a>GAVL_YUV_411_P&#160;</td><td class="fielddoc"><p>Planar YCbCr 4:1:1. Each component is an uint8_t </p>
</td></tr>
<tr><td class="fieldname"><a id="ggaf1e060e38cb2d9e4e776f7eca3ec2d33a19bb2c8eda0bfdda876921e0de0ae630"></a>GAVL_YUV_410_P&#160;</td><td class="fielddoc"><p>Planar YCbCr 4:1:0. Each component is an uint8_t </p>
</td></tr>
<tr><td class="fieldname"><a id="ggaf1e060e38cb2d9e4e776f7eca3ec2d33a0e46c4cee26289eee8cc1feef2bcb544"></a>GAVL_YUVJ_420_P&#160;</td><td class="fielddoc"><p>Planar YCbCr 4:2:0. Each component is an uint8_t, luma and chroma values are full range (0x00 .. 0xff) </p>
</td></tr>
<tr><td class="fieldname"><a id="ggaf1e060e38cb2d9e4e776f7eca3ec2d33a6532ffb3fbf64ad20c866cbd9c794bad"></a>GAVL_YUVJ_422_P&#160;</td><td class="fielddoc"><p>Planar YCbCr 4:2:2. Each component is an uint8_t, luma and chroma values are full range (0x00 .. 0xff) </p>
</td></tr>
<tr><td class="fieldname"><a id="ggaf1e060e38cb2d9e4e776f7eca3ec2d33aa6bb415b453cdfb92c0b6b9cbb745f9a"></a>GAVL_YUVJ_444_P&#160;</td><td class="fielddoc"><p>Planar YCbCr 4:4:4. Each component is an uint8_t, luma and chroma values are full range (0x00 .. 0xff) </p>
</td></tr>
<tr><td class="fieldname"><a id="ggaf1e060e38cb2d9e4e776f7eca3ec2d33abed85774258b87ba556036a39b67a98a"></a>GAVL_YUV_444_P_16&#160;</td><td class="fielddoc"><p>16 bit Planar YCbCr 4:4:4. Each component is an uint16_t in native byte order. </p>
</td></tr>
<tr><td class="fieldname"><a id="ggaf1e060e38cb2d9e4e776f7eca3ec2d33a41e6c2b3847dd8a9f18cc9af77064d04"></a>GAVL_YUV_422_P_16&#160;</td><td class="fielddoc"><p>16 bit Planar YCbCr 4:2:2. Each component is an uint16_t in native byte order. </p>
</td></tr>
</table>

</div>
</div>
<a id="gac25e4e4e1a7bdc0160bf0e1d6910b87c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gac25e4e4e1a7bdc0160bf0e1d6910b87c">&sect;&nbsp;</a></span>gavl_color_channel_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="group__video__format.html#gac25e4e4e1a7bdc0160bf0e1d6910b87c">gavl_color_channel_t</a></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Color channel definitions. </p>
<p>Enum definitions for color channels </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="ggac25e4e4e1a7bdc0160bf0e1d6910b87ca3c417d9a66b30aea8a7e2d70d4030237"></a>GAVL_CCH_RED&#160;</td><td class="fielddoc"><p>Red. </p>
</td></tr>
<tr><td class="fieldname"><a id="ggac25e4e4e1a7bdc0160bf0e1d6910b87ca935ecdaabed4463d03a233188c279013"></a>GAVL_CCH_GREEN&#160;</td><td class="fielddoc"><p>Green. </p>
</td></tr>
<tr><td class="fieldname"><a id="ggac25e4e4e1a7bdc0160bf0e1d6910b87caf34d3d1d6505a7753f2d02b334062cd9"></a>GAVL_CCH_BLUE&#160;</td><td class="fielddoc"><p>Blue. </p>
</td></tr>
<tr><td class="fieldname"><a id="ggac25e4e4e1a7bdc0160bf0e1d6910b87ca2c1b2d1518c2f530407b99f7f829f724"></a>GAVL_CCH_Y&#160;</td><td class="fielddoc"><p>Luminance (also grayscale) </p>
</td></tr>
<tr><td class="fieldname"><a id="ggac25e4e4e1a7bdc0160bf0e1d6910b87cacd98f6faa2dedd0c524a67dfe63c19f7"></a>GAVL_CCH_CB&#160;</td><td class="fielddoc"><p>Chrominance blue (aka U) </p>
</td></tr>
<tr><td class="fieldname"><a id="ggac25e4e4e1a7bdc0160bf0e1d6910b87ca688e2019c853dc04f1fc246c3d1f4bde"></a>GAVL_CCH_CR&#160;</td><td class="fielddoc"><p>Chrominance red (aka V) </p>
</td></tr>
<tr><td class="fieldname"><a id="ggac25e4e4e1a7bdc0160bf0e1d6910b87ca9e6559f4221ae2f66b499132cc32c6ca"></a>GAVL_CCH_ALPHA&#160;</td><td class="fielddoc"><p>Transparency (or, to be more precise opacity) </p>
</td></tr>
</table>

</div>
</div>
<a id="ga1e5257edc9b29af8eba05825db5a0906"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga1e5257edc9b29af8eba05825db5a0906">&sect;&nbsp;</a></span>gavl_chroma_placement_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="group__video__format.html#ga1e5257edc9b29af8eba05825db5a0906">gavl_chroma_placement_t</a></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Chroma placement. </p>
<p>Specification of the 3 variants of 4:2:0 YCbCr as described at <a href="http://www.mir.com/DMG/chroma.html">http://www.mir.com/DMG/chroma.html</a> . For other pixelformats, it's meaningless and should be set to GAVL_CHROMA_PLACEMENT_DEFAULT. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="gga1e5257edc9b29af8eba05825db5a0906ae18f2501f64f2d4ace44fc84d7c719f7"></a>GAVL_CHROMA_PLACEMENT_DEFAULT&#160;</td><td class="fielddoc"><p>MPEG-1/JPEG </p>
</td></tr>
<tr><td class="fieldname"><a id="gga1e5257edc9b29af8eba05825db5a0906ad5180e13cd750c7b3618a785b4a87cf6"></a>GAVL_CHROMA_PLACEMENT_MPEG2&#160;</td><td class="fielddoc"><p>MPEG-2 </p>
</td></tr>
<tr><td class="fieldname"><a id="gga1e5257edc9b29af8eba05825db5a0906a845aeec284544ec190abf0eeaac0e0be"></a>GAVL_CHROMA_PLACEMENT_DVPAL&#160;</td><td class="fielddoc"><p>DV PAL </p>
</td></tr>
</table>

</div>
</div>
<a id="ga27bc061c95b4416a2ddd2cae2f8ee811"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga27bc061c95b4416a2ddd2cae2f8ee811">&sect;&nbsp;</a></span>gavl_framerate_mode_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="group__video__format.html#ga27bc061c95b4416a2ddd2cae2f8ee811">gavl_framerate_mode_t</a></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Framerate mode. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="gga27bc061c95b4416a2ddd2cae2f8ee811a300414b65b11483cf8838b38481e8ae9"></a>GAVL_FRAMERATE_UNKNOWN&#160;</td><td class="fielddoc"><p>Unknown (never use in public APIs) </p>
</td></tr>
<tr><td class="fieldname"><a id="gga27bc061c95b4416a2ddd2cae2f8ee811a3b8019ccde52a3dc42b337bb21addad7"></a>GAVL_FRAMERATE_CONSTANT&#160;</td><td class="fielddoc"><p>Constant framerate </p>
</td></tr>
<tr><td class="fieldname"><a id="gga27bc061c95b4416a2ddd2cae2f8ee811a72e7a1eec40615145fbc3ef25bdd026e"></a>GAVL_FRAMERATE_VARIABLE&#160;</td><td class="fielddoc"><p>Variable framerate </p>
</td></tr>
<tr><td class="fieldname"><a id="gga27bc061c95b4416a2ddd2cae2f8ee811a45ddb770b81289188a660dee7d742fb0"></a>GAVL_FRAMERATE_STILL&#160;</td><td class="fielddoc"><p>Still image </p>
</td></tr>
</table>

</div>
</div>
<a id="gaabe1b351049ab5c62ff328c4e4258fae"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gaabe1b351049ab5c62ff328c4e4258fae">&sect;&nbsp;</a></span>gavl_interlace_mode_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="group__video__format.html#gaabe1b351049ab5c62ff328c4e4258fae">gavl_interlace_mode_t</a></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Interlace mode. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="ggaabe1b351049ab5c62ff328c4e4258faeac5b2f83ecbbc20d76138c5dc0f22244c"></a>GAVL_INTERLACE_UNKNOWN&#160;</td><td class="fielddoc"><p>Unknown interlacing (never use in public APIs) </p>
</td></tr>
<tr><td class="fieldname"><a id="ggaabe1b351049ab5c62ff328c4e4258faea75824d34edcb89aa3b6862ea70dc1f97"></a>GAVL_INTERLACE_NONE&#160;</td><td class="fielddoc"><p>Progressive </p>
</td></tr>
<tr><td class="fieldname"><a id="ggaabe1b351049ab5c62ff328c4e4258faeafe84e0cef3df2b894eca9474718a8b99"></a>GAVL_INTERLACE_TOP_FIRST&#160;</td><td class="fielddoc"><p>Top field first </p>
</td></tr>
<tr><td class="fieldname"><a id="ggaabe1b351049ab5c62ff328c4e4258faeaac14ef96211f39740c21cfcf6a281483"></a>GAVL_INTERLACE_BOTTOM_FIRST&#160;</td><td class="fielddoc"><p>Bottom field first </p>
</td></tr>
<tr><td class="fieldname"><a id="ggaabe1b351049ab5c62ff328c4e4258faeacdfc8ca442527b5379a5623bbfb07b50"></a>GAVL_INTERLACE_MIXED&#160;</td><td class="fielddoc"><p>Use interlace_mode of the frames </p>
</td></tr>
<tr><td class="fieldname"><a id="ggaabe1b351049ab5c62ff328c4e4258faea73995c8c62d987619469f720980336cf"></a>GAVL_INTERLACE_MIXED_TOP&#160;</td><td class="fielddoc"><p>Progressive + top </p>
</td></tr>
<tr><td class="fieldname"><a id="ggaabe1b351049ab5c62ff328c4e4258faea0164fdbfe0f0260313d5e27804748cc1"></a>GAVL_INTERLACE_MIXED_BOTTOM&#160;</td><td class="fielddoc"><p>Progressive + bottom </p>
</td></tr>
</table>

</div>
</div>
<h2 class="groupheader">Function Documentation</h2>
<a id="gabc4c5fc3243dc698d12bcb7c3d514781"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gabc4c5fc3243dc698d12bcb7c3d514781">&sect;&nbsp;</a></span>gavl_pixelformat_num_planes()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">GAVL_PUBLIC int gavl_pixelformat_num_planes </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__video__format.html#gaf1e060e38cb2d9e4e776f7eca3ec2d33">gavl_pixelformat_t</a>&#160;</td>
          <td class="paramname"><em>pixelformat</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get the number of planes. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">pixelformat</td><td>A pixelformat </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The number of planes (1 for packet formats) </dd></dl>

</div>
</div>
<a id="gafaed26a87cb8acf6c854e99a29f3b9c1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gafaed26a87cb8acf6c854e99a29f3b9c1">&sect;&nbsp;</a></span>gavl_pixelformat_chroma_sub()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">GAVL_PUBLIC void gavl_pixelformat_chroma_sub </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__video__format.html#gaf1e060e38cb2d9e4e776f7eca3ec2d33">gavl_pixelformat_t</a>&#160;</td>
          <td class="paramname"><em>pixelformat</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int *&#160;</td>
          <td class="paramname"><em>sub_h</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int *&#160;</td>
          <td class="paramname"><em>sub_v</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get the horizontal and vertical subsampling factors. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">pixelformat</td><td>A pixelformat </td></tr>
    <tr><td class="paramname">sub_h</td><td>returns the horizontal subsampling factor </td></tr>
    <tr><td class="paramname">sub_v</td><td>returns the vertical subsampling factor</td></tr>
  </table>
  </dd>
</dl>
<p>E.g. for 4:2:0 subsampling: sub_h = 2, sub_v = 2 </p>

</div>
</div>
<a id="gade6e5f14ab00955ec4b7dc02875d3448"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gade6e5f14ab00955ec4b7dc02875d3448">&sect;&nbsp;</a></span>gavl_pixelformat_bytes_per_component()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">GAVL_PUBLIC int gavl_pixelformat_bytes_per_component </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__video__format.html#gaf1e060e38cb2d9e4e776f7eca3ec2d33">gavl_pixelformat_t</a>&#160;</td>
          <td class="paramname"><em>pixelformat</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get bytes per component for planar formats. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">pixelformat</td><td>A pixelformat </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The number of bytes per component for planar formats, 0 for packed formats </dd></dl>

</div>
</div>
<a id="ga1abe2490a266feab4a7a3819f7bb0884"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga1abe2490a266feab4a7a3819f7bb0884">&sect;&nbsp;</a></span>gavl_pixelformat_bytes_per_pixel()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">GAVL_PUBLIC int gavl_pixelformat_bytes_per_pixel </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__video__format.html#gaf1e060e38cb2d9e4e776f7eca3ec2d33">gavl_pixelformat_t</a>&#160;</td>
          <td class="paramname"><em>pixelformat</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get bytes per pixel for packed formats. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">pixelformat</td><td>A pixelformat </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The number of bytes per pixel for packed formats, 0 for planar formats </dd></dl>

</div>
</div>
<a id="gab36e3a7a3110eaa9d768344ed7af231c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gab36e3a7a3110eaa9d768344ed7af231c">&sect;&nbsp;</a></span>gavl_pixelformat_bits_per_pixel()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">GAVL_PUBLIC int gavl_pixelformat_bits_per_pixel </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__video__format.html#gaf1e060e38cb2d9e4e776f7eca3ec2d33">gavl_pixelformat_t</a>&#160;</td>
          <td class="paramname"><em>pixelformat</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get the effective number of bits for one pixel. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">pixelformat</td><td>A pixelformat </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Number of bits per pixel </dd></dl>

</div>
</div>
<a id="ga112a800cc9c95e088f7fe499e165f907"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga112a800cc9c95e088f7fe499e165f907">&sect;&nbsp;</a></span>gavl_pixelformat_conversion_penalty()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">GAVL_PUBLIC int gavl_pixelformat_conversion_penalty </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__video__format.html#gaf1e060e38cb2d9e4e776f7eca3ec2d33">gavl_pixelformat_t</a>&#160;</td>
          <td class="paramname"><em>src</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__video__format.html#gaf1e060e38cb2d9e4e776f7eca3ec2d33">gavl_pixelformat_t</a>&#160;</td>
          <td class="paramname"><em>dst</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get the conversion penalty for pixelformat conversions. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">src</td><td>Source pixelformat </td></tr>
    <tr><td class="paramname">dst</td><td>Destination pixelformat </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>A number denoting the "cost" of the conversion</dd></dl>
<p>The number (the larger the worse) is calculated from several criteria and considers both speed and quality issues. Don't ever rely on specific absolute values, since they can change from version to version (except 0, which is returned when and only when src and dst are equal). Instead, only compare values returned for different combinations among each other. </p>

</div>
</div>
<a id="gad57e1813e11be4c4aee7f542e1d638eb"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gad57e1813e11be4c4aee7f542e1d638eb">&sect;&nbsp;</a></span>gavl_pixelformat_get_best()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">GAVL_PUBLIC <a class="el" href="group__video__format.html#gaf1e060e38cb2d9e4e776f7eca3ec2d33">gavl_pixelformat_t</a> gavl_pixelformat_get_best </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__video__format.html#gaf1e060e38cb2d9e4e776f7eca3ec2d33">gavl_pixelformat_t</a>&#160;</td>
          <td class="paramname"><em>src</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="group__video__format.html#gaf1e060e38cb2d9e4e776f7eca3ec2d33">gavl_pixelformat_t</a> *&#160;</td>
          <td class="paramname"><em>dst_supported</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int *&#160;</td>
          <td class="paramname"><em>penalty</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get the best destination format for a given source format. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">src</td><td>Source pixelformat </td></tr>
    <tr><td class="paramname">dst_supported</td><td>List of supported destination format </td></tr>
    <tr><td class="paramname">penalty</td><td>If non-null, returns the conversion penalty </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The best supported destination pixelformat</dd></dl>
<p>This function takes a source format and a list of supported destination formats (terminated with <a class="el" href="group__video__format.html#ggaf1e060e38cb2d9e4e776f7eca3ec2d33ac717f2fe9459d34033f9795a652786be">GAVL_PIXELFORMAT_NONE</a>) and returns the format, which will result in the cheapest conversion (see <a class="el" href="group__video__format.html#ga112a800cc9c95e088f7fe499e165f907">gavl_pixelformat_conversion_penalty</a>). </p>

</div>
</div>
<a id="ga7560314c4a1e12ad925c3bdf062e0b2e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga7560314c4a1e12ad925c3bdf062e0b2e">&sect;&nbsp;</a></span>gavl_pixelformat_to_string()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">GAVL_PUBLIC const char* gavl_pixelformat_to_string </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__video__format.html#gaf1e060e38cb2d9e4e776f7eca3ec2d33">gavl_pixelformat_t</a>&#160;</td>
          <td class="paramname"><em>pixelformat</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Translate a pixelformat into a human readable string. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">pixelformat</td><td>A pixelformat </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>A string describing the pixelformat </dd></dl>

</div>
</div>
<a id="gaabb3686c3275fe97f668804fb5a7e153"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gaabb3686c3275fe97f668804fb5a7e153">&sect;&nbsp;</a></span>gavl_string_to_pixelformat()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">GAVL_PUBLIC <a class="el" href="group__video__format.html#gaf1e060e38cb2d9e4e776f7eca3ec2d33">gavl_pixelformat_t</a> gavl_string_to_pixelformat </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>name</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Translate a pixelformat name into a pixelformat. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">name</td><td>A string describing the pixelformat (returnd by <a class="el" href="group__video__format.html#ga7560314c4a1e12ad925c3bdf062e0b2e">gavl_pixelformat_to_string</a>) </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The pixelformat or GAVL_PIXELFORMAT_NONE if no match. </dd></dl>

</div>
</div>
<a id="gac4ef623576c6c429d4e9cc0789ef0549"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gac4ef623576c6c429d4e9cc0789ef0549">&sect;&nbsp;</a></span>gavl_num_pixelformats()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">GAVL_PUBLIC int gavl_num_pixelformats </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get total number of supported pixelformats. </p>
<dl class="section return"><dt>Returns</dt><dd>total number of supported pixelformats </dd></dl>

</div>
</div>
<a id="ga66c7d0ad216425adf4f27a65b3e8e8be"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga66c7d0ad216425adf4f27a65b3e8e8be">&sect;&nbsp;</a></span>gavl_get_pixelformat()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">GAVL_PUBLIC <a class="el" href="group__video__format.html#gaf1e060e38cb2d9e4e776f7eca3ec2d33">gavl_pixelformat_t</a> gavl_get_pixelformat </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>index</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get the pixelformat from index. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">index</td><td>index (must be between 0 and the result of <a class="el" href="group__video__format.html#gac4ef623576c6c429d4e9cc0789ef0549">gavl_num_pixelformats</a>) </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The pixelformat corresponding to index or GAVL_PIXELFORMAT_NONE. </dd></dl>

</div>
</div>
<a id="ga2258430d4307e686a3dc77e52deaf079"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga2258430d4307e686a3dc77e52deaf079">&sect;&nbsp;</a></span>gavl_chroma_placement_to_string()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">GAVL_PUBLIC const char* gavl_chroma_placement_to_string </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__video__format.html#ga1e5257edc9b29af8eba05825db5a0906">gavl_chroma_placement_t</a>&#160;</td>
          <td class="paramname"><em>mode</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Translate a chroma placement into a human readable string. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">mode</td><td>A chroma placement </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>A string describing the chroma placement </dd></dl>

</div>
</div>
<a id="ga0e05fb91c7798060d796ff65c5f129d9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga0e05fb91c7798060d796ff65c5f129d9">&sect;&nbsp;</a></span>gavl_framerate_mode_to_string()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">GAVL_PUBLIC const char* gavl_framerate_mode_to_string </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__video__format.html#ga27bc061c95b4416a2ddd2cae2f8ee811">gavl_framerate_mode_t</a>&#160;</td>
          <td class="paramname"><em>mode</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Translate a framerate mode into a human readable string. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">mode</td><td>A framerate mode </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>A string describing the framerate mode </dd></dl>

</div>
</div>
<a id="ga7baa4e63f5f4699ae11d659fa5f806fe"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga7baa4e63f5f4699ae11d659fa5f806fe">&sect;&nbsp;</a></span>gavl_interlace_mode_to_string()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">GAVL_PUBLIC const char* gavl_interlace_mode_to_string </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__video__format.html#gaabe1b351049ab5c62ff328c4e4258fae">gavl_interlace_mode_t</a>&#160;</td>
          <td class="paramname"><em>mode</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Translate an interlace mode into a human readable string. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">mode</td><td>An interlace mode </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>A string describing the interlace mode </dd></dl>

</div>
</div>
<a id="gad2d818069b8b8c1637df0cc1493ce535"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gad2d818069b8b8c1637df0cc1493ce535">&sect;&nbsp;</a></span>gavl_video_format_copy()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">GAVL_PUBLIC void gavl_video_format_copy </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__video__format.html#ga0ffc9c60fb71a5fb835e453531fd442c">gavl_video_format_t</a> *&#160;</td>
          <td class="paramname"><em>dst</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="group__video__format.html#ga0ffc9c60fb71a5fb835e453531fd442c">gavl_video_format_t</a> *&#160;</td>
          <td class="paramname"><em>src</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Copy one video format to another. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">dst</td><td>Destination format </td></tr>
    <tr><td class="paramname">src</td><td>Source format </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="ga35a05c81b67f1f54653c6b1a59da7e44"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga35a05c81b67f1f54653c6b1a59da7e44">&sect;&nbsp;</a></span>gavl_video_formats_equal()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">GAVL_PUBLIC int gavl_video_formats_equal </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="group__video__format.html#ga0ffc9c60fb71a5fb835e453531fd442c">gavl_video_format_t</a> *&#160;</td>
          <td class="paramname"><em>format_1</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="group__video__format.html#ga0ffc9c60fb71a5fb835e453531fd442c">gavl_video_format_t</a> *&#160;</td>
          <td class="paramname"><em>format_2</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Compare 2 video formats. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">format_1</td><td>First format </td></tr>
    <tr><td class="paramname">format_2</td><td>Second format </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>1 if the formats are equal, 0 else </dd></dl>

</div>
</div>
<a id="ga3c0440c17e56f3e4487628291ce65faa"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga3c0440c17e56f3e4487628291ce65faa">&sect;&nbsp;</a></span>gavl_video_format_get_chroma_offset()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">GAVL_PUBLIC void gavl_video_format_get_chroma_offset </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="group__video__format.html#ga0ffc9c60fb71a5fb835e453531fd442c">gavl_video_format_t</a> *&#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>field</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>plane</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float *&#160;</td>
          <td class="paramname"><em>off_x</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float *&#160;</td>
          <td class="paramname"><em>off_y</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get the chroma offsets relative to the luma samples. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">format</td><td>A video format </td></tr>
    <tr><td class="paramname">field</td><td>Index of the field (0 = top, 1 = bottom). For progressive format, this is unused </td></tr>
    <tr><td class="paramname">plane</td><td>Index of the plane (1 = Cb, 2 = Cr) </td></tr>
    <tr><td class="paramname">off_x</td><td>Returns the offset in x-direction </td></tr>
    <tr><td class="paramname">off_y</td><td>Returns the offset in y-direction </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="gacb0b62690147675f68a4117fb404a6a6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gacb0b62690147675f68a4117fb404a6a6">&sect;&nbsp;</a></span>gavl_video_format_fit_to_source()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">GAVL_PUBLIC void gavl_video_format_fit_to_source </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__video__format.html#ga0ffc9c60fb71a5fb835e453531fd442c">gavl_video_format_t</a> *&#160;</td>
          <td class="paramname"><em>dst</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="group__video__format.html#ga0ffc9c60fb71a5fb835e453531fd442c">gavl_video_format_t</a> *&#160;</td>
          <td class="paramname"><em>src</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Set the image size of a destination format from a source format. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">dst</td><td>Destination format </td></tr>
    <tr><td class="paramname">src</td><td>Source format</td></tr>
  </table>
  </dd>
</dl>
<p>Sets the image size of dst according src. Before you call this function, you must set the pixel_width and pixel_height of dst. This function will preserve the display aspect ratio, i.e. when the pixel aspect ratios are different in source and destination, the images will be scaled. </p>

</div>
</div>
<a id="ga666e64a92f431f7e65a68e5ca281df49"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga666e64a92f431f7e65a68e5ca281df49">&sect;&nbsp;</a></span>gavl_video_format_get_image_size()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">GAVL_PUBLIC int gavl_video_format_get_image_size </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="group__video__format.html#ga0ffc9c60fb71a5fb835e453531fd442c">gavl_video_format_t</a> *&#160;</td>
          <td class="paramname"><em>format</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get the unpadded image size. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">format</td><td>A video format </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The image size in bytes of an unpadded frame </dd></dl>

</div>
</div>
<a id="ga21bc1aa42164f02929b8f51ba1d8195a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga21bc1aa42164f02929b8f51ba1d8195a">&sect;&nbsp;</a></span>gavl_get_color_channel_format()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">GAVL_PUBLIC int gavl_get_color_channel_format </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="group__video__format.html#ga0ffc9c60fb71a5fb835e453531fd442c">gavl_video_format_t</a> *&#160;</td>
          <td class="paramname"><em>frame_format</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__video__format.html#ga0ffc9c60fb71a5fb835e453531fd442c">gavl_video_format_t</a> *&#160;</td>
          <td class="paramname"><em>channel_format</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__video__format.html#gac25e4e4e1a7bdc0160bf0e1d6910b87c">gavl_color_channel_t</a>&#160;</td>
          <td class="paramname"><em>ch</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get the video format for extracting/merging one channel. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">frame_format</td><td>The video format of the full frame </td></tr>
    <tr><td class="paramname">channel_format</td><td>Format of the extracted channel (grayscale) </td></tr>
    <tr><td class="paramname">ch</td><td>Channel </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>1 on success, 0 if the requested channel is not available in the format</dd></dl>
<p>Use this function in conjunction with <a class="el" href="group__video__frame.html#gaacbbc8ab6bd8532f8e285153470554b6">gavl_video_frame_extract_channel</a> and <a class="el" href="group__video__frame.html#ga4700fc9e06cece057d1c8a9aa058c2f8">gavl_video_frame_insert_channel</a></p>
<p>Since 1.1.2 </p>

</div>
</div>
<a id="gaeac607499912e661c398eaec2e847334"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gaeac607499912e661c398eaec2e847334">&sect;&nbsp;</a></span>gavl_get_field_format()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">GAVL_PUBLIC void gavl_get_field_format </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="group__video__format.html#ga0ffc9c60fb71a5fb835e453531fd442c">gavl_video_format_t</a> *&#160;</td>
          <td class="paramname"><em>frame_format</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__video__format.html#ga0ffc9c60fb71a5fb835e453531fd442c">gavl_video_format_t</a> *&#160;</td>
          <td class="paramname"><em>field_format</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>field</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get the video format of one field. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">frame_format</td><td>The video format of the full frame </td></tr>
    <tr><td class="paramname">field_format</td><td>Format of the field </td></tr>
    <tr><td class="paramname">field</td><td>Field (0 or 1)</td></tr>
  </table>
  </dd>
</dl>
<p>Use this function if you need to split a frame into fields. It handles odd heights correctly</p>
<p>Since 1.2.1 </p>

</div>
</div>
<a id="ga50c31762b5ae3b4fbae13dc4605584bc"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga50c31762b5ae3b4fbae13dc4605584bc">&sect;&nbsp;</a></span>gavl_video_format_dump()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">GAVL_PUBLIC void gavl_video_format_dump </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="group__video__format.html#ga0ffc9c60fb71a5fb835e453531fd442c">gavl_video_format_t</a> *&#160;</td>
          <td class="paramname"><em>format</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Dump a video format to stderr. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">format</td><td>A video format </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.12
</small></address>
</body>
</html>