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>cairooverlay: GStreamer Good Plugins 1.0 Plugins Reference Manual</title> 6<meta name="generator" content="DocBook XSL Stylesheets V1.79.1"> 7<link rel="home" href="index.html" title="GStreamer Good Plugins 1.0 Plugins Reference Manual"> 8<link rel="up" href="ch01.html" title="gst-plugins-good Elements"> 9<link rel="prev" href="gst-plugins-good-plugins-cacasink.html" title="cacasink"> 10<link rel="next" href="gst-plugins-good-plugins-capssetter.html" title="capssetter"> 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-good-plugins-cairooverlay.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 19 <a href="#gst-plugins-good-plugins-cairooverlay.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_properties"> <span class="dim">|</span> 20 <a href="#gst-plugins-good-plugins-cairooverlay.properties" class="shortcut">Properties</a></span><span id="nav_signals"> <span class="dim">|</span> 21 <a href="#gst-plugins-good-plugins-cairooverlay.signals" class="shortcut">Signals</a></span> 22</td> 23<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td> 24<td><a accesskey="u" href="ch01.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td> 25<td><a accesskey="p" href="gst-plugins-good-plugins-cacasink.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td> 26<td><a accesskey="n" href="gst-plugins-good-plugins-capssetter.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td> 27</tr></table> 28<div class="refentry"> 29<a name="gst-plugins-good-plugins-cairooverlay"></a><div class="titlepage"></div> 30<div class="refnamediv"><table width="100%"><tr> 31<td valign="top"> 32<h2><span class="refentrytitle"><a name="gst-plugins-good-plugins-cairooverlay.top_of_page"></a>cairooverlay</span></h2> 33<p>cairooverlay</p> 34</td> 35<td class="gallery_image" valign="top" align="right"></td> 36</tr></table></div> 37<div class="refsect1"> 38<a name="gst-plugins-good-plugins-cairooverlay.properties"></a><h2>Properties</h2> 39<div class="informaltable"><table class="informaltable" border="0"> 40<colgroup> 41<col width="150px" class="properties_type"> 42<col width="300px" class="properties_name"> 43<col width="200px" class="properties_flags"> 44</colgroup> 45<tbody><tr> 46<td class="property_type"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td> 47<td class="property_name"><a class="link" href="gst-plugins-good-plugins-cairooverlay.html#GstCairoOverlay--draw-on-transparent-surface" title="The “draw-on-transparent-surface” property">draw-on-transparent-surface</a></td> 48<td class="property_flags">Read / Write</td> 49</tr></tbody> 50</table></div> 51</div> 52<div class="refsect1"> 53<a name="gst-plugins-good-plugins-cairooverlay.signals"></a><h2>Signals</h2> 54<div class="informaltable"><table class="informaltable" border="0"> 55<colgroup> 56<col width="150px" class="signals_return"> 57<col width="300px" class="signals_name"> 58<col width="200px" class="signals_flags"> 59</colgroup> 60<tbody> 61<tr> 62<td class="signal_type"><span class="returnvalue">void</span></td> 63<td class="signal_name"><a class="link" href="gst-plugins-good-plugins-cairooverlay.html#GstCairoOverlay-caps-changed" title="The “caps-changed” signal">caps-changed</a></td> 64<td class="signal_flags"> </td> 65</tr> 66<tr> 67<td class="signal_type"><span class="returnvalue">void</span></td> 68<td class="signal_name"><a class="link" href="gst-plugins-good-plugins-cairooverlay.html#GstCairoOverlay-draw" title="The “draw” signal">draw</a></td> 69<td class="signal_flags"> </td> 70</tr> 71</tbody> 72</table></div> 73</div> 74<a name="GstCairoOverlay"></a><div class="refsect1"> 75<a name="gst-plugins-good-plugins-cairooverlay.other"></a><h2>Types and Values</h2> 76<div class="informaltable"><table class="informaltable" width="100%" border="0"> 77<colgroup> 78<col width="150px" class="name"> 79<col class="description"> 80</colgroup> 81<tbody><tr> 82<td class="datatype_keyword">struct</td> 83<td class="function_name"><a class="link" href="gst-plugins-good-plugins-cairooverlay.html#GstCairoOverlay-struct" title="struct GstCairoOverlay">GstCairoOverlay</a></td> 84</tr></tbody> 85</table></div> 86</div> 87<div class="refsect1"> 88<a name="gst-plugins-good-plugins-cairooverlay.object-hierarchy"></a><h2>Object Hierarchy</h2> 89<pre class="screen"> <a href="/usr/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#GObject-struct">GObject</a> 90 <span class="lineart">╰──</span> <a href="/usr/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a> 91 <span class="lineart">╰──</span> <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstObject.html#GstObject-struct">GstObject</a> 92 <span class="lineart">╰──</span> <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstElement.html#GstElement-struct">GstElement</a> 93 <span class="lineart">╰──</span> <a href="/usr/share/gtk-doc/html/gstreamer-libs-1.0/GstBaseTransform.html#GstBaseTransform-struct">GstBaseTransform</a> 94 <span class="lineart">╰──</span> GstCairoOverlay 95</pre> 96</div> 97<div class="refsect1"> 98<a name="gst-plugins-good-plugins-cairooverlay.description"></a><h2>Description</h2> 99<p>cairooverlay renders an overlay using a application provided render function.</p> 100<p>The full example can be found in tests/examples/cairo/cairo_overlay.c</p> 101<div class="refsect2"> 102<a name="id-1.2.38.8.4"></a><h3>Example code</h3> 103<div class="informalexample"> 104 <table class="listing_frame" border="0" cellpadding="0" cellspacing="0"> 105 <tbody> 106 <tr> 107 <td class="listing_lines" align="right"><pre>1 1082 1093 1104 1115 1126 1137 1148 1159 11610 11711 11812 11913 12014 12115 12216 12317 12418 12519 12620 12721 12822 12923 13024 13125 13226 13327 13428 13529 13630 13731 13832 13933 14034 14135 14236 14337 14438 14539 14640 14741 14842 14943 15044 15145 15246 15347 15448 15549 15650 15751 15852 15953 16054</pre></td> 161 <td class="listing_code"><pre class="programlisting"><span class="gtkdoc ppc">#include <gst/gst.h></span> 162<span class="gtkdoc ppc">#include <gst/video/video.h></span> 163 164<span class="gtkdoc opt">...</span> 165 166<span class="gtkdoc kwc">typedef</span> <span class="gtkdoc kwb">struct</span> <span class="gtkdoc opt">{</span> 167 gboolean valid<span class="gtkdoc opt">;</span> 168 <span class="gtkdoc kwb">int</span> width<span class="gtkdoc opt">;</span> 169 <span class="gtkdoc kwb">int</span> height<span class="gtkdoc opt">;</span> 170<span class="gtkdoc opt">}</span> CairoOverlayState<span class="gtkdoc opt">;</span> 171 172<span class="gtkdoc opt">...</span> 173 174<span class="gtkdoc kwb">static void</span> 175<span class="function">prepare_overlay</span> <span class="gtkdoc opt">(</span>GstElement <span class="gtkdoc opt">*</span> overlay<span class="gtkdoc opt">,</span> GstCaps <span class="gtkdoc opt">*</span> caps<span class="gtkdoc opt">,</span> gpointer user_data<span class="gtkdoc opt">)</span> 176<span class="gtkdoc opt">{</span> 177 CairoOverlayState <span class="gtkdoc opt">*</span>state <span class="gtkdoc opt">= (</span>CairoOverlayState <span class="gtkdoc opt">*)</span>user_data<span class="gtkdoc opt">;</span> 178 179 <span class="function">gst_video_format_parse_caps</span> <span class="gtkdoc opt">(</span>caps<span class="gtkdoc opt">,</span> NULL<span class="gtkdoc opt">, &</span>state<span class="gtkdoc opt">-></span>width<span class="gtkdoc opt">, &</span>state<span class="gtkdoc opt">-></span>height<span class="gtkdoc opt">);</span> 180 state<span class="gtkdoc opt">-></span>valid <span class="gtkdoc opt">=</span> TRUE<span class="gtkdoc opt">;</span> 181<span class="gtkdoc opt">}</span> 182 183<span class="gtkdoc kwb">static void</span> 184<span class="function">draw_overlay</span> <span class="gtkdoc opt">(</span>GstElement <span class="gtkdoc opt">*</span> overlay<span class="gtkdoc opt">,</span> cairo_t <span class="gtkdoc opt">*</span> cr<span class="gtkdoc opt">,</span> guint64 timestamp<span class="gtkdoc opt">,</span> 185 guint64 duration<span class="gtkdoc opt">,</span> gpointer user_data<span class="gtkdoc opt">)</span> 186<span class="gtkdoc opt">{</span> 187 CairoOverlayState <span class="gtkdoc opt">*</span>s <span class="gtkdoc opt">= (</span>CairoOverlayState <span class="gtkdoc opt">*)</span>user_data<span class="gtkdoc opt">;</span> 188 <span class="gtkdoc kwb">double</span> scale<span class="gtkdoc opt">;</span> 189 190 <span class="keyword">if</span> <span class="gtkdoc opt">(!</span>s<span class="gtkdoc opt">-></span>valid<span class="gtkdoc opt">)</span> 191 <span class="keyword">return</span><span class="gtkdoc opt">;</span> 192 193 scale <span class="gtkdoc opt">=</span> <span class="number">2</span><span class="gtkdoc opt">*(((</span>timestamp<span class="gtkdoc opt">/(</span><span class="gtkdoc kwb">int</span><span class="gtkdoc opt">)</span><span class="number">1</span>e7<span class="gtkdoc opt">) %</span> <span class="number">70</span><span class="gtkdoc opt">)+</span><span class="number">30</span><span class="gtkdoc opt">)/</span><span class="number">100.0</span><span class="gtkdoc opt">;</span> 194 <span class="function"><a href="/usr/share/gtk-doc/html/cairo/cairo-Transformations.html#cairo-translate">cairo_translate</a></span><span class="gtkdoc opt">(</span>cr<span class="gtkdoc opt">,</span> s<span class="gtkdoc opt">-></span>width<span class="gtkdoc opt">/</span><span class="number">2</span><span class="gtkdoc opt">, (</span>s<span class="gtkdoc opt">-></span>height<span class="gtkdoc opt">/</span><span class="number">2</span><span class="gtkdoc opt">)-</span><span class="number">30</span><span class="gtkdoc opt">);</span> 195 <span class="function"><a href="/usr/share/gtk-doc/html/cairo/cairo-Transformations.html#cairo-scale">cairo_scale</a></span> <span class="gtkdoc opt">(</span>cr<span class="gtkdoc opt">,</span> scale<span class="gtkdoc opt">,</span> scale<span class="gtkdoc opt">);</span> 196 197 <span class="function"><a href="/usr/share/gtk-doc/html/cairo/cairo-Paths.html#cairo-move-to">cairo_move_to</a></span> <span class="gtkdoc opt">(</span>cr<span class="gtkdoc opt">,</span> <span class="number">0</span><span class="gtkdoc opt">,</span> <span class="number">0</span><span class="gtkdoc opt">);</span> 198 <span class="function"><a href="/usr/share/gtk-doc/html/cairo/cairo-Paths.html#cairo-curve-to">cairo_curve_to</a></span> <span class="gtkdoc opt">(</span>cr<span class="gtkdoc opt">,</span> <span class="number">0</span><span class="gtkdoc opt">,-</span><span class="number">30</span><span class="gtkdoc opt">, -</span><span class="number">50</span><span class="gtkdoc opt">,-</span><span class="number">30</span><span class="gtkdoc opt">, -</span><span class="number">50</span><span class="gtkdoc opt">,</span><span class="number">0</span><span class="gtkdoc opt">);</span> 199 <span class="function"><a href="/usr/share/gtk-doc/html/cairo/cairo-Paths.html#cairo-curve-to">cairo_curve_to</a></span> <span class="gtkdoc opt">(</span>cr<span class="gtkdoc opt">, -</span><span class="number">50</span><span class="gtkdoc opt">,</span><span class="number">30</span><span class="gtkdoc opt">,</span> <span class="number">0</span><span class="gtkdoc opt">,</span><span class="number">35</span><span class="gtkdoc opt">,</span> <span class="number">0</span><span class="gtkdoc opt">,</span><span class="number">60</span> <span class="gtkdoc opt">);</span> 200 <span class="function"><a href="/usr/share/gtk-doc/html/cairo/cairo-Paths.html#cairo-curve-to">cairo_curve_to</a></span> <span class="gtkdoc opt">(</span>cr<span class="gtkdoc opt">,</span> <span class="number">0</span><span class="gtkdoc opt">,</span><span class="number">35</span><span class="gtkdoc opt">,</span> <span class="number">50</span><span class="gtkdoc opt">,</span><span class="number">30</span><span class="gtkdoc opt">,</span> <span class="number">50</span><span class="gtkdoc opt">,</span><span class="number">0</span> <span class="gtkdoc opt">); *</span> 201 <span class="function"><a href="/usr/share/gtk-doc/html/cairo/cairo-Paths.html#cairo-curve-to">cairo_curve_to</a></span> <span class="gtkdoc opt">(</span>cr<span class="gtkdoc opt">,</span> <span class="number">50</span><span class="gtkdoc opt">,-</span><span class="number">30</span><span class="gtkdoc opt">,</span> <span class="number">0</span><span class="gtkdoc opt">,-</span><span class="number">30</span><span class="gtkdoc opt">,</span> <span class="number">0</span><span class="gtkdoc opt">,</span><span class="number">0</span> <span class="gtkdoc opt">);</span> 202 <span class="function"><a href="/usr/share/gtk-doc/html/cairo/cairo-cairo-t.html#cairo-set-source-rgba">cairo_set_source_rgba</a></span> <span class="gtkdoc opt">(</span>cr<span class="gtkdoc opt">,</span> <span class="number">0.9</span><span class="gtkdoc opt">,</span> <span class="number">0.0</span><span class="gtkdoc opt">,</span> <span class="number">0.1</span><span class="gtkdoc opt">,</span> <span class="number">0.7</span><span class="gtkdoc opt">);</span> 203 <span class="function"><a href="/usr/share/gtk-doc/html/cairo/cairo-cairo-t.html#cairo-fill">cairo_fill</a></span> <span class="gtkdoc opt">(</span>cr<span class="gtkdoc opt">);</span> 204<span class="gtkdoc opt">}</span> 205 206<span class="gtkdoc opt">...</span> 207 208cairo_overlay <span class="gtkdoc opt">=</span> <span class="function"><a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstElementFactory.html#gst-element-factory-make">gst_element_factory_make</a></span> <span class="gtkdoc opt">(</span><span class="string">"cairooverlay"</span><span class="gtkdoc opt">,</span> <span class="string">"overlay"</span><span class="gtkdoc opt">);</span> 209 210<span class="function"><a href="/usr/share/gtk-doc/html/gobject/gobject-Signals.html#g-signal-connect">g_signal_connect</a></span> <span class="gtkdoc opt">(</span>cairo_overlay<span class="gtkdoc opt">,</span> <span class="string">"draw"</span><span class="gtkdoc opt">,</span> <span class="function"><a href="/usr/share/gtk-doc/html/gobject/gobject-Closures.html#G-CALLBACK:CAPS">G_CALLBACK</a></span> <span class="gtkdoc opt">(</span>draw_overlay<span class="gtkdoc opt">),</span> 211 overlay_state<span class="gtkdoc opt">);</span> 212<span class="function"><a href="/usr/share/gtk-doc/html/gobject/gobject-Signals.html#g-signal-connect">g_signal_connect</a></span> <span class="gtkdoc opt">(</span>cairo_overlay<span class="gtkdoc opt">,</span> <span class="string">"caps-changed"</span><span class="gtkdoc opt">,</span> 213 <span class="function"><a href="/usr/share/gtk-doc/html/gobject/gobject-Closures.html#G-CALLBACK:CAPS">G_CALLBACK</a></span> <span class="gtkdoc opt">(</span>prepare_overlay<span class="gtkdoc opt">),</span> overlay_state<span class="gtkdoc opt">);</span> 214<span class="gtkdoc opt">...</span></pre></td> 215 </tr> 216 </tbody> 217 </table> 218</div> 219 220</div> 221<div class="refsynopsisdiv"> 222<h2>Synopsis</h2> 223<div class="refsect2"> 224<a name="id-1.2.38.8.5.1"></a><h3>Element Information</h3> 225<div class="variablelist"><table border="0" class="variablelist"> 226<colgroup> 227<col align="left" valign="top"> 228<col> 229</colgroup> 230<tbody> 231<tr> 232<td><p><span class="term">plugin</span></p></td> 233<td> 234 <a class="link" href="gst-plugins-good-plugins-plugin-cairo.html#plugin-cairo">cairo</a> 235 </td> 236</tr> 237<tr> 238<td><p><span class="term">author</span></p></td> 239<td>Jon Nordby <jononor@gmail.com></td> 240</tr> 241<tr> 242<td><p><span class="term">class</span></p></td> 243<td>Filter/Editor/Video</td> 244</tr> 245</tbody> 246</table></div> 247</div> 248<hr> 249<div class="refsect2"> 250<a name="id-1.2.38.8.5.2"></a><h3>Element Pads</h3> 251<div class="variablelist"><table border="0" class="variablelist"> 252<colgroup> 253<col align="left" valign="top"> 254<col> 255</colgroup> 256<tbody> 257<tr> 258<td><p><span class="term">name</span></p></td> 259<td>sink</td> 260</tr> 261<tr> 262<td><p><span class="term">direction</span></p></td> 263<td>sink</td> 264</tr> 265<tr> 266<td><p><span class="term">presence</span></p></td> 267<td>always</td> 268</tr> 269<tr> 270<td><p><span class="term">details</span></p></td> 271<td>video/x-raw, format=(string){ BGRx, BGRA, RGB16 }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</td> 272</tr> 273</tbody> 274</table></div> 275<div class="variablelist"><table border="0" class="variablelist"> 276<colgroup> 277<col align="left" valign="top"> 278<col> 279</colgroup> 280<tbody> 281<tr> 282<td><p><span class="term">name</span></p></td> 283<td>src</td> 284</tr> 285<tr> 286<td><p><span class="term">direction</span></p></td> 287<td>source</td> 288</tr> 289<tr> 290<td><p><span class="term">presence</span></p></td> 291<td>always</td> 292</tr> 293<tr> 294<td><p><span class="term">details</span></p></td> 295<td>video/x-raw, format=(string){ BGRx, BGRA, RGB16 }, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</td> 296</tr> 297</tbody> 298</table></div> 299</div> 300</div> 301</div> 302<div class="refsect1"> 303<a name="gst-plugins-good-plugins-cairooverlay.functions_details"></a><h2>Functions</h2> 304<p></p> 305</div> 306<div class="refsect1"> 307<a name="gst-plugins-good-plugins-cairooverlay.other_details"></a><h2>Types and Values</h2> 308<div class="refsect2"> 309<a name="GstCairoOverlay-struct"></a><h3>struct GstCairoOverlay</h3> 310<pre class="programlisting">struct GstCairoOverlay;</pre> 311</div> 312</div> 313<div class="refsect1"> 314<a name="gst-plugins-good-plugins-cairooverlay.property-details"></a><h2>Property Details</h2> 315<div class="refsect2"> 316<a name="GstCairoOverlay--draw-on-transparent-surface"></a><h3>The <code class="literal">“draw-on-transparent-surface”</code> property</h3> 317<pre class="programlisting"> “draw-on-transparent-surface” <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre> 318<p>Let the draw signal work on a transparent surface and blend the results with the video at a later time.</p> 319<p>Flags: Read / Write</p> 320<p>Default value: FALSE</p> 321</div> 322</div> 323<div class="refsect1"> 324<a name="gst-plugins-good-plugins-cairooverlay.signal-details"></a><h2>Signal Details</h2> 325<div class="refsect2"> 326<a name="GstCairoOverlay-caps-changed"></a><h3>The <code class="literal">“caps-changed”</code> signal</h3> 327<pre class="programlisting"><span class="returnvalue">void</span> 328user_function (<a class="link" href="gst-plugins-good-plugins-cairooverlay.html#GstCairoOverlay"><span class="type">GstCairoOverlay</span></a> *overlay, 329 <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstCaps.html#GstCaps-struct"><span class="type">GstCaps</span></a> *caps, 330 <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data)</pre> 331<p>This signal is emitted when the caps of the element has changed.</p> 332<div class="refsect3"> 333<a name="GstCairoOverlay-caps-changed.parameters"></a><h4>Parameters</h4> 334<div class="informaltable"><table class="informaltable" width="100%" border="0"> 335<colgroup> 336<col width="150px" class="parameters_name"> 337<col class="parameters_description"> 338<col width="200px" class="parameters_annotations"> 339</colgroup> 340<tbody> 341<tr> 342<td class="parameter_name"><p>overlay</p></td> 343<td class="parameter_description"><p>Overlay element emitting the signal.</p></td> 344<td class="parameter_annotations"> </td> 345</tr> 346<tr> 347<td class="parameter_name"><p>caps</p></td> 348<td class="parameter_description"><p>The <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstCaps.html#GstCaps-struct"><span class="type">GstCaps</span></a> of the element.</p></td> 349<td class="parameter_annotations"> </td> 350</tr> 351<tr> 352<td class="parameter_name"><p>user_data</p></td> 353<td class="parameter_description"><p>user data set when the signal handler was connected.</p></td> 354<td class="parameter_annotations"> </td> 355</tr> 356</tbody> 357</table></div> 358</div> 359</div> 360<hr> 361<div class="refsect2"> 362<a name="GstCairoOverlay-draw"></a><h3>The <code class="literal">“draw”</code> signal</h3> 363<pre class="programlisting"><span class="returnvalue">void</span> 364user_function (<a class="link" href="gst-plugins-good-plugins-cairooverlay.html#GstCairoOverlay"><span class="type">GstCairoOverlay</span></a> *overlay, 365 <span class="type">CairoContext</span> *cr, 366 <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint64"><span class="type">guint64</span></a> timestamp, 367 <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint64"><span class="type">guint64</span></a> duration, 368 <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data)</pre> 369<p>This signal is emitted when the overlay should be drawn.</p> 370<div class="refsect3"> 371<a name="GstCairoOverlay-draw.parameters"></a><h4>Parameters</h4> 372<div class="informaltable"><table class="informaltable" width="100%" border="0"> 373<colgroup> 374<col width="150px" class="parameters_name"> 375<col class="parameters_description"> 376<col width="200px" class="parameters_annotations"> 377</colgroup> 378<tbody> 379<tr> 380<td class="parameter_name"><p>overlay</p></td> 381<td class="parameter_description"><p>Overlay element emitting the signal.</p></td> 382<td class="parameter_annotations"> </td> 383</tr> 384<tr> 385<td class="parameter_name"><p>cr</p></td> 386<td class="parameter_description"><p>Cairo context to draw to.</p></td> 387<td class="parameter_annotations"> </td> 388</tr> 389<tr> 390<td class="parameter_name"><p>timestamp</p></td> 391<td class="parameter_description"><p>Timestamp (see <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstClock.html#GstClockTime"><span class="type">GstClockTime</span></a>) of the current buffer.</p></td> 392<td class="parameter_annotations"> </td> 393</tr> 394<tr> 395<td class="parameter_name"><p>duration</p></td> 396<td class="parameter_description"><p>Duration (see <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstClock.html#GstClockTime"><span class="type">GstClockTime</span></a>) of the current buffer.</p></td> 397<td class="parameter_annotations"> </td> 398</tr> 399<tr> 400<td class="parameter_name"><p>user_data</p></td> 401<td class="parameter_description"><p>user data set when the signal handler was connected.</p></td> 402<td class="parameter_annotations"> </td> 403</tr> 404</tbody> 405</table></div> 406</div> 407</div> 408</div> 409</div> 410<div class="footer"> 411<hr>Generated by GTK-Doc V1.28</div> 412</body> 413</html>