dynamically adding udpsrc to rtpbin causes streaming stopped, reason not-linked (-1)
Ankur Deep Jaiswal
ankur at techgentsia.com
Fri Aug 3 11:09:03 UTC 2018
The only issue that i have been able to find out is.
sometimes it says rtpssrcdemux0:src_2345243 not linked, and then udpsrc
audio fails with gst_pad_push() = not-linked.
there is this issue that i dont understand, that the pipeline works most of
the time, it fails for 25 % of time.
On Thu, Aug 2, 2018 at 10:14 PM, Ankur Deep Jaiswal <ankur at techgentsia.com>
wrote:
> Hi,
>
> i am trying to add a udp src dynamically to a running pipeline.
> e.g
>
> void addAudioSource(std::string const ip, int const port, int const
> payloadtype)
> {
> std::string description = "autoaudiosrc ! queue ! audioconvert !
> audio/x-raw,rate=16000 ! avenc_g722 ! rtpg722pay";
>
> audiosrc = Gst::Parse::create_bin(description, true);
>
> pipeline->add(audiosrc);
> {
> auto srcpad = audiosrc->get_static_pad("src");
> auto sinkpad = rtpbin->get_request_pad("send_rtp_sink_1");
> srcpad->link(sinkpad);
> }
>
> rtpudpsinkAudio->set_property("host", ip);
> rtpudpsinkAudio->set_property("port", port);
> rtpudpsinkAudio->set_property("sync",true);
> rtpudpsinkAudio->set_property("async",false);
> pipeline->add(rtpudpsinkAudio);
> {
> auto srcpad = rtpbin->get_static_pad("send_rtp_src_1");
> auto sinkpad = rtpudpsinkAudio->get_static_pad("sink");
> srcpad->link(sinkpad);
> }
> pipeline->set_state(Gst::State::STATE_PLAYING);
> }
>
> --- and ---
>
> void addAudioSink(std::string const ip, int const port, int const
> payloadtype)
> {
> char const caps[] = "application/x-rtp,media=(
> string)audio,clock-rate=(int)8000,payload=(int)%d";
> char buffer[128] = {0};
> sprintf(buffer,caps,payloadtype);
> pipeline->add(rtpudpsrcAudio);
> rtpudpsrcAudio->set_property("caps",
> Gst::Caps::create_from_string(buffer));
> {
> auto srcpad = rtpudpsrcAudio->get_static_pad("src");
> auto sinkpad = rtpbin->get_request_pad("recv_rtp_sink_1");
> srcpad->link(sinkpad);
> }
> pipeline->set_state(Gst::State::STATE_PLAYING);
> }
>
> individually when i am not calling the other function the pipeline works
> fine.
>
> if i try to call addAudioSink some time after addAudioSource , i always
> get this error when i debug through the application
>
> 0:00:18.190302584 [334m 6945 [00m 0x555556669450 [36mINFO [00m
> [00;01;34m GST_EVENT gstevent.c:814:gst_event_new_caps: [00m
> creating caps event application/x-rtp, media=(string)audio,
> clock-rate=(int)8000, payload=(int)9, ssrc=(uint)1388635048
> 0:00:18.190323116 [334m 6945 [00m 0x555556669450 [36mINFO [00m
> [00m basesrc gstbasesrc.c:2965:gst_base_
> src_loop:<rtpudpsrcaudio-AVP-d80367f9-8361-458d-a52d-23db4d185996> [00m
> pausing after gst_pad_push() = not-linked
> 0:00:18.190333169 [334m 6945 [00m 0x555556669450 [33;01mWARN [00m
> [00m basesrc gstbasesrc.c:3055:gst_base_
> src_loop:<rtpudpsrcaudio-AVP-d80367f9-8361-458d-a52d-23db4d185996> [00m
> error: Internal data stream error.
> 0:00:18.190337616 [334m 6945 [00m 0x555556669450 [33;01mWARN [00m
> [00m basesrc gstbasesrc.c:3055:gst_base_
> src_loop:<rtpudpsrcaudio-AVP-d80367f9-8361-458d-a52d-23db4d185996> [00m
> error: streaming stopped, reason not-linked (-1)
> 0:00:18.190350252 [334m 6945 [00m 0x555556669450 [36mINFO [00m
> [00;01;31;47m GST_ERROR_SYSTEM gstelement.c:2145:gst_element_
> message_full_with_details:<rtpudpsrcaudio-AVP-d80367f9-8361-458d-a52d-23db4d185996>
> [00m posting message: Internal data stream error.
> 0:00:18.190358717 [334m 6945 [00m 0x555556669450 [36mINFO [00m
> [00;01;31;47m GST_ERROR_SYSTEM gstelement.c:2172:gst_element_
> message_full_with_details:<rtpudpsrcaudio-AVP-d80367f9-8361-458d-a52d-23db4d185996>
> [00m posted error message: Internal data stream error.
>
>
> the other thing is that this pipeline works most of the time.
> i am only hit by this error when i debug through the application and
> sometimes when on release build.
>
> please help
>
> --
> Regards
>
> Ankur Deep Jaiswal
>
>
--
Regards
Ankur Deep Jaiswal
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/gstreamer-devel/attachments/20180803/4a2c3856/attachment-0001.html>
More information about the gstreamer-devel
mailing list