<!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"/> <title>VDPAU: Miscellaneous Types</title> <link href="tabs.css" rel="stylesheet" type="text/css"/> <link href="doxygen.css" rel="stylesheet" type="text/css"/> </head> <body> <!-- Generated by Doxygen 1.6.2 --> <div class="navigation" id="top"> <div class="tabs"> <ul> <li><a href="index.html"><span>Main Page</span></a></li> <li><a href="modules.html"><span>Modules</span></a></li> <li><a href="annotated.html"><span>Data Structures</span></a></li> <li><a href="files.html"><span>Files</span></a></li> <li><a href="dirs.html"><span>Directories</span></a></li> </ul> </div> </div> <div class="contents"> <h1>Miscellaneous Types<br/> <small> [<a class="el" href="group__api__core.html">Core API</a>]</small> </h1> <p><div class="dynheader"> Collaboration diagram for Miscellaneous Types:</div> <div class="dynsection"> <center><table><tr><td><img src="group__misc__types.png" border="0" alt="" usemap="#group____misc____types_map"/> <map name="group____misc____types_map" id="group____misc____types"> <area shape="rect" id="node1" href="group__api__core.html" title="Core API" alt="" coords="7,5,81,35"/></map></td></tr></table></center> </div> </p> <table border="0" cellpadding="0" cellspacing="0"> <tr><td colspan="2"><h2>Data Structures</h2></td></tr> <tr><td class="memItemLeft" align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="struct_vdp_point.html">VdpPoint</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">A location within a surface. <a href="struct_vdp_point.html#_details">More...</a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="struct_vdp_rect.html">VdpRect</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">A rectangular region of a surface. <a href="struct_vdp_rect.html#_details">More...</a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="struct_vdp_color.html">VdpColor</a></td></tr> <tr><td colspan="2"><h2>Defines</h2></td></tr> <tr><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__misc__types.html#gad58c5db62f871890503d07505253dd18">VDP_INVALID_HANDLE</a> 0xffffffffU</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">An invalid object handle value. <a href="#gad58c5db62f871890503d07505253dd18"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__misc__types.html#ga3cda1a09a82b4c3578de2c07f9068fcd">VDP_CHROMA_TYPE_420</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">4:2:0 chroma format. <a href="#ga3cda1a09a82b4c3578de2c07f9068fcd"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__misc__types.html#ga2706a56df8d0f5793f1327284938f903">VDP_CHROMA_TYPE_422</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">4:2:2 chroma format. <a href="#ga2706a56df8d0f5793f1327284938f903"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__misc__types.html#gac17fb0efec277b5558def2011a881567">VDP_CHROMA_TYPE_444</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">4:4:4 chroma format. <a href="#gac17fb0efec277b5558def2011a881567"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__misc__types.html#gab7550cf65e6d46f4fd7a1e322372e207">VDP_YCBCR_FORMAT_NV12</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">The "NV12" YCbCr surface format. <a href="#gab7550cf65e6d46f4fd7a1e322372e207"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__misc__types.html#ga5edf937a20f03ee97dd770dfac0045e9">VDP_YCBCR_FORMAT_YV12</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">The "YV12" YCbCr surface format. <a href="#ga5edf937a20f03ee97dd770dfac0045e9"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__misc__types.html#ga7aff6a245e224f64a848e798998ae161">VDP_YCBCR_FORMAT_UYVY</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">The "UYVY" YCbCr surface format. <a href="#ga7aff6a245e224f64a848e798998ae161"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__misc__types.html#ga9abe4a7c6d907cd0bf9e1cba8a97916a">VDP_YCBCR_FORMAT_YUYV</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">The "YUYV" YCbCr surface format. <a href="#ga9abe4a7c6d907cd0bf9e1cba8a97916a"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__misc__types.html#ga0c7b86dab9d96b1aba96bca4cf048128">VDP_YCBCR_FORMAT_Y8U8V8A8</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">A packed YCbCr format. <a href="#ga0c7b86dab9d96b1aba96bca4cf048128"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__misc__types.html#gac850cea2ca3ecfaf19ddb3bbec24f941">VDP_YCBCR_FORMAT_V8U8Y8A8</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">A packed YCbCr format. <a href="#gac850cea2ca3ecfaf19ddb3bbec24f941"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__misc__types.html#ga2659adf5d019acade5516ea35e4eb5ad">VDP_RGBA_FORMAT_B8G8R8A8</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">A packed RGB format. <a href="#ga2659adf5d019acade5516ea35e4eb5ad"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__misc__types.html#ga81f8bb49e3cfb7b6fe4265ecaf35418d">VDP_RGBA_FORMAT_R8G8B8A8</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">A packed RGB format. <a href="#ga81f8bb49e3cfb7b6fe4265ecaf35418d"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__misc__types.html#ga09019f9f209a091166205186ce635391">VDP_RGBA_FORMAT_R10G10B10A2</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">A packed RGB format. <a href="#ga09019f9f209a091166205186ce635391"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__misc__types.html#gab30225605192acfa831ff0979b6746a3">VDP_RGBA_FORMAT_B10G10R10A2</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">A packed RGB format. <a href="#gab30225605192acfa831ff0979b6746a3"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__misc__types.html#ga49971277ddd8599b85ac462e3d3a1e08">VDP_RGBA_FORMAT_A8</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">An alpha-only surface format. <a href="#ga49971277ddd8599b85ac462e3d3a1e08"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__misc__types.html#ga3051f6b707809ce2bf66fc056a6e2eb2">VDP_INDEXED_FORMAT_A4I4</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">A 4-bit indexed format, with alpha. <a href="#ga3051f6b707809ce2bf66fc056a6e2eb2"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__misc__types.html#ga1317b5edef45a374c3a525dbd73e9a75">VDP_INDEXED_FORMAT_I4A4</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">A 4-bit indexed format, with alpha. <a href="#ga1317b5edef45a374c3a525dbd73e9a75"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__misc__types.html#ga9cc4803b79c2f25d728b5107301ba1d4">VDP_INDEXED_FORMAT_A8I8</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">A 8-bit indexed format, with alpha. <a href="#ga9cc4803b79c2f25d728b5107301ba1d4"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__misc__types.html#ga4b728a88fda3518241a4b35419a138dd">VDP_INDEXED_FORMAT_I8A8</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">A 8-bit indexed format, with alpha. <a href="#ga4b728a88fda3518241a4b35419a138dd"></a><br/></td></tr> <tr><td colspan="2"><h2>Typedefs</h2></td></tr> <tr><td class="memItemLeft" align="right" valign="top">typedef uint32_t </td><td class="memItemRight" valign="bottom"><a class="el" href="group__misc__types.html#ga4797a8cdba1360fe58cd6e40e5dce841">VdpChromaType</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">The set of all chroma formats for <a class="el" href="group___vdp_video_surface.html">VdpVideoSurface</a>s. <a href="#ga4797a8cdba1360fe58cd6e40e5dce841"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">typedef uint32_t </td><td class="memItemRight" valign="bottom"><a class="el" href="group__misc__types.html#ga0b66d7cdde1c41adcb2303f11dabc4b0">VdpYCbCrFormat</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">The set of all known YCbCr surface formats. <a href="#ga0b66d7cdde1c41adcb2303f11dabc4b0"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">typedef uint32_t </td><td class="memItemRight" valign="bottom"><a class="el" href="group__misc__types.html#ga718383d01ac1ff36094fb46f91a8a3aa">VdpRGBAFormat</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">The set of all known RGB surface formats. <a href="#ga718383d01ac1ff36094fb46f91a8a3aa"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">typedef uint32_t </td><td class="memItemRight" valign="bottom"><a class="el" href="group__misc__types.html#ga5ddd978dd0f38ca5dc546df79c2c59c1">VdpIndexedFormat</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">The set of all known indexed surface formats. <a href="#ga5ddd978dd0f38ca5dc546df79c2c59c1"></a><br/></td></tr> </table> <hr/><h2>Define Documentation</h2> <a class="anchor" id="ga3cda1a09a82b4c3578de2c07f9068fcd"></a><!-- doxytag: member="vdpau.h::VDP_CHROMA_TYPE_420" ref="ga3cda1a09a82b4c3578de2c07f9068fcd" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define VDP_CHROMA_TYPE_420</td> </tr> </table> </div> <div class="memdoc"> <p>4:2:0 chroma format. </p> </div> </div> <a class="anchor" id="ga2706a56df8d0f5793f1327284938f903"></a><!-- doxytag: member="vdpau.h::VDP_CHROMA_TYPE_422" ref="ga2706a56df8d0f5793f1327284938f903" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define VDP_CHROMA_TYPE_422</td> </tr> </table> </div> <div class="memdoc"> <p>4:2:2 chroma format. </p> </div> </div> <a class="anchor" id="gac17fb0efec277b5558def2011a881567"></a><!-- doxytag: member="vdpau.h::VDP_CHROMA_TYPE_444" ref="gac17fb0efec277b5558def2011a881567" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define VDP_CHROMA_TYPE_444</td> </tr> </table> </div> <div class="memdoc"> <p>4:4:4 chroma format. </p> </div> </div> <a class="anchor" id="ga3051f6b707809ce2bf66fc056a6e2eb2"></a><!-- doxytag: member="vdpau.h::VDP_INDEXED_FORMAT_A4I4" ref="ga3051f6b707809ce2bf66fc056a6e2eb2" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define VDP_INDEXED_FORMAT_A4I4</td> </tr> </table> </div> <div class="memdoc"> <p>A 4-bit indexed format, with alpha. </p> <p>This format has a single plane.</p> <p>This plane is an array of byte-sized components. Within each byte, bits [7:4] contain I (index), and bits [3:0] contain A.</p> <p>Applications should access this data via a uint8_t pointer. </p> </div> </div> <a class="anchor" id="ga9cc4803b79c2f25d728b5107301ba1d4"></a><!-- doxytag: member="vdpau.h::VDP_INDEXED_FORMAT_A8I8" ref="ga9cc4803b79c2f25d728b5107301ba1d4" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define VDP_INDEXED_FORMAT_A8I8</td> </tr> </table> </div> <div class="memdoc"> <p>A 8-bit indexed format, with alpha. </p> <p>This format has a single plane.</p> <p>This plane is an array of interleaved byte-sized A and I (index) components, in the order A, I, A, I.</p> <p>Applications should access this data via a uint8_t pointer. </p> </div> </div> <a class="anchor" id="ga1317b5edef45a374c3a525dbd73e9a75"></a><!-- doxytag: member="vdpau.h::VDP_INDEXED_FORMAT_I4A4" ref="ga1317b5edef45a374c3a525dbd73e9a75" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define VDP_INDEXED_FORMAT_I4A4</td> </tr> </table> </div> <div class="memdoc"> <p>A 4-bit indexed format, with alpha. </p> <p>This format has a single plane.</p> <p>This plane is an array of byte-sized components. Within each byte, bits [7:4] contain A, and bits [3:0] contain I (index).</p> <p>Applications should access this data via a uint8_t pointer. </p> </div> </div> <a class="anchor" id="ga4b728a88fda3518241a4b35419a138dd"></a><!-- doxytag: member="vdpau.h::VDP_INDEXED_FORMAT_I8A8" ref="ga4b728a88fda3518241a4b35419a138dd" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define VDP_INDEXED_FORMAT_I8A8</td> </tr> </table> </div> <div class="memdoc"> <p>A 8-bit indexed format, with alpha. </p> <p>This format has a single plane.</p> <p>This plane is an array of interleaved byte-sized A and I (index) components, in the order I, A, I, A.</p> <p>Applications should access this data via a uint8_t pointer. </p> </div> </div> <a class="anchor" id="gad58c5db62f871890503d07505253dd18"></a><!-- doxytag: member="vdpau.h::VDP_INVALID_HANDLE" ref="gad58c5db62f871890503d07505253dd18" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define VDP_INVALID_HANDLE 0xffffffffU</td> </tr> </table> </div> <div class="memdoc"> <p>An invalid object handle value. </p> <p>This value may be used to represent an invalid, or non-existent, object (<a class="el" href="group___vdp_device.html">VdpDevice</a>, <a class="el" href="group___vdp_video_surface.html">VdpVideoSurface</a>, etc.)</p> <p>Note that most APIs require valid object handles in all cases, and will fail when presented with this value. </p> </div> </div> <a class="anchor" id="ga49971277ddd8599b85ac462e3d3a1e08"></a><!-- doxytag: member="vdpau.h::VDP_RGBA_FORMAT_A8" ref="ga49971277ddd8599b85ac462e3d3a1e08" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define VDP_RGBA_FORMAT_A8</td> </tr> </table> </div> <div class="memdoc"> <p>An alpha-only surface format. </p> <p>This format has a single plane.</p> <p>This plane is an array of byte-sized components.</p> <p>Applications should access this data via a uint8_t pointer. </p> </div> </div> <a class="anchor" id="gab30225605192acfa831ff0979b6746a3"></a><!-- doxytag: member="vdpau.h::VDP_RGBA_FORMAT_B10G10R10A2" ref="gab30225605192acfa831ff0979b6746a3" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define VDP_RGBA_FORMAT_B10G10R10A2</td> </tr> </table> </div> <div class="memdoc"> <p>A packed RGB format. </p> <p>This format has a single plane.</p> <p>This plane is an array packed 32-bit pixel data. Within each 32-bit pixel, bits [31:30] contain A, bits [29:20] contain R, bits [19:10] contain G, and bits [9:0] contain B.</p> <p>Applications should access this data via a uint32_t pointer. </p> </div> </div> <a class="anchor" id="ga2659adf5d019acade5516ea35e4eb5ad"></a><!-- doxytag: member="vdpau.h::VDP_RGBA_FORMAT_B8G8R8A8" ref="ga2659adf5d019acade5516ea35e4eb5ad" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define VDP_RGBA_FORMAT_B8G8R8A8</td> </tr> </table> </div> <div class="memdoc"> <p>A packed RGB format. </p> <p>This format has a single plane.</p> <p>This plane is an array packed 32-bit pixel data. Within each 32-bit pixel, bits [31:24] contain A, bits [23:16] contain R, bits [15:8] contain G, and bits [7:0] contain B.</p> <p>Applications should access this data via a uint32_t pointer. </p> </div> </div> <a class="anchor" id="ga09019f9f209a091166205186ce635391"></a><!-- doxytag: member="vdpau.h::VDP_RGBA_FORMAT_R10G10B10A2" ref="ga09019f9f209a091166205186ce635391" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define VDP_RGBA_FORMAT_R10G10B10A2</td> </tr> </table> </div> <div class="memdoc"> <p>A packed RGB format. </p> <p>This format has a single plane.</p> <p>This plane is an array packed 32-bit pixel data. Within each 32-bit pixel, bits [31:30] contain A, bits [29:20] contain B, bits [19:10] contain G, and bits [9:0] contain R.</p> <p>Applications should access this data via a uint32_t pointer. </p> </div> </div> <a class="anchor" id="ga81f8bb49e3cfb7b6fe4265ecaf35418d"></a><!-- doxytag: member="vdpau.h::VDP_RGBA_FORMAT_R8G8B8A8" ref="ga81f8bb49e3cfb7b6fe4265ecaf35418d" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define VDP_RGBA_FORMAT_R8G8B8A8</td> </tr> </table> </div> <div class="memdoc"> <p>A packed RGB format. </p> <p>This format has a single plane.</p> <p>This plane is an array packed 32-bit pixel data. Within each 32-bit pixel, bits [31:24] contain A, bits [23:16] contain B, bits [15:8] contain G, and bits [7:0] contain R.</p> <p>Applications should access this data via a uint32_t pointer. </p> </div> </div> <a class="anchor" id="gab7550cf65e6d46f4fd7a1e322372e207"></a><!-- doxytag: member="vdpau.h::VDP_YCBCR_FORMAT_NV12" ref="gab7550cf65e6d46f4fd7a1e322372e207" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define VDP_YCBCR_FORMAT_NV12</td> </tr> </table> </div> <div class="memdoc"> <p>The "NV12" YCbCr surface format. </p> <p>This format has a two planes, a Y plane and a UV plane.</p> <p>The Y plane is an array of byte-sized Y components. Applications should access this data via a uint8_t pointer.</p> <p>The UV plane is an array of interleaved byte-sized U and V components, in the order U, V, U, V. Applications should access this data via a uint8_t pointer. </p> </div> </div> <a class="anchor" id="ga7aff6a245e224f64a848e798998ae161"></a><!-- doxytag: member="vdpau.h::VDP_YCBCR_FORMAT_UYVY" ref="ga7aff6a245e224f64a848e798998ae161" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define VDP_YCBCR_FORMAT_UYVY</td> </tr> </table> </div> <div class="memdoc"> <p>The "UYVY" YCbCr surface format. </p> <p>This format may also be known as Y422, UYNV, HDYC.</p> <p>This format has a single plane.</p> <p>This plane is an array of interleaved byte-sized Y, U, and V components, in the order U, Y, V, Y, U, Y, V, Y.</p> <p>Applications should access this data via a uint8_t pointer. </p> </div> </div> <a class="anchor" id="gac850cea2ca3ecfaf19ddb3bbec24f941"></a><!-- doxytag: member="vdpau.h::VDP_YCBCR_FORMAT_V8U8Y8A8" ref="gac850cea2ca3ecfaf19ddb3bbec24f941" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define VDP_YCBCR_FORMAT_V8U8Y8A8</td> </tr> </table> </div> <div class="memdoc"> <p>A packed YCbCr format. </p> <p>This format has a single plane.</p> <p>This plane is an array packed 32-bit pixel data. Within each 32-bit pixel, bits [31:24] contain A, bits [23:16] contain Y, bits [15:8] contain U, and bits [7:0] contain V.</p> <p>Applications should access this data via a uint32_t pointer. </p> </div> </div> <a class="anchor" id="ga0c7b86dab9d96b1aba96bca4cf048128"></a><!-- doxytag: member="vdpau.h::VDP_YCBCR_FORMAT_Y8U8V8A8" ref="ga0c7b86dab9d96b1aba96bca4cf048128" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define VDP_YCBCR_FORMAT_Y8U8V8A8</td> </tr> </table> </div> <div class="memdoc"> <p>A packed YCbCr format. </p> <p>This format has a single plane.</p> <p>This plane is an array packed 32-bit pixel data. Within each 32-bit pixel, bits [31:24] contain A, bits [23:16] contain V, bits [15:8] contain U, and bits [7:0] contain Y.</p> <p>Applications should access this data via a uint32_t pointer. </p> </div> </div> <a class="anchor" id="ga9abe4a7c6d907cd0bf9e1cba8a97916a"></a><!-- doxytag: member="vdpau.h::VDP_YCBCR_FORMAT_YUYV" ref="ga9abe4a7c6d907cd0bf9e1cba8a97916a" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define VDP_YCBCR_FORMAT_YUYV</td> </tr> </table> </div> <div class="memdoc"> <p>The "YUYV" YCbCr surface format. </p> <p>This format may also be known as YUY2, YUNV, V422.</p> <p>This format has a single plane.</p> <p>This plane is an array of interleaved byte-sized Y, U, and V components, in the order Y, U, Y, V, Y, U, Y, V.</p> <p>Applications should access this data via a uint8_t pointer. </p> </div> </div> <a class="anchor" id="ga5edf937a20f03ee97dd770dfac0045e9"></a><!-- doxytag: member="vdpau.h::VDP_YCBCR_FORMAT_YV12" ref="ga5edf937a20f03ee97dd770dfac0045e9" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define VDP_YCBCR_FORMAT_YV12</td> </tr> </table> </div> <div class="memdoc"> <p>The "YV12" YCbCr surface format. </p> <p>This format has a three planes, a Y plane, a V plane, and a U plane.</p> <p>Each of the planes is an array of byte-sized components.</p> <p>Applications should access this data via a uint8_t pointer. </p> </div> </div> <hr/><h2>Typedef Documentation</h2> <a class="anchor" id="ga4797a8cdba1360fe58cd6e40e5dce841"></a><!-- doxytag: member="vdpau.h::VdpChromaType" ref="ga4797a8cdba1360fe58cd6e40e5dce841" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">typedef uint32_t <a class="el" href="group__misc__types.html#ga4797a8cdba1360fe58cd6e40e5dce841">VdpChromaType</a></td> </tr> </table> </div> <div class="memdoc"> <p>The set of all chroma formats for <a class="el" href="group___vdp_video_surface.html">VdpVideoSurface</a>s. </p> </div> </div> <a class="anchor" id="ga5ddd978dd0f38ca5dc546df79c2c59c1"></a><!-- doxytag: member="vdpau.h::VdpIndexedFormat" ref="ga5ddd978dd0f38ca5dc546df79c2c59c1" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">typedef uint32_t <a class="el" href="group__misc__types.html#ga5ddd978dd0f38ca5dc546df79c2c59c1">VdpIndexedFormat</a></td> </tr> </table> </div> <div class="memdoc"> <p>The set of all known indexed surface formats. </p> </div> </div> <a class="anchor" id="ga718383d01ac1ff36094fb46f91a8a3aa"></a><!-- doxytag: member="vdpau.h::VdpRGBAFormat" ref="ga718383d01ac1ff36094fb46f91a8a3aa" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">typedef uint32_t <a class="el" href="group__misc__types.html#ga718383d01ac1ff36094fb46f91a8a3aa">VdpRGBAFormat</a></td> </tr> </table> </div> <div class="memdoc"> <p>The set of all known RGB surface formats. </p> </div> </div> <a class="anchor" id="ga0b66d7cdde1c41adcb2303f11dabc4b0"></a><!-- doxytag: member="vdpau.h::VdpYCbCrFormat" ref="ga0b66d7cdde1c41adcb2303f11dabc4b0" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">typedef uint32_t <a class="el" href="group__misc__types.html#ga0b66d7cdde1c41adcb2303f11dabc4b0">VdpYCbCrFormat</a></td> </tr> </table> </div> <div class="memdoc"> <p>The set of all known YCbCr surface formats. </p> </div> </div> </div> <hr size="1"/><address style="text-align: right;"><small>Generated by <a href="http://www.doxygen.org/index.html"> <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.2 </small></address> </body> </html>