how is udpsink related to or dependent on videorate?

Andres Gonzalez andres.agoralabs at gmail.com
Tue Feb 16 20:32:51 UTC 2016


Hi,

I am observing something I cannot explain (which seems to be frequent with
GStreamer). I have a typical RTP video pipeline:

appsrc->queue->videorate->videoconvert->timeoverlay->textoverlay->x264enc->rtph264pay

this is linked to rtpbin into 3 udpsink elements--one for sending RTP, one
for sending RTCP SRs, and one for receiving RTCP RRs.

This pipeline works fine. I can receive the UDP/RTP stream on a separate
local host and display the video. The sender sends RTCP SRs and the receiver
sends RTCP RRs.  Life is good.

Then if I change the pipeline and remove the videorate element from the
pipeline, and run again, but now the pipeline is broken. The udpsink element
for RTP pkts does not send any UDP pkts.  The RTCP udpsinks still function,
the receiver sends RTCP RRs indicating no pkts received, but the sender now
also sends RTCP RRs and not RTCP SRs. I am checking API return values and
there are no bus errors, but without videorate in the pipeline, there are no
UDP RTP media pkts are sent by udpsink (all of this monitored by wireshark).

Using gst-inspect on videorate, it appears that this element will only drop
or duplicate to ensure a perfect stream, so I cannot understand why its lack
of presence in the pipeline would effect UDP pkt generation with an element
so far downstream as the RTP udpsink.

Is there a reasonable explanation for this?   perhaps an unreasonable
explanation?  any explanation?

-Andres



--
View this message in context: http://gstreamer-devel.966125.n4.nabble.com/how-is-udpsink-related-to-or-dependent-on-videorate-tp4675890.html
Sent from the GStreamer-devel mailing list archive at Nabble.com.


More information about the gstreamer-devel mailing list