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>GstMeta for video: 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="gst-plugins-base-libs-GstVideo.html" title="GstVideo"> 10<link rel="next" href="gst-plugins-base-libs-GstVideoAffineTransformationMeta.html" title="GstVideoAffineTransformationMeta"> 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-GstMeta-for-video.description" class="shortcut">Description</a></span> 19</td> 20<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td> 21<td><a accesskey="u" href="gstreamer-video.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td> 22<td><a accesskey="p" href="gst-plugins-base-libs-GstVideo.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td> 23<td><a accesskey="n" href="gst-plugins-base-libs-GstVideoAffineTransformationMeta.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td> 24</tr></table> 25<div class="refentry"> 26<a name="gst-plugins-base-libs-GstMeta-for-video"></a><div class="titlepage"></div> 27<div class="refnamediv"><table width="100%"><tr> 28<td valign="top"> 29<h2><span class="refentrytitle"><a name="gst-plugins-base-libs-GstMeta-for-video.top_of_page"></a>GstMeta for video</span></h2> 30<p>GstMeta for video — Video related GstMeta</p> 31</td> 32<td class="gallery_image" valign="top" align="right"></td> 33</tr></table></div> 34<div class="refsect1"> 35<a name="gst-plugins-base-libs-GstMeta-for-video.functions"></a><h2>Functions</h2> 36<div class="informaltable"><table class="informaltable" width="100%" border="0"> 37<colgroup> 38<col width="150px" class="functions_return"> 39<col class="functions_name"> 40</colgroup> 41<tbody> 42<tr> 43<td class="function_type"> 44<a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> 45</td> 46<td class="function_name"> 47<a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#gst-video-meta-map" title="gst_video_meta_map ()">gst_video_meta_map</a> <span class="c_punctuation">()</span> 48</td> 49</tr> 50<tr> 51<td class="function_type"> 52<a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> 53</td> 54<td class="function_name"> 55<a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#gst-video-meta-unmap" title="gst_video_meta_unmap ()">gst_video_meta_unmap</a> <span class="c_punctuation">()</span> 56</td> 57</tr> 58<tr> 59<td class="function_type">const <a href="/usr/share/gtk-doc/html/gstreamer-1.0/gstreamer-GstMeta.html#GstMetaInfo"><span class="returnvalue">GstMetaInfo</span></a> * 60</td> 61<td class="function_name"> 62<a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#gst-video-meta-get-info" title="gst_video_meta_get_info ()">gst_video_meta_get_info</a> <span class="c_punctuation">()</span> 63</td> 64</tr> 65<tr> 66<td class="function_type"> 67<a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoMeta" title="struct GstVideoMeta"><span class="returnvalue">GstVideoMeta</span></a> * 68</td> 69<td class="function_name"> 70<a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#gst-buffer-add-video-meta" title="gst_buffer_add_video_meta ()">gst_buffer_add_video_meta</a> <span class="c_punctuation">()</span> 71</td> 72</tr> 73<tr> 74<td class="function_type"> 75<a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoMeta" title="struct GstVideoMeta"><span class="returnvalue">GstVideoMeta</span></a> * 76</td> 77<td class="function_name"> 78<a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#gst-buffer-add-video-meta-full" title="gst_buffer_add_video_meta_full ()">gst_buffer_add_video_meta_full</a> <span class="c_punctuation">()</span> 79</td> 80</tr> 81<tr> 82<td class="function_type"> 83<a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoMeta" title="struct GstVideoMeta"><span class="returnvalue">GstVideoMeta</span></a> * 84</td> 85<td class="function_name"> 86<a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#gst-buffer-get-video-meta" title="gst_buffer_get_video_meta ()">gst_buffer_get_video_meta</a> <span class="c_punctuation">()</span> 87</td> 88</tr> 89<tr> 90<td class="function_type"> 91<a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoMeta" title="struct GstVideoMeta"><span class="returnvalue">GstVideoMeta</span></a> * 92</td> 93<td class="function_name"> 94<a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#gst-buffer-get-video-meta-id" title="gst_buffer_get_video_meta_id ()">gst_buffer_get_video_meta_id</a> <span class="c_punctuation">()</span> 95</td> 96</tr> 97<tr> 98<td class="define_keyword">#define</td> 99<td class="function_name"> 100<a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#gst-buffer-add-video-crop-meta" title="gst_buffer_add_video_crop_meta()">gst_buffer_add_video_crop_meta</a><span class="c_punctuation">()</span> 101</td> 102</tr> 103<tr> 104<td class="define_keyword">#define</td> 105<td class="function_name"> 106<a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#gst-buffer-get-video-crop-meta" title="gst_buffer_get_video_crop_meta()">gst_buffer_get_video_crop_meta</a><span class="c_punctuation">()</span> 107</td> 108</tr> 109<tr> 110<td class="function_type"> 111<a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoRegionOfInterestMeta" title="GstVideoRegionOfInterestMeta"><span class="returnvalue">GstVideoRegionOfInterestMeta</span></a> * 112</td> 113<td class="function_name"> 114<a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#gst-buffer-add-video-region-of-interest-meta" title="gst_buffer_add_video_region_of_interest_meta ()">gst_buffer_add_video_region_of_interest_meta</a> <span class="c_punctuation">()</span> 115</td> 116</tr> 117<tr> 118<td class="function_type"> 119<a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoRegionOfInterestMeta" title="GstVideoRegionOfInterestMeta"><span class="returnvalue">GstVideoRegionOfInterestMeta</span></a> * 120</td> 121<td class="function_name"> 122<a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#gst-buffer-add-video-region-of-interest-meta-id" title="gst_buffer_add_video_region_of_interest_meta_id ()">gst_buffer_add_video_region_of_interest_meta_id</a> <span class="c_punctuation">()</span> 123</td> 124</tr> 125<tr> 126<td class="define_keyword">#define</td> 127<td class="function_name"> 128<a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#gst-buffer-get-video-region-of-interest-meta" title="gst_buffer_get_video_region_of_interest_meta()">gst_buffer_get_video_region_of_interest_meta</a><span class="c_punctuation">()</span> 129</td> 130</tr> 131<tr> 132<td class="function_type"> 133<a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoRegionOfInterestMeta" title="GstVideoRegionOfInterestMeta"><span class="returnvalue">GstVideoRegionOfInterestMeta</span></a> * 134</td> 135<td class="function_name"> 136<a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#gst-buffer-get-video-region-of-interest-meta-id" title="gst_buffer_get_video_region_of_interest_meta_id ()">gst_buffer_get_video_region_of_interest_meta_id</a> <span class="c_punctuation">()</span> 137</td> 138</tr> 139<tr> 140<td class="function_type"> 141<span class="returnvalue">void</span> 142</td> 143<td class="function_name"> 144<a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#gst-video-region-of-interest-meta-add-param" title="gst_video_region_of_interest_meta_add_param ()">gst_video_region_of_interest_meta_add_param</a> <span class="c_punctuation">()</span> 145</td> 146</tr> 147<tr> 148<td class="function_type"> 149<a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstStructure.html#GstStructure-struct"><span class="returnvalue">GstStructure</span></a> * 150</td> 151<td class="function_name"> 152<a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#gst-video-region-of-interest-meta-get-param" title="gst_video_region_of_interest_meta_get_param ()">gst_video_region_of_interest_meta_get_param</a> <span class="c_punctuation">()</span> 153</td> 154</tr> 155<tr> 156<td class="function_type"> 157<a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> 158</td> 159<td class="function_name"> 160<span class="c_punctuation">(</span><a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoGLTextureUpload" title="GstVideoGLTextureUpload ()">*GstVideoGLTextureUpload</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span> 161</td> 162</tr> 163<tr> 164<td class="function_type"> 165<a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoGLTextureUploadMeta" title="struct GstVideoGLTextureUploadMeta"><span class="returnvalue">GstVideoGLTextureUploadMeta</span></a> * 166</td> 167<td class="function_name"> 168<a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#gst-buffer-add-video-gl-texture-upload-meta" title="gst_buffer_add_video_gl_texture_upload_meta ()">gst_buffer_add_video_gl_texture_upload_meta</a> <span class="c_punctuation">()</span> 169</td> 170</tr> 171<tr> 172<td class="define_keyword">#define</td> 173<td class="function_name"> 174<a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#gst-buffer-get-video-gl-texture-upload-meta" title="gst_buffer_get_video_gl_texture_upload_meta()">gst_buffer_get_video_gl_texture_upload_meta</a><span class="c_punctuation">()</span> 175</td> 176</tr> 177<tr> 178<td class="function_type"> 179<a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> 180</td> 181<td class="function_name"> 182<a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#gst-video-gl-texture-upload-meta-upload" title="gst_video_gl_texture_upload_meta_upload ()">gst_video_gl_texture_upload_meta_upload</a> <span class="c_punctuation">()</span> 183</td> 184</tr> 185<tr> 186<td class="function_type"> 187<a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoTimeCodeMeta" title="GstVideoTimeCodeMeta"><span class="returnvalue">GstVideoTimeCodeMeta</span></a> * 188</td> 189<td class="function_name"> 190<a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#gst-buffer-add-video-time-code-meta" title="gst_buffer_add_video_time_code_meta ()">gst_buffer_add_video_time_code_meta</a> <span class="c_punctuation">()</span> 191</td> 192</tr> 193<tr> 194<td class="function_type"> 195<a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoTimeCodeMeta" title="GstVideoTimeCodeMeta"><span class="returnvalue">GstVideoTimeCodeMeta</span></a> * 196</td> 197<td class="function_name"> 198<a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#gst-buffer-add-video-time-code-meta-full" title="gst_buffer_add_video_time_code_meta_full ()">gst_buffer_add_video_time_code_meta_full</a> <span class="c_punctuation">()</span> 199</td> 200</tr> 201<tr> 202<td class="define_keyword">#define</td> 203<td class="function_name"> 204<a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#gst-buffer-get-video-time-code-meta" title="gst_buffer_get_video_time_code_meta()">gst_buffer_get_video_time_code_meta</a><span class="c_punctuation">()</span> 205</td> 206</tr> 207</tbody> 208</table></div> 209</div> 210<div class="refsect1"> 211<a name="gst-plugins-base-libs-GstMeta-for-video.other"></a><h2>Types and Values</h2> 212<div class="informaltable"><table class="informaltable" width="100%" border="0"> 213<colgroup> 214<col width="150px" class="name"> 215<col class="description"> 216</colgroup> 217<tbody> 218<tr> 219<td class="datatype_keyword">struct</td> 220<td class="function_name"><a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoMeta" title="struct GstVideoMeta">GstVideoMeta</a></td> 221</tr> 222<tr> 223<td class="define_keyword">#define</td> 224<td class="function_name"><a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GST-CAPS-FEATURE-META-GST-VIDEO-META:CAPS" title="GST_CAPS_FEATURE_META_GST_VIDEO_META">GST_CAPS_FEATURE_META_GST_VIDEO_META</a></td> 225</tr> 226<tr> 227<td class="datatype_keyword"> </td> 228<td class="function_name"><a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoMetaTransform" title="GstVideoMetaTransform">GstVideoMetaTransform</a></td> 229</tr> 230<tr> 231<td class="datatype_keyword">struct</td> 232<td class="function_name"><a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoCropMeta" title="struct GstVideoCropMeta">GstVideoCropMeta</a></td> 233</tr> 234<tr> 235<td class="datatype_keyword"> </td> 236<td class="function_name"><a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoRegionOfInterestMeta" title="GstVideoRegionOfInterestMeta">GstVideoRegionOfInterestMeta</a></td> 237</tr> 238<tr> 239<td class="define_keyword">#define</td> 240<td class="function_name"><a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GST-CAPS-FEATURE-META-GST-VIDEO-GL-TEXTURE-UPLOAD-META:CAPS" title="GST_CAPS_FEATURE_META_GST_VIDEO_GL_TEXTURE_UPLOAD_META">GST_CAPS_FEATURE_META_GST_VIDEO_GL_TEXTURE_UPLOAD_META</a></td> 241</tr> 242<tr> 243<td class="define_keyword">#define</td> 244<td class="function_name"><a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GST-BUFFER-POOL-OPTION-VIDEO-GL-TEXTURE-UPLOAD-META:CAPS" title="GST_BUFFER_POOL_OPTION_VIDEO_GL_TEXTURE_UPLOAD_META">GST_BUFFER_POOL_OPTION_VIDEO_GL_TEXTURE_UPLOAD_META</a></td> 245</tr> 246<tr> 247<td class="datatype_keyword">enum</td> 248<td class="function_name"><a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoGLTextureOrientation" title="enum GstVideoGLTextureOrientation">GstVideoGLTextureOrientation</a></td> 249</tr> 250<tr> 251<td class="datatype_keyword">enum</td> 252<td class="function_name"><a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoGLTextureType" title="enum GstVideoGLTextureType">GstVideoGLTextureType</a></td> 253</tr> 254<tr> 255<td class="datatype_keyword">struct</td> 256<td class="function_name"><a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoGLTextureUploadMeta" title="struct GstVideoGLTextureUploadMeta">GstVideoGLTextureUploadMeta</a></td> 257</tr> 258<tr> 259<td class="datatype_keyword"> </td> 260<td class="function_name"><a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoTimeCodeMeta" title="GstVideoTimeCodeMeta">GstVideoTimeCodeMeta</a></td> 261</tr> 262</tbody> 263</table></div> 264</div> 265<div class="refsect1"> 266<a name="gst-plugins-base-libs-GstMeta-for-video.includes"></a><h2>Includes</h2> 267<pre class="synopsis">#include <gst/video/video.h> 268</pre> 269</div> 270<div class="refsect1"> 271<a name="gst-plugins-base-libs-GstMeta-for-video.description"></a><h2>Description</h2> 272</div> 273<div class="refsect1"> 274<a name="gst-plugins-base-libs-GstMeta-for-video.functions_details"></a><h2>Functions</h2> 275<div class="refsect2"> 276<a name="gst-video-meta-map"></a><h3>gst_video_meta_map ()</h3> 277<pre class="programlisting"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> 278gst_video_meta_map (<em class="parameter"><code><a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoMeta" title="struct GstVideoMeta"><span class="type">GstVideoMeta</span></a> *meta</code></em>, 279 <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> plane</code></em>, 280 <em class="parameter"><code><a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstMemory.html#GstMapInfo"><span class="type">GstMapInfo</span></a> *info</code></em>, 281 <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> *data</code></em>, 282 <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *stride</code></em>, 283 <em class="parameter"><code><a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstMemory.html#GstMapFlags"><span class="type">GstMapFlags</span></a> flags</code></em>);</pre> 284<p>Map the video plane with index <em class="parameter"><code>plane</code></em> 285 in <em class="parameter"><code>meta</code></em> 286 and return a pointer to the 287first byte of the plane and the stride of the plane.</p> 288<div class="refsect3"> 289<a name="gst-video-meta-map.parameters"></a><h4>Parameters</h4> 290<div class="informaltable"><table class="informaltable" width="100%" border="0"> 291<colgroup> 292<col width="150px" class="parameters_name"> 293<col class="parameters_description"> 294<col width="200px" class="parameters_annotations"> 295</colgroup> 296<tbody> 297<tr> 298<td class="parameter_name"><p>meta</p></td> 299<td class="parameter_description"><p>a <a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoMeta" title="struct GstVideoMeta"><span class="type">GstVideoMeta</span></a></p></td> 300<td class="parameter_annotations"> </td> 301</tr> 302<tr> 303<td class="parameter_name"><p>plane</p></td> 304<td class="parameter_description"><p>a plane</p></td> 305<td class="parameter_annotations"> </td> 306</tr> 307<tr> 308<td class="parameter_name"><p>info</p></td> 309<td class="parameter_description"><p>a <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstMemory.html#GstMapInfo"><span class="type">GstMapInfo</span></a></p></td> 310<td class="parameter_annotations"> </td> 311</tr> 312<tr> 313<td class="parameter_name"><p>data</p></td> 314<td class="parameter_description"><p>the data of <em class="parameter"><code>plane</code></em> 315. </p></td> 316<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td> 317</tr> 318<tr> 319<td class="parameter_name"><p>stride</p></td> 320<td class="parameter_description"><p>the stride of <em class="parameter"><code>plane</code></em> 321. </p></td> 322<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td> 323</tr> 324<tr> 325<td class="parameter_name"><p>flags</p></td> 326<td class="parameter_description"><p><em class="parameter"><code>GstMapFlags</code></em> 327</p></td> 328<td class="parameter_annotations"> </td> 329</tr> 330</tbody> 331</table></div> 332</div> 333<div class="refsect3"> 334<a name="gst-video-meta-map.returns"></a><h4>Returns</h4> 335<p> TRUE if the map operation was successful.</p> 336</div> 337</div> 338<hr> 339<div class="refsect2"> 340<a name="gst-video-meta-unmap"></a><h3>gst_video_meta_unmap ()</h3> 341<pre class="programlisting"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> 342gst_video_meta_unmap (<em class="parameter"><code><a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoMeta" title="struct GstVideoMeta"><span class="type">GstVideoMeta</span></a> *meta</code></em>, 343 <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> plane</code></em>, 344 <em class="parameter"><code><a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstMemory.html#GstMapInfo"><span class="type">GstMapInfo</span></a> *info</code></em>);</pre> 345<p>Unmap a previously mapped plane with <a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#gst-video-meta-map" title="gst_video_meta_map ()"><code class="function">gst_video_meta_map()</code></a>.</p> 346<div class="refsect3"> 347<a name="gst-video-meta-unmap.parameters"></a><h4>Parameters</h4> 348<div class="informaltable"><table class="informaltable" width="100%" border="0"> 349<colgroup> 350<col width="150px" class="parameters_name"> 351<col class="parameters_description"> 352<col width="200px" class="parameters_annotations"> 353</colgroup> 354<tbody> 355<tr> 356<td class="parameter_name"><p>meta</p></td> 357<td class="parameter_description"><p>a <a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoMeta" title="struct GstVideoMeta"><span class="type">GstVideoMeta</span></a></p></td> 358<td class="parameter_annotations"> </td> 359</tr> 360<tr> 361<td class="parameter_name"><p>plane</p></td> 362<td class="parameter_description"><p>a plane</p></td> 363<td class="parameter_annotations"> </td> 364</tr> 365<tr> 366<td class="parameter_name"><p>info</p></td> 367<td class="parameter_description"><p>a <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstMemory.html#GstMapInfo"><span class="type">GstMapInfo</span></a></p></td> 368<td class="parameter_annotations"> </td> 369</tr> 370</tbody> 371</table></div> 372</div> 373<div class="refsect3"> 374<a name="gst-video-meta-unmap.returns"></a><h4>Returns</h4> 375<p> TRUE if the memory was successfully unmapped.</p> 376</div> 377</div> 378<hr> 379<div class="refsect2"> 380<a name="gst-video-meta-get-info"></a><h3>gst_video_meta_get_info ()</h3> 381<pre class="programlisting">const <a href="/usr/share/gtk-doc/html/gstreamer-1.0/gstreamer-GstMeta.html#GstMetaInfo"><span class="returnvalue">GstMetaInfo</span></a> * 382gst_video_meta_get_info (<em class="parameter"><code><span class="type">void</span></code></em>);</pre> 383</div> 384<hr> 385<div class="refsect2"> 386<a name="gst-buffer-add-video-meta"></a><h3>gst_buffer_add_video_meta ()</h3> 387<pre class="programlisting"><a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoMeta" title="struct GstVideoMeta"><span class="returnvalue">GstVideoMeta</span></a> * 388gst_buffer_add_video_meta (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstBuffer.html#GstBuffer-struct"><span class="type">GstBuffer</span></a> *buffer</code></em>, 389 <em class="parameter"><code><a class="link" href="gst-plugins-base-libs-GstVideo.html#GstVideoFrameFlags" title="enum GstVideoFrameFlags"><span class="type">GstVideoFrameFlags</span></a> flags</code></em>, 390 <em class="parameter"><code><a class="link" href="gst-plugins-base-libs-GstVideo.html#GstVideoFormat" title="enum GstVideoFormat"><span class="type">GstVideoFormat</span></a> format</code></em>, 391 <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> width</code></em>, 392 <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> height</code></em>);</pre> 393<p>Attaches GstVideoMeta metadata to <em class="parameter"><code>buffer</code></em> 394 with the given parameters and the 395default offsets and strides for <em class="parameter"><code>format</code></em> 396 and <em class="parameter"><code>width</code></em> 397 x <em class="parameter"><code>height</code></em> 398.</p> 399<p>This function calculates the default offsets and strides and then calls 400<a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#gst-buffer-add-video-meta-full" title="gst_buffer_add_video_meta_full ()"><code class="function">gst_buffer_add_video_meta_full()</code></a> with them.</p> 401<div class="refsect3"> 402<a name="gst-buffer-add-video-meta.parameters"></a><h4>Parameters</h4> 403<div class="informaltable"><table class="informaltable" width="100%" border="0"> 404<colgroup> 405<col width="150px" class="parameters_name"> 406<col class="parameters_description"> 407<col width="200px" class="parameters_annotations"> 408</colgroup> 409<tbody> 410<tr> 411<td class="parameter_name"><p>buffer</p></td> 412<td class="parameter_description"><p>a <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstBuffer.html#GstBuffer-struct"><span class="type">GstBuffer</span></a></p></td> 413<td class="parameter_annotations"> </td> 414</tr> 415<tr> 416<td class="parameter_name"><p>flags</p></td> 417<td class="parameter_description"><p><a class="link" href="gst-plugins-base-libs-GstVideo.html#GstVideoFrameFlags" title="enum GstVideoFrameFlags"><span class="type">GstVideoFrameFlags</span></a></p></td> 418<td class="parameter_annotations"> </td> 419</tr> 420<tr> 421<td class="parameter_name"><p>format</p></td> 422<td class="parameter_description"><p>a <a class="link" href="gst-plugins-base-libs-GstVideo.html#GstVideoFormat" title="enum GstVideoFormat"><span class="type">GstVideoFormat</span></a></p></td> 423<td class="parameter_annotations"> </td> 424</tr> 425<tr> 426<td class="parameter_name"><p>width</p></td> 427<td class="parameter_description"><p>the width</p></td> 428<td class="parameter_annotations"> </td> 429</tr> 430<tr> 431<td class="parameter_name"><p>height</p></td> 432<td class="parameter_description"><p>the height</p></td> 433<td class="parameter_annotations"> </td> 434</tr> 435</tbody> 436</table></div> 437</div> 438<div class="refsect3"> 439<a name="gst-buffer-add-video-meta.returns"></a><h4>Returns</h4> 440<p>the <a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoMeta" title="struct GstVideoMeta"><span class="type">GstVideoMeta</span></a> on <em class="parameter"><code>buffer</code></em> 441. </p> 442<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p> 443</div> 444</div> 445<hr> 446<div class="refsect2"> 447<a name="gst-buffer-add-video-meta-full"></a><h3>gst_buffer_add_video_meta_full ()</h3> 448<pre class="programlisting"><a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoMeta" title="struct GstVideoMeta"><span class="returnvalue">GstVideoMeta</span></a> * 449gst_buffer_add_video_meta_full (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstBuffer.html#GstBuffer-struct"><span class="type">GstBuffer</span></a> *buffer</code></em>, 450 <em class="parameter"><code><a class="link" href="gst-plugins-base-libs-GstVideo.html#GstVideoFrameFlags" title="enum GstVideoFrameFlags"><span class="type">GstVideoFrameFlags</span></a> flags</code></em>, 451 <em class="parameter"><code><a class="link" href="gst-plugins-base-libs-GstVideo.html#GstVideoFormat" title="enum GstVideoFormat"><span class="type">GstVideoFormat</span></a> format</code></em>, 452 <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> width</code></em>, 453 <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> height</code></em>, 454 <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> n_planes</code></em>, 455 <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gsize"><span class="type">gsize</span></a> offset[GST_VIDEO_MAX_PLANES]</code></em>, 456 <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> stride[GST_VIDEO_MAX_PLANES]</code></em>);</pre> 457<p>Attaches GstVideoMeta metadata to <em class="parameter"><code>buffer</code></em> 458 with the given parameters.</p> 459<div class="refsect3"> 460<a name="gst-buffer-add-video-meta-full.parameters"></a><h4>Parameters</h4> 461<div class="informaltable"><table class="informaltable" width="100%" border="0"> 462<colgroup> 463<col width="150px" class="parameters_name"> 464<col class="parameters_description"> 465<col width="200px" class="parameters_annotations"> 466</colgroup> 467<tbody> 468<tr> 469<td class="parameter_name"><p>buffer</p></td> 470<td class="parameter_description"><p>a <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstBuffer.html#GstBuffer-struct"><span class="type">GstBuffer</span></a></p></td> 471<td class="parameter_annotations"> </td> 472</tr> 473<tr> 474<td class="parameter_name"><p>flags</p></td> 475<td class="parameter_description"><p><a class="link" href="gst-plugins-base-libs-GstVideo.html#GstVideoFrameFlags" title="enum GstVideoFrameFlags"><span class="type">GstVideoFrameFlags</span></a></p></td> 476<td class="parameter_annotations"> </td> 477</tr> 478<tr> 479<td class="parameter_name"><p>format</p></td> 480<td class="parameter_description"><p>a <a class="link" href="gst-plugins-base-libs-GstVideo.html#GstVideoFormat" title="enum GstVideoFormat"><span class="type">GstVideoFormat</span></a></p></td> 481<td class="parameter_annotations"> </td> 482</tr> 483<tr> 484<td class="parameter_name"><p>width</p></td> 485<td class="parameter_description"><p>the width</p></td> 486<td class="parameter_annotations"> </td> 487</tr> 488<tr> 489<td class="parameter_name"><p>height</p></td> 490<td class="parameter_description"><p>the height</p></td> 491<td class="parameter_annotations"> </td> 492</tr> 493<tr> 494<td class="parameter_name"><p>n_planes</p></td> 495<td class="parameter_description"><p>number of planes</p></td> 496<td class="parameter_annotations"> </td> 497</tr> 498<tr> 499<td class="parameter_name"><p>offset</p></td> 500<td class="parameter_description"><p>offset of each plane. </p></td> 501<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> fixed-size=4]</span></td> 502</tr> 503<tr> 504<td class="parameter_name"><p>stride</p></td> 505<td class="parameter_description"><p>stride of each plane. </p></td> 506<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> fixed-size=4]</span></td> 507</tr> 508</tbody> 509</table></div> 510</div> 511<div class="refsect3"> 512<a name="gst-buffer-add-video-meta-full.returns"></a><h4>Returns</h4> 513<p>the <a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoMeta" title="struct GstVideoMeta"><span class="type">GstVideoMeta</span></a> on <em class="parameter"><code>buffer</code></em> 514. </p> 515<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p> 516</div> 517</div> 518<hr> 519<div class="refsect2"> 520<a name="gst-buffer-get-video-meta"></a><h3>gst_buffer_get_video_meta ()</h3> 521<pre class="programlisting"><a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoMeta" title="struct GstVideoMeta"><span class="returnvalue">GstVideoMeta</span></a> * 522gst_buffer_get_video_meta (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstBuffer.html#GstBuffer-struct"><span class="type">GstBuffer</span></a> *buffer</code></em>);</pre> 523<p>Find the <a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoMeta" title="struct GstVideoMeta"><span class="type">GstVideoMeta</span></a> on <em class="parameter"><code>buffer</code></em> 524 with the lowest <em class="parameter"><code>id</code></em> 525.</p> 526<p>Buffers can contain multiple <a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoMeta" title="struct GstVideoMeta"><span class="type">GstVideoMeta</span></a> metadata items when dealing with 527multiview buffers.</p> 528<div class="refsect3"> 529<a name="gst-buffer-get-video-meta.parameters"></a><h4>Parameters</h4> 530<div class="informaltable"><table class="informaltable" width="100%" border="0"> 531<colgroup> 532<col width="150px" class="parameters_name"> 533<col class="parameters_description"> 534<col width="200px" class="parameters_annotations"> 535</colgroup> 536<tbody><tr> 537<td class="parameter_name"><p>buffer</p></td> 538<td class="parameter_description"><p>a <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstBuffer.html#GstBuffer-struct"><span class="type">GstBuffer</span></a></p></td> 539<td class="parameter_annotations"> </td> 540</tr></tbody> 541</table></div> 542</div> 543<div class="refsect3"> 544<a name="gst-buffer-get-video-meta.returns"></a><h4>Returns</h4> 545<p>the <a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoMeta" title="struct GstVideoMeta"><span class="type">GstVideoMeta</span></a> with lowest id (usually 0) or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> when there 546is no such metadata on <em class="parameter"><code>buffer</code></em> 547. </p> 548<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p> 549</div> 550</div> 551<hr> 552<div class="refsect2"> 553<a name="gst-buffer-get-video-meta-id"></a><h3>gst_buffer_get_video_meta_id ()</h3> 554<pre class="programlisting"><a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoMeta" title="struct GstVideoMeta"><span class="returnvalue">GstVideoMeta</span></a> * 555gst_buffer_get_video_meta_id (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstBuffer.html#GstBuffer-struct"><span class="type">GstBuffer</span></a> *buffer</code></em>, 556 <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> id</code></em>);</pre> 557<p>Find the <a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoMeta" title="struct GstVideoMeta"><span class="type">GstVideoMeta</span></a> on <em class="parameter"><code>buffer</code></em> 558 with the given <em class="parameter"><code>id</code></em> 559.</p> 560<p>Buffers can contain multiple <a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoMeta" title="struct GstVideoMeta"><span class="type">GstVideoMeta</span></a> metadata items when dealing with 561multiview buffers.</p> 562<div class="refsect3"> 563<a name="gst-buffer-get-video-meta-id.parameters"></a><h4>Parameters</h4> 564<div class="informaltable"><table class="informaltable" width="100%" border="0"> 565<colgroup> 566<col width="150px" class="parameters_name"> 567<col class="parameters_description"> 568<col width="200px" class="parameters_annotations"> 569</colgroup> 570<tbody> 571<tr> 572<td class="parameter_name"><p>buffer</p></td> 573<td class="parameter_description"><p>a <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstBuffer.html#GstBuffer-struct"><span class="type">GstBuffer</span></a></p></td> 574<td class="parameter_annotations"> </td> 575</tr> 576<tr> 577<td class="parameter_name"><p>id</p></td> 578<td class="parameter_description"><p>a metadata id</p></td> 579<td class="parameter_annotations"> </td> 580</tr> 581</tbody> 582</table></div> 583</div> 584<div class="refsect3"> 585<a name="gst-buffer-get-video-meta-id.returns"></a><h4>Returns</h4> 586<p>the <a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoMeta" title="struct GstVideoMeta"><span class="type">GstVideoMeta</span></a> with <em class="parameter"><code>id</code></em> 587or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> when there is no such metadata 588on <em class="parameter"><code>buffer</code></em> 589. </p> 590<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p> 591</div> 592</div> 593<hr> 594<div class="refsect2"> 595<a name="gst-buffer-add-video-crop-meta"></a><h3>gst_buffer_add_video_crop_meta()</h3> 596<pre class="programlisting">#define gst_buffer_add_video_crop_meta(b) ((GstVideoCropMeta*)gst_buffer_add_meta((b),GST_VIDEO_CROP_META_INFO, NULL)) 597</pre> 598</div> 599<hr> 600<div class="refsect2"> 601<a name="gst-buffer-get-video-crop-meta"></a><h3>gst_buffer_get_video_crop_meta()</h3> 602<pre class="programlisting">#define gst_buffer_get_video_crop_meta(b) ((GstVideoCropMeta*)gst_buffer_get_meta((b),GST_VIDEO_CROP_META_API_TYPE)) 603</pre> 604</div> 605<hr> 606<div class="refsect2"> 607<a name="gst-buffer-add-video-region-of-interest-meta"></a><h3>gst_buffer_add_video_region_of_interest_meta ()</h3> 608<pre class="programlisting"><a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoRegionOfInterestMeta" title="GstVideoRegionOfInterestMeta"><span class="returnvalue">GstVideoRegionOfInterestMeta</span></a> * 609gst_buffer_add_video_region_of_interest_meta 610 (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstBuffer.html#GstBuffer-struct"><span class="type">GstBuffer</span></a> *buffer</code></em>, 611 <em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *roi_type</code></em>, 612 <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> x</code></em>, 613 <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> y</code></em>, 614 <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> w</code></em>, 615 <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> h</code></em>);</pre> 616<p>Attaches <a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoRegionOfInterestMeta" title="GstVideoRegionOfInterestMeta"><span class="type">GstVideoRegionOfInterestMeta</span></a> metadata to <em class="parameter"><code>buffer</code></em> 617 with the given 618parameters.</p> 619<div class="refsect3"> 620<a name="gst-buffer-add-video-region-of-interest-meta.parameters"></a><h4>Parameters</h4> 621<div class="informaltable"><table class="informaltable" width="100%" border="0"> 622<colgroup> 623<col width="150px" class="parameters_name"> 624<col class="parameters_description"> 625<col width="200px" class="parameters_annotations"> 626</colgroup> 627<tbody> 628<tr> 629<td class="parameter_name"><p>buffer</p></td> 630<td class="parameter_description"><p>a <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstBuffer.html#GstBuffer-struct"><span class="type">GstBuffer</span></a></p></td> 631<td class="parameter_annotations"> </td> 632</tr> 633<tr> 634<td class="parameter_name"><p>roi_type</p></td> 635<td class="parameter_description"><p>Type of the region of interest (e.g. "face")</p></td> 636<td class="parameter_annotations"> </td> 637</tr> 638<tr> 639<td class="parameter_name"><p>x</p></td> 640<td class="parameter_description"><p>X position</p></td> 641<td class="parameter_annotations"> </td> 642</tr> 643<tr> 644<td class="parameter_name"><p>y</p></td> 645<td class="parameter_description"><p>Y position</p></td> 646<td class="parameter_annotations"> </td> 647</tr> 648<tr> 649<td class="parameter_name"><p>w</p></td> 650<td class="parameter_description"><p>width</p></td> 651<td class="parameter_annotations"> </td> 652</tr> 653<tr> 654<td class="parameter_name"><p>h</p></td> 655<td class="parameter_description"><p>height</p></td> 656<td class="parameter_annotations"> </td> 657</tr> 658</tbody> 659</table></div> 660</div> 661<div class="refsect3"> 662<a name="gst-buffer-add-video-region-of-interest-meta.returns"></a><h4>Returns</h4> 663<p>the <a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoRegionOfInterestMeta" title="GstVideoRegionOfInterestMeta"><span class="type">GstVideoRegionOfInterestMeta</span></a> on <em class="parameter"><code>buffer</code></em> 664. </p> 665<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p> 666</div> 667</div> 668<hr> 669<div class="refsect2"> 670<a name="gst-buffer-add-video-region-of-interest-meta-id"></a><h3>gst_buffer_add_video_region_of_interest_meta_id ()</h3> 671<pre class="programlisting"><a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoRegionOfInterestMeta" title="GstVideoRegionOfInterestMeta"><span class="returnvalue">GstVideoRegionOfInterestMeta</span></a> * 672gst_buffer_add_video_region_of_interest_meta_id 673 (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstBuffer.html#GstBuffer-struct"><span class="type">GstBuffer</span></a> *buffer</code></em>, 674 <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> roi_type</code></em>, 675 <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> x</code></em>, 676 <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> y</code></em>, 677 <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> w</code></em>, 678 <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> h</code></em>);</pre> 679<p>Attaches <a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoRegionOfInterestMeta" title="GstVideoRegionOfInterestMeta"><span class="type">GstVideoRegionOfInterestMeta</span></a> metadata to <em class="parameter"><code>buffer</code></em> 680 with the given 681parameters.</p> 682<div class="refsect3"> 683<a name="gst-buffer-add-video-region-of-interest-meta-id.parameters"></a><h4>Parameters</h4> 684<div class="informaltable"><table class="informaltable" width="100%" border="0"> 685<colgroup> 686<col width="150px" class="parameters_name"> 687<col class="parameters_description"> 688<col width="200px" class="parameters_annotations"> 689</colgroup> 690<tbody> 691<tr> 692<td class="parameter_name"><p>buffer</p></td> 693<td class="parameter_description"><p>a <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstBuffer.html#GstBuffer-struct"><span class="type">GstBuffer</span></a></p></td> 694<td class="parameter_annotations"> </td> 695</tr> 696<tr> 697<td class="parameter_name"><p>roi_type</p></td> 698<td class="parameter_description"><p>Type of the region of interest (e.g. "face")</p></td> 699<td class="parameter_annotations"> </td> 700</tr> 701<tr> 702<td class="parameter_name"><p>x</p></td> 703<td class="parameter_description"><p>X position</p></td> 704<td class="parameter_annotations"> </td> 705</tr> 706<tr> 707<td class="parameter_name"><p>y</p></td> 708<td class="parameter_description"><p>Y position</p></td> 709<td class="parameter_annotations"> </td> 710</tr> 711<tr> 712<td class="parameter_name"><p>w</p></td> 713<td class="parameter_description"><p>width</p></td> 714<td class="parameter_annotations"> </td> 715</tr> 716<tr> 717<td class="parameter_name"><p>h</p></td> 718<td class="parameter_description"><p>height</p></td> 719<td class="parameter_annotations"> </td> 720</tr> 721</tbody> 722</table></div> 723</div> 724<div class="refsect3"> 725<a name="gst-buffer-add-video-region-of-interest-meta-id.returns"></a><h4>Returns</h4> 726<p>the <a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoRegionOfInterestMeta" title="GstVideoRegionOfInterestMeta"><span class="type">GstVideoRegionOfInterestMeta</span></a> on <em class="parameter"><code>buffer</code></em> 727. </p> 728<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p> 729</div> 730</div> 731<hr> 732<div class="refsect2"> 733<a name="gst-buffer-get-video-region-of-interest-meta"></a><h3>gst_buffer_get_video_region_of_interest_meta()</h3> 734<pre class="programlisting">#define gst_buffer_get_video_region_of_interest_meta(b)</pre> 735</div> 736<hr> 737<div class="refsect2"> 738<a name="gst-buffer-get-video-region-of-interest-meta-id"></a><h3>gst_buffer_get_video_region_of_interest_meta_id ()</h3> 739<pre class="programlisting"><a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoRegionOfInterestMeta" title="GstVideoRegionOfInterestMeta"><span class="returnvalue">GstVideoRegionOfInterestMeta</span></a> * 740gst_buffer_get_video_region_of_interest_meta_id 741 (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstBuffer.html#GstBuffer-struct"><span class="type">GstBuffer</span></a> *buffer</code></em>, 742 <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> id</code></em>);</pre> 743<p>Find the <a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoRegionOfInterestMeta" title="GstVideoRegionOfInterestMeta"><span class="type">GstVideoRegionOfInterestMeta</span></a> on <em class="parameter"><code>buffer</code></em> 744 with the given <em class="parameter"><code>id</code></em> 745.</p> 746<p>Buffers can contain multiple <a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoRegionOfInterestMeta" title="GstVideoRegionOfInterestMeta"><span class="type">GstVideoRegionOfInterestMeta</span></a> metadata items if 747multiple regions of interests are marked on a frame.</p> 748<div class="refsect3"> 749<a name="gst-buffer-get-video-region-of-interest-meta-id.parameters"></a><h4>Parameters</h4> 750<div class="informaltable"><table class="informaltable" width="100%" border="0"> 751<colgroup> 752<col width="150px" class="parameters_name"> 753<col class="parameters_description"> 754<col width="200px" class="parameters_annotations"> 755</colgroup> 756<tbody> 757<tr> 758<td class="parameter_name"><p>buffer</p></td> 759<td class="parameter_description"><p>a <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstBuffer.html#GstBuffer-struct"><span class="type">GstBuffer</span></a></p></td> 760<td class="parameter_annotations"> </td> 761</tr> 762<tr> 763<td class="parameter_name"><p>id</p></td> 764<td class="parameter_description"><p>a metadata id</p></td> 765<td class="parameter_annotations"> </td> 766</tr> 767</tbody> 768</table></div> 769</div> 770<div class="refsect3"> 771<a name="gst-buffer-get-video-region-of-interest-meta-id.returns"></a><h4>Returns</h4> 772<p>the <a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoRegionOfInterestMeta" title="GstVideoRegionOfInterestMeta"><span class="type">GstVideoRegionOfInterestMeta</span></a> with <em class="parameter"><code>id</code></em> 773or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> when there is 774no such metadata on <em class="parameter"><code>buffer</code></em> 775. </p> 776<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p> 777</div> 778</div> 779<hr> 780<div class="refsect2"> 781<a name="gst-video-region-of-interest-meta-add-param"></a><h3>gst_video_region_of_interest_meta_add_param ()</h3> 782<pre class="programlisting"><span class="returnvalue">void</span> 783gst_video_region_of_interest_meta_add_param 784 (<em class="parameter"><code><a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoRegionOfInterestMeta" title="GstVideoRegionOfInterestMeta"><span class="type">GstVideoRegionOfInterestMeta</span></a> *meta</code></em>, 785 <em class="parameter"><code><a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstStructure.html#GstStructure-struct"><span class="type">GstStructure</span></a> *s</code></em>);</pre> 786<p>Attach element-specific parameters to <em class="parameter"><code>meta</code></em> 787 meant to be used by downstream 788elements which may handle this ROI. 789The name of <em class="parameter"><code>s</code></em> 790 is used to identify the element these parameters are meant for.</p> 791<p>This is typically used to tell encoders how they should encode this specific region. 792For example, a structure named "roi/x264enc" could be used to give the 793QP offsets this encoder should use when encoding the region described in <em class="parameter"><code>meta</code></em> 794. 795Multiple parameters can be defined for the same meta so different encoders 796can be supported by cross platform applications).</p> 797<div class="refsect3"> 798<a name="gst-video-region-of-interest-meta-add-param.parameters"></a><h4>Parameters</h4> 799<div class="informaltable"><table class="informaltable" width="100%" border="0"> 800<colgroup> 801<col width="150px" class="parameters_name"> 802<col class="parameters_description"> 803<col width="200px" class="parameters_annotations"> 804</colgroup> 805<tbody> 806<tr> 807<td class="parameter_name"><p>meta</p></td> 808<td class="parameter_description"><p>a <a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoRegionOfInterestMeta" title="GstVideoRegionOfInterestMeta"><span class="type">GstVideoRegionOfInterestMeta</span></a></p></td> 809<td class="parameter_annotations"> </td> 810</tr> 811<tr> 812<td class="parameter_name"><p>s</p></td> 813<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> 814<td class="parameter_annotations"><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td> 815</tr> 816</tbody> 817</table></div> 818</div> 819<p class="since">Since: <a class="link" href="ix04.html#api-index-1.14">1.14</a></p> 820</div> 821<hr> 822<div class="refsect2"> 823<a name="gst-video-region-of-interest-meta-get-param"></a><h3>gst_video_region_of_interest_meta_get_param ()</h3> 824<pre class="programlisting"><a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstStructure.html#GstStructure-struct"><span class="returnvalue">GstStructure</span></a> * 825gst_video_region_of_interest_meta_get_param 826 (<em class="parameter"><code><a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoRegionOfInterestMeta" title="GstVideoRegionOfInterestMeta"><span class="type">GstVideoRegionOfInterestMeta</span></a> *meta</code></em>, 827 <em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>);</pre> 828<p>Retrieve the parameter for <em class="parameter"><code>meta</code></em> 829 having <em class="parameter"><code>name</code></em> 830 as structure name, 831or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if there is none.</p> 832<div class="refsect3"> 833<a name="gst-video-region-of-interest-meta-get-param.parameters"></a><h4>Parameters</h4> 834<div class="informaltable"><table class="informaltable" width="100%" border="0"> 835<colgroup> 836<col width="150px" class="parameters_name"> 837<col class="parameters_description"> 838<col width="200px" class="parameters_annotations"> 839</colgroup> 840<tbody> 841<tr> 842<td class="parameter_name"><p>meta</p></td> 843<td class="parameter_description"><p>a <a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoRegionOfInterestMeta" title="GstVideoRegionOfInterestMeta"><span class="type">GstVideoRegionOfInterestMeta</span></a></p></td> 844<td class="parameter_annotations"> </td> 845</tr> 846<tr> 847<td class="parameter_name"><p>name</p></td> 848<td class="parameter_description"><p>a name.</p></td> 849<td class="parameter_annotations"> </td> 850</tr> 851</tbody> 852</table></div> 853</div> 854<div class="refsect3"> 855<a name="gst-video-region-of-interest-meta-get-param.returns"></a><h4>Returns</h4> 856<p>a <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstStructure.html#GstStructure-struct"><span class="type">GstStructure</span></a>. </p> 857<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p> 858</div> 859<p class="since">Since: <a class="link" href="ix04.html#api-index-1.14">1.14</a></p> 860</div> 861<hr> 862<div class="refsect2"> 863<a name="GstVideoGLTextureUpload"></a><h3>GstVideoGLTextureUpload ()</h3> 864<pre class="programlisting"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> 865<span class="c_punctuation">(</span>*GstVideoGLTextureUpload<span class="c_punctuation">)</span> (<em class="parameter"><code><a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoGLTextureUploadMeta" title="struct GstVideoGLTextureUploadMeta"><span class="type">GstVideoGLTextureUploadMeta</span></a> *meta</code></em>, 866 <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> texture_id[4]</code></em>);</pre> 867</div> 868<hr> 869<div class="refsect2"> 870<a name="gst-buffer-add-video-gl-texture-upload-meta"></a><h3>gst_buffer_add_video_gl_texture_upload_meta ()</h3> 871<pre class="programlisting"><a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoGLTextureUploadMeta" title="struct GstVideoGLTextureUploadMeta"><span class="returnvalue">GstVideoGLTextureUploadMeta</span></a> * 872gst_buffer_add_video_gl_texture_upload_meta 873 (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstBuffer.html#GstBuffer-struct"><span class="type">GstBuffer</span></a> *buffer</code></em>, 874 <em class="parameter"><code><a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoGLTextureOrientation" title="enum GstVideoGLTextureOrientation"><span class="type">GstVideoGLTextureOrientation</span></a> texture_orientation</code></em>, 875 <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> n_textures</code></em>, 876 <em class="parameter"><code><a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoGLTextureType" title="enum GstVideoGLTextureType"><span class="type">GstVideoGLTextureType</span></a> texture_type[4]</code></em>, 877 <em class="parameter"><code><a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoGLTextureUpload" title="GstVideoGLTextureUpload ()"><span class="type">GstVideoGLTextureUpload</span></a> upload</code></em>, 878 <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>, 879 <em class="parameter"><code><a href="/usr/share/gtk-doc/html/gobject/gobject-Boxed-Types.html#GBoxedCopyFunc"><span class="type">GBoxedCopyFunc</span></a> user_data_copy</code></em>, 880 <em class="parameter"><code><a href="/usr/share/gtk-doc/html/gobject/gobject-Boxed-Types.html#GBoxedFreeFunc"><span class="type">GBoxedFreeFunc</span></a> user_data_free</code></em>);</pre> 881<p>Attaches GstVideoGLTextureUploadMeta metadata to <em class="parameter"><code>buffer</code></em> 882 with the given 883parameters.</p> 884<div class="refsect3"> 885<a name="gst-buffer-add-video-gl-texture-upload-meta.parameters"></a><h4>Parameters</h4> 886<div class="informaltable"><table class="informaltable" width="100%" border="0"> 887<colgroup> 888<col width="150px" class="parameters_name"> 889<col class="parameters_description"> 890<col width="200px" class="parameters_annotations"> 891</colgroup> 892<tbody> 893<tr> 894<td class="parameter_name"><p>buffer</p></td> 895<td class="parameter_description"><p>a <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstBuffer.html#GstBuffer-struct"><span class="type">GstBuffer</span></a></p></td> 896<td class="parameter_annotations"> </td> 897</tr> 898<tr> 899<td class="parameter_name"><p>texture_orientation</p></td> 900<td class="parameter_description"><p>the <a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoGLTextureOrientation" title="enum GstVideoGLTextureOrientation"><span class="type">GstVideoGLTextureOrientation</span></a></p></td> 901<td class="parameter_annotations"> </td> 902</tr> 903<tr> 904<td class="parameter_name"><p>n_textures</p></td> 905<td class="parameter_description"><p>the number of textures</p></td> 906<td class="parameter_annotations"> </td> 907</tr> 908<tr> 909<td class="parameter_name"><p>texture_type</p></td> 910<td class="parameter_description"><p>array of <a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoGLTextureType" title="enum GstVideoGLTextureType"><span class="type">GstVideoGLTextureType</span></a></p></td> 911<td class="parameter_annotations"> </td> 912</tr> 913<tr> 914<td class="parameter_name"><p>upload</p></td> 915<td class="parameter_description"><p>the function to upload the buffer to a specific texture ID. </p></td> 916<td class="parameter_annotations"><span class="annotation">[<acronym title="The callback is valid only during the call to the method."><span class="acronym">scope call</span></acronym>]</span></td> 917</tr> 918<tr> 919<td class="parameter_name"><p>user_data</p></td> 920<td class="parameter_description"><p>user data for the implementor of <em class="parameter"><code>upload</code></em> 921</p></td> 922<td class="parameter_annotations"> </td> 923</tr> 924<tr> 925<td class="parameter_name"><p>user_data_copy</p></td> 926<td class="parameter_description"><p>function to copy <em class="parameter"><code>user_data</code></em> 927. </p></td> 928<td class="parameter_annotations"><span class="annotation">[<acronym title="The callback is valid only during the call to the method."><span class="acronym">scope call</span></acronym>]</span></td> 929</tr> 930<tr> 931<td class="parameter_name"><p>user_data_free</p></td> 932<td class="parameter_description"><p>function to free <em class="parameter"><code>user_data</code></em> 933. </p></td> 934<td class="parameter_annotations"><span class="annotation">[<acronym title="The callback is valid only during the call to the method."><span class="acronym">scope call</span></acronym>]</span></td> 935</tr> 936</tbody> 937</table></div> 938</div> 939<div class="refsect3"> 940<a name="gst-buffer-add-video-gl-texture-upload-meta.returns"></a><h4>Returns</h4> 941<p>the <a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoGLTextureUploadMeta" title="struct GstVideoGLTextureUploadMeta"><span class="type">GstVideoGLTextureUploadMeta</span></a> on <em class="parameter"><code>buffer</code></em> 942. </p> 943<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p> 944</div> 945</div> 946<hr> 947<div class="refsect2"> 948<a name="gst-buffer-get-video-gl-texture-upload-meta"></a><h3>gst_buffer_get_video_gl_texture_upload_meta()</h3> 949<pre class="programlisting">#define gst_buffer_get_video_gl_texture_upload_meta(b) ((GstVideoGLTextureUploadMeta*)gst_buffer_get_meta((b),GST_VIDEO_GL_TEXTURE_UPLOAD_META_API_TYPE)) 950</pre> 951</div> 952<hr> 953<div class="refsect2"> 954<a name="gst-video-gl-texture-upload-meta-upload"></a><h3>gst_video_gl_texture_upload_meta_upload ()</h3> 955<pre class="programlisting"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> 956gst_video_gl_texture_upload_meta_upload 957 (<em class="parameter"><code><a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoGLTextureUploadMeta" title="struct GstVideoGLTextureUploadMeta"><span class="type">GstVideoGLTextureUploadMeta</span></a> *meta</code></em>, 958 <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> texture_id[4]</code></em>);</pre> 959<p>Uploads the buffer which owns the meta to a specific texture ID.</p> 960<div class="refsect3"> 961<a name="gst-video-gl-texture-upload-meta-upload.parameters"></a><h4>Parameters</h4> 962<div class="informaltable"><table class="informaltable" width="100%" border="0"> 963<colgroup> 964<col width="150px" class="parameters_name"> 965<col class="parameters_description"> 966<col width="200px" class="parameters_annotations"> 967</colgroup> 968<tbody> 969<tr> 970<td class="parameter_name"><p>meta</p></td> 971<td class="parameter_description"><p>a <a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoGLTextureUploadMeta" title="struct GstVideoGLTextureUploadMeta"><span class="type">GstVideoGLTextureUploadMeta</span></a></p></td> 972<td class="parameter_annotations"> </td> 973</tr> 974<tr> 975<td class="parameter_name"><p>texture_id</p></td> 976<td class="parameter_description"><p>the texture IDs to upload to</p></td> 977<td class="parameter_annotations"> </td> 978</tr> 979</tbody> 980</table></div> 981</div> 982<div class="refsect3"> 983<a name="gst-video-gl-texture-upload-meta-upload.returns"></a><h4>Returns</h4> 984<p> <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if uploading succeeded, <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p> 985</div> 986</div> 987<hr> 988<div class="refsect2"> 989<a name="gst-buffer-add-video-time-code-meta"></a><h3>gst_buffer_add_video_time_code_meta ()</h3> 990<pre class="programlisting"><a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoTimeCodeMeta" title="GstVideoTimeCodeMeta"><span class="returnvalue">GstVideoTimeCodeMeta</span></a> * 991gst_buffer_add_video_time_code_meta (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstBuffer.html#GstBuffer-struct"><span class="type">GstBuffer</span></a> *buffer</code></em>, 992 <em class="parameter"><code><a class="link" href="gst-plugins-base-libs-GstVideo.html#GstVideoTimeCode" title="struct GstVideoTimeCode"><span class="type">GstVideoTimeCode</span></a> *tc</code></em>);</pre> 993<p>Attaches <a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoTimeCodeMeta" title="GstVideoTimeCodeMeta"><span class="type">GstVideoTimeCodeMeta</span></a> metadata to <em class="parameter"><code>buffer</code></em> 994 with the given 995parameters.</p> 996<div class="refsect3"> 997<a name="gst-buffer-add-video-time-code-meta.parameters"></a><h4>Parameters</h4> 998<div class="informaltable"><table class="informaltable" width="100%" border="0"> 999<colgroup> 1000<col width="150px" class="parameters_name"> 1001<col class="parameters_description"> 1002<col width="200px" class="parameters_annotations"> 1003</colgroup> 1004<tbody> 1005<tr> 1006<td class="parameter_name"><p>buffer</p></td> 1007<td class="parameter_description"><p>a <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstBuffer.html#GstBuffer-struct"><span class="type">GstBuffer</span></a></p></td> 1008<td class="parameter_annotations"> </td> 1009</tr> 1010<tr> 1011<td class="parameter_name"><p>tc</p></td> 1012<td class="parameter_description"><p>a <a class="link" href="gst-plugins-base-libs-GstVideo.html#GstVideoTimeCode" title="struct GstVideoTimeCode"><span class="type">GstVideoTimeCode</span></a></p></td> 1013<td class="parameter_annotations"> </td> 1014</tr> 1015</tbody> 1016</table></div> 1017</div> 1018<div class="refsect3"> 1019<a name="gst-buffer-add-video-time-code-meta.returns"></a><h4>Returns</h4> 1020<p>the <a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoTimeCodeMeta" title="GstVideoTimeCodeMeta"><span class="type">GstVideoTimeCodeMeta</span></a> on <em class="parameter"><code>buffer</code></em> 1021, or 1022(since 1.16) <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if the timecode was invalid. </p> 1023<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p> 1024</div> 1025<p class="since">Since: <a class="link" href="ix06.html#api-index-1.10">1.10</a></p> 1026</div> 1027<hr> 1028<div class="refsect2"> 1029<a name="gst-buffer-add-video-time-code-meta-full"></a><h3>gst_buffer_add_video_time_code_meta_full ()</h3> 1030<pre class="programlisting"><a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoTimeCodeMeta" title="GstVideoTimeCodeMeta"><span class="returnvalue">GstVideoTimeCodeMeta</span></a> * 1031gst_buffer_add_video_time_code_meta_full 1032 (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstBuffer.html#GstBuffer-struct"><span class="type">GstBuffer</span></a> *buffer</code></em>, 1033 <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> fps_n</code></em>, 1034 <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> fps_d</code></em>, 1035 <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-GDateTime.html#GDateTime"><span class="type">GDateTime</span></a> *latest_daily_jam</code></em>, 1036 <em class="parameter"><code><a class="link" href="gst-plugins-base-libs-GstVideo.html#GstVideoTimeCodeFlags" title="enum GstVideoTimeCodeFlags"><span class="type">GstVideoTimeCodeFlags</span></a> flags</code></em>, 1037 <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> hours</code></em>, 1038 <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> minutes</code></em>, 1039 <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> seconds</code></em>, 1040 <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> frames</code></em>, 1041 <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> field_count</code></em>);</pre> 1042<p>Attaches <a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoTimeCodeMeta" title="GstVideoTimeCodeMeta"><span class="type">GstVideoTimeCodeMeta</span></a> metadata to <em class="parameter"><code>buffer</code></em> 1043 with the given 1044parameters.</p> 1045<div class="refsect3"> 1046<a name="gst-buffer-add-video-time-code-meta-full.parameters"></a><h4>Parameters</h4> 1047<div class="informaltable"><table class="informaltable" width="100%" border="0"> 1048<colgroup> 1049<col width="150px" class="parameters_name"> 1050<col class="parameters_description"> 1051<col width="200px" class="parameters_annotations"> 1052</colgroup> 1053<tbody> 1054<tr> 1055<td class="parameter_name"><p>buffer</p></td> 1056<td class="parameter_description"><p>a <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstBuffer.html#GstBuffer-struct"><span class="type">GstBuffer</span></a></p></td> 1057<td class="parameter_annotations"> </td> 1058</tr> 1059<tr> 1060<td class="parameter_name"><p>fps_n</p></td> 1061<td class="parameter_description"><p>framerate numerator</p></td> 1062<td class="parameter_annotations"> </td> 1063</tr> 1064<tr> 1065<td class="parameter_name"><p>fps_d</p></td> 1066<td class="parameter_description"><p>framerate denominator</p></td> 1067<td class="parameter_annotations"> </td> 1068</tr> 1069<tr> 1070<td class="parameter_name"><p>latest_daily_jam</p></td> 1071<td class="parameter_description"><p>a <a href="/usr/share/gtk-doc/html/glib/glib-GDateTime.html#GDateTime"><span class="type">GDateTime</span></a> for the latest daily jam</p></td> 1072<td class="parameter_annotations"> </td> 1073</tr> 1074<tr> 1075<td class="parameter_name"><p>flags</p></td> 1076<td class="parameter_description"><p>a <a class="link" href="gst-plugins-base-libs-GstVideo.html#GstVideoTimeCodeFlags" title="enum GstVideoTimeCodeFlags"><span class="type">GstVideoTimeCodeFlags</span></a></p></td> 1077<td class="parameter_annotations"> </td> 1078</tr> 1079<tr> 1080<td class="parameter_name"><p>hours</p></td> 1081<td class="parameter_description"><p>hours since the daily jam</p></td> 1082<td class="parameter_annotations"> </td> 1083</tr> 1084<tr> 1085<td class="parameter_name"><p>minutes</p></td> 1086<td class="parameter_description"><p>minutes since the daily jam</p></td> 1087<td class="parameter_annotations"> </td> 1088</tr> 1089<tr> 1090<td class="parameter_name"><p>seconds</p></td> 1091<td class="parameter_description"><p>seconds since the daily jam</p></td> 1092<td class="parameter_annotations"> </td> 1093</tr> 1094<tr> 1095<td class="parameter_name"><p>frames</p></td> 1096<td class="parameter_description"><p>frames since the daily jam</p></td> 1097<td class="parameter_annotations"> </td> 1098</tr> 1099<tr> 1100<td class="parameter_name"><p>field_count</p></td> 1101<td class="parameter_description"><p>fields since the daily jam</p></td> 1102<td class="parameter_annotations"> </td> 1103</tr> 1104</tbody> 1105</table></div> 1106</div> 1107<div class="refsect3"> 1108<a name="gst-buffer-add-video-time-code-meta-full.returns"></a><h4>Returns</h4> 1109<p>the <a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoTimeCodeMeta" title="GstVideoTimeCodeMeta"><span class="type">GstVideoTimeCodeMeta</span></a> on <em class="parameter"><code>buffer</code></em> 1110, or 1111(since 1.16) <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if the timecode was invalid. </p> 1112<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p> 1113</div> 1114<p class="since">Since: <a class="link" href="ix06.html#api-index-1.10">1.10</a></p> 1115</div> 1116<hr> 1117<div class="refsect2"> 1118<a name="gst-buffer-get-video-time-code-meta"></a><h3>gst_buffer_get_video_time_code_meta()</h3> 1119<pre class="programlisting">#define gst_buffer_get_video_time_code_meta(b)</pre> 1120</div> 1121</div> 1122<div class="refsect1"> 1123<a name="gst-plugins-base-libs-GstMeta-for-video.other_details"></a><h2>Types and Values</h2> 1124<div class="refsect2"> 1125<a name="GstVideoMeta"></a><h3>struct GstVideoMeta</h3> 1126<pre class="programlisting">struct GstVideoMeta { 1127 GstMeta meta; 1128 1129 GstBuffer *buffer; 1130 1131 GstVideoFrameFlags flags; 1132 GstVideoFormat format; 1133 gint id; 1134 guint width; 1135 guint height; 1136 1137 guint n_planes; 1138 gsize offset[GST_VIDEO_MAX_PLANES]; 1139 gint stride[GST_VIDEO_MAX_PLANES]; 1140 1141 gboolean (*map) (GstVideoMeta *meta, guint plane, GstMapInfo *info, 1142 gpointer *data, gint * stride, GstMapFlags flags); 1143 gboolean (*unmap) (GstVideoMeta *meta, guint plane, GstMapInfo *info); 1144}; 1145</pre> 1146<p>Extra buffer metadata describing image properties</p> 1147<div class="refsect3"> 1148<a name="GstVideoMeta.members"></a><h4>Members</h4> 1149<div class="informaltable"><table class="informaltable" width="100%" border="0"> 1150<colgroup> 1151<col width="300px" class="struct_members_name"> 1152<col class="struct_members_description"> 1153<col width="200px" class="struct_members_annotations"> 1154</colgroup> 1155<tbody> 1156<tr> 1157<td class="struct_member_name"><p><a href="/usr/share/gtk-doc/html/gstreamer-1.0/gstreamer-GstMeta.html#GstMeta"><span class="type">GstMeta</span></a> <em class="structfield"><code><a name="GstVideoMeta.meta"></a>meta</code></em>;</p></td> 1158<td class="struct_member_description"><p>parent <a href="/usr/share/gtk-doc/html/gstreamer-1.0/gstreamer-GstMeta.html#GstMeta"><span class="type">GstMeta</span></a></p></td> 1159<td class="struct_member_annotations"> </td> 1160</tr> 1161<tr> 1162<td class="struct_member_name"><p><a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstBuffer.html#GstBuffer-struct"><span class="type">GstBuffer</span></a> *<em class="structfield"><code><a name="GstVideoMeta.buffer"></a>buffer</code></em>;</p></td> 1163<td class="struct_member_description"><p>the buffer this metadata belongs to</p></td> 1164<td class="struct_member_annotations"> </td> 1165</tr> 1166<tr> 1167<td class="struct_member_name"><p><a class="link" href="gst-plugins-base-libs-GstVideo.html#GstVideoFrameFlags" title="enum GstVideoFrameFlags"><span class="type">GstVideoFrameFlags</span></a> <em class="structfield"><code><a name="GstVideoMeta.flags"></a>flags</code></em>;</p></td> 1168<td class="struct_member_description"><p>additional video flags</p></td> 1169<td class="struct_member_annotations"> </td> 1170</tr> 1171<tr> 1172<td class="struct_member_name"><p><a class="link" href="gst-plugins-base-libs-GstVideo.html#GstVideoFormat" title="enum GstVideoFormat"><span class="type">GstVideoFormat</span></a> <em class="structfield"><code><a name="GstVideoMeta.format"></a>format</code></em>;</p></td> 1173<td class="struct_member_description"><p>the video format</p></td> 1174<td class="struct_member_annotations"> </td> 1175</tr> 1176<tr> 1177<td class="struct_member_name"><p><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> <em class="structfield"><code><a name="GstVideoMeta.id"></a>id</code></em>;</p></td> 1178<td class="struct_member_description"><p>identifier of the frame</p></td> 1179<td class="struct_member_annotations"> </td> 1180</tr> 1181<tr> 1182<td class="struct_member_name"><p><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> <em class="structfield"><code><a name="GstVideoMeta.width"></a>width</code></em>;</p></td> 1183<td class="struct_member_description"><p>the video width</p></td> 1184<td class="struct_member_annotations"> </td> 1185</tr> 1186<tr> 1187<td class="struct_member_name"><p><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> <em class="structfield"><code><a name="GstVideoMeta.height"></a>height</code></em>;</p></td> 1188<td class="struct_member_description"><p>the video height</p></td> 1189<td class="struct_member_annotations"> </td> 1190</tr> 1191<tr> 1192<td class="struct_member_name"><p><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> <em class="structfield"><code><a name="GstVideoMeta.n-planes"></a>n_planes</code></em>;</p></td> 1193<td class="struct_member_description"><p>the number of planes in the image</p></td> 1194<td class="struct_member_annotations"> </td> 1195</tr> 1196<tr> 1197<td class="struct_member_name"><p><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gsize"><span class="type">gsize</span></a> <em class="structfield"><code><a name="GstVideoMeta.offset"></a>offset</code></em>[GST_VIDEO_MAX_PLANES];</p></td> 1198<td class="struct_member_description"><p>array of offsets for the planes. This field might not always be 1199valid, it is used by the default implementation of <em class="parameter"><code>map</code></em> 1200.</p></td> 1201<td class="struct_member_annotations"> </td> 1202</tr> 1203<tr> 1204<td class="struct_member_name"><p><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> <em class="structfield"><code><a name="GstVideoMeta.stride"></a>stride</code></em>[GST_VIDEO_MAX_PLANES];</p></td> 1205<td class="struct_member_description"><p>array of strides for the planes. This field might not always be 1206valid, it is used by the default implementation of <em class="parameter"><code>map</code></em> 1207.</p></td> 1208<td class="struct_member_annotations"> </td> 1209</tr> 1210<tr> 1211<td class="struct_member_name"><p><em class="structfield"><code><a name="GstVideoMeta.map"></a>map</code></em> ()</p></td> 1212<td class="struct_member_description"><p>map the memory of a plane</p></td> 1213<td class="struct_member_annotations"> </td> 1214</tr> 1215<tr> 1216<td class="struct_member_name"><p><em class="structfield"><code><a name="GstVideoMeta.unmap"></a>unmap</code></em> ()</p></td> 1217<td class="struct_member_description"><p>unmap the memory of a plane</p></td> 1218<td class="struct_member_annotations"> </td> 1219</tr> 1220</tbody> 1221</table></div> 1222</div> 1223</div> 1224<hr> 1225<div class="refsect2"> 1226<a name="GST-CAPS-FEATURE-META-GST-VIDEO-META:CAPS"></a><h3>GST_CAPS_FEATURE_META_GST_VIDEO_META</h3> 1227<pre class="programlisting">#define GST_CAPS_FEATURE_META_GST_VIDEO_META "meta:GstVideoMeta" 1228</pre> 1229</div> 1230<hr> 1231<div class="refsect2"> 1232<a name="GstVideoMetaTransform"></a><h3>GstVideoMetaTransform</h3> 1233<pre class="programlisting">typedef struct { 1234 GstVideoInfo *in_info; 1235 GstVideoInfo *out_info; 1236} GstVideoMetaTransform; 1237</pre> 1238<p>Extra data passed to a video transform <a href="/usr/share/gtk-doc/html/gstreamer-1.0/gstreamer-GstMeta.html#GstMetaTransformFunction"><span class="type">GstMetaTransformFunction</span></a> such as: 1239"gst-video-scale".</p> 1240<div class="refsect3"> 1241<a name="GstVideoMetaTransform.members"></a><h4>Members</h4> 1242<div class="informaltable"><table class="informaltable" width="100%" border="0"> 1243<colgroup> 1244<col width="300px" class="struct_members_name"> 1245<col class="struct_members_description"> 1246<col width="200px" class="struct_members_annotations"> 1247</colgroup> 1248<tbody> 1249<tr> 1250<td class="struct_member_name"><p><a class="link" href="gst-plugins-base-libs-GstVideo.html#GstVideoInfo" title="struct GstVideoInfo"><span class="type">GstVideoInfo</span></a> *<em class="structfield"><code><a name="GstVideoMetaTransform.in-info"></a>in_info</code></em>;</p></td> 1251<td class="struct_member_description"><p>the input <a class="link" href="gst-plugins-base-libs-GstVideo.html#GstVideoInfo" title="struct GstVideoInfo"><span class="type">GstVideoInfo</span></a></p></td> 1252<td class="struct_member_annotations"> </td> 1253</tr> 1254<tr> 1255<td class="struct_member_name"><p><a class="link" href="gst-plugins-base-libs-GstVideo.html#GstVideoInfo" title="struct GstVideoInfo"><span class="type">GstVideoInfo</span></a> *<em class="structfield"><code><a name="GstVideoMetaTransform.out-info"></a>out_info</code></em>;</p></td> 1256<td class="struct_member_description"><p>the output <a class="link" href="gst-plugins-base-libs-GstVideo.html#GstVideoInfo" title="struct GstVideoInfo"><span class="type">GstVideoInfo</span></a></p></td> 1257<td class="struct_member_annotations"> </td> 1258</tr> 1259</tbody> 1260</table></div> 1261</div> 1262</div> 1263<hr> 1264<div class="refsect2"> 1265<a name="GstVideoCropMeta"></a><h3>struct GstVideoCropMeta</h3> 1266<pre class="programlisting">struct GstVideoCropMeta { 1267 GstMeta meta; 1268 1269 guint x; 1270 guint y; 1271 guint width; 1272 guint height; 1273}; 1274</pre> 1275<p>Extra buffer metadata describing image cropping.</p> 1276<div class="refsect3"> 1277<a name="GstVideoCropMeta.members"></a><h4>Members</h4> 1278<div class="informaltable"><table class="informaltable" width="100%" border="0"> 1279<colgroup> 1280<col width="300px" class="struct_members_name"> 1281<col class="struct_members_description"> 1282<col width="200px" class="struct_members_annotations"> 1283</colgroup> 1284<tbody> 1285<tr> 1286<td class="struct_member_name"><p><a href="/usr/share/gtk-doc/html/gstreamer-1.0/gstreamer-GstMeta.html#GstMeta"><span class="type">GstMeta</span></a> <em class="structfield"><code><a name="GstVideoCropMeta.meta"></a>meta</code></em>;</p></td> 1287<td class="struct_member_description"><p>parent <a href="/usr/share/gtk-doc/html/gstreamer-1.0/gstreamer-GstMeta.html#GstMeta"><span class="type">GstMeta</span></a></p></td> 1288<td class="struct_member_annotations"> </td> 1289</tr> 1290<tr> 1291<td class="struct_member_name"><p><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> <em class="structfield"><code><a name="GstVideoCropMeta.x"></a>x</code></em>;</p></td> 1292<td class="struct_member_description"><p>the horizontal offset</p></td> 1293<td class="struct_member_annotations"> </td> 1294</tr> 1295<tr> 1296<td class="struct_member_name"><p><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> <em class="structfield"><code><a name="GstVideoCropMeta.y"></a>y</code></em>;</p></td> 1297<td class="struct_member_description"><p>the vertical offset</p></td> 1298<td class="struct_member_annotations"> </td> 1299</tr> 1300<tr> 1301<td class="struct_member_name"><p><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> <em class="structfield"><code><a name="GstVideoCropMeta.width"></a>width</code></em>;</p></td> 1302<td class="struct_member_description"><p>the cropped width</p></td> 1303<td class="struct_member_annotations"> </td> 1304</tr> 1305<tr> 1306<td class="struct_member_name"><p><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> <em class="structfield"><code><a name="GstVideoCropMeta.height"></a>height</code></em>;</p></td> 1307<td class="struct_member_description"><p>the cropped height</p></td> 1308<td class="struct_member_annotations"> </td> 1309</tr> 1310</tbody> 1311</table></div> 1312</div> 1313</div> 1314<hr> 1315<div class="refsect2"> 1316<a name="GstVideoRegionOfInterestMeta"></a><h3>GstVideoRegionOfInterestMeta</h3> 1317<pre class="programlisting">typedef struct { 1318 GstMeta meta; 1319 1320 GQuark roi_type; 1321 gint id; 1322 gint parent_id; 1323 1324 guint x; 1325 guint y; 1326 guint w; 1327 guint h; 1328 1329 GList *params; 1330} GstVideoRegionOfInterestMeta; 1331</pre> 1332<p>Extra buffer metadata describing an image region of interest</p> 1333<div class="refsect3"> 1334<a name="GstVideoRegionOfInterestMeta.members"></a><h4>Members</h4> 1335<div class="informaltable"><table class="informaltable" width="100%" border="0"> 1336<colgroup> 1337<col width="300px" class="struct_members_name"> 1338<col class="struct_members_description"> 1339<col width="200px" class="struct_members_annotations"> 1340</colgroup> 1341<tbody> 1342<tr> 1343<td class="struct_member_name"><p><a href="/usr/share/gtk-doc/html/gstreamer-1.0/gstreamer-GstMeta.html#GstMeta"><span class="type">GstMeta</span></a> <em class="structfield"><code><a name="GstVideoRegionOfInterestMeta.meta"></a>meta</code></em>;</p></td> 1344<td class="struct_member_description"><p>parent <a href="/usr/share/gtk-doc/html/gstreamer-1.0/gstreamer-GstMeta.html#GstMeta"><span class="type">GstMeta</span></a></p></td> 1345<td class="struct_member_annotations"> </td> 1346</tr> 1347<tr> 1348<td class="struct_member_name"><p><a href="/usr/share/gtk-doc/html/glib/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> <em class="structfield"><code><a name="GstVideoRegionOfInterestMeta.roi-type"></a>roi_type</code></em>;</p></td> 1349<td class="struct_member_description"><p>GQuark describing the semantic of the Roi (f.i. a face, a pedestrian)</p></td> 1350<td class="struct_member_annotations"> </td> 1351</tr> 1352<tr> 1353<td class="struct_member_name"><p><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> <em class="structfield"><code><a name="GstVideoRegionOfInterestMeta.id"></a>id</code></em>;</p></td> 1354<td class="struct_member_description"><p>identifier of this particular ROI</p></td> 1355<td class="struct_member_annotations"> </td> 1356</tr> 1357<tr> 1358<td class="struct_member_name"><p><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> <em class="structfield"><code><a name="GstVideoRegionOfInterestMeta.parent-id"></a>parent_id</code></em>;</p></td> 1359<td class="struct_member_description"><p>identifier of its parent ROI, used f.i. for ROI hierarchisation.</p></td> 1360<td class="struct_member_annotations"> </td> 1361</tr> 1362<tr> 1363<td class="struct_member_name"><p><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> <em class="structfield"><code><a name="GstVideoRegionOfInterestMeta.x"></a>x</code></em>;</p></td> 1364<td class="struct_member_description"><p>x component of upper-left corner</p></td> 1365<td class="struct_member_annotations"> </td> 1366</tr> 1367<tr> 1368<td class="struct_member_name"><p><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> <em class="structfield"><code><a name="GstVideoRegionOfInterestMeta.y"></a>y</code></em>;</p></td> 1369<td class="struct_member_description"><p>y component of upper-left corner</p></td> 1370<td class="struct_member_annotations"> </td> 1371</tr> 1372<tr> 1373<td class="struct_member_name"><p><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> <em class="structfield"><code><a name="GstVideoRegionOfInterestMeta.w"></a>w</code></em>;</p></td> 1374<td class="struct_member_description"><p>bounding box width</p></td> 1375<td class="struct_member_annotations"> </td> 1376</tr> 1377<tr> 1378<td class="struct_member_name"><p><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> <em class="structfield"><code><a name="GstVideoRegionOfInterestMeta.h"></a>h</code></em>;</p></td> 1379<td class="struct_member_description"><p>bounding box height</p></td> 1380<td class="struct_member_annotations"> </td> 1381</tr> 1382<tr> 1383<td class="struct_member_name"><p><a href="/usr/share/gtk-doc/html/glib/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> *<em class="structfield"><code><a name="GstVideoRegionOfInterestMeta.params"></a>params</code></em>;</p></td> 1384<td class="struct_member_description"><p>list of <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstStructure.html#GstStructure-struct"><span class="type">GstStructure</span></a> containing element-specific params for downstream, see <a href="gst-plugins-base-libs-GstMeta-for-video.html#gst-video-region-of-interest-meta-add-param"><code class="function">gst_video_region_of_interest_meta_add_params()</code></a>. (Since: 1.14)</p></td> 1385<td class="struct_member_annotations"> </td> 1386</tr> 1387</tbody> 1388</table></div> 1389</div> 1390</div> 1391<hr> 1392<div class="refsect2"> 1393<a name="GST-CAPS-FEATURE-META-GST-VIDEO-GL-TEXTURE-UPLOAD-META:CAPS"></a><h3>GST_CAPS_FEATURE_META_GST_VIDEO_GL_TEXTURE_UPLOAD_META</h3> 1394<pre class="programlisting">#define GST_CAPS_FEATURE_META_GST_VIDEO_GL_TEXTURE_UPLOAD_META "meta:GstVideoGLTextureUploadMeta" 1395</pre> 1396</div> 1397<hr> 1398<div class="refsect2"> 1399<a name="GST-BUFFER-POOL-OPTION-VIDEO-GL-TEXTURE-UPLOAD-META:CAPS"></a><h3>GST_BUFFER_POOL_OPTION_VIDEO_GL_TEXTURE_UPLOAD_META</h3> 1400<pre class="programlisting">#define GST_BUFFER_POOL_OPTION_VIDEO_GL_TEXTURE_UPLOAD_META "GstBufferPoolOptionVideoGLTextureUploadMeta" 1401</pre> 1402<p>An option that can be activated on a bufferpool to request gl texture upload 1403meta on buffers from the pool.</p> 1404<p>When this option is enabled on the bufferpool, 1405<em class="parameter"><code>GST_BUFFER_POOL_OPTION_VIDEO_META</code></em> 1406 should also be enabled.</p> 1407<p class="since">Since: <a class="link" href="ix12.html#api-index-1.2.2">1.2.2</a></p> 1408</div> 1409<hr> 1410<div class="refsect2"> 1411<a name="GstVideoGLTextureOrientation"></a><h3>enum GstVideoGLTextureOrientation</h3> 1412<p>The orientation of the GL texture.</p> 1413<div class="refsect3"> 1414<a name="GstVideoGLTextureOrientation.members"></a><h4>Members</h4> 1415<div class="informaltable"><table class="informaltable" width="100%" border="0"> 1416<colgroup> 1417<col width="300px" class="enum_members_name"> 1418<col class="enum_members_description"> 1419<col width="200px" class="enum_members_annotations"> 1420</colgroup> 1421<tbody> 1422<tr> 1423<td class="enum_member_name"><p><a name="GST-VIDEO-GL-TEXTURE-ORIENTATION-X-NORMAL-Y-NORMAL:CAPS"></a>GST_VIDEO_GL_TEXTURE_ORIENTATION_X_NORMAL_Y_NORMAL</p></td> 1424<td class="enum_member_description"> 1425<p>Top line first in memory, left row first</p> 1426</td> 1427<td class="enum_member_annotations"> </td> 1428</tr> 1429<tr> 1430<td class="enum_member_name"><p><a name="GST-VIDEO-GL-TEXTURE-ORIENTATION-X-NORMAL-Y-FLIP:CAPS"></a>GST_VIDEO_GL_TEXTURE_ORIENTATION_X_NORMAL_Y_FLIP</p></td> 1431<td class="enum_member_description"> 1432<p>Bottom line first in memory, left row first</p> 1433</td> 1434<td class="enum_member_annotations"> </td> 1435</tr> 1436<tr> 1437<td class="enum_member_name"><p><a name="GST-VIDEO-GL-TEXTURE-ORIENTATION-X-FLIP-Y-NORMAL:CAPS"></a>GST_VIDEO_GL_TEXTURE_ORIENTATION_X_FLIP_Y_NORMAL</p></td> 1438<td class="enum_member_description"> 1439<p>Top line first in memory, right row first</p> 1440</td> 1441<td class="enum_member_annotations"> </td> 1442</tr> 1443<tr> 1444<td class="enum_member_name"><p><a name="GST-VIDEO-GL-TEXTURE-ORIENTATION-X-FLIP-Y-FLIP:CAPS"></a>GST_VIDEO_GL_TEXTURE_ORIENTATION_X_FLIP_Y_FLIP</p></td> 1445<td class="enum_member_description"> 1446<p>Bottom line first in memory, right row first</p> 1447</td> 1448<td class="enum_member_annotations"> </td> 1449</tr> 1450</tbody> 1451</table></div> 1452</div> 1453</div> 1454<hr> 1455<div class="refsect2"> 1456<a name="GstVideoGLTextureType"></a><h3>enum GstVideoGLTextureType</h3> 1457<p>The GL texture type.</p> 1458<div class="refsect3"> 1459<a name="GstVideoGLTextureType.members"></a><h4>Members</h4> 1460<div class="informaltable"><table class="informaltable" width="100%" border="0"> 1461<colgroup> 1462<col width="300px" class="enum_members_name"> 1463<col class="enum_members_description"> 1464<col width="200px" class="enum_members_annotations"> 1465</colgroup> 1466<tbody> 1467<tr> 1468<td class="enum_member_name"><p><a name="GST-VIDEO-GL-TEXTURE-TYPE-LUMINANCE:CAPS"></a>GST_VIDEO_GL_TEXTURE_TYPE_LUMINANCE</p></td> 1469<td class="enum_member_description"> 1470<p>Luminance texture, GL_LUMINANCE</p> 1471</td> 1472<td class="enum_member_annotations"> </td> 1473</tr> 1474<tr> 1475<td class="enum_member_name"><p><a name="GST-VIDEO-GL-TEXTURE-TYPE-LUMINANCE-ALPHA:CAPS"></a>GST_VIDEO_GL_TEXTURE_TYPE_LUMINANCE_ALPHA</p></td> 1476<td class="enum_member_description"> 1477<p>Luminance-alpha texture, GL_LUMINANCE_ALPHA</p> 1478</td> 1479<td class="enum_member_annotations"> </td> 1480</tr> 1481<tr> 1482<td class="enum_member_name"><p><a name="GST-VIDEO-GL-TEXTURE-TYPE-RGB16:CAPS"></a>GST_VIDEO_GL_TEXTURE_TYPE_RGB16</p></td> 1483<td class="enum_member_description"> 1484<p>RGB 565 texture, GL_RGB</p> 1485</td> 1486<td class="enum_member_annotations"> </td> 1487</tr> 1488<tr> 1489<td class="enum_member_name"><p><a name="GST-VIDEO-GL-TEXTURE-TYPE-RGB:CAPS"></a>GST_VIDEO_GL_TEXTURE_TYPE_RGB</p></td> 1490<td class="enum_member_description"> 1491<p>RGB texture, GL_RGB</p> 1492</td> 1493<td class="enum_member_annotations"> </td> 1494</tr> 1495<tr> 1496<td class="enum_member_name"><p><a name="GST-VIDEO-GL-TEXTURE-TYPE-RGBA:CAPS"></a>GST_VIDEO_GL_TEXTURE_TYPE_RGBA</p></td> 1497<td class="enum_member_description"> 1498<p>RGBA texture, GL_RGBA</p> 1499</td> 1500<td class="enum_member_annotations"> </td> 1501</tr> 1502<tr> 1503<td class="enum_member_name"><p><a name="GST-VIDEO-GL-TEXTURE-TYPE-R:CAPS"></a>GST_VIDEO_GL_TEXTURE_TYPE_R</p></td> 1504<td class="enum_member_description"> 1505<p>R texture, GL_RED_EXT</p> 1506</td> 1507<td class="enum_member_annotations"> </td> 1508</tr> 1509<tr> 1510<td class="enum_member_name"><p><a name="GST-VIDEO-GL-TEXTURE-TYPE-RG:CAPS"></a>GST_VIDEO_GL_TEXTURE_TYPE_RG</p></td> 1511<td class="enum_member_description"> 1512<p>RG texture, GL_RG_EXT</p> 1513</td> 1514<td class="enum_member_annotations"> </td> 1515</tr> 1516</tbody> 1517</table></div> 1518</div> 1519</div> 1520<hr> 1521<div class="refsect2"> 1522<a name="GstVideoGLTextureUploadMeta"></a><h3>struct GstVideoGLTextureUploadMeta</h3> 1523<pre class="programlisting">struct GstVideoGLTextureUploadMeta { 1524 GstMeta meta; 1525 1526 GstVideoGLTextureOrientation texture_orientation; 1527 guint n_textures; 1528 GstVideoGLTextureType texture_type[4]; 1529}; 1530</pre> 1531<p>Extra buffer metadata for uploading a buffer to an OpenGL texture 1532ID. The caller of <a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#gst-video-gl-texture-upload-meta-upload" title="gst_video_gl_texture_upload_meta_upload ()"><code class="function">gst_video_gl_texture_upload_meta_upload()</code></a> must 1533have OpenGL set up and call this from a thread where it is valid 1534to upload something to an OpenGL texture.</p> 1535<div class="refsect3"> 1536<a name="GstVideoGLTextureUploadMeta.members"></a><h4>Members</h4> 1537<div class="informaltable"><table class="informaltable" width="100%" border="0"> 1538<colgroup> 1539<col width="300px" class="struct_members_name"> 1540<col class="struct_members_description"> 1541<col width="200px" class="struct_members_annotations"> 1542</colgroup> 1543<tbody> 1544<tr> 1545<td class="struct_member_name"><p><a href="/usr/share/gtk-doc/html/gstreamer-1.0/gstreamer-GstMeta.html#GstMeta"><span class="type">GstMeta</span></a> <em class="structfield"><code><a name="GstVideoGLTextureUploadMeta.meta"></a>meta</code></em>;</p></td> 1546<td class="struct_member_description"><p>parent <a href="/usr/share/gtk-doc/html/gstreamer-1.0/gstreamer-GstMeta.html#GstMeta"><span class="type">GstMeta</span></a></p></td> 1547<td class="struct_member_annotations"> </td> 1548</tr> 1549<tr> 1550<td class="struct_member_name"><p><a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoGLTextureOrientation" title="enum GstVideoGLTextureOrientation"><span class="type">GstVideoGLTextureOrientation</span></a> <em class="structfield"><code><a name="GstVideoGLTextureUploadMeta.texture-orientation"></a>texture_orientation</code></em>;</p></td> 1551<td class="struct_member_description"><p>Orientation of the textures</p></td> 1552<td class="struct_member_annotations"> </td> 1553</tr> 1554<tr> 1555<td class="struct_member_name"><p><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> <em class="structfield"><code><a name="GstVideoGLTextureUploadMeta.n-textures"></a>n_textures</code></em>;</p></td> 1556<td class="struct_member_description"><p>Number of textures that are generated</p></td> 1557<td class="struct_member_annotations"> </td> 1558</tr> 1559<tr> 1560<td class="struct_member_name"><p><a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoGLTextureType" title="enum GstVideoGLTextureType"><span class="type">GstVideoGLTextureType</span></a> <em class="structfield"><code><a name="GstVideoGLTextureUploadMeta.texture-type"></a>texture_type</code></em>[4];</p></td> 1561<td class="struct_member_description"><p>Type of each texture</p></td> 1562<td class="struct_member_annotations"> </td> 1563</tr> 1564</tbody> 1565</table></div> 1566</div> 1567</div> 1568<hr> 1569<div class="refsect2"> 1570<a name="GstVideoTimeCodeMeta"></a><h3>GstVideoTimeCodeMeta</h3> 1571<pre class="programlisting">typedef struct { 1572 GstMeta meta; 1573 1574 GstVideoTimeCode tc; 1575} GstVideoTimeCodeMeta; 1576</pre> 1577<p>Extra buffer metadata describing the GstVideoTimeCode of the frame.</p> 1578<p>Each frame is assumed to have its own timecode, i.e. they are not 1579automatically incremented/interpolated.</p> 1580<div class="refsect3"> 1581<a name="GstVideoTimeCodeMeta.members"></a><h4>Members</h4> 1582<div class="informaltable"><table class="informaltable" width="100%" border="0"> 1583<colgroup> 1584<col width="300px" class="struct_members_name"> 1585<col class="struct_members_description"> 1586<col width="200px" class="struct_members_annotations"> 1587</colgroup> 1588<tbody> 1589<tr> 1590<td class="struct_member_name"><p><a href="/usr/share/gtk-doc/html/gstreamer-1.0/gstreamer-GstMeta.html#GstMeta"><span class="type">GstMeta</span></a> <em class="structfield"><code><a name="GstVideoTimeCodeMeta.meta"></a>meta</code></em>;</p></td> 1591<td class="struct_member_description"><p>parent <a href="/usr/share/gtk-doc/html/gstreamer-1.0/gstreamer-GstMeta.html#GstMeta"><span class="type">GstMeta</span></a></p></td> 1592<td class="struct_member_annotations"> </td> 1593</tr> 1594<tr> 1595<td class="struct_member_name"><p><a class="link" href="gst-plugins-base-libs-GstVideo.html#GstVideoTimeCode" title="struct GstVideoTimeCode"><span class="type">GstVideoTimeCode</span></a> <em class="structfield"><code><a name="GstVideoTimeCodeMeta.tc"></a>tc</code></em>;</p></td> 1596<td class="struct_member_description"><p>the GstVideoTimeCode to attach</p></td> 1597<td class="struct_member_annotations"> </td> 1598</tr> 1599</tbody> 1600</table></div> 1601</div> 1602<p class="since">Since: <a class="link" href="ix06.html#api-index-1.10">1.10</a></p> 1603</div> 1604</div> 1605</div> 1606<div class="footer"> 1607<hr>Generated by GTK-Doc V1.28</div> 1608</body> 1609</html>