Bin src pad not forwarding caps query

Ajit Warrier ajit.warrier at gmail.com
Tue Nov 15 23:30:54 UTC 2016


I am stumped by a caps issue. I have the following (high level) pipeline:

udpsrc ! rtpssrcdemux ! [ Bin<DecodeSource>: output-select ! depay/decode
elements ! input-select ] ! alsasink

I have created ghost pads for the bin. Now when data comes into the udpsrc,
I get the ssrc-new-pad callback, in which I link the Bin. However the
incoming data does not make it to the alsasink. The log shows that:

1. rtpssrcdemux sends down a caps query "application/x-rtp,
media=(string)audio, ssrc=(uint)4140498029"
2. the depay/decode elements reply with: "allowed caps subset
application/x-rtp, media=(string)audio, ssrc=(uint)4140498029,
clock-rate=(int)8000, encoding-name=(string)G722; application/x-rtp,
media=(string)audio, ssrc=(uint)4140498029, payload=(int)9,
clock-rate=(int)[ 1, 2147483647 ], caps application/x-rtp,
media=(string)audio, ssrc=(uint)4140498029"
3. the Bin does not forward this back to the ssrcdemux, hence buffers get
dropped with "not-negotiated".

Log:
GST_PADS
gstpad.c:3098:gst_pad_query_accept_caps_default:<OutputSelect_239.0.0.190:sink>.[00m
allowed caps subset application/x-rtp, media=(string)audio,
ssrc=(uint)4140498029, clock-rate=(int)8000, encoding-name=(string)G722;
application/x-rtp, media=(string)audio, ssrc=(uint)4140498029,
payload=(int)9, clock-rate=(int)[ 1, 2147483647 ], caps application/x-rtp,
media=(string)audio, ssrc=(uint)4140498029
DEBUG  GST_PADS
gstpad.c:3376:gst_pad_query_default:<OutputSelect_239.0.0.190:sink>.[00m
not forwarding 0x3603f030 (accept-caps) query
GST_PADS gstpad.c:3955:gst_pad_query:<OutputSelect_239.0.0.190:sink> sent
query 0x3603f030 (accept-caps), result 1
GST_PADS
gstutils.c:2602:gst_pad_proxy_query_accept_caps:<DecodeSource_239.0.0.190:sink>
proxying accept caps query: 0
GST_PADS
gstpad.c:3376:gst_pad_query_default:<DecodeSource_239.0.0.190:sink> not
forwarding 0x3603f030 (accept-caps) query
GST_PADS gstpad.c:3955:gst_pad_query:<DecodeSource_239.0.0.190:sink> sent
query 0x3603f030 (accept-caps), result 1
default
gstutils.c:2987:gst_pad_query_accept_caps:<DecodeSource_239.0.0.190:sink>
query returned 0
GST_CAPS gstpad.c:5478:pre_eventfunc_check:<DecodeSource_239.0.0.190:sink>
caps application/x-rtp, media=(string)audio, ssrc=(uint)4140498029 not
accepted
GST_PADS
gstpad.c:5721:gst_pad_send_event_unchecked:<DecodeSource_239.0.0.190:sink>.[00m
pre event check failed
GST_PADS
gstpad.c:3842:push_sticky:<SSRCDemux_239.0.0.190:src_4140498029>.[00m
result not-negotiated, mark pending events
GST_SCHEDULING
gstpad.c:4209:gst_pad_chain_data_unchecked:<SSRCDemux_239.0.0.190:sink>.[00m
called chainfunction &0x34ee6c5c with buffer 0x36053498, returned
not-negotiated
GST_SCHEDULING
gstpad.c:4209:gst_pad_chain_data_unchecked:<PTTSelector_239.0.0.190:sink_0>.[00m
called chainfunction &gst_selector_pad_chain with buffer 0x36053498,
returned not-negotiated
GST_SCHEDULING
gstpad.c:4209:gst_pad_chain_data_unchecked:<ValveNormal_239.0.0.190:sink>.[00m
called chainfunction &gst_valve_chain with buffer 0x36053498, returned
not-negotiated

Any idea why this happens ?

Thanks,
Ajit.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/gstreamer-devel/attachments/20161115/67654303/attachment.html>


More information about the gstreamer-devel mailing list