Strange delay between transmitted RTP packets

daniel at poradnik-webmastera.com daniel at poradnik-webmastera.com
Tue Jun 5 16:29:22 UTC 2018


Hi,
My app generates some audio using "audiotestsrc wave=ticks is-live=true 
do-timestamp=true", which then encodes, sends to rtpbin and then to 
"udpsink sync=true async=false host=... port=...". RTP payloader element 
uses "min-ptime=20000000 max-ptime=20000000" (20ms). Initial about 12 
packets are sent every 20ms, however then there is gap 148ms instead of 
20ms as usual. Further packets are sent every 20ms as expected. Sequence 
number and timestamp in RTP packets are incremented as expected, so no 
packets are lost. This happens when rtpbin added 
recv_rtp_src_0_2066677382_8 pad, app created and linked decodebin to it, 
and then linked this decodebin to fakesink. Looks that for some reason 
these operations introduces extra delay.

I also added "identity silent=false" to my pipeline on both sides of 
rtpbin, and found that logs for first two buffers after adding decodebin 
are delayed by 56ms and 112ms (total 168ms) instead of 20ms as usual. At 
the same time pts and offset values in logs increments as expected, by 
0.020 and 160 every time.

What is also interesting this 148ms delay seems consistent every time I 
run my app, so it is not a random glitch introduced by virtual machine 
or other things.

Could you help me with debugging and fixing this?

Regards,
Daniel


More information about the gstreamer-devel mailing list