[Live-devel] [live555] RTP sequence number is not continuous when video bitrate is high (for example: 8Mbps)

Ross Finlayson finlayson at live555.com
Wed Jul 29 23:26:04 PDT 2020



> On Jul 30, 2020, at 1:50 PM, Zhang Qian(张倩) <qianzhang at asrmicro.com> wrote:
> 
> 
> Hi Ross,
> 
> Yes,  for function RTPInterface::sendDataOverTCP , I found it will not resend the header data if sent failed for TCP, then it will lose the packet with this header.

That’s correct.


> We need to check why data sent failed for our OS.

I have already told you several times why this is happening.  Once again (for the last time):

Your stream’s bitrate is exceeding the capacity of your network.  Therefore, outgoing RTP packets are filling up the sender OS’s TCP buffer.  When this buffer fills up, the TCP write will fail, giving the effect of a RTP packet being lost.

YOUR ONLY SOLUTION is to reduce the bitrate of your stream.

And you SHOULD NOT be streaming RTP-over-TCP, unless you cannot avoid this (i.e. unless you have a firewall - between the server and client - that blocks UDP packets.  This is the ONLY reason to use RTP-over-TCP.  Note that RTP-over-UDP is more data efficient than RTP-over-TCP.

This will be my (and your) last posting on this topic.


Ross Finlayson
Live Networks, Inc.
http://www.live555.com/




More information about the live-devel mailing list