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>gstmpegvideometa: GStreamer Bad 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 Bad Plugins 1.0 Library Reference Manual"> 8<link rel="up" href="codecparsers.html" title="Bitstream parsing Library"> 9<link rel="prev" href="gst-plugins-bad-libs-vc1parser.html" title="GstVc1Parser"> 10<link rel="next" href="mpegts.html" title="Mpeg TS helper library"> 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-bad-libs-gstmpegvideometa.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="codecparsers.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td> 22<td><a accesskey="p" href="gst-plugins-bad-libs-vc1parser.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td> 23<td><a accesskey="n" href="mpegts.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-bad-libs-gstmpegvideometa"></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-bad-libs-gstmpegvideometa.top_of_page"></a>gstmpegvideometa</span></h2> 30<p>gstmpegvideometa</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-bad-libs-gstmpegvideometa.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 class="link" href="gst-plugins-bad-libs-gstmpegvideometa.html#GstMpegVideoMeta" title="struct GstMpegVideoMeta"><span class="returnvalue">GstMpegVideoMeta</span></a> * 45</td> 46<td class="function_name"> 47<a class="link" href="gst-plugins-bad-libs-gstmpegvideometa.html#gst-buffer-add-mpeg-video-meta" title="gst_buffer_add_mpeg_video_meta ()">gst_buffer_add_mpeg_video_meta</a> <span class="c_punctuation">()</span> 48</td> 49</tr> 50<tr> 51<td class="define_keyword">#define</td> 52<td class="function_name"> 53<a class="link" href="gst-plugins-bad-libs-gstmpegvideometa.html#gst-buffer-get-mpeg-video-meta" title="gst_buffer_get_mpeg_video_meta()">gst_buffer_get_mpeg_video_meta</a><span class="c_punctuation">()</span> 54</td> 55</tr> 56<tr> 57<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> * 58</td> 59<td class="function_name"> 60<a class="link" href="gst-plugins-bad-libs-gstmpegvideometa.html#gst-mpeg-video-meta-get-info" title="gst_mpeg_video_meta_get_info ()">gst_mpeg_video_meta_get_info</a> <span class="c_punctuation">()</span> 61</td> 62</tr> 63</tbody> 64</table></div> 65</div> 66<div class="refsect1"> 67<a name="gst-plugins-bad-libs-gstmpegvideometa.other"></a><h2>Types and Values</h2> 68<div class="informaltable"><table class="informaltable" width="100%" border="0"> 69<colgroup> 70<col width="150px" class="name"> 71<col class="description"> 72</colgroup> 73<tbody> 74<tr> 75<td class="define_keyword">#define</td> 76<td class="function_name"><a class="link" href="gst-plugins-bad-libs-gstmpegvideometa.html#GST-MPEG-VIDEO-META-API-TYPE:CAPS" title="GST_MPEG_VIDEO_META_API_TYPE">GST_MPEG_VIDEO_META_API_TYPE</a></td> 77</tr> 78<tr> 79<td class="define_keyword">#define</td> 80<td class="function_name"><a class="link" href="gst-plugins-bad-libs-gstmpegvideometa.html#GST-MPEG-VIDEO-META-INFO:CAPS" title="GST_MPEG_VIDEO_META_INFO">GST_MPEG_VIDEO_META_INFO</a></td> 81</tr> 82<tr> 83<td class="datatype_keyword">struct</td> 84<td class="function_name"><a class="link" href="gst-plugins-bad-libs-gstmpegvideometa.html#GstMpegVideoMeta" title="struct GstMpegVideoMeta">GstMpegVideoMeta</a></td> 85</tr> 86</tbody> 87</table></div> 88</div> 89<div class="refsect1"> 90<a name="gst-plugins-bad-libs-gstmpegvideometa.includes"></a><h2>Includes</h2> 91<pre class="synopsis">#include <gst/codecparsers/gstmpegvideometa.h> 92</pre> 93</div> 94<div class="refsect1"> 95<a name="gst-plugins-bad-libs-gstmpegvideometa.description"></a><h2>Description</h2> 96</div> 97<div class="refsect1"> 98<a name="gst-plugins-bad-libs-gstmpegvideometa.functions_details"></a><h2>Functions</h2> 99<div class="refsect2"> 100<a name="gst-buffer-add-mpeg-video-meta"></a><h3>gst_buffer_add_mpeg_video_meta ()</h3> 101<pre class="programlisting"><a class="link" href="gst-plugins-bad-libs-gstmpegvideometa.html#GstMpegVideoMeta" title="struct GstMpegVideoMeta"><span class="returnvalue">GstMpegVideoMeta</span></a> * 102gst_buffer_add_mpeg_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>, 103 <em class="parameter"><code>const <a class="link" href="gst-plugins-bad-libs-mpegvideoparser.html#GstMpegVideoSequenceHdr" title="struct GstMpegVideoSequenceHdr"><span class="type">GstMpegVideoSequenceHdr</span></a> *seq_hdr</code></em>, 104 <em class="parameter"><code>const <a class="link" href="gst-plugins-bad-libs-mpegvideoparser.html#GstMpegVideoSequenceExt" title="struct GstMpegVideoSequenceExt"><span class="type">GstMpegVideoSequenceExt</span></a> *seq_ext</code></em>, 105 <em class="parameter"><code>const <span class="type">GstMpegVideoSequenceDisplayExt</span> *disp_ext</code></em>, 106 <em class="parameter"><code>const <a class="link" href="gst-plugins-bad-libs-mpegvideoparser.html#GstMpegVideoPictureHdr" title="struct GstMpegVideoPictureHdr"><span class="type">GstMpegVideoPictureHdr</span></a> *pic_hdr</code></em>, 107 <em class="parameter"><code>const <a class="link" href="gst-plugins-bad-libs-mpegvideoparser.html#GstMpegVideoPictureExt" title="struct GstMpegVideoPictureExt"><span class="type">GstMpegVideoPictureExt</span></a> *pic_ext</code></em>, 108 <em class="parameter"><code>const <a class="link" href="gst-plugins-bad-libs-mpegvideoparser.html#GstMpegVideoQuantMatrixExt" title="struct GstMpegVideoQuantMatrixExt"><span class="type">GstMpegVideoQuantMatrixExt</span></a> *quant_ext</code></em>);</pre> 109<p>Creates and adds a <a class="link" href="gst-plugins-bad-libs-gstmpegvideometa.html#GstMpegVideoMeta" title="struct GstMpegVideoMeta"><span class="type">GstMpegVideoMeta</span></a> to a <em class="parameter"><code>buffer</code></em> 110.</p> 111<p>Provided structures must either be <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> or GSlice-allocated.</p> 112<div class="refsect3"> 113<a name="gst-buffer-add-mpeg-video-meta.parameters"></a><h4>Parameters</h4> 114<div class="informaltable"><table class="informaltable" width="100%" border="0"> 115<colgroup> 116<col width="150px" class="parameters_name"> 117<col class="parameters_description"> 118<col width="200px" class="parameters_annotations"> 119</colgroup> 120<tbody><tr> 121<td class="parameter_name"><p>buffer</p></td> 122<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> 123<td class="parameter_annotations"> </td> 124</tr></tbody> 125</table></div> 126</div> 127<div class="refsect3"> 128<a name="gst-buffer-add-mpeg-video-meta.returns"></a><h4>Returns</h4> 129<p>a newly created <a class="link" href="gst-plugins-bad-libs-gstmpegvideometa.html#GstMpegVideoMeta" title="struct GstMpegVideoMeta"><span class="type">GstMpegVideoMeta</span></a>. </p> 130<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p> 131</div> 132<p class="since">Since: 1.2</p> 133</div> 134<hr> 135<div class="refsect2"> 136<a name="gst-buffer-get-mpeg-video-meta"></a><h3>gst_buffer_get_mpeg_video_meta()</h3> 137<pre class="programlisting">#define gst_buffer_get_mpeg_video_meta(b) ((GstMpegVideoMeta*)gst_buffer_get_meta((b),GST_MPEG_VIDEO_META_API_TYPE)) 138</pre> 139</div> 140<hr> 141<div class="refsect2"> 142<a name="gst-mpeg-video-meta-get-info"></a><h3>gst_mpeg_video_meta_get_info ()</h3> 143<pre class="programlisting">const <a href="/usr/share/gtk-doc/html/gstreamer-1.0/gstreamer-GstMeta.html#GstMetaInfo"><span class="returnvalue">GstMetaInfo</span></a> * 144gst_mpeg_video_meta_get_info (<em class="parameter"><code><span class="type">void</span></code></em>);</pre> 145</div> 146</div> 147<div class="refsect1"> 148<a name="gst-plugins-bad-libs-gstmpegvideometa.other_details"></a><h2>Types and Values</h2> 149<div class="refsect2"> 150<a name="GST-MPEG-VIDEO-META-API-TYPE:CAPS"></a><h3>GST_MPEG_VIDEO_META_API_TYPE</h3> 151<pre class="programlisting">#define GST_MPEG_VIDEO_META_API_TYPE (gst_mpeg_video_meta_api_get_type()) 152</pre> 153</div> 154<hr> 155<div class="refsect2"> 156<a name="GST-MPEG-VIDEO-META-INFO:CAPS"></a><h3>GST_MPEG_VIDEO_META_INFO</h3> 157<pre class="programlisting">#define GST_MPEG_VIDEO_META_INFO (gst_mpeg_video_meta_get_info()) 158</pre> 159</div> 160<hr> 161<div class="refsect2"> 162<a name="GstMpegVideoMeta"></a><h3>struct GstMpegVideoMeta</h3> 163<pre class="programlisting">struct GstMpegVideoMeta { 164 GstMeta meta; 165 166 GstMpegVideoSequenceHdr *sequencehdr; 167 GstMpegVideoSequenceExt *sequenceext; 168 GstMpegVideoSequenceDisplayExt *sequencedispext; 169 GstMpegVideoPictureHdr *pichdr; 170 GstMpegVideoPictureExt *picext; 171 GstMpegVideoQuantMatrixExt *quantext; 172 173 guint num_slices; 174 gsize slice_offset; 175}; 176</pre> 177<p>Extra buffer metadata describing the contents of a MPEG1/2 Video frame</p> 178<p>Can be used by elements (mainly decoders) to avoid having to parse 179Mpeg video 1/2 packets if it can be done upstream.</p> 180<p>The various fields are only valid during the lifetime of the <a class="link" href="gst-plugins-bad-libs-gstmpegvideometa.html#GstMpegVideoMeta" title="struct GstMpegVideoMeta"><span class="type">GstMpegVideoMeta</span></a>. 181If elements wish to use those for longer, they are required to make a copy.</p> 182<div class="refsect3"> 183<a name="GstMpegVideoMeta.members"></a><h4>Members</h4> 184<div class="informaltable"><table class="informaltable" width="100%" border="0"> 185<colgroup> 186<col width="300px" class="struct_members_name"> 187<col class="struct_members_description"> 188<col width="200px" class="struct_members_annotations"> 189</colgroup> 190<tbody> 191<tr> 192<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="GstMpegVideoMeta.meta"></a>meta</code></em>;</p></td> 193<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> 194<td class="struct_member_annotations"> </td> 195</tr> 196<tr> 197<td class="struct_member_name"><p><a class="link" href="gst-plugins-bad-libs-mpegvideoparser.html#GstMpegVideoSequenceHdr" title="struct GstMpegVideoSequenceHdr"><span class="type">GstMpegVideoSequenceHdr</span></a> *<em class="structfield"><code><a name="GstMpegVideoMeta.sequencehdr"></a>sequencehdr</code></em>;</p></td> 198<td class="struct_member_description"><p>the <a class="link" href="gst-plugins-bad-libs-mpegvideoparser.html#GstMpegVideoSequenceHdr" title="struct GstMpegVideoSequenceHdr"><span class="type">GstMpegVideoSequenceHdr</span></a> if present in the buffer</p></td> 199<td class="struct_member_annotations"> </td> 200</tr> 201<tr> 202<td class="struct_member_name"><p><a class="link" href="gst-plugins-bad-libs-mpegvideoparser.html#GstMpegVideoSequenceExt" title="struct GstMpegVideoSequenceExt"><span class="type">GstMpegVideoSequenceExt</span></a> *<em class="structfield"><code><a name="GstMpegVideoMeta.sequenceext"></a>sequenceext</code></em>;</p></td> 203<td class="struct_member_description"><p>the <a class="link" href="gst-plugins-bad-libs-mpegvideoparser.html#GstMpegVideoSequenceExt" title="struct GstMpegVideoSequenceExt"><span class="type">GstMpegVideoSequenceExt</span></a> if present in the buffer</p></td> 204<td class="struct_member_annotations"> </td> 205</tr> 206<tr> 207<td class="struct_member_name"><p><span class="type">GstMpegVideoSequenceDisplayExt</span> *<em class="structfield"><code><a name="GstMpegVideoMeta.sequencedispext"></a>sequencedispext</code></em>;</p></td> 208<td class="struct_member_description"><p>the <span class="type">GstMpegVideoSequenceDisplayExt</span> if present in the 209buffer.</p></td> 210<td class="struct_member_annotations"> </td> 211</tr> 212<tr> 213<td class="struct_member_name"><p><a class="link" href="gst-plugins-bad-libs-mpegvideoparser.html#GstMpegVideoPictureHdr" title="struct GstMpegVideoPictureHdr"><span class="type">GstMpegVideoPictureHdr</span></a> *<em class="structfield"><code><a name="GstMpegVideoMeta.pichdr"></a>pichdr</code></em>;</p></td> 214<td class="struct_member_description"><p>the <a class="link" href="gst-plugins-bad-libs-mpegvideoparser.html#GstMpegVideoPictureHdr" title="struct GstMpegVideoPictureHdr"><span class="type">GstMpegVideoPictureHdr</span></a> if present in the buffer.</p></td> 215<td class="struct_member_annotations"> </td> 216</tr> 217<tr> 218<td class="struct_member_name"><p><a class="link" href="gst-plugins-bad-libs-mpegvideoparser.html#GstMpegVideoPictureExt" title="struct GstMpegVideoPictureExt"><span class="type">GstMpegVideoPictureExt</span></a> *<em class="structfield"><code><a name="GstMpegVideoMeta.picext"></a>picext</code></em>;</p></td> 219<td class="struct_member_description"><p>the <a class="link" href="gst-plugins-bad-libs-mpegvideoparser.html#GstMpegVideoPictureExt" title="struct GstMpegVideoPictureExt"><span class="type">GstMpegVideoPictureExt</span></a> if present in the buffer.</p></td> 220<td class="struct_member_annotations"> </td> 221</tr> 222<tr> 223<td class="struct_member_name"><p><a class="link" href="gst-plugins-bad-libs-mpegvideoparser.html#GstMpegVideoQuantMatrixExt" title="struct GstMpegVideoQuantMatrixExt"><span class="type">GstMpegVideoQuantMatrixExt</span></a> *<em class="structfield"><code><a name="GstMpegVideoMeta.quantext"></a>quantext</code></em>;</p></td> 224<td class="struct_member_description"><p>the <a class="link" href="gst-plugins-bad-libs-mpegvideoparser.html#GstMpegVideoQuantMatrixExt" title="struct GstMpegVideoQuantMatrixExt"><span class="type">GstMpegVideoQuantMatrixExt</span></a> if present in the buffer</p></td> 225<td class="struct_member_annotations"> </td> 226</tr> 227<tr> 228<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="GstMpegVideoMeta.num-slices"></a>num_slices</code></em>;</p></td> 229<td> </td> 230<td> </td> 231</tr> 232<tr> 233<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="GstMpegVideoMeta.slice-offset"></a>slice_offset</code></em>;</p></td> 234<td> </td> 235<td> </td> 236</tr> 237</tbody> 238</table></div> 239</div> 240<p class="since">Since: 1.2</p> 241</div> 242</div> 243</div> 244<div class="footer"> 245<hr>Generated by GTK-Doc V1.28</div> 246</body> 247</html>