<div dir="ltr"><div><div><div>I remembered that we can pass arguments for our application while calling it from terminal so passing --debug-info=4 is working<br><br>0:00:10.755245098 6410 0xf51db0 WARN rtpjitterbuffer rtpjitterbuffer.c:185:rtp_jitter_buffer_set_clock_rate: Clock rate changed from 0 to 8000<br>0:00:10.756242384 6410 0xf8e8c0 INFO GST_EVENT gstevent.c:678:gst_event_new_caps: creating caps event application/x-rtp, media=(string)audio, payload=(int)8, clock-rate=(int)8000, encoding-name=(string)PCMA, a-packetization-supported=(string)DH, a-recvonly=(string)"", ssrc=(uint)3232776733, clock-base=(uint)299521784, seqnum-base=(uint)30405, npt-start=(guint64)0, play-speed=(double)1, play-scale=(double)1<br>0:00:10.756734464 6410 0xf8e8c0 INFO GST_ELEMENT_PADS gstelement.c:643:gst_element_add_pad:<rtpptdemux1> adding pad 'src_8'<br>0:00:10.756438841 6410 0xf51db0 INFO GST_EVENT gstevent.c:678:gst_event_new_caps: creating caps event application/x-rtp, media=(string)audio, payload=(int)8, clock-rate=(int)8000, encoding-name=(string)PCMA, a-packetization-supported=(string)DH, a-recvonly=(string)"", ssrc=(uint)3232776733, clock-base=(uint)299521784, seqnum-base=(uint)30405, npt-start=(guint64)0, play-speed=(double)1, play-scale=(double)1<br>0:00:10.757248420 6410 0xf8e8c0 INFO GST_PADS gstpad.c:2186:gst_pad_link_prepare: trying to link rtpptdemux1:src_8 and recv_rtp_src_1_3232776733_8:proxypad8<br>0:00:10.757412325 6410 0xf8e8c0 INFO GST_PADS gstpad.c:2388:gst_pad_link_full: linked rtpptdemux1:src_8 and recv_rtp_src_1_3232776733_8:proxypad8, successful<br>0:00:10.757525762 6410 0xf8e8c0 INFO GST_EVENT gstevent.c:1373:gst_event_new_reconfigure: creating reconfigure event<br>0:00:10.757853208 6410 0xf8e8c0 INFO GST_ELEMENT_PADS gstelement.c:643:gst_element_add_pad:<manager> adding pad 'recv_rtp_src_1_3232776733_8'<br>0:00:10.757748729 6410 0xf51db0 INFO GST_EVENT gstevent.c:678:gst_event_new_caps: creating caps event application/x-rtp, media=(string)audio, payload=(int)8, clock-rate=(int)8000, encoding-name=(string)PCMA, a-packetization-supported=(string)DH, a-recvonly=(string)"", ssrc=(uint)3232776733, clock-base=(uint)299521784, seqnum-base=(uint)30405, npt-start=(guint64)0, play-speed=(double)1, play-scale=(double)1<br>0:00:10.758414715 6410 0xf8e8c0 INFO GST_PADS gstpad.c:2186:gst_pad_link_prepare: trying to link manager:recv_rtp_src_1_3232776733_8 and recv_rtp_src_1_3232776733_8:proxypad9<br>0:00:10.758588203 6410 0xf8e8c0 INFO GST_PADS gstpad.c:2388:gst_pad_link_full: linked manager:recv_rtp_src_1_3232776733_8 and recv_rtp_src_1_3232776733_8:proxypad9, successful<br>0:00:10.758724088 6410 0xf8e8c0 INFO GST_EVENT gstevent.c:1373:gst_event_new_reconfigure: creating reconfigure event<br>0:00:10.759078304 6410 0xf8e8c0 INFO GST_ELEMENT_PADS gstelement.c:643:gst_element_add_pad:<source> adding pad 'recv_rtp_src_1_3232776733_8'<br>Yeni pad recv_rtp_src_1_3232776733_8 olusturuluyor...<br><br>application/x-rtp; application/x-rdt<br>0:00:10.759575072 6410 0xf8e8c0 INFO GST_ELEMENT_PADS gstelement.c:895:gst_element_get_static_pad: found pad depay:sink<br>0:00:10.759744446 6410 0xf8e8c0 INFO GST_ELEMENT_PADS gstelement.c:895:gst_element_get_static_pad: found pad source:recv_rtp_src_0_2310044623_96<br>0:00:10.759852935 6410 0xf8e8c0 INFO GST_ELEMENT_PADS gstelement.c:895:gst_element_get_static_pad: found pad depay:sink<br>0:00:10.759950435 6410 0xf8e8c0 INFO GST_ELEMENT_PADS gstpad.c:1943:gst_pad_unlink: unlinking source:recv_rtp_src_0_2310044623_96(0xf6acf0) and depay:sink(0xf0d018)<br>0:00:10.760123038 6410 0xf8e8c0 INFO GST_ELEMENT_PADS gstpad.c:1997:gst_pad_unlink: unlinked source:recv_rtp_src_0_2310044623_96 and depay:sink<br>0:00:10.760163767 6410 0xf84f20 INFO task gsttask.c:300:gst_task_func:<rtpjitterbuffer0:src> Task going to paused<br>'rpth264depay' sink pad's old link removed<br>Normal RTPH264DEPAY adres: f0c0d8<br>Callback RTPHDEPAY adres: f0c0d8<br>0:00:10.760443505 6410 0xf8e8c0 INFO GST_ELEMENT_PADS gstutils.c:1545:gst_element_link_pads_full: trying to link element source:recv_rtp_src_1_3232776733_8 to element depay:sink<br>0:00:10.760667305 6410 0xf8e8c0 INFO GST_ELEMENT_PADS gstelement.c:895:gst_element_get_static_pad: found pad source:recv_rtp_src_1_3232776733_8<br>0:00:10.760771055 6410 0xf8e8c0 INFO GST_ELEMENT_PADS gstelement.c:895:gst_element_get_static_pad: found pad depay:sink<br>0:00:10.760858398 6410 0xf8e8c0 INFO GST_PADS gstutils.c:1445:prepare_link_maybe_ghosting: source and depay in same bin, no need for ghost pads<br>0:00:10.760991106 6410 0xf8e8c0 INFO GST_PADS gstpad.c:2186:gst_pad_link_prepare: trying to link source:recv_rtp_src_1_3232776733_8 and depay:sink<br>0:00:10.761298656 6410 0xf8e8c0 INFO GST_PADS gstpad.c:2242:gst_pad_link_prepare: caps are incompatible<br><br></div>It's seen caps are incompatible but why and how can I solve it or deal with that I don't know. Shoul/Can I add another compatible sink pad to rtph264depay?<br><br></div>Thanks<br></div>Orkun<br></div><div class="gmail_extra"><br><div class="gmail_quote">2015-12-26 14:04 GMT+02:00 Orkun <span dir="ltr"><<a href="mailto:orkun.kasapoglu@gmail.com" target="_blank">orkun.kasapoglu@gmail.com</a>></span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div><span class=""><div>Thank you Sebastion,<br><br></div>I've changed the pad added callback as you said;<br><br>static GstPad *oldSrcRTSPSRC = NULL;<br></span><span class="">static void rtspsrc_pad_added_callback(GstElement* e, GstPad *pad, gpointer<br>
data)<br>
{<br>
gchar *name;<br>
GstCaps *caps;<br>
gchar *desc;<br>
GstElement *depayloader;<br></span></div><div>
GstPad *sinkDepayloader;<br></div><span class=""><div><br>
name = gst_pad_get_name(pad);<br>
g_print("New pad %s was created", name);<br>
<br>
caps = gst_pad_get_pad_template_caps(pad);<br>
desc = gst_caps_to_string(caps);<br>
g_print("\n%s\n", desc);<br>
g_free(desc);<br>
<br>
depayloader = GST_ELEMENT(data);<br></div></span><span class=""><div> sinkDepayloader = gst_element_get_static_pad(depayloader, "sink");<br></div> if (gst_pad_is_linked(sinkDepayloader))<br> {<br> if (gst_pad_unlink(oldSrcRtspsrc, sinkDepayloader) == FALSE)<br> {<br> g_print("'rtph264depay' sink pad's old link can't be removed\n");<br> }<br> else<br> g_print("'rpth264depay' sink pad's old link removed\n");<br> }<br> else<br> {<br> g_print("'rtph264depay' sink pad is linking for the first time\n");<br> }<br></span><div><span class=""><br>
if (gst_element_link_pads(e, name, depayloader, "sink") == FALSE)<br>
{<br>
g_print("'rtspsrc' and 'rtph264depay' did not linked\nProgram<br>
ending...\n");<br></span><span class="">
exit(0);<br>
}<br>
else<br>
{<br> oldSrcRTSPSRC = pad;<br></span><span class="">
g_print("'rtspsrc' and 'rtph264depay' linked\n");<br>
}<br>
}<br><br></span></div><span class=""><div>but it's still same its ouput;<br><br></div></span><div><span class="">New pad 'pad name' was created <br><br>application/x-rtp; application/x-rdt<br><br>'rpth264depay' sink pad's old link removed<br><br></span><span class="">'rtspsrc' and 'rtph264depay' did not linked<br></span>Program ending...<br><br></div><span class=""><div>I'm new in GStreamer and I don't know how can I enable debug ingormation without command line. I'm going to search for it. Thanks again<br><br></div><div>Orkun<br></div></span></div><div class="gmail_extra"><br><div class="gmail_quote"><div><div class="h5">2015-12-26 12:29 GMT+02:00 Sebastian Dröge-3 [via GStreamer-devel] <span dir="ltr"><<a href="http:///user/SendEmail.jtp?type=node&node=4675044&i=0" rel="nofollow" link="external" target="_blank">[hidden email]</a>></span>:<br></div></div><blockquote style="border-left:2px solid #cccccc;padding:0 1em" class="gmail_quote"><div><div class="h5"><span>
On Do, 2015-12-24 at 06:55 -0800, Orkun wrote:
</span><div><div><span><div><br>> Hello,
<br>>
<br>> I'm trying to get ip cam streams and saving png images in some period
<br>> and I'm also doing it on command line with "gst-launch1.0 rtspsrc
<br>> location=usr:pw@<ip>/cam/realmonitor... ! rtph264depay ! h264parse !
<br>> omxh264dec ! videorate ! video/x-raw,framerate=1/1 ! pngenc !
<br>> multifilesink
<br>> location=/home/pi/im_%03d.png". I'm also created all elements and
<br>> pipeline and linked them with a for loop without rtspsrc-
<br>> >rtph264depay and videorate -> filter -> pngenc and before that for
<br>> loop linked rtspsrc to rtph264depay with a callback as what ADM 1.6.2
<br>> page 30 subject 8.1.1 says. The link was created for first time but
<br>> then it's not linking.
</div></span>> [...]
<br><span>> if (gst_element_link_pads(e, name, depayloader, "sink") == FALSE)
<br>> {
<br>> g_print("'rtspsrc' and 'rtph264depay' did not linked\nProgram
<br>> ending...\n");
</span></div></div><span>If I understand you correctly, this is what fails? But what happens
<br>here according to your logs seems to be that multiple srcpads are added
<br>on the rtspsrc but you link them always to the same rtph264depay. That
<br>can't work, you can only link a pad once and need to unlink it first
<br>otherwise.
<br><br>From the GStreamer debug logs you should first of all check why rtspsrc
<br>is adding multiple srcpads, it seems like this is already unexpected in
<br>your case. And once that is known we can try to find a solution for
<br>that.
<br><br>--
<br>Sebastian Dröge, Centricular Ltd · <a href="http://www.centricular.com" rel="nofollow" link="external" target="_blank">http://www.centricular.com</a><br><br><br></span></div></div><span class="">_______________________________________________
<br>gstreamer-devel mailing list
<br><a href="http:///user/SendEmail.jtp?type=node&node=4675040&i=0" rel="nofollow" link="external" target="_blank">[hidden email]</a>
<br><a href="http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel" rel="nofollow" link="external" target="_blank">http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel</a><br><div><br><img> <strong>signature.asc</strong> (968 bytes) <a href="http://gstreamer-devel.966125.n4.nabble.com/attachment/4675040/0/signature.asc" rel="nofollow" link="external" target="_blank">Download Attachment</a></div>
<br>
<br>
<hr color="#cccccc" noshade size="1">
<div style="color:#444;font:12px tahoma,geneva,helvetica,arial,sans-serif">
<div style="font-weight:bold">If you reply to this email, your message will be added to the discussion below:</div>
<a href="http://gstreamer-devel.966125.n4.nabble.com/GstRTSPSrc-dynamic-pad-iteration-problem-tp4675018p4675040.html" rel="nofollow" link="external" target="_blank">http://gstreamer-devel.966125.n4.nabble.com/GstRTSPSrc-dynamic-pad-iteration-problem-tp4675018p4675040.html</a>
</div>
<div style="color:#666;font:11px tahoma,geneva,helvetica,arial,sans-serif;margin-top:.4em;line-height:1.5em">
To unsubscribe from GstRTSPSrc dynamic pad iteration problem, <a rel="nofollow" link="external">click here</a>.<br>
<a href="http://gstreamer-devel.966125.n4.nabble.com/template/NamlServlet.jtp?macro=macro_viewer&id=instant_html%21nabble%3Aemail.naml&base=nabble.naml.namespaces.BasicNamespace-nabble.view.web.template.NabbleNamespace-nabble.view.web.template.NodeNamespace&breadcrumbs=notify_subscribers%21nabble%3Aemail.naml-instant_emails%21nabble%3Aemail.naml-send_instant_email%21nabble%3Aemail.naml" rel="nofollow" style="font:9px serif" link="external" target="_blank">NAML</a>
</div></span></blockquote></div><br></div>
<br><hr align="left" width="300">
View this message in context: <a href="http://gstreamer-devel.966125.n4.nabble.com/GstRTSPSrc-dynamic-pad-iteration-problem-tp4675018p4675044.html" target="_blank">Re: GstRTSPSrc dynamic pad iteration problem</a><div class="HOEnZb"><div class="h5"><br>
Sent from the <a href="http://gstreamer-devel.966125.n4.nabble.com/" target="_blank">GStreamer-devel mailing list archive</a> at Nabble.com.<br></div></div><br>_______________________________________________<br>
gstreamer-devel mailing list<br>
<a href="mailto:gstreamer-devel@lists.freedesktop.org">gstreamer-devel@lists.freedesktop.org</a><br>
<a href="http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel" rel="noreferrer" target="_blank">http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel</a><br>
<br></blockquote></div><br></div>