• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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>videorate: GStreamer Base 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 Base Plugins 1.0 Plugins Reference Manual">
8<link rel="up" href="ch01.html" title="gst-plugins-base Elements">
9<link rel="prev" href="gst-plugins-base-plugins-videoconvert.html" title="videoconvert">
10<link rel="next" href="gst-plugins-base-plugins-videoscale.html" title="videoscale">
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">|</span18                  <a href="#gst-plugins-base-plugins-videorate.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span19                  <a href="#gst-plugins-base-plugins-videorate.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_properties">  <span class="dim">|</span20                  <a href="#gst-plugins-base-plugins-videorate.properties" class="shortcut">Properties</a></span>
21</td>
22<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
23<td><a accesskey="u" href="ch01.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
24<td><a accesskey="p" href="gst-plugins-base-plugins-videoconvert.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
25<td><a accesskey="n" href="gst-plugins-base-plugins-videoscale.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
26</tr></table>
27<div class="refentry">
28<a name="gst-plugins-base-plugins-videorate"></a><div class="titlepage"></div>
29<div class="refnamediv"><table width="100%"><tr>
30<td valign="top">
31<h2><span class="refentrytitle"><a name="gst-plugins-base-plugins-videorate.top_of_page"></a>videorate</span></h2>
32<p>videorate</p>
33</td>
34<td class="gallery_image" valign="top" align="right"></td>
35</tr></table></div>
36<div class="refsect1">
37<a name="gst-plugins-base-plugins-videorate.properties"></a><h2>Properties</h2>
38<div class="informaltable"><table class="informaltable" border="0">
39<colgroup>
40<col width="150px" class="properties_type">
41<col width="300px" class="properties_name">
42<col width="200px" class="properties_flags">
43</colgroup>
44<tbody>
45<tr>
46<td class="property_type"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint64"><span class="type">guint64</span></a></td>
47<td class="property_name"><a class="link" href="gst-plugins-base-plugins-videorate.html#GstVideoRate--average-period" title="The “average-period” property">average-period</a></td>
48<td class="property_flags">Read / Write</td>
49</tr>
50<tr>
51<td class="property_type"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint64"><span class="type">guint64</span></a></td>
52<td class="property_name"><a class="link" href="gst-plugins-base-plugins-videorate.html#GstVideoRate--drop" title="The “drop” property">drop</a></td>
53<td class="property_flags">Read</td>
54</tr>
55<tr>
56<td class="property_type"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
57<td class="property_name"><a class="link" href="gst-plugins-base-plugins-videorate.html#GstVideoRate--drop-only" title="The “drop-only” property">drop-only</a></td>
58<td class="property_flags">Read / Write</td>
59</tr>
60<tr>
61<td class="property_type"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint64"><span class="type">guint64</span></a></td>
62<td class="property_name"><a class="link" href="gst-plugins-base-plugins-videorate.html#GstVideoRate--duplicate" title="The “duplicate” property">duplicate</a></td>
63<td class="property_flags">Read</td>
64</tr>
65<tr>
66<td class="property_type"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint64"><span class="type">guint64</span></a></td>
67<td class="property_name"><a class="link" href="gst-plugins-base-plugins-videorate.html#GstVideoRate--in" title="The “in” property">in</a></td>
68<td class="property_flags">Read</td>
69</tr>
70<tr>
71<td class="property_type"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a></td>
72<td class="property_name"><a class="link" href="gst-plugins-base-plugins-videorate.html#GstVideoRate--max-rate" title="The “max-rate” property">max-rate</a></td>
73<td class="property_flags">Read / Write / Construct</td>
74</tr>
75<tr>
76<td class="property_type"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a></td>
77<td class="property_name"><a class="link" href="gst-plugins-base-plugins-videorate.html#GstVideoRate--new-pref" title="The “new-pref” property">new-pref</a></td>
78<td class="property_flags">Read / Write</td>
79</tr>
80<tr>
81<td class="property_type"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint64"><span class="type">guint64</span></a></td>
82<td class="property_name"><a class="link" href="gst-plugins-base-plugins-videorate.html#GstVideoRate--out" title="The “out” property">out</a></td>
83<td class="property_flags">Read</td>
84</tr>
85<tr>
86<td class="property_type"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
87<td class="property_name"><a class="link" href="gst-plugins-base-plugins-videorate.html#GstVideoRate--silent" title="The “silent” property">silent</a></td>
88<td class="property_flags">Read / Write</td>
89</tr>
90<tr>
91<td class="property_type"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
92<td class="property_name"><a class="link" href="gst-plugins-base-plugins-videorate.html#GstVideoRate--skip-to-first" title="The “skip-to-first” property">skip-to-first</a></td>
93<td class="property_flags">Read / Write</td>
94</tr>
95<tr>
96<td class="property_type"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a></td>
97<td class="property_name"><a class="link" href="gst-plugins-base-plugins-videorate.html#GstVideoRate--rate" title="The “rate” property">rate</a></td>
98<td class="property_flags">Read / Write</td>
99</tr>
100<tr>
101<td class="property_type"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint64"><span class="type">guint64</span></a></td>
102<td class="property_name"><a class="link" href="gst-plugins-base-plugins-videorate.html#GstVideoRate--max-duplication-time" title="The “max-duplication-time” property">max-duplication-time</a></td>
103<td class="property_flags">Read / Write</td>
104</tr>
105</tbody>
106</table></div>
107</div>
108<a name="GstVideoRate"></a><div class="refsect1">
109<a name="gst-plugins-base-plugins-videorate.other"></a><h2>Types and Values</h2>
110<div class="informaltable"><table class="informaltable" width="100%" border="0">
111<colgroup>
112<col width="150px" class="name">
113<col class="description">
114</colgroup>
115<tbody><tr>
116<td class="datatype_keyword">struct</td>
117<td class="function_name"><a class="link" href="gst-plugins-base-plugins-videorate.html#GstVideoRate-struct" title="struct GstVideoRate">GstVideoRate</a></td>
118</tr></tbody>
119</table></div>
120</div>
121<div class="refsect1">
122<a name="gst-plugins-base-plugins-videorate.object-hierarchy"></a><h2>Object Hierarchy</h2>
123<pre class="screen">    <a href="/usr/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#GObject-struct">GObject</a>
124    <span class="lineart">╰──</span> <a href="/usr/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
125        <span class="lineart">╰──</span> <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstObject.html#GstObject-struct">GstObject</a>
126            <span class="lineart">╰──</span> <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstElement.html#GstElement-struct">GstElement</a>
127                <span class="lineart">╰──</span> <a href="/usr/share/gtk-doc/html/gstreamer-libs-1.0/GstBaseTransform.html#GstBaseTransform-struct">GstBaseTransform</a>
128                    <span class="lineart">╰──</span> GstVideoRate
129</pre>
130</div>
131<div class="refsect1">
132<a name="gst-plugins-base-plugins-videorate.description"></a><h2>Description</h2>
133<p>This element takes an incoming stream of timestamped video frames.
134It will produce a perfect stream that matches the source pad's framerate.</p>
135<p>The correction is performed by dropping and duplicating frames, no fancy
136algorithm is used to interpolate frames (yet).</p>
137<p>By default the element will simply negotiate the same framerate on its
138source and sink pad.</p>
139<p>This operation is useful to link to elements that require a perfect stream.
140Typical examples are formats that do not store timestamps for video frames,
141but only store a framerate, like Ogg and AVI.</p>
142<p>A conversion to a specific framerate can be forced by using filtered caps on
143the source pad.</p>
144<p>The properties <a class="link" href="gst-plugins-base-plugins-videorate.html#GstVideoRate--in" title="The “in” property"><span class="type">“in”</span></a>, <a class="link" href="gst-plugins-base-plugins-videorate.html#GstVideoRate--out" title="The “out” property"><span class="type">“out”</span></a>, <a class="link" href="gst-plugins-base-plugins-videorate.html#GstVideoRate--duplicate" title="The “duplicate” property"><span class="type">“duplicate”</span></a>
145and <a class="link" href="gst-plugins-base-plugins-videorate.html#GstVideoRate--drop" title="The “drop” property"><span class="type">“drop”</span></a> can be read to obtain information about number of
146input frames, output frames, dropped frames (i.e. the number of unused input
147frames) and duplicated frames (i.e. the number of times an input frame was
148duplicated, beside being used normally).</p>
149<p>An input stream that needs no adjustments will thus never have dropped or
150duplicated frames.</p>
151<p>When the <a class="link" href="gst-plugins-base-plugins-videorate.html#GstVideoRate--silent" title="The “silent” property"><span class="type">“silent”</span></a> property is set to FALSE, a GObject property
152notification will be emitted whenever one of the <a class="link" href="gst-plugins-base-plugins-videorate.html#GstVideoRate--duplicate" title="The “duplicate” property"><span class="type">“duplicate”</span></a> or
153<a class="link" href="gst-plugins-base-plugins-videorate.html#GstVideoRate--drop" title="The “drop” property"><span class="type">“drop”</span></a> values changes.
154This can potentially cause performance degradation.
155Note that property notification will happen from the streaming thread, so
156applications should be prepared for this.</p>
157<p>The property <a class="link" href="gst-plugins-base-plugins-videorate.html#GstVideoRate--rate" title="The “rate” property"><span class="type">“rate”</span></a> allows the modification of video speed by a
158certain factor. It must not be confused with framerate. Think of rate as
159speed and framerate as flow.</p>
160<div class="refsect3">
161<a name="id-1.2.108.7.11"></a><h4>Example pipelines</h4>
162<div class="informalexample">
163  <table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
164    <tbody>
165      <tr>
166        <td class="listing_lines" align="right"><pre>1</pre></td>
167        <td class="listing_code"><pre class="programlisting">gst<span class="gtkdoc opt">-</span>launch<span class="gtkdoc opt">-</span><span class="number">1.0</span> <span class="gtkdoc opt">-</span>v uridecodebin uri<span class="gtkdoc opt">=</span>file<span class="gtkdoc opt">:</span><span class="gtkdoc slc">///path/to/video.ogg ! videoconvert ! videoscale ! videorate ! video/x-raw,framerate=15/1 ! autovideosink</span></pre></td>
168      </tr>
169    </tbody>
170  </table>
171</div>
172
173<p>
174 Decode a video file and adjust the framerate to 15 fps before playing.
175To create a test Ogg/Theora file refer to the documentation of theoraenc.</p>
176<div class="informalexample">
177  <table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
178    <tbody>
179      <tr>
180        <td class="listing_lines" align="right"><pre>1</pre></td>
181        <td class="listing_code"><pre class="programlisting">gst<span class="gtkdoc opt">-</span>launch<span class="gtkdoc opt">-</span><span class="number">1.0</span> <span class="gtkdoc opt">-</span>v v4l2src <span class="gtkdoc opt">!</span> videorate <span class="gtkdoc opt">!</span> video<span class="gtkdoc opt">/</span>x<span class="gtkdoc opt">-</span>raw<span class="gtkdoc opt">,</span>framerate<span class="gtkdoc opt">=</span><span class="number">25</span><span class="gtkdoc opt">/</span><span class="number">2</span> <span class="gtkdoc opt">!</span> theoraenc <span class="gtkdoc opt">!</span> oggmux <span class="gtkdoc opt">!</span> filesink location<span class="gtkdoc opt">=</span>recording<span class="gtkdoc opt">.</span>ogg</pre></td>
182      </tr>
183    </tbody>
184  </table>
185</div>
186
187<p>
188 Capture video from a V4L device, and adjust the stream to 12.5 fps before
189encoding to Ogg/Theora.</p>
190<div class="informalexample">
191  <table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
192    <tbody>
193      <tr>
194        <td class="listing_lines" align="right"><pre>1</pre></td>
195        <td class="listing_code"><pre class="programlisting">gst<span class="gtkdoc opt">-</span>launch<span class="gtkdoc opt">-</span><span class="number">1.0</span> <span class="gtkdoc opt">-</span>v uridecodebin uri<span class="gtkdoc opt">=</span>file<span class="gtkdoc opt">:</span><span class="gtkdoc slc">///path/to/video.ogg ! videoconvert ! videoscale ! videorate ! video/x-raw,framerate=1/5 ! jpegenc ! multifilesink location=snapshot-%05d.jpg</span></pre></td>
196      </tr>
197    </tbody>
198  </table>
199</div>
200
201<p>
202 Decode a video file and save a snapshot every 5 seconds as consecutively numbered jpeg file.</p>
203</div>
204<div class="refsynopsisdiv">
205<h2>Synopsis</h2>
206<div class="refsect2">
207<a name="id-1.2.108.7.12.1"></a><h3>Element Information</h3>
208<div class="variablelist"><table border="0" class="variablelist">
209<colgroup>
210<col align="left" valign="top">
211<col>
212</colgroup>
213<tbody>
214<tr>
215<td><p><span class="term">plugin</span></p></td>
216<td>
217            <a class="link" href="gst-plugins-base-plugins-plugin-videorate.html#plugin-videorate">videorate</a>
218          </td>
219</tr>
220<tr>
221<td><p><span class="term">author</span></p></td>
222<td>Wim Taymans &lt;wim@fluendo.com&gt;</td>
223</tr>
224<tr>
225<td><p><span class="term">class</span></p></td>
226<td>Filter/Effect/Video</td>
227</tr>
228</tbody>
229</table></div>
230</div>
231<hr>
232<div class="refsect2">
233<a name="id-1.2.108.7.12.2"></a><h3>Element Pads</h3>
234<div class="variablelist"><table border="0" class="variablelist">
235<colgroup>
236<col align="left" valign="top">
237<col>
238</colgroup>
239<tbody>
240<tr>
241<td><p><span class="term">name</span></p></td>
242<td>sink</td>
243</tr>
244<tr>
245<td><p><span class="term">direction</span></p></td>
246<td>sink</td>
247</tr>
248<tr>
249<td><p><span class="term">presence</span></p></td>
250<td>always</td>
251</tr>
252<tr>
253<td><p><span class="term">details</span></p></td>
254<td>video/x-raw(ANY)</td>
255</tr>
256<tr>
257<td><p><span class="term"></span></p></td>
258<td> video/x-bayer(ANY)</td>
259</tr>
260<tr>
261<td><p><span class="term"></span></p></td>
262<td> image/jpeg(ANY)</td>
263</tr>
264<tr>
265<td><p><span class="term"></span></p></td>
266<td> image/png(ANY)</td>
267</tr>
268</tbody>
269</table></div>
270<div class="variablelist"><table border="0" class="variablelist">
271<colgroup>
272<col align="left" valign="top">
273<col>
274</colgroup>
275<tbody>
276<tr>
277<td><p><span class="term">name</span></p></td>
278<td>src</td>
279</tr>
280<tr>
281<td><p><span class="term">direction</span></p></td>
282<td>source</td>
283</tr>
284<tr>
285<td><p><span class="term">presence</span></p></td>
286<td>always</td>
287</tr>
288<tr>
289<td><p><span class="term">details</span></p></td>
290<td>video/x-raw(ANY)</td>
291</tr>
292<tr>
293<td><p><span class="term"></span></p></td>
294<td> video/x-bayer(ANY)</td>
295</tr>
296<tr>
297<td><p><span class="term"></span></p></td>
298<td> image/jpeg(ANY)</td>
299</tr>
300<tr>
301<td><p><span class="term"></span></p></td>
302<td> image/png(ANY)</td>
303</tr>
304</tbody>
305</table></div>
306</div>
307</div>
308</div>
309<div class="refsect1">
310<a name="gst-plugins-base-plugins-videorate.functions_details"></a><h2>Functions</h2>
311<p></p>
312</div>
313<div class="refsect1">
314<a name="gst-plugins-base-plugins-videorate.other_details"></a><h2>Types and Values</h2>
315<div class="refsect2">
316<a name="GstVideoRate-struct"></a><h3>struct GstVideoRate</h3>
317<pre class="programlisting">struct GstVideoRate;</pre>
318<p>Opaque data structure.</p>
319</div>
320</div>
321<div class="refsect1">
322<a name="gst-plugins-base-plugins-videorate.property-details"></a><h2>Property Details</h2>
323<div class="refsect2">
324<a name="GstVideoRate--average-period"></a><h3>The <code class="literal">“average-period”</code> property</h3>
325<pre class="programlisting">  “average-period”           <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint64"><span class="type">guint64</span></a></pre>
326<p>Arrange for maximum framerate by dropping frames beyond a certain framerate,
327where the framerate is calculated using a moving average over the
328configured.</p>
329<p>Flags: Read / Write</p>
330<p>Allowed values: &lt;= G_MAXLONG</p>
331<p>Default value: 0</p>
332</div>
333<hr>
334<div class="refsect2">
335<a name="GstVideoRate--drop"></a><h3>The <code class="literal">“drop”</code> property</h3>
336<pre class="programlisting">  “drop”                     <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint64"><span class="type">guint64</span></a></pre>
337<p>Number of dropped frames.</p>
338<p>Flags: Read</p>
339<p>Default value: 0</p>
340</div>
341<hr>
342<div class="refsect2">
343<a name="GstVideoRate--drop-only"></a><h3>The <code class="literal">“drop-only”</code> property</h3>
344<pre class="programlisting">  “drop-only”                <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
345<p>Only drop frames, no duplicates are produced.</p>
346<p>Flags: Read / Write</p>
347<p>Default value: FALSE</p>
348</div>
349<hr>
350<div class="refsect2">
351<a name="GstVideoRate--duplicate"></a><h3>The <code class="literal">“duplicate”</code> property</h3>
352<pre class="programlisting">  “duplicate”                <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint64"><span class="type">guint64</span></a></pre>
353<p>Number of duplicated frames.</p>
354<p>Flags: Read</p>
355<p>Default value: 0</p>
356</div>
357<hr>
358<div class="refsect2">
359<a name="GstVideoRate--in"></a><h3>The <code class="literal">“in”</code> property</h3>
360<pre class="programlisting">  “in”                       <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint64"><span class="type">guint64</span></a></pre>
361<p>Number of input frames.</p>
362<p>Flags: Read</p>
363<p>Default value: 0</p>
364</div>
365<hr>
366<div class="refsect2">
367<a name="GstVideoRate--max-rate"></a><h3>The <code class="literal">“max-rate”</code> property</h3>
368<pre class="programlisting">  “max-rate”                 <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a></pre>
369<p>maximum framerate to pass through</p>
370<p>Flags: Read / Write / Construct</p>
371<p>Allowed values: &gt;= 1</p>
372<p>Default value: 2147483647</p>
373</div>
374<hr>
375<div class="refsect2">
376<a name="GstVideoRate--new-pref"></a><h3>The <code class="literal">“new-pref”</code> property</h3>
377<pre class="programlisting">  “new-pref”                 <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a></pre>
378<p>Value indicating how much to prefer new frames (unused).</p>
379<p>Flags: Read / Write</p>
380<p>Allowed values: [0,1]</p>
381<p>Default value: 1</p>
382</div>
383<hr>
384<div class="refsect2">
385<a name="GstVideoRate--out"></a><h3>The <code class="literal">“out”</code> property</h3>
386<pre class="programlisting">  “out”                      <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint64"><span class="type">guint64</span></a></pre>
387<p>Number of output frames.</p>
388<p>Flags: Read</p>
389<p>Default value: 0</p>
390</div>
391<hr>
392<div class="refsect2">
393<a name="GstVideoRate--silent"></a><h3>The <code class="literal">“silent”</code> property</h3>
394<pre class="programlisting">  “silent”                   <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
395<p>Don't emit notify for dropped and duplicated frames.</p>
396<p>Flags: Read / Write</p>
397<p>Default value: TRUE</p>
398</div>
399<hr>
400<div class="refsect2">
401<a name="GstVideoRate--skip-to-first"></a><h3>The <code class="literal">“skip-to-first”</code> property</h3>
402<pre class="programlisting">  “skip-to-first”            <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
403<p>Don't produce buffers before the first one we receive.</p>
404<p>Flags: Read / Write</p>
405<p>Default value: FALSE</p>
406</div>
407<hr>
408<div class="refsect2">
409<a name="GstVideoRate--rate"></a><h3>The <code class="literal">“rate”</code> property</h3>
410<pre class="programlisting">  “rate”                     <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a></pre>
411<p>Factor of speed for frame displaying</p>
412<p>Flags: Read / Write</p>
413<p>Allowed values: &gt;= 0</p>
414<p>Default value: 1</p>
415<p class="since">Since: 1.12</p>
416</div>
417<hr>
418<div class="refsect2">
419<a name="GstVideoRate--max-duplication-time"></a><h3>The <code class="literal">“max-duplication-time”</code> property</h3>
420<pre class="programlisting">  “max-duplication-time”     <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint64"><span class="type">guint64</span></a></pre>
421<p>Duplicate frames only if the gap between two consecutive frames does not
422exceed this duration.</p>
423<p>Flags: Read / Write</p>
424<p>Default value: 0</p>
425<p class="since">Since: 1.16</p>
426</div>
427</div>
428</div>
429<div class="footer">
430<hr>Generated by GTK-Doc V1.28</div>
431</body>
432</html>