1<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 2<html> 3<head> 4<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 5<title>GstVideoBufferPool: GStreamer Base Plugins 1.0 Library Reference Manual</title> 6<meta name="generator" content="DocBook XSL Stylesheets V1.79.1"> 7<link rel="home" href="index.html" title="GStreamer Base Plugins 1.0 Library Reference Manual"> 8<link rel="up" href="gstreamer-video.html" title="Video Library"> 9<link rel="prev" href="GstVideoEncoder.html" title="GstVideoEncoder"> 10<link rel="next" href="gst-plugins-base-libs-GstVideo-Codec-utility-function.html" title="GstVideo Codec utility function"> 11<meta name="generator" content="GTK-Doc V1.28 (XML mode)"> 12<link rel="stylesheet" href="style.css" type="text/css"> 13</head> 14<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"> 15<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle"> 16<td width="100%" align="left" class="shortcuts"> 17<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 18 <a href="#gst-plugins-base-libs-GstVideoPool.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 19 <a href="#gst-plugins-base-libs-GstVideoPool.object-hierarchy" class="shortcut">Object Hierarchy</a></span> 20</td> 21<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td> 22<td><a accesskey="u" href="gstreamer-video.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td> 23<td><a accesskey="p" href="GstVideoEncoder.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td> 24<td><a accesskey="n" href="gst-plugins-base-libs-GstVideo-Codec-utility-function.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td> 25</tr></table> 26<div class="refentry"> 27<a name="gst-plugins-base-libs-GstVideoPool"></a><div class="titlepage"></div> 28<div class="refnamediv"><table width="100%"><tr> 29<td valign="top"> 30<h2><span class="refentrytitle"><a name="gst-plugins-base-libs-GstVideoPool.top_of_page"></a>GstVideoBufferPool</span></h2> 31<p>GstVideoBufferPool — GstBufferPool for raw video buffers</p> 32</td> 33<td class="gallery_image" valign="top" align="right"></td> 34</tr></table></div> 35<div class="refsect1"> 36<a name="gst-plugins-base-libs-GstVideoPool.functions"></a><h2>Functions</h2> 37<div class="informaltable"><table class="informaltable" width="100%" border="0"> 38<colgroup> 39<col width="150px" class="functions_return"> 40<col class="functions_name"> 41</colgroup> 42<tbody> 43<tr> 44<td class="function_type"> 45<a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstBufferPool.html#GstBufferPool-struct"><span class="returnvalue">GstBufferPool</span></a> * 46</td> 47<td class="function_name"> 48<a class="link" href="gst-plugins-base-libs-GstVideoPool.html#gst-video-buffer-pool-new" title="gst_video_buffer_pool_new ()">gst_video_buffer_pool_new</a> <span class="c_punctuation">()</span> 49</td> 50</tr> 51<tr> 52<td class="function_type"> 53<a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> 54</td> 55<td class="function_name"> 56<a class="link" href="gst-plugins-base-libs-GstVideoPool.html#gst-buffer-pool-config-get-video-alignment" title="gst_buffer_pool_config_get_video_alignment ()">gst_buffer_pool_config_get_video_alignment</a> <span class="c_punctuation">()</span> 57</td> 58</tr> 59<tr> 60<td class="function_type"> 61<span class="returnvalue">void</span> 62</td> 63<td class="function_name"> 64<a class="link" href="gst-plugins-base-libs-GstVideoPool.html#gst-buffer-pool-config-set-video-alignment" title="gst_buffer_pool_config_set_video_alignment ()">gst_buffer_pool_config_set_video_alignment</a> <span class="c_punctuation">()</span> 65</td> 66</tr> 67</tbody> 68</table></div> 69</div> 70<a name="GstVideoBufferPool"></a><div class="refsect1"> 71<a name="gst-plugins-base-libs-GstVideoPool.other"></a><h2>Types and Values</h2> 72<div class="informaltable"><table class="informaltable" width="100%" border="0"> 73<colgroup> 74<col width="150px" class="name"> 75<col class="description"> 76</colgroup> 77<tbody> 78<tr> 79<td class="datatype_keyword">struct</td> 80<td class="function_name"><a class="link" href="gst-plugins-base-libs-GstVideoPool.html#GstVideoBufferPool-struct" title="struct GstVideoBufferPool">GstVideoBufferPool</a></td> 81</tr> 82<tr> 83<td class="datatype_keyword">struct</td> 84<td class="function_name"><a class="link" href="gst-plugins-base-libs-GstVideoPool.html#GstVideoBufferPoolClass" title="struct GstVideoBufferPoolClass">GstVideoBufferPoolClass</a></td> 85</tr> 86<tr> 87<td class="define_keyword">#define</td> 88<td class="function_name"><a class="link" href="gst-plugins-base-libs-GstVideoPool.html#GST-BUFFER-POOL-OPTION-VIDEO-ALIGNMENT:CAPS" title="GST_BUFFER_POOL_OPTION_VIDEO_ALIGNMENT">GST_BUFFER_POOL_OPTION_VIDEO_ALIGNMENT</a></td> 89</tr> 90<tr> 91<td class="define_keyword">#define</td> 92<td class="function_name"><a class="link" href="gst-plugins-base-libs-GstVideoPool.html#GST-BUFFER-POOL-OPTION-VIDEO-META:CAPS" title="GST_BUFFER_POOL_OPTION_VIDEO_META">GST_BUFFER_POOL_OPTION_VIDEO_META</a></td> 93</tr> 94</tbody> 95</table></div> 96</div> 97<div class="refsect1"> 98<a name="gst-plugins-base-libs-GstVideoPool.object-hierarchy"></a><h2>Object Hierarchy</h2> 99<pre class="screen"> <a href="/usr/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#GObject-struct">GObject</a> 100 <span class="lineart">╰──</span> <a href="/usr/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a> 101 <span class="lineart">╰──</span> <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstObject.html#GstObject-struct">GstObject</a> 102 <span class="lineart">╰──</span> <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstBufferPool.html#GstBufferPool-struct">GstBufferPool</a> 103 <span class="lineart">╰──</span> GstVideoBufferPool 104</pre> 105</div> 106<div class="refsect1"> 107<a name="gst-plugins-base-libs-GstVideoPool.includes"></a><h2>Includes</h2> 108<pre class="synopsis">#include <gst/video/video.h> 109</pre> 110</div> 111<div class="refsect1"> 112<a name="gst-plugins-base-libs-GstVideoPool.description"></a><h2>Description</h2> 113<p>Special GstBufferPool subclass for raw video buffers.</p> 114<p>Allows configuration of video-specific requirements such as 115stride alignments or pixel padding, and can also be configured 116to automatically add <a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoMeta" title="struct GstVideoMeta"><span class="type">GstVideoMeta</span></a> to the buffers.</p> 117</div> 118<div class="refsect1"> 119<a name="gst-plugins-base-libs-GstVideoPool.functions_details"></a><h2>Functions</h2> 120<div class="refsect2"> 121<a name="gst-video-buffer-pool-new"></a><h3>gst_video_buffer_pool_new ()</h3> 122<pre class="programlisting"><a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstBufferPool.html#GstBufferPool-struct"><span class="returnvalue">GstBufferPool</span></a> * 123gst_video_buffer_pool_new (<em class="parameter"><code><span class="type">void</span></code></em>);</pre> 124<p>Create a new bufferpool that can allocate video frames. This bufferpool 125supports all the video bufferpool options.</p> 126<div class="refsect3"> 127<a name="gst-video-buffer-pool-new.returns"></a><h4>Returns</h4> 128<p>a new <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstBufferPool.html#GstBufferPool-struct"><span class="type">GstBufferPool</span></a> to allocate video frames. </p> 129<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p> 130</div> 131</div> 132<hr> 133<div class="refsect2"> 134<a name="gst-buffer-pool-config-get-video-alignment"></a><h3>gst_buffer_pool_config_get_video_alignment ()</h3> 135<pre class="programlisting"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> 136gst_buffer_pool_config_get_video_alignment 137 (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstStructure.html#GstStructure-struct"><span class="type">GstStructure</span></a> *config</code></em>, 138 <em class="parameter"><code><a class="link" href="gst-plugins-base-libs-GstVideo.html#GstVideoAlignment" title="struct GstVideoAlignment"><span class="type">GstVideoAlignment</span></a> *align</code></em>);</pre> 139<p>Get the video alignment from the bufferpool configuration <em class="parameter"><code>config</code></em> 140 in 141in <em class="parameter"><code>align</code></em> 142</p> 143<div class="refsect3"> 144<a name="gst-buffer-pool-config-get-video-alignment.parameters"></a><h4>Parameters</h4> 145<div class="informaltable"><table class="informaltable" width="100%" border="0"> 146<colgroup> 147<col width="150px" class="parameters_name"> 148<col class="parameters_description"> 149<col width="200px" class="parameters_annotations"> 150</colgroup> 151<tbody> 152<tr> 153<td class="parameter_name"><p>config</p></td> 154<td class="parameter_description"><p>a <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstStructure.html#GstStructure-struct"><span class="type">GstStructure</span></a></p></td> 155<td class="parameter_annotations"> </td> 156</tr> 157<tr> 158<td class="parameter_name"><p>align</p></td> 159<td class="parameter_description"><p>a <a class="link" href="gst-plugins-base-libs-GstVideo.html#GstVideoAlignment" title="struct GstVideoAlignment"><span class="type">GstVideoAlignment</span></a></p></td> 160<td class="parameter_annotations"> </td> 161</tr> 162</tbody> 163</table></div> 164</div> 165<div class="refsect3"> 166<a name="gst-buffer-pool-config-get-video-alignment.returns"></a><h4>Returns</h4> 167<p> <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>config</code></em> 168could be parsed correctly.</p> 169</div> 170</div> 171<hr> 172<div class="refsect2"> 173<a name="gst-buffer-pool-config-set-video-alignment"></a><h3>gst_buffer_pool_config_set_video_alignment ()</h3> 174<pre class="programlisting"><span class="returnvalue">void</span> 175gst_buffer_pool_config_set_video_alignment 176 (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstStructure.html#GstStructure-struct"><span class="type">GstStructure</span></a> *config</code></em>, 177 <em class="parameter"><code><a class="link" href="gst-plugins-base-libs-GstVideo.html#GstVideoAlignment" title="struct GstVideoAlignment"><span class="type">GstVideoAlignment</span></a> *align</code></em>);</pre> 178<p>Set the video alignment in <em class="parameter"><code>align</code></em> 179 to the bufferpool configuration 180<em class="parameter"><code>config</code></em> 181</p> 182<div class="refsect3"> 183<a name="gst-buffer-pool-config-set-video-alignment.parameters"></a><h4>Parameters</h4> 184<div class="informaltable"><table class="informaltable" width="100%" border="0"> 185<colgroup> 186<col width="150px" class="parameters_name"> 187<col class="parameters_description"> 188<col width="200px" class="parameters_annotations"> 189</colgroup> 190<tbody> 191<tr> 192<td class="parameter_name"><p>config</p></td> 193<td class="parameter_description"><p>a <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstStructure.html#GstStructure-struct"><span class="type">GstStructure</span></a></p></td> 194<td class="parameter_annotations"> </td> 195</tr> 196<tr> 197<td class="parameter_name"><p>align</p></td> 198<td class="parameter_description"><p>a <a class="link" href="gst-plugins-base-libs-GstVideo.html#GstVideoAlignment" title="struct GstVideoAlignment"><span class="type">GstVideoAlignment</span></a></p></td> 199<td class="parameter_annotations"> </td> 200</tr> 201</tbody> 202</table></div> 203</div> 204</div> 205</div> 206<div class="refsect1"> 207<a name="gst-plugins-base-libs-GstVideoPool.other_details"></a><h2>Types and Values</h2> 208<div class="refsect2"> 209<a name="GstVideoBufferPool-struct"></a><h3>struct GstVideoBufferPool</h3> 210<pre class="programlisting">struct GstVideoBufferPool;</pre> 211</div> 212<hr> 213<div class="refsect2"> 214<a name="GstVideoBufferPoolClass"></a><h3>struct GstVideoBufferPoolClass</h3> 215<pre class="programlisting">struct GstVideoBufferPoolClass { 216 GstBufferPoolClass parent_class; 217}; 218</pre> 219</div> 220<hr> 221<div class="refsect2"> 222<a name="GST-BUFFER-POOL-OPTION-VIDEO-ALIGNMENT:CAPS"></a><h3>GST_BUFFER_POOL_OPTION_VIDEO_ALIGNMENT</h3> 223<pre class="programlisting">#define GST_BUFFER_POOL_OPTION_VIDEO_ALIGNMENT "GstBufferPoolOptionVideoAlignment" 224</pre> 225<p>A bufferpool option to enable extra padding. When a bufferpool supports this 226option, <a class="link" href="gst-plugins-base-libs-GstVideoPool.html#gst-buffer-pool-config-set-video-alignment" title="gst_buffer_pool_config_set_video_alignment ()"><code class="function">gst_buffer_pool_config_set_video_alignment()</code></a> can be called.</p> 227<p>When this option is enabled on the bufferpool, 228<a class="link" href="gst-plugins-base-libs-GstVideoPool.html#GST-BUFFER-POOL-OPTION-VIDEO-META:CAPS" title="GST_BUFFER_POOL_OPTION_VIDEO_META"><span class="type">GST_BUFFER_POOL_OPTION_VIDEO_META</span></a> should also be enabled.</p> 229</div> 230<hr> 231<div class="refsect2"> 232<a name="GST-BUFFER-POOL-OPTION-VIDEO-META:CAPS"></a><h3>GST_BUFFER_POOL_OPTION_VIDEO_META</h3> 233<pre class="programlisting">#define GST_BUFFER_POOL_OPTION_VIDEO_META "GstBufferPoolOptionVideoMeta" 234</pre> 235<p>An option that can be activated on bufferpool to request video metadata 236on buffers from the pool.</p> 237</div> 238</div> 239<div class="refsect1"> 240<a name="gst-plugins-base-libs-GstVideoPool.see-also"></a><h2>See Also</h2> 241<p><a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstBufferPool.html#GstBufferPool-struct"><span class="type">GstBufferPool</span></a></p> 242</div> 243</div> 244<div class="footer"> 245<hr>Generated by GTK-Doc V1.28</div> 246</body> 247</html>