Re: rtpbin limit number of retransmissions

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view

Re: rtpbin limit number of retransmissions

Nicolas Dufresne-5
Le samedi 25 janvier 2020 à 04:48 -0600, andis a écrit :
> Hi all,
> is there a way to limit the number of retransmissions requests of the
> rtpbin, also after which time a retransmission request is sent? Usually, I
> am ending up with negative packetslost, which is a result of duplicate
> packets that are received, as indicated here:

On rtpjitterbuffer, you can control the rtx-max-retries in order to decide the
maximum number of time a retry happens. See all rtx- controls on jitterbuffer.
Most of these are set to -1 (automatic) by default. There is always room for
improvement on these automatic mode as the spec may leave some room for per
stack improvement.

> With this negative packet loss, it is hard to determine what is the number
> packets that are lost for good. Here is a sample statistics output by the
> rtpbin:

I'm not familiar with negative numbers in stats. Now, be aware the
rtpsource/session on a receive is not aware of the permantly lost buffers. You
need to look into the jitterbuffer stats, since it's a jb decision which happen
after the rtpsource/session. See "num-lost" field in rtpjitterbuffer "stats"

> latency = 175ms, loss-probability = 0.5%
> rtprtxqueue: requests = 1007, fulfilled-requests = 955
> rtpbin stats: application/x-rtp-source-stats, ssrc=(uint)411292676,
> internal=(boolean)false, validated=(boolean)true,
> received-bye=(boolean)false, is-csrc=(boolean)false,
> is-sender=(boolean)true, seqnum-base=(int)-1, clock-rate=(int)-1,
> rtp-from=(string), rtcp-from=(string),
> octets-sent=(guint64)0, packets-sent=(guint64)0,
> octets-received=(guint64)17246025, packets-received=(guint64)30067,
> bitrate=(guint64)3602896, packets-lost=(int)-766, jitter=(uint)0,
> sent-pli-count=(uint)0, recv-pli-count=(uint)0, sent-fir-count=(uint)0,
> recv-fir-count=(uint)0, sent-nack-count=(uint)257, recv-nack-count=(uint)0,
> have-sr=(boolean)true, sr-ntptime=(guint64)16273342994088588482,
> sr-rtptime=(uint)3899284162, sr-octet-count=(uint)15982235,
> sr-packet-count=(uint)27872, sent-rb=(boolean)true,
> sent-rb-fractionlost=(uint)0, sent-rb-packetslost=(int)-765,
> sent-rb-exthighestseq=(uint)36600, sent-rb-jitter=(uint)0,
> sent-rb-lsr=(uint)2268837565, sent-rb-dlsr=(uint)162432,
> have-rb=(boolean)false, rb-fractionlost=(uint)0, rb-packetslost=(int)0,
> rb-exthighestseq=(uint)0, rb-jitter=(uint)0, rb-lsr=(uint)0,
> rb-dlsr=(uint)0, rb-round-trip=(uint)0;
> The documentation states that rtpbin uses the rtpjitterbuffer, which has
> these settings, but I do not know how to access and set them?
> Thanks,
> Andi
> --
> Sent from:
> _______________________________________________
> gstreamer-devel mailing list
> [hidden email]

gstreamer-devel mailing list
[hidden email]