Olivier Naudan | 988c6f0 | 2012-04-16 07:16:25 -0400 | [diff] [blame] | 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"> |
Sebastian Dröge | 42ff240 | 2015-06-07 10:56:31 +0200 | [diff] [blame] | 5 | <title>multipartdemux: GStreamer Good Plugins 1.0 Plugins Reference Manual</title> |
Sebastian Dröge | ffda836 | 2016-02-19 11:16:13 +0200 | [diff] [blame] | 6 | <meta name="generator" content="DocBook XSL Stylesheets V1.79.1"> |
Olivier Naudan | 988c6f0 | 2012-04-16 07:16:25 -0400 | [diff] [blame] | 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-multifilesrc.html" title="multifilesrc"> |
| 10 | <link rel="next" href="gst-plugins-good-plugins-multipartmux.html" title="multipartmux"> |
Sebastian Dröge | 1901d5d | 2016-03-24 12:22:42 +0200 | [diff] [blame] | 11 | <meta name="generator" content="GTK-Doc V1.25 (XML mode)"> |
Olivier Naudan | 988c6f0 | 2012-04-16 07:16:25 -0400 | [diff] [blame] | 12 | <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öge | 8704117 | 2015-03-17 09:12:48 +0100 | [diff] [blame] | 15 | <table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle"> |
Sebastian Dröge | a4b66f9 | 2014-05-03 18:59:27 +0200 | [diff] [blame] | 16 | <td width="100%" align="left" class="shortcuts"> |
Sebastian Dröge | 8704117 | 2015-03-17 09:12:48 +0100 | [diff] [blame] | 17 | <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öge | a4b66f9 | 2014-05-03 18:59:27 +0200 | [diff] [blame] | 20 | <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 Naudan | 988c6f0 | 2012-04-16 07:16:25 -0400 | [diff] [blame] | 27 | <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öge | 1ca9b23 | 2015-06-24 23:21:35 +0200 | [diff] [blame] | 32 | <p>multipartdemux</p> |
Olivier Naudan | 988c6f0 | 2012-04-16 07:16:25 -0400 | [diff] [blame] | 33 | </td> |
Sebastian Dröge | a4b66f9 | 2014-05-03 18:59:27 +0200 | [diff] [blame] | 34 | <td class="gallery_image" valign="top" align="right"></td> |
Olivier Naudan | 988c6f0 | 2012-04-16 07:16:25 -0400 | [diff] [blame] | 35 | </tr></table></div> |
Sebastian Dröge | a4b66f9 | 2014-05-03 18:59:27 +0200 | [diff] [blame] | 36 | <div class="refsect1"> |
| 37 | <a name="gst-plugins-good-plugins-multipartdemux.properties"></a><h2>Properties</h2> |
Sebastian Dröge | ffda836 | 2016-02-19 11:16:13 +0200 | [diff] [blame] | 38 | <div class="informaltable"><table class="informaltable" border="0"> |
Sebastian Dröge | a4b66f9 | 2014-05-03 18:59:27 +0200 | [diff] [blame] | 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> |
Sebastian Dröge | a4b66f9 | 2014-05-03 18:59:27 +0200 | [diff] [blame] | 46 | <td class="property_type"> |
Sebastian Dröge | 1901d5d | 2016-03-24 12:22:42 +0200 | [diff] [blame] | 47 | <a href="/usr/share/gtk-doc/html/glibglib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</td> |
Sebastian Dröge | a4b66f9 | 2014-05-03 18:59:27 +0200 | [diff] [blame] | 48 | <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öge | 1901d5d | 2016-03-24 12:22:42 +0200 | [diff] [blame] | 52 | <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öge | a4b66f9 | 2014-05-03 18:59:27 +0200 | [diff] [blame] | 53 | <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öge | ffda836 | 2016-02-19 11:16:13 +0200 | [diff] [blame] | 61 | <div class="informaltable"><table class="informaltable" width="100%" border="0"> |
Sebastian Dröge | a4b66f9 | 2014-05-03 18:59:27 +0200 | [diff] [blame] | 62 | <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 Naudan | 988c6f0 | 2012-04-16 07:16:25 -0400 | [diff] [blame] | 71 | </div> |
| 72 | <div class="refsect1"> |
| 73 | <a name="gst-plugins-good-plugins-multipartdemux.object-hierarchy"></a><h2>Object Hierarchy</h2> |
Sebastian Dröge | 1901d5d | 2016-03-24 12:22:42 +0200 | [diff] [blame] | 74 | <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öge | a4b66f9 | 2014-05-03 18:59:27 +0200 | [diff] [blame] | 78 | <span class="lineart">╰──</span> GstMultipartDemux |
Olivier Naudan | 988c6f0 | 2012-04-16 07:16:25 -0400 | [diff] [blame] | 79 | </pre> |
| 80 | </div> |
| 81 | <div class="refsect1"> |
| 82 | <a name="gst-plugins-good-plugins-multipartdemux.description"></a><h2>Description</h2> |
Sebastian Dröge | a4b66f9 | 2014-05-03 18:59:27 +0200 | [diff] [blame] | 83 | <p>MultipartDemux uses the Content-type field of incoming buffers to demux and |
Olivier Naudan | 988c6f0 | 2012-04-16 07:16:25 -0400 | [diff] [blame] | 84 | push data to dynamic source pads. Most of the time multipart streams are |
| 85 | sequential JPEG frames generated from a live source such as a network source |
Sebastian Dröge | a4b66f9 | 2014-05-03 18:59:27 +0200 | [diff] [blame] | 86 | or a camera.</p> |
| 87 | <p>The output buffers of the multipartdemux typically have no timestamps and are |
Olivier Naudan | 988c6f0 | 2012-04-16 07:16:25 -0400 | [diff] [blame] | 88 | usually played as fast as possible (at the rate that the source provides the |
Sebastian Dröge | a4b66f9 | 2014-05-03 18:59:27 +0200 | [diff] [blame] | 89 | data).</p> |
| 90 | <p>the content in multipart files is separated with a boundary string that can |
| 91 | be 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 |
| 92 | otherwise it will be autodetected.</p> |
Olivier Naudan | 988c6f0 | 2012-04-16 07:16:25 -0400 | [diff] [blame] | 93 | <div class="refsect2"> |
Sebastian Dröge | 3a50aa7 | 2016-07-06 12:38:23 +0300 | [diff] [blame] | 94 | <a name="id-1.2.96.7.5"></a><h3>Sample pipelines</h3> |
Olivier Naudan | 988c6f0 | 2012-04-16 07:16:25 -0400 | [diff] [blame] | 95 | <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öge | 5f0bab0 | 2013-07-14 11:42:29 +0200 | [diff] [blame] | 100 | <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 Naudan | 988c6f0 | 2012-04-16 07:16:25 -0400 | [diff] [blame] | 101 | </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> |
| 106 | containing JPEG frames. |
| 107 | </div> |
Olivier Naudan | 988c6f0 | 2012-04-16 07:16:25 -0400 | [diff] [blame] | 108 | <div class="refsynopsisdiv"> |
| 109 | <h2>Synopsis</h2> |
| 110 | <div class="refsect2"> |
Sebastian Dröge | 3a50aa7 | 2016-07-06 12:38:23 +0300 | [diff] [blame] | 111 | <a name="id-1.2.96.7.6.1"></a><h3>Element Information</h3> |
Sebastian Dröge | 5f0bab0 | 2013-07-14 11:42:29 +0200 | [diff] [blame] | 112 | <div class="variablelist"><table border="0" class="variablelist"> |
| 113 | <colgroup> |
Olivier Naudan | 988c6f0 | 2012-04-16 07:16:25 -0400 | [diff] [blame] | 114 | <col align="left" valign="top"> |
Sebastian Dröge | 5f0bab0 | 2013-07-14 11:42:29 +0200 | [diff] [blame] | 115 | <col> |
| 116 | </colgroup> |
Olivier Naudan | 988c6f0 | 2012-04-16 07:16:25 -0400 | [diff] [blame] | 117 | <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 <wim.taymans@gmail.com>, Sjoerd Simons <sjoerd@luon.net></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öge | 3a50aa7 | 2016-07-06 12:38:23 +0300 | [diff] [blame] | 137 | <a name="id-1.2.96.7.6.2"></a><h3>Element Pads</h3> |
Sebastian Dröge | 5f0bab0 | 2013-07-14 11:42:29 +0200 | [diff] [blame] | 138 | <div class="variablelist"><table border="0" class="variablelist"> |
| 139 | <colgroup> |
Olivier Naudan | 988c6f0 | 2012-04-16 07:16:25 -0400 | [diff] [blame] | 140 | <col align="left" valign="top"> |
Sebastian Dröge | 5f0bab0 | 2013-07-14 11:42:29 +0200 | [diff] [blame] | 141 | <col> |
| 142 | </colgroup> |
Olivier Naudan | 988c6f0 | 2012-04-16 07:16:25 -0400 | [diff] [blame] | 143 | <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öge | 5f0bab0 | 2013-07-14 11:42:29 +0200 | [diff] [blame] | 162 | <div class="variablelist"><table border="0" class="variablelist"> |
| 163 | <colgroup> |
Olivier Naudan | 988c6f0 | 2012-04-16 07:16:25 -0400 | [diff] [blame] | 164 | <col align="left" valign="top"> |
Sebastian Dröge | 5f0bab0 | 2013-07-14 11:42:29 +0200 | [diff] [blame] | 165 | <col> |
| 166 | </colgroup> |
Olivier Naudan | 988c6f0 | 2012-04-16 07:16:25 -0400 | [diff] [blame] | 167 | <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 Naudan | 988c6f0 | 2012-04-16 07:16:25 -0400 | [diff] [blame] | 188 | </div> |
| 189 | <div class="refsect1"> |
Sebastian Dröge | a4b66f9 | 2014-05-03 18:59:27 +0200 | [diff] [blame] | 190 | <a name="gst-plugins-good-plugins-multipartdemux.functions_details"></a><h2>Functions</h2> |
Sebastian Dröge | 42ff240 | 2015-06-07 10:56:31 +0200 | [diff] [blame] | 191 | <p></p> |
Sebastian Dröge | a4b66f9 | 2014-05-03 18:59:27 +0200 | [diff] [blame] | 192 | </div> |
| 193 | <div class="refsect1"> |
| 194 | <a name="gst-plugins-good-plugins-multipartdemux.other_details"></a><h2>Types and Values</h2> |
Olivier Naudan | 988c6f0 | 2012-04-16 07:16:25 -0400 | [diff] [blame] | 195 | <div class="refsect2"> |
| 196 | <a name="GstMultipartDemux-struct"></a><h3>struct GstMultipartDemux</h3> |
| 197 | <pre class="programlisting">struct GstMultipartDemux;</pre> |
Sebastian Dröge | a4b66f9 | 2014-05-03 18:59:27 +0200 | [diff] [blame] | 198 | <p>The opaque <a class="link" href="gst-plugins-good-plugins-multipartdemux.html#GstMultipartDemux"><span class="type">GstMultipartDemux</span></a> structure.</p> |
Olivier Naudan | 988c6f0 | 2012-04-16 07:16:25 -0400 | [diff] [blame] | 199 | </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öge | a4b66f9 | 2014-05-03 18:59:27 +0200 | [diff] [blame] | 204 | <a name="GstMultipartDemux--boundary"></a><h3>The <code class="literal">“boundary”</code> property</h3> |
Sebastian Dröge | 1901d5d | 2016-03-24 12:22:42 +0200 | [diff] [blame] | 205 | <pre class="programlisting"> “boundary” <a href="/usr/share/gtk-doc/html/glibglib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</pre> |
Olivier Naudan | 988c6f0 | 2012-04-16 07:16:25 -0400 | [diff] [blame] | 206 | <p>The boundary string separating data, automatic if NULL.</p> |
Sebastian Dröge | a4b66f9 | 2014-05-03 18:59:27 +0200 | [diff] [blame] | 207 | <p>Flags: Read / Write / Construct</p> |
Olivier Naudan | 988c6f0 | 2012-04-16 07:16:25 -0400 | [diff] [blame] | 208 | <p>Default value: NULL</p> |
| 209 | </div> |
| 210 | <hr> |
| 211 | <div class="refsect2"> |
Sebastian Dröge | a4b66f9 | 2014-05-03 18:59:27 +0200 | [diff] [blame] | 212 | <a name="GstMultipartDemux--single-stream"></a><h3>The <code class="literal">“single-stream”</code> property</h3> |
Sebastian Dröge | 1901d5d | 2016-03-24 12:22:42 +0200 | [diff] [blame] | 213 | <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öge | a4b66f9 | 2014-05-03 18:59:27 +0200 | [diff] [blame] | 214 | <p>Assume that there is only one stream whose content-type will |
| 215 | not change and emit no-more-pads as soon as the first boundary |
| 216 | content is parsed, decoded, and pads are linked.</p> |
| 217 | <p>Flags: Read / Write</p> |
Olivier Naudan | 988c6f0 | 2012-04-16 07:16:25 -0400 | [diff] [blame] | 218 | <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öge | a4b66f9 | 2014-05-03 18:59:27 +0200 | [diff] [blame] | 223 | <p><a class="link" href="gst-plugins-good-plugins-multipartmux.html#GstMultipartMux"><span class="type">GstMultipartMux</span></a></p> |
Olivier Naudan | 988c6f0 | 2012-04-16 07:16:25 -0400 | [diff] [blame] | 224 | </div> |
| 225 | </div> |
| 226 | <div class="footer"> |
Sebastian Dröge | 1901d5d | 2016-03-24 12:22:42 +0200 | [diff] [blame] | 227 | <hr>Generated by GTK-Doc V1.25</div> |
Olivier Naudan | 988c6f0 | 2012-04-16 07:16:25 -0400 | [diff] [blame] | 228 | </body> |
| 229 | </html> |