upload tizen1.0 source
[framework/multimedia/gst-plugins-good0.10.git] / docs / plugins / html / gst-plugins-good-plugins-rtspsrc.html
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>rtspsrc</title>
6 <meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
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.17 (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="2">
16 <tr valign="middle">
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>
22 </tr>
23 <tr><td colspan="5" class="shortcuts">
24 <a href="#gst-plugins-good-plugins-rtspsrc.synopsis" class="shortcut">Top</a>
25                    | 
26                   <a href="#gst-plugins-good-plugins-rtspsrc.description" class="shortcut">Description</a>
27                    | 
28                   <a href="#gst-plugins-good-plugins-rtspsrc.object-hierarchy" class="shortcut">Object Hierarchy</a>
29                    | 
30                   <a href="#gst-plugins-good-plugins-rtspsrc.implemented-interfaces" class="shortcut">Implemented Interfaces</a>
31                    | 
32                   <a href="#gst-plugins-good-plugins-rtspsrc.properties" class="shortcut">Properties</a>
33 </td></tr>
34 </table>
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>
38 <td valign="top">
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>
41 </td>
42 <td valign="top" align="right"></td>
43 </tr></table></div>
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>;
47 </pre>
48 </div>
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>
56                      +----GstRTSPSrc
57 </pre>
58 </div>
59 <div class="refsect1">
60 <a name="gst-plugins-good-plugins-rtspsrc.implemented-interfaces"></a><h2>Implemented Interfaces</h2>
61 <p>
62 GstRTSPSrc implements
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>
64 </div>
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>"                  <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint64"><span class="type">guint64</span></a>               : 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>"              <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint64"><span class="type">guint64</span></a>               : 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 </pre>
86 </div>
87 <div class="refsect1">
88 <a name="gst-plugins-good-plugins-rtspsrc.description"></a><h2>Description</h2>
89 <p>
90 Makes a connection to an RTSP server and read the data.
91 rtspsrc strictly follows RFC 2326 and therefore does not (yet) support
92 RealMedia/Quicktime/Microsoft extensions.
93 </p>
94 <p>
95 RTSP supports transport over TCP or UDP in unicast or multicast mode. By
96 default rtspsrc will negotiate a connection in the following order:
97 UDP unicast/UDP multicast/TCP. The order cannot be changed but the allowed
98 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.
99 </p>
100 <p>
101 rtspsrc currently understands SDP as the format of the session description.
102 For each stream listed in the SDP a new rtp_stream<code class="literal">d</code> pad will be created
103 with caps derived from the SDP media description. This is a caps of mime type
104 "application/x-rtp" that can be connected to any available RTP depayloader
105 element.
106 </p>
107 <p>
108 rtspsrc will internally instantiate an RTP session manager element
109 that will handle the RTCP messages to and from the server, jitter removal,
110 packet reordering along with providing a clock for the pipeline.
111 This feature is implemented using the gstrtpbin element.
112 </p>
113 <p>
114 rtspsrc acts like a live source and will therefore only generate data in the
115 PLAYING state.
116 </p>
117 <p>
118 </p>
119 <div class="refsect2">
120 <a name="idp19875216"></a><h3>Example launch line</h3>
121 <div class="informalexample">
122   <table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
123     <tbody>
124       <tr>
125         <td class="listing_lines" align="right"><pre>1</pre></td>
126         <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>
127       </tr>
128     </tbody>
129   </table>
130 </div>
131  Establish a connection to an RTSP server and send the raw RTP packets to a
132 fakesink.
133 </div>
134 <p>
135 </p>
136 <p>
137 Last reviewed on 2006-08-18 (0.10.5)
138 </p>
139 <div class="refsynopsisdiv">
140 <h2>Synopsis</h2>
141 <div class="refsect2">
142 <a name="idp19847760"></a><h3>Element Information</h3>
143 <div class="variablelist"><table border="0">
144 <col align="left" valign="top">
145 <tbody>
146 <tr>
147 <td><p><span class="term">plugin</span></p></td>
148 <td>
149             <a class="link" href="gst-plugins-good-plugins-plugin-rtsp.html#plugin-rtsp">rtsp</a>
150           </td>
151 </tr>
152 <tr>
153 <td><p><span class="term">author</span></p></td>
154 <td>Wim Taymans &lt;wim@fluendo.com&gt;, Thijs Vermeir &lt;thijs.vermeir@barco.com&gt;, Lutz Mueller &lt;lutz@topfrose.de&gt;</td>
155 </tr>
156 <tr>
157 <td><p><span class="term">class</span></p></td>
158 <td>Source/Network</td>
159 </tr>
160 </tbody>
161 </table></div>
162 </div>
163 <hr>
164 <div class="refsect2">
165 <a name="idp18909360"></a><h3>Element Pads</h3>
166 <div class="variablelist"><table border="0">
167 <col align="left" valign="top">
168 <tbody>
169 <tr>
170 <td><p><span class="term">name</span></p></td>
171 <td>stream%d</td>
172 </tr>
173 <tr>
174 <td><p><span class="term">direction</span></p></td>
175 <td>source</td>
176 </tr>
177 <tr>
178 <td><p><span class="term">presence</span></p></td>
179 <td>sometimes</td>
180 </tr>
181 <tr>
182 <td><p><span class="term">details</span></p></td>
183 <td>application/x-rtp</td>
184 </tr>
185 <tr>
186 <td><p><span class="term"></span></p></td>
187 <td> application/x-rdt</td>
188 </tr>
189 </tbody>
190 </table></div>
191 </div>
192 </div>
193 <p>
194 </p>
195 </div>
196 <div class="refsect1">
197 <a name="gst-plugins-good-plugins-rtspsrc.details"></a><h2>Details</h2>
198 <div class="refsect2">
199 <a name="GstRTSPSrc-struct"></a><h3>struct GstRTSPSrc</h3>
200 <pre class="programlisting">struct GstRTSPSrc;</pre>
201 <p>
202 </p>
203 </div>
204 </div>
205 <div class="refsect1">
206 <a name="gst-plugins-good-plugins-rtspsrc.property-details"></a><h2>Property Details</h2>
207 <div class="refsect2">
208 <a name="GstRTSPSrc--debug"></a><h3>The <code class="literal">"debug"</code> property</h3>
209 <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>
210 <p>Dump request and response messages to stdout.</p>
211 <p>Default value: FALSE</p>
212 </div>
213 <hr>
214 <div class="refsect2">
215 <a name="GstRTSPSrc--location"></a><h3>The <code class="literal">"location"</code> property</h3>
216 <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>
217 <p>Location of the RTSP url to read.</p>
218 <p>Default value: NULL</p>
219 </div>
220 <hr>
221 <div class="refsect2">
222 <a name="GstRTSPSrc--protocols"></a><h3>The <code class="literal">"protocols"</code> property</h3>
223 <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>
224 <p>Allowed lower transport protocols.</p>
225 <p>Default value: GST_RTSP_LOWER_TRANS_UDP|GST_RTSP_LOWER_TRANS_UDP_MCAST|GST_RTSP_LOWER_TRANS_TCP</p>
226 </div>
227 <hr>
228 <div class="refsect2">
229 <a name="GstRTSPSrc--retry"></a><h3>The <code class="literal">"retry"</code> property</h3>
230 <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>
231 <p>Max number of retries when allocating RTP ports.</p>
232 <p>Allowed values: &lt;= 65535</p>
233 <p>Default value: 20</p>
234 </div>
235 <hr>
236 <div class="refsect2">
237 <a name="GstRTSPSrc--timeout"></a><h3>The <code class="literal">"timeout"</code> property</h3>
238 <pre class="programlisting">  "timeout"                  <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint64"><span class="type">guint64</span></a>               : Read / Write</pre>
239 <p>Retry TCP transport after UDP timeout microseconds (0 = disabled).</p>
240 <p>Default value: 5000000</p>
241 </div>
242 <hr>
243 <div class="refsect2">
244 <a name="GstRTSPSrc--latency"></a><h3>The <code class="literal">"latency"</code> property</h3>
245 <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>
246 <p>Amount of ms to buffer.</p>
247 <p>Default value: 2000</p>
248 </div>
249 <hr>
250 <div class="refsect2">
251 <a name="GstRTSPSrc--tcp-timeout"></a><h3>The <code class="literal">"tcp-timeout"</code> property</h3>
252 <pre class="programlisting">  "tcp-timeout"              <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint64"><span class="type">guint64</span></a>               : Read / Write</pre>
253 <p>Fail after timeout microseconds on TCP connections (0 = disabled).</p>
254 <p>Default value: 20000000</p>
255 </div>
256 <hr>
257 <div class="refsect2">
258 <a name="GstRTSPSrc--connection-speed"></a><h3>The <code class="literal">"connection-speed"</code> property</h3>
259 <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>
260 <p>Network connection speed in kbps (0 = unknown).</p>
261 <p>Allowed values: &lt;= 2147483</p>
262 <p>Default value: 0</p>
263 </div>
264 <hr>
265 <div class="refsect2">
266 <a name="GstRTSPSrc--nat-method"></a><h3>The <code class="literal">"nat-method"</code> property</h3>
267 <pre class="programlisting">  "nat-method"               <span class="type">GstRTSPNatMethod</span>      : Read / Write</pre>
268 <p>Method to use for traversing firewalls and NAT.</p>
269 <p>Default value: Send Dummy packets</p>
270 </div>
271 <hr>
272 <div class="refsect2">
273 <a name="GstRTSPSrc--do-rtcp"></a><h3>The <code class="literal">"do-rtcp"</code> property</h3>
274 <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>
275 <p>Send RTCP packets, disable for old incompatible server.</p>
276 <p>Default value: TRUE</p>
277 </div>
278 <hr>
279 <div class="refsect2">
280 <a name="GstRTSPSrc--proxy"></a><h3>The <code class="literal">"proxy"</code> property</h3>
281 <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>
282 <p>Proxy settings for HTTP tunneling. Format: [http://][user:passwd@]host[:port].</p>
283 <p>Default value: NULL</p>
284 </div>
285 <hr>
286 <div class="refsect2">
287 <a name="GstRTSPSrc--rtp-blocksize"></a><h3>The <code class="literal">"rtp-blocksize"</code> property</h3>
288 <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>
289 <p>RTP package size to suggest to server (0 = disabled).</p>
290 <p>Allowed values: &lt;= 65536</p>
291 <p>Default value: 0</p>
292 </div>
293 <hr>
294 <div class="refsect2">
295 <a name="GstRTSPSrc--user-id"></a><h3>The <code class="literal">"user-id"</code> property</h3>
296 <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>
297 <p>RTSP location URI user id for authentication.</p>
298 <p>Default value: NULL</p>
299 </div>
300 <hr>
301 <div class="refsect2">
302 <a name="GstRTSPSrc--user-pw"></a><h3>The <code class="literal">"user-pw"</code> property</h3>
303 <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>
304 <p>RTSP location URI user password for authentication.</p>
305 <p>Default value: NULL</p>
306 </div>
307 <hr>
308 <div class="refsect2">
309 <a name="GstRTSPSrc--buffer-mode"></a><h3>The <code class="literal">"buffer-mode"</code> property</h3>
310 <pre class="programlisting">  "buffer-mode"              <span class="type">GstRTSPSrcBufferMode</span>  : Read / Write</pre>
311 <p>Control the buffering algorithm in use.</p>
312 <p>Default value: Choose mode depending on stream live</p>
313 </div>
314 <hr>
315 <div class="refsect2">
316 <a name="GstRTSPSrc--port-range"></a><h3>The <code class="literal">"port-range"</code> property</h3>
317 <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>
318 <p>Client port range that can be used to receive RTP and RTCP data, eg. 3000-3005 (NULL = no restrictions).</p>
319 <p>Default value: NULL</p>
320 </div>
321 <hr>
322 <div class="refsect2">
323 <a name="GstRTSPSrc--udp-buffer-size"></a><h3>The <code class="literal">"udp-buffer-size"</code> property</h3>
324 <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>
325 <p>Size of the kernel UDP receive buffer in bytes, 0=default.</p>
326 <p>Allowed values: &gt;= 0</p>
327 <p>Default value: 524288</p>
328 </div>
329 </div>
330 </div>
331 <div class="footer">
332 <hr>
333           Generated by GTK-Doc V1.17</div>
334 </body>
335 </html>