<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"><html><head><meta name="qrichtext" content="1" /><style type="text/css">p, li { white-space: pre-wrap; }</style></head><body style=" font-family:'Bitstream Vera Sans'; font-size:10pt; font-weight:400; font-style:normal;">Hi,<br>
<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; -qt-user-state:0;"><br></p>here is a simple gst-lauch pipeline:<br>
<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; -qt-user-state:0;"><br></p>gst-launch-0.10 rtspsrc location=rtsp://<rtspip> latency=100 ! udpsink host=<destinationhost> port=5000<br>
<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; -qt-user-state:0;"><br></p>this pipeline works just fine so I decided to assemble it as python code, here is the relevant portion:<br>
<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; -qt-user-state:0;"><br></p>self.pipeline = gst.Pipeline("rtsp-pipeline")<br>
source=gst.element_factory_make("rtspsrc","rtsp-source")<br>
source.set_property("location","rtsp://<rtspip>")<br>
source.set_property("latency",100)<br>
destination=gst.element_factory_make("udpsink")<br>
destination.set_property("host","<destinationhost>")<br>
destination.set_property("port",5000)<br>
self.pipeline.add(source,destination)<br>
gst.element_link_many(source,destination)<br>
<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; -qt-user-state:0;"><br></p>but this code does't work, there is an error in linking source with destination:<br>
<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; -qt-user-state:0;"><br></p>gst.LinkError: failed to link rtsp-source with udpsink0<br>
<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; -qt-user-state:0;"><br></p>the relevant log seems:<br>
<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; -qt-user-state:0;"><br></p>Could not find a compatible pad to link to udpsink0:sink <br>
<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; -qt-user-state:0;"><br></p>what this means? Any hint to solve?<br>
<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; -qt-user-state:0;"><br></p>here is a more detailed log:<br>
<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; -qt-user-state:0;"><br></p>0:00:00.000074241 4469 0xb4cfd0 INFO GST_INIT gst.c:611:init_pre: Initializing GStreamer Core Library version 0.10.23 <br>
0:00:00.000138006 4469 0xb4cfd0 INFO GST_INIT gst.c:612:init_pre: Using library installed in /usr/lib <br>
0:00:00.000154140 4469 0xb4cfd0 INFO GST_INIT gst.c:622:init_pre: Linux e6500 2.6.29-ARCH #1 SMP PREEMPT Wed May 20 06:42:43 UTC 2009 x86_64 <br>
0:00:00.000221746 4469 0xb4cfd0 INFO GST_INIT gstquery.c:105:_gst_query_initialize: init queries <br>
0:00:00.000869315 4469 0xb4cfd0 INFO GST_INIT gstmessage.c:73:_gst_message_initialize: init messages <br>
0:00:00.003262356 4469 0xb4cfd0 INFO GST_PLUGIN_LOADING gstplugin.c:261:_gst_plugin_initialize: registering 0 static plugins <br>
0:00:00.003410559 4469 0xb4cfd0 INFO GST_PLUGIN_LOADING gstplugin.c:246:gst_plugin_register_static: registered static plugin "staticelements" <br>
0:00:00.003426832 4469 0xb4cfd0 INFO GST_PLUGIN_LOADING gstplugin.c:248:gst_plugin_register_static: added static plugin "staticelements", result: 1 <br>
0:00:00.003602064 4469 0xb4cfd0 INFO GST_INIT gst.c:923:ensure_current_registry: reading registry cache: /home/nicola/.gstreamer-0.10/registry.x86_64.bin <br>
0:00:00.015661839 4469 0xb4cfd0 INFO GST_REGISTRY gstregistrybinary.c:1285:gst_registry_binary_read_cache: loaded /home/nicola/.gstreamer-0.10/registry.x86_64.bin in 0,012036 seconds <br>
0:00:00.016030181 4470 0xb4cfd0 INFO GST_INIT gst.c:674:scan_and_update_registry: Validating registry cache: /home/nicola/.gstreamer-0.10/registry.x86_64.bin <br>
0:00:00.017439230 4470 0xb4cfd0 INFO GST_INIT gst.c:759:scan_and_update_registry: Registry cache has not changed <br>
0:00:00.017725718 4469 0xb4cfd0 INFO GST_INIT gst.c:970:ensure_current_registry: registry reading and updating done, result = 1 <br>
0:00:00.017755680 4469 0xb4cfd0 INFO GST_INIT gst.c:446:gst_init_check: initialized GStreamer successfully <br>
0:00:00.028410946 4469 0xb4cfd0 INFO GST_PLUGIN_LOADING gstplugin.c:567:gst_plugin_load_file: plugin "/usr/lib/gstreamer-0.10/libgstrtsp.so" loaded <br>
0:00:00.028453269 4469 0xb4cfd0 INFO GST_ELEMENT_FACTORY gstelementfactory.c:377:gst_element_factory_create: creating element "rtspsrc" named "rtsp-source" <br>
0:00:00.029210558 4469 0xb4cfd0 INFO GST_PLUGIN_LOADING gstplugin.c:567:gst_plugin_load_file: plugin "/usr/lib/gstreamer-0.10/libgstrmdemux.so" loaded <br>
0:00:00.029235701 4469 0xb4cfd0 INFO GST_ELEMENT_FACTORY gstelementfactory.c:379:gst_element_factory_create: creating element "rtspreal" <br>
0:00:00.030095866 4469 0xb4cfd0 INFO GST_PLUGIN_LOADING gstplugin.c:567:gst_plugin_load_file: plugin "/usr/lib/gstreamer-0.10/libgstasf.so" loaded <br>
0:00:00.030122615 4469 0xb4cfd0 INFO GST_ELEMENT_FACTORY gstelementfactory.c:379:gst_element_factory_create: creating element "rtspwms" <br>
0:00:00.030903092 4469 0xb4cfd0 INFO GST_PLUGIN_LOADING gstplugin.c:567:gst_plugin_load_file: plugin "/usr/lib/gstreamer-0.10/libgstudp.so" loaded <br>
0:00:00.030926070 4469 0xb4cfd0 INFO GST_ELEMENT_FACTORY gstelementfactory.c:379:gst_element_factory_create: creating element "udpsink" <br>
0:00:00.031001080 4469 0xb4cfd0 INFO GST_ELEMENT_PADS gstelement.c:641:gst_element_add_pad:<GstBaseSink@0xdf8110> adding pad 'sink' <br>
0:00:00.031422013 4469 0xb4cfd0 INFO GST_ELEMENT_PADS gstutils.c:1338:gst_element_link_pads: trying to link element rtsp-source:(any) to element udpsink0:(any) <br>
0:00:00.031473626 4469 0xb4cfd0 INFO GST_ELEMENT_PADS gstelement.c:884:gst_element_get_static_pad: no such pad 'stream%d' in element "rtsp-source" <br>
0:00:00.031490038 4469 0xb4cfd0 INFO GST_ELEMENT_PADS gstutils.c:959:gst_element_get_compatible_pad:<rtsp-source> Could not find a compatible pad to link to udpsink0:sink <br>
Traceback (most recent call last): <br>
File "test.py", line 59, in <module> <br>
s=SimpleTest() <br>
File "test.py", line 10, in __init__ <br>
self.basePipeline() <br>
File "test.py", line 33, in basePipeline <br>
gst.element_link_many(source,destination) <br>
gst.LinkError: failed to link rtsp-source with udpsink0 <br>
0:00:00.034014102 4469 0xb4cfd0 INFO GST_PARENTAGE gstbin.c:1311:gst_bin_remove_func:<rtsp-pipeline> removed child "udpsink0" <br>
0:00:00.034044134 4469 0xb4cfd0 INFO GST_REFCOUNTING gstelement.c:2723:gst_element_dispose:<udpsink0> dispose <br>
0:00:00.034057544 4469 0xb4cfd0 INFO GST_ELEMENT_PADS gstelement.c:759:gst_element_remove_pad:<udpsink0> removing pad 'sink' <br>
0:00:00.034078775 4469 0xb4cfd0 INFO GST_REFCOUNTING gstelement.c:2747:gst_element_dispose:<udpsink0> parent class dispose <br>
0:00:00.034096864 4469 0xb4cfd0 INFO GST_REFCOUNTING gstelement.c:2770:gst_element_finalize:<udpsink0> finalize <br>
0:00:00.034111321 4469 0xb4cfd0 INFO GST_REFCOUNTING gstelement.c:2781:gst_element_finalize:<udpsink0> finalize parent <br>
0:00:00.034126198 4469 0xb4cfd0 INFO GST_PARENTAGE gstbin.c:1311:gst_bin_remove_func:<rtsp-pipeline> removed child "rtsp-source" <br>
0:00:00.034147150 4469 0xb4cfd0 INFO GST_REFCOUNTING gstelement.c:2723:gst_element_dispose:<rtsp-source> dispose <br>
0:00:00.034159023 4469 0xb4cfd0 INFO GST_REFCOUNTING gstelement.c:2747:gst_element_dispose:<rtsp-source> parent class dispose <br>
0:00:00.034171804 4469 0xb4cfd0 INFO GST_REFCOUNTING gstelement.c:2723:gst_element_dispose:<rtspwms0> dispose <br>
0:00:00.034183188 4469 0xb4cfd0 INFO GST_REFCOUNTING gstelement.c:2747:gst_element_dispose:<rtspwms0> parent class dispose <br>
0:00:00.034200718 4469 0xb4cfd0 INFO GST_REFCOUNTING gstelement.c:2770:gst_element_finalize:<rtspwms0> finalize <br>
0:00:00.034212242 4469 0xb4cfd0 INFO GST_REFCOUNTING gstelement.c:2781:gst_element_finalize:<rtspwms0> finalize parent <br>
0:00:00.034224464 4469 0xb4cfd0 INFO GST_REFCOUNTING gstelement.c:2723:gst_element_dispose:<rtspreal0> dispose<br>
0:00:00.034235569 4469 0xb4cfd0 INFO GST_REFCOUNTING gstelement.c:2747:gst_element_dispose:<rtspreal0> parent class dispose<br>
0:00:00.034248839 4469 0xb4cfd0 INFO GST_REFCOUNTING gstelement.c:2770:gst_element_finalize:<rtspreal0> finalize<br>
0:00:00.034260363 4469 0xb4cfd0 INFO GST_REFCOUNTING gstelement.c:2781:gst_element_finalize:<rtspreal0> finalize parent<br>
0:00:00.034279429 4469 0xb4cfd0 INFO GST_REFCOUNTING gstelement.c:2770:gst_element_finalize:<rtsp-source> finalize<br>
0:00:00.034291093 4469 0xb4cfd0 INFO GST_REFCOUNTING gstelement.c:2781:gst_element_finalize:<rtsp-source> finalize parent<br>
0:00:00.034303106 4469 0xb4cfd0 INFO GST_REFCOUNTING gstelement.c:2723:gst_element_dispose:<rtsp-pipeline> dispose<br>
0:00:00.034316655 4469 0xb4cfd0 INFO GST_REFCOUNTING gstelement.c:2747:gst_element_dispose:<rtsp-pipeline> parent class dispose<br>
0:00:00.034328528 4469 0xb4cfd0 INFO GST_REFCOUNTING gstelement.c:2770:gst_element_finalize:<rtsp-pipeline> finalize<br>
0:00:00.034339633 4469 0xb4cfd0 INFO GST_REFCOUNTING gstelement.c:2781:gst_element_finalize:<rtsp-pipeline> finalize parent<br>
<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; -qt-user-state:0;"><br></p><p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; -qt-user-state:0;"><br></p>thanks<br>
Nicola</p></body></html>