1 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
4 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
6 <meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
7 <link rel="home" href="index.html" title="GStreamer Good Plugins 0.10 Plugins Reference Manual">
8 <link rel="up" href="ch01.html" title="gst-plugins-good Elements">
9 <link rel="prev" href="gst-plugins-good-plugins-rtpjpegpay.html" title="rtpjpegpay">
10 <link rel="next" href="gst-plugins-good-plugins-shagadelictv.html" title="shagadelictv">
11 <meta name="generator" content="GTK-Doc V1.18 (XML mode)">
12 <link rel="stylesheet" href="style.css" type="text/css">
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="2">
17 <td><a accesskey="p" href="gst-plugins-good-plugins-rtpjpegpay.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
18 <td><a accesskey="u" href="ch01.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
19 <td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
20 <th width="100%" align="center">GStreamer Good Plugins 0.10 Plugins Reference Manual</th>
21 <td><a accesskey="n" href="gst-plugins-good-plugins-shagadelictv.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
23 <tr><td colspan="5" class="shortcuts">
24 <a href="#gst-plugins-good-plugins-rtspsrc.synopsis" class="shortcut">Top</a>
26 <a href="#gst-plugins-good-plugins-rtspsrc.description" class="shortcut">Description</a>
28 <a href="#gst-plugins-good-plugins-rtspsrc.object-hierarchy" class="shortcut">Object Hierarchy</a>
30 <a href="#gst-plugins-good-plugins-rtspsrc.implemented-interfaces" class="shortcut">Implemented Interfaces</a>
32 <a href="#gst-plugins-good-plugins-rtspsrc.properties" class="shortcut">Properties</a>
35 <div class="refentry">
36 <a name="gst-plugins-good-plugins-rtspsrc"></a><div class="titlepage"></div>
37 <div class="refnamediv"><table width="100%"><tr>
39 <h2><span class="refentrytitle"><a name="gst-plugins-good-plugins-rtspsrc.top_of_page"></a>rtspsrc</span></h2>
40 <p>rtspsrc — Receive data over the network via RTSP (RFC 2326)</p>
42 <td valign="top" align="right"></td>
44 <div class="refsynopsisdiv">
45 <a name="gst-plugins-good-plugins-rtspsrc.synopsis"></a><h2>Synopsis</h2>
46 <a name="GstRTSPSrc"></a><pre class="synopsis">struct <a class="link" href="gst-plugins-good-plugins-rtspsrc.html#GstRTSPSrc-struct" title="struct GstRTSPSrc">GstRTSPSrc</a>;
49 <div class="refsect1">
50 <a name="gst-plugins-good-plugins-rtspsrc.object-hierarchy"></a><h2>Object Hierarchy</h2>
51 <pre class="synopsis">
52 <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
53 +----<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstObject.html">GstObject</a>
54 +----<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html">GstElement</a>
55 +----<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstBin.html">GstBin</a>
59 <div class="refsect1">
60 <a name="gst-plugins-good-plugins-rtspsrc.implemented-interfaces"></a><h2>Implemented Interfaces</h2>
63 <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstChildProxy.html">GstChildProxy</a> and <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstUriHandler.html#GstURIHandler">GstURIHandler</a>.</p>
65 <div class="refsect1">
66 <a name="gst-plugins-good-plugins-rtspsrc.properties"></a><h2>Properties</h2>
67 <pre class="synopsis">
68 "<a class="link" href="gst-plugins-good-plugins-rtspsrc.html#GstRTSPSrc--debug" title='The "debug" property'>debug</a>" <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> : Read / Write
69 "<a class="link" href="gst-plugins-good-plugins-rtspsrc.html#GstRTSPSrc--location" title='The "location" property'>location</a>" <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a>* : Read / Write
70 "<a class="link" href="gst-plugins-good-plugins-rtspsrc.html#GstRTSPSrc--protocols" title='The "protocols" property'>protocols</a>" <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstrtsptransport.html#GstRTSPLowerTrans"><span class="type">GstRTSPLowerTrans</span></a> : Read / Write
71 "<a class="link" href="gst-plugins-good-plugins-rtspsrc.html#GstRTSPSrc--retry" title='The "retry" property'>retry</a>" <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> : Read / Write
72 "<a class="link" href="gst-plugins-good-plugins-rtspsrc.html#GstRTSPSrc--timeout" title='The "timeout" property'>timeout</a>" <span class="type">guint64</span> : Read / Write
73 "<a class="link" href="gst-plugins-good-plugins-rtspsrc.html#GstRTSPSrc--latency" title='The "latency" property'>latency</a>" <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> : Read / Write
74 "<a class="link" href="gst-plugins-good-plugins-rtspsrc.html#GstRTSPSrc--tcp-timeout" title='The "tcp-timeout" property'>tcp-timeout</a>" <span class="type">guint64</span> : Read / Write
75 "<a class="link" href="gst-plugins-good-plugins-rtspsrc.html#GstRTSPSrc--connection-speed" title='The "connection-speed" property'>connection-speed</a>" <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> : Read / Write
76 "<a class="link" href="gst-plugins-good-plugins-rtspsrc.html#GstRTSPSrc--nat-method" title='The "nat-method" property'>nat-method</a>" <span class="type">GstRTSPNatMethod</span> : Read / Write
77 "<a class="link" href="gst-plugins-good-plugins-rtspsrc.html#GstRTSPSrc--do-rtcp" title='The "do-rtcp" property'>do-rtcp</a>" <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> : Read / Write
78 "<a class="link" href="gst-plugins-good-plugins-rtspsrc.html#GstRTSPSrc--proxy" title='The "proxy" property'>proxy</a>" <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a>* : Read / Write
79 "<a class="link" href="gst-plugins-good-plugins-rtspsrc.html#GstRTSPSrc--rtp-blocksize" title='The "rtp-blocksize" property'>rtp-blocksize</a>" <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> : Read / Write
80 "<a class="link" href="gst-plugins-good-plugins-rtspsrc.html#GstRTSPSrc--user-id" title='The "user-id" property'>user-id</a>" <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a>* : Read / Write
81 "<a class="link" href="gst-plugins-good-plugins-rtspsrc.html#GstRTSPSrc--user-pw" title='The "user-pw" property'>user-pw</a>" <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a>* : Read / Write
82 "<a class="link" href="gst-plugins-good-plugins-rtspsrc.html#GstRTSPSrc--buffer-mode" title='The "buffer-mode" property'>buffer-mode</a>" <span class="type">GstRTSPSrcBufferMode</span> : Read / Write
83 "<a class="link" href="gst-plugins-good-plugins-rtspsrc.html#GstRTSPSrc--port-range" title='The "port-range" property'>port-range</a>" <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a>* : Read / Write
84 "<a class="link" href="gst-plugins-good-plugins-rtspsrc.html#GstRTSPSrc--udp-buffer-size" title='The "udp-buffer-size" property'>udp-buffer-size</a>" <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> : Read / Write
85 "<a class="link" href="gst-plugins-good-plugins-rtspsrc.html#GstRTSPSrc--short-header" title='The "short-header" property'>short-header</a>" <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> : Read / Write
88 <div class="refsect1">
89 <a name="gst-plugins-good-plugins-rtspsrc.description"></a><h2>Description</h2>
91 Makes a connection to an RTSP server and read the data.
92 rtspsrc strictly follows RFC 2326 and therefore does not (yet) support
93 RealMedia/Quicktime/Microsoft extensions.
96 RTSP supports transport over TCP or UDP in unicast or multicast mode. By
97 default rtspsrc will negotiate a connection in the following order:
98 UDP unicast/UDP multicast/TCP. The order cannot be changed but the allowed
99 protocols can be controlled with the <a class="link" href="gst-plugins-good-plugins-rtspsrc.html#GstRTSPSrc--protocols" title='The "protocols" property'><span class="type">"protocols"</span></a> property.
102 rtspsrc currently understands SDP as the format of the session description.
103 For each stream listed in the SDP a new rtp_stream<code class="literal">d</code> pad will be created
104 with caps derived from the SDP media description. This is a caps of mime type
105 "application/x-rtp" that can be connected to any available RTP depayloader
109 rtspsrc will internally instantiate an RTP session manager element
110 that will handle the RTCP messages to and from the server, jitter removal,
111 packet reordering along with providing a clock for the pipeline.
112 This feature is implemented using the gstrtpbin element.
115 rtspsrc acts like a live source and will therefore only generate data in the
120 <div class="refsect2">
121 <a name="idp20671664"></a><h3>Example launch line</h3>
122 <div class="informalexample">
123 <table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
126 <td class="listing_lines" align="right"><pre>1</pre></td>
127 <td class="listing_code"><pre class="programlisting">gst<span class="gtkdoc opt">-</span>launch rtspsrc location<span class="gtkdoc opt">=</span>rtsp<span class="gtkdoc opt">:</span><span class="gtkdoc slc">//some.server/url ! fakesink</span></pre></td>
132 Establish a connection to an RTSP server and send the raw RTP packets to a
138 Last reviewed on 2006-08-18 (0.10.5)
140 <div class="refsynopsisdiv">
142 <div class="refsect2">
143 <a name="idp18090384"></a><h3>Element Information</h3>
144 <div class="variablelist"><table border="0">
145 <col align="left" valign="top">
148 <td><p><span class="term">plugin</span></p></td>
150 <a class="link" href="gst-plugins-good-plugins-plugin-rtsp.html#plugin-rtsp">rtsp</a>
154 <td><p><span class="term">author</span></p></td>
155 <td>Wim Taymans <wim@fluendo.com>, Thijs Vermeir <thijs.vermeir@barco.com>, Lutz Mueller <lutz@topfrose.de></td>
158 <td><p><span class="term">class</span></p></td>
159 <td>Source/Network</td>
165 <div class="refsect2">
166 <a name="idp22212016"></a><h3>Element Pads</h3>
167 <div class="variablelist"><table border="0">
168 <col align="left" valign="top">
171 <td><p><span class="term">name</span></p></td>
175 <td><p><span class="term">direction</span></p></td>
179 <td><p><span class="term">presence</span></p></td>
183 <td><p><span class="term">details</span></p></td>
184 <td>application/x-rtp</td>
187 <td><p><span class="term"></span></p></td>
188 <td> application/x-rdt</td>
197 <div class="refsect1">
198 <a name="gst-plugins-good-plugins-rtspsrc.details"></a><h2>Details</h2>
199 <div class="refsect2">
200 <a name="GstRTSPSrc-struct"></a><h3>struct GstRTSPSrc</h3>
201 <pre class="programlisting">struct GstRTSPSrc;</pre>
206 <div class="refsect1">
207 <a name="gst-plugins-good-plugins-rtspsrc.property-details"></a><h2>Property Details</h2>
208 <div class="refsect2">
209 <a name="GstRTSPSrc--debug"></a><h3>The <code class="literal">"debug"</code> property</h3>
210 <pre class="programlisting"> "debug" <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> : Read / Write</pre>
211 <p>Dump request and response messages to stdout.</p>
212 <p>Default value: FALSE</p>
215 <div class="refsect2">
216 <a name="GstRTSPSrc--location"></a><h3>The <code class="literal">"location"</code> property</h3>
217 <pre class="programlisting"> "location" <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a>* : Read / Write</pre>
218 <p>Location of the RTSP url to read.</p>
219 <p>Default value: NULL</p>
222 <div class="refsect2">
223 <a name="GstRTSPSrc--protocols"></a><h3>The <code class="literal">"protocols"</code> property</h3>
224 <pre class="programlisting"> "protocols" <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstrtsptransport.html#GstRTSPLowerTrans"><span class="type">GstRTSPLowerTrans</span></a> : Read / Write</pre>
225 <p>Allowed lower transport protocols.</p>
226 <p>Default value: GST_RTSP_LOWER_TRANS_UDP|GST_RTSP_LOWER_TRANS_UDP_MCAST|GST_RTSP_LOWER_TRANS_TCP</p>
229 <div class="refsect2">
230 <a name="GstRTSPSrc--retry"></a><h3>The <code class="literal">"retry"</code> property</h3>
231 <pre class="programlisting"> "retry" <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> : Read / Write</pre>
232 <p>Max number of retries when allocating RTP ports.</p>
233 <p>Allowed values: <= 65535</p>
234 <p>Default value: 20</p>
237 <div class="refsect2">
238 <a name="GstRTSPSrc--timeout"></a><h3>The <code class="literal">"timeout"</code> property</h3>
239 <pre class="programlisting"> "timeout" <span class="type">guint64</span> : Read / Write</pre>
240 <p>Retry TCP transport after UDP timeout microseconds (0 = disabled).</p>
241 <p>Default value: 5000000</p>
244 <div class="refsect2">
245 <a name="GstRTSPSrc--latency"></a><h3>The <code class="literal">"latency"</code> property</h3>
246 <pre class="programlisting"> "latency" <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> : Read / Write</pre>
247 <p>Amount of ms to buffer.</p>
248 <p>Default value: 2000</p>
251 <div class="refsect2">
252 <a name="GstRTSPSrc--tcp-timeout"></a><h3>The <code class="literal">"tcp-timeout"</code> property</h3>
253 <pre class="programlisting"> "tcp-timeout" <span class="type">guint64</span> : Read / Write</pre>
254 <p>Fail after timeout microseconds on TCP connections (0 = disabled).</p>
255 <p>Default value: 20000000</p>
258 <div class="refsect2">
259 <a name="GstRTSPSrc--connection-speed"></a><h3>The <code class="literal">"connection-speed"</code> property</h3>
260 <pre class="programlisting"> "connection-speed" <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> : Read / Write</pre>
261 <p>Network connection speed in kbps (0 = unknown).</p>
262 <p>Allowed values: <= 2147483</p>
263 <p>Default value: 0</p>
266 <div class="refsect2">
267 <a name="GstRTSPSrc--nat-method"></a><h3>The <code class="literal">"nat-method"</code> property</h3>
268 <pre class="programlisting"> "nat-method" <span class="type">GstRTSPNatMethod</span> : Read / Write</pre>
269 <p>Method to use for traversing firewalls and NAT.</p>
270 <p>Default value: Send Dummy packets</p>
273 <div class="refsect2">
274 <a name="GstRTSPSrc--do-rtcp"></a><h3>The <code class="literal">"do-rtcp"</code> property</h3>
275 <pre class="programlisting"> "do-rtcp" <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> : Read / Write</pre>
276 <p>Send RTCP packets, disable for old incompatible server.</p>
277 <p>Default value: TRUE</p>
280 <div class="refsect2">
281 <a name="GstRTSPSrc--proxy"></a><h3>The <code class="literal">"proxy"</code> property</h3>
282 <pre class="programlisting"> "proxy" <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a>* : Read / Write</pre>
283 <p>Proxy settings for HTTP tunneling. Format: [http://][user:passwd@]host[:port].</p>
284 <p>Default value: NULL</p>
287 <div class="refsect2">
288 <a name="GstRTSPSrc--rtp-blocksize"></a><h3>The <code class="literal">"rtp-blocksize"</code> property</h3>
289 <pre class="programlisting"> "rtp-blocksize" <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> : Read / Write</pre>
290 <p>RTP package size to suggest to server (0 = disabled).</p>
291 <p>Allowed values: <= 65536</p>
292 <p>Default value: 0</p>
295 <div class="refsect2">
296 <a name="GstRTSPSrc--user-id"></a><h3>The <code class="literal">"user-id"</code> property</h3>
297 <pre class="programlisting"> "user-id" <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a>* : Read / Write</pre>
298 <p>RTSP location URI user id for authentication.</p>
299 <p>Default value: NULL</p>
302 <div class="refsect2">
303 <a name="GstRTSPSrc--user-pw"></a><h3>The <code class="literal">"user-pw"</code> property</h3>
304 <pre class="programlisting"> "user-pw" <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a>* : Read / Write</pre>
305 <p>RTSP location URI user password for authentication.</p>
306 <p>Default value: NULL</p>
309 <div class="refsect2">
310 <a name="GstRTSPSrc--buffer-mode"></a><h3>The <code class="literal">"buffer-mode"</code> property</h3>
311 <pre class="programlisting"> "buffer-mode" <span class="type">GstRTSPSrcBufferMode</span> : Read / Write</pre>
312 <p>Control the buffering algorithm in use.</p>
313 <p>Default value: Choose mode depending on stream live</p>
316 <div class="refsect2">
317 <a name="GstRTSPSrc--port-range"></a><h3>The <code class="literal">"port-range"</code> property</h3>
318 <pre class="programlisting"> "port-range" <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a>* : Read / Write</pre>
319 <p>Client port range that can be used to receive RTP and RTCP data, eg. 3000-3005 (NULL = no restrictions).</p>
320 <p>Default value: NULL</p>
323 <div class="refsect2">
324 <a name="GstRTSPSrc--udp-buffer-size"></a><h3>The <code class="literal">"udp-buffer-size"</code> property</h3>
325 <pre class="programlisting"> "udp-buffer-size" <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> : Read / Write</pre>
326 <p>Size of the kernel UDP receive buffer in bytes, 0=default.</p>
327 <p>Allowed values: >= 0</p>
328 <p>Default value: 524288</p>
331 <div class="refsect2">
332 <a name="GstRTSPSrc--short-header"></a><h3>The <code class="literal">"short-header"</code> property</h3>
333 <pre class="programlisting"> "short-header" <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> : Read / Write</pre>
334 <p>Only send the basic RTSP headers for broken encoders.</p>
335 <p>Default value: FALSE</p>
341 Generated by GTK-Doc V1.18</div>