[Live-devel] Frame truncation if network bandwidth is not enough

Ross Finlayson finlayson at live555.com
Thu Jan 4 14:16:40 PST 2007


>I have the following problem. I stream videos using Unicast over the 
>Internet using live555 library. The frames are provided by 
>DirectShow streams. The frames are complete, so no framer class from 
>live555 is used. Instead, I simply feed the DirectShow frames to my 
>class derived from SimpleRTPSink.

Out of curiosity, what codec are you using?  (Or are you trying to 
stream raw, uncompressed video data??)

>  If the network bandwidth is not enough to deliver samples, they 
>arrive truncated on the client side (in afterGettingFrame function). 
>What can possibly be causing it?

I think you've answered your own question.  If you don't have enough 
network bandwidth, then you're going to get packet loss.  Therefore 
some frames (or parts of some frames, if frames span more than one 
RTP packet) are going to get lost.

>  Is it a part of RTP standard- to truncate frames if they can't be 
>delivered on time?

RTP (by default) is an unreliable protocol, over UDP.  if packets get 
lost, then yes, you're going to lose data (of course).

>  I'd much prefer for samples to arrive late, then to arrive truncated...

That's not possible, for a UDP-based protocol.

Your real problem is that you don't have enough network bandwidth.


More information about the live-devel mailing list