blob: 6eb1bb039c83bce4c4806366e679f9998fc41bed [file] [log] [blame]
Olivier Naudan988c6f02012-04-16 07:16:25 -04001<!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">
Sebastian Dröge42ff2402015-06-07 10:56:31 +02005<title>multipartdemux: GStreamer Good Plugins 1.0 Plugins Reference Manual</title>
Sebastian Drögeffda8362016-02-19 11:16:13 +02006<meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
Olivier Naudan988c6f02012-04-16 07:16:25 -04007<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-multifilesrc.html" title="multifilesrc">
10<link rel="next" href="gst-plugins-good-plugins-multipartmux.html" title="multipartmux">
Sebastian Dröge1901d5d2016-03-24 12:22:42 +020011<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
Olivier Naudan988c6f02012-04-16 07:16:25 -040012<link rel="stylesheet" href="style.css" type="text/css">
13</head>
14<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
Sebastian Dröge87041172015-03-17 09:12:48 +010015<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
Sebastian Drögea4b66f92014-05-03 18:59:27 +020016<td width="100%" align="left" class="shortcuts">
Sebastian Dröge87041172015-03-17 09:12:48 +010017<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
18 <a href="#gst-plugins-good-plugins-multipartdemux.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
19 <a href="#gst-plugins-good-plugins-multipartdemux.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_properties">  <span class="dim">|</span> 
Sebastian Drögea4b66f92014-05-03 18:59:27 +020020 <a href="#gst-plugins-good-plugins-multipartdemux.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-good-plugins-multifilesrc.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
25<td><a accesskey="n" href="gst-plugins-good-plugins-multipartmux.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
26</tr></table>
Olivier Naudan988c6f02012-04-16 07:16:25 -040027<div class="refentry">
28<a name="gst-plugins-good-plugins-multipartdemux"></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-good-plugins-multipartdemux.top_of_page"></a>multipartdemux</span></h2>
Sebastian Dröge1ca9b232015-06-24 23:21:35 +020032<p>multipartdemux</p>
Olivier Naudan988c6f02012-04-16 07:16:25 -040033</td>
Sebastian Drögea4b66f92014-05-03 18:59:27 +020034<td class="gallery_image" valign="top" align="right"></td>
Olivier Naudan988c6f02012-04-16 07:16:25 -040035</tr></table></div>
Sebastian Drögea4b66f92014-05-03 18:59:27 +020036<div class="refsect1">
37<a name="gst-plugins-good-plugins-multipartdemux.properties"></a><h2>Properties</h2>
Sebastian Drögeffda8362016-02-19 11:16:13 +020038<div class="informaltable"><table class="informaltable" border="0">
Sebastian Drögea4b66f92014-05-03 18:59:27 +020039<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>
Sebastian Drögea4b66f92014-05-03 18:59:27 +020046<td class="property_type">
Sebastian Dröge1901d5d2016-03-24 12:22:42 +020047<a href="/usr/share/gtk-doc/html/glibglib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</td>
Sebastian Drögea4b66f92014-05-03 18:59:27 +020048<td class="property_name"><a class="link" href="gst-plugins-good-plugins-multipartdemux.html#GstMultipartDemux--boundary" title="The “boundary” property">boundary</a></td>
49<td class="property_flags">Read / Write / Construct</td>
50</tr>
51<tr>
Sebastian Dröge1901d5d2016-03-24 12:22:42 +020052<td class="property_type"><a href="/usr/share/gtk-doc/html/glibglib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
Sebastian Drögea4b66f92014-05-03 18:59:27 +020053<td class="property_name"><a class="link" href="gst-plugins-good-plugins-multipartdemux.html#GstMultipartDemux--single-stream" title="The “single-stream” property">single-stream</a></td>
54<td class="property_flags">Read / Write</td>
55</tr>
56</tbody>
57</table></div>
58</div>
59<a name="GstMultipartDemux"></a><div class="refsect1">
60<a name="gst-plugins-good-plugins-multipartdemux.other"></a><h2>Types and Values</h2>
Sebastian Drögeffda8362016-02-19 11:16:13 +020061<div class="informaltable"><table class="informaltable" width="100%" border="0">
Sebastian Drögea4b66f92014-05-03 18:59:27 +020062<colgroup>
63<col width="150px" class="name">
64<col class="description">
65</colgroup>
66<tbody><tr>
67<td class="datatype_keyword">struct</td>
68<td class="function_name"><a class="link" href="gst-plugins-good-plugins-multipartdemux.html#GstMultipartDemux-struct" title="struct GstMultipartDemux">GstMultipartDemux</a></td>
69</tr></tbody>
70</table></div>
Olivier Naudan988c6f02012-04-16 07:16:25 -040071</div>
72<div class="refsect1">
73<a name="gst-plugins-good-plugins-multipartdemux.object-hierarchy"></a><h2>Object Hierarchy</h2>
Sebastian Dröge1901d5d2016-03-24 12:22:42 +020074<pre class="screen"> <a href="/usr/share/gtk-doc/html/gobjectgobject-The-Base-Object-Type.html#GObject-struct">GObject</a>
75 <span class="lineart">╰──</span> <a href="/usr/share/gtk-doc/html/gobjectgobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
76 <span class="lineart">╰──</span> <a href="/usr/share/gtk-doc/html/gstreamer-1.0GstObject.html#GstObject-struct">GstObject</a>
77 <span class="lineart">╰──</span> <a href="/usr/share/gtk-doc/html/gstreamer-1.0GstElement.html#GstElement-struct">GstElement</a>
Sebastian Drögea4b66f92014-05-03 18:59:27 +020078 <span class="lineart">╰──</span> GstMultipartDemux
Olivier Naudan988c6f02012-04-16 07:16:25 -040079</pre>
80</div>
81<div class="refsect1">
82<a name="gst-plugins-good-plugins-multipartdemux.description"></a><h2>Description</h2>
Sebastian Drögea4b66f92014-05-03 18:59:27 +020083<p>MultipartDemux uses the Content-type field of incoming buffers to demux and
Olivier Naudan988c6f02012-04-16 07:16:25 -040084push data to dynamic source pads. Most of the time multipart streams are
85sequential JPEG frames generated from a live source such as a network source
Sebastian Drögea4b66f92014-05-03 18:59:27 +020086or a camera.</p>
87<p>The output buffers of the multipartdemux typically have no timestamps and are
Olivier Naudan988c6f02012-04-16 07:16:25 -040088usually played as fast as possible (at the rate that the source provides the
Sebastian Drögea4b66f92014-05-03 18:59:27 +020089data).</p>
90<p>the content in multipart files is separated with a boundary string that can
91be configured specifically with the <a class="link" href="gst-plugins-good-plugins-multipartdemux.html#GstMultipartDemux--boundary" title="The “boundary” property"><span class="type">“boundary”</span></a> property
92otherwise it will be autodetected.</p>
Olivier Naudan988c6f02012-04-16 07:16:25 -040093<div class="refsect2">
Sebastian Dröge3a50aa72016-07-06 12:38:23 +030094<a name="id-1.2.96.7.5"></a><h3>Sample pipelines</h3>
Olivier Naudan988c6f02012-04-16 07:16:25 -040095<div class="informalexample">
96 <table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
97 <tbody>
98 <tr>
99 <td class="listing_lines" align="right"><pre>1</pre></td>
Sebastian Dröge5f0bab02013-07-14 11:42:29 +0200100 <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> filesrc location<span class="gtkdoc opt">=/</span>tmp<span class="gtkdoc opt">/</span>test<span class="gtkdoc opt">.</span>multipart <span class="gtkdoc opt">!</span> multipartdemux <span class="gtkdoc opt">!</span> image<span class="gtkdoc opt">/</span>jpeg<span class="gtkdoc opt">,</span>framerate<span class="gtkdoc opt">=</span>\<span class="gtkdoc opt">(</span>fraction\<span class="gtkdoc opt">)</span><span class="number">5</span><span class="gtkdoc opt">/</span><span class="number">1</span> <span class="gtkdoc opt">!</span> jpegparse <span class="gtkdoc opt">!</span> jpegdec <span class="gtkdoc opt">!</span> videoconvert <span class="gtkdoc opt">!</span> autovideosink</pre></td>
Olivier Naudan988c6f02012-04-16 07:16:25 -0400101 </tr>
102 </tbody>
103 </table>
104</div>
105 a simple pipeline to demux a multipart file muxed with <a class="link" href="gst-plugins-good-plugins-multipartmux.html#GstMultipartMux"><span class="type">GstMultipartMux</span></a>
106containing JPEG frames.
107</div>
Olivier Naudan988c6f02012-04-16 07:16:25 -0400108<div class="refsynopsisdiv">
109<h2>Synopsis</h2>
110<div class="refsect2">
Sebastian Dröge3a50aa72016-07-06 12:38:23 +0300111<a name="id-1.2.96.7.6.1"></a><h3>Element Information</h3>
Sebastian Dröge5f0bab02013-07-14 11:42:29 +0200112<div class="variablelist"><table border="0" class="variablelist">
113<colgroup>
Olivier Naudan988c6f02012-04-16 07:16:25 -0400114<col align="left" valign="top">
Sebastian Dröge5f0bab02013-07-14 11:42:29 +0200115<col>
116</colgroup>
Olivier Naudan988c6f02012-04-16 07:16:25 -0400117<tbody>
118<tr>
119<td><p><span class="term">plugin</span></p></td>
120<td>
121 <a class="link" href="gst-plugins-good-plugins-plugin-multipart.html#plugin-multipart">multipart</a>
122 </td>
123</tr>
124<tr>
125<td><p><span class="term">author</span></p></td>
126<td>Wim Taymans &lt;wim.taymans@gmail.com&gt;, Sjoerd Simons &lt;sjoerd@luon.net&gt;</td>
127</tr>
128<tr>
129<td><p><span class="term">class</span></p></td>
130<td>Codec/Demuxer</td>
131</tr>
132</tbody>
133</table></div>
134</div>
135<hr>
136<div class="refsect2">
Sebastian Dröge3a50aa72016-07-06 12:38:23 +0300137<a name="id-1.2.96.7.6.2"></a><h3>Element Pads</h3>
Sebastian Dröge5f0bab02013-07-14 11:42:29 +0200138<div class="variablelist"><table border="0" class="variablelist">
139<colgroup>
Olivier Naudan988c6f02012-04-16 07:16:25 -0400140<col align="left" valign="top">
Sebastian Dröge5f0bab02013-07-14 11:42:29 +0200141<col>
142</colgroup>
Olivier Naudan988c6f02012-04-16 07:16:25 -0400143<tbody>
144<tr>
145<td><p><span class="term">name</span></p></td>
146<td>sink</td>
147</tr>
148<tr>
149<td><p><span class="term">direction</span></p></td>
150<td>sink</td>
151</tr>
152<tr>
153<td><p><span class="term">presence</span></p></td>
154<td>always</td>
155</tr>
156<tr>
157<td><p><span class="term">details</span></p></td>
158<td>multipart/x-mixed-replace</td>
159</tr>
160</tbody>
161</table></div>
Sebastian Dröge5f0bab02013-07-14 11:42:29 +0200162<div class="variablelist"><table border="0" class="variablelist">
163<colgroup>
Olivier Naudan988c6f02012-04-16 07:16:25 -0400164<col align="left" valign="top">
Sebastian Dröge5f0bab02013-07-14 11:42:29 +0200165<col>
166</colgroup>
Olivier Naudan988c6f02012-04-16 07:16:25 -0400167<tbody>
168<tr>
169<td><p><span class="term">name</span></p></td>
170<td>src_%u</td>
171</tr>
172<tr>
173<td><p><span class="term">direction</span></p></td>
174<td>source</td>
175</tr>
176<tr>
177<td><p><span class="term">presence</span></p></td>
178<td>sometimes</td>
179</tr>
180<tr>
181<td><p><span class="term">details</span></p></td>
182<td>ANY</td>
183</tr>
184</tbody>
185</table></div>
186</div>
187</div>
Olivier Naudan988c6f02012-04-16 07:16:25 -0400188</div>
189<div class="refsect1">
Sebastian Drögea4b66f92014-05-03 18:59:27 +0200190<a name="gst-plugins-good-plugins-multipartdemux.functions_details"></a><h2>Functions</h2>
Sebastian Dröge42ff2402015-06-07 10:56:31 +0200191<p></p>
Sebastian Drögea4b66f92014-05-03 18:59:27 +0200192</div>
193<div class="refsect1">
194<a name="gst-plugins-good-plugins-multipartdemux.other_details"></a><h2>Types and Values</h2>
Olivier Naudan988c6f02012-04-16 07:16:25 -0400195<div class="refsect2">
196<a name="GstMultipartDemux-struct"></a><h3>struct GstMultipartDemux</h3>
197<pre class="programlisting">struct GstMultipartDemux;</pre>
Sebastian Drögea4b66f92014-05-03 18:59:27 +0200198<p>The opaque <a class="link" href="gst-plugins-good-plugins-multipartdemux.html#GstMultipartDemux"><span class="type">GstMultipartDemux</span></a> structure.</p>
Olivier Naudan988c6f02012-04-16 07:16:25 -0400199</div>
200</div>
201<div class="refsect1">
202<a name="gst-plugins-good-plugins-multipartdemux.property-details"></a><h2>Property Details</h2>
203<div class="refsect2">
Sebastian Drögea4b66f92014-05-03 18:59:27 +0200204<a name="GstMultipartDemux--boundary"></a><h3>The <code class="literal">“boundary”</code> property</h3>
Sebastian Dröge1901d5d2016-03-24 12:22:42 +0200205<pre class="programlisting"> “boundary” <a href="/usr/share/gtk-doc/html/glibglib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</pre>
Olivier Naudan988c6f02012-04-16 07:16:25 -0400206<p>The boundary string separating data, automatic if NULL.</p>
Sebastian Drögea4b66f92014-05-03 18:59:27 +0200207<p>Flags: Read / Write / Construct</p>
Olivier Naudan988c6f02012-04-16 07:16:25 -0400208<p>Default value: NULL</p>
209</div>
210<hr>
211<div class="refsect2">
Sebastian Drögea4b66f92014-05-03 18:59:27 +0200212<a name="GstMultipartDemux--single-stream"></a><h3>The <code class="literal">“single-stream”</code> property</h3>
Sebastian Dröge1901d5d2016-03-24 12:22:42 +0200213<pre class="programlisting"> “single-stream” <a href="/usr/share/gtk-doc/html/glibglib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
Sebastian Drögea4b66f92014-05-03 18:59:27 +0200214<p>Assume that there is only one stream whose content-type will
215not change and emit no-more-pads as soon as the first boundary
216content is parsed, decoded, and pads are linked.</p>
217<p>Flags: Read / Write</p>
Olivier Naudan988c6f02012-04-16 07:16:25 -0400218<p>Default value: FALSE</p>
219</div>
220</div>
221<div class="refsect1">
222<a name="gst-plugins-good-plugins-multipartdemux.see-also"></a><h2>See Also</h2>
Sebastian Drögea4b66f92014-05-03 18:59:27 +0200223<p><a class="link" href="gst-plugins-good-plugins-multipartmux.html#GstMultipartMux"><span class="type">GstMultipartMux</span></a></p>
Olivier Naudan988c6f02012-04-16 07:16:25 -0400224</div>
225</div>
226<div class="footer">
Sebastian Dröge1901d5d2016-03-24 12:22:42 +0200227<hr>Generated by GTK-Doc V1.25</div>
Olivier Naudan988c6f02012-04-16 07:16:25 -0400228</body>
229</html>