RTP video stream corruption

Tim Müller tim at centricular.com
Wed Jan 10 19:55:52 UTC 2018


On Wed, 2018-01-10 at 14:27 -0500, Joel Keller wrote:

Hi Joel,

> which I use to receive a 4k video stream from a camera on the LAN (or
> to test - a stream from localhost).  Occasionally, I see that the
> video stream gets 'corrupted' (...)
> 
> I have tried all the properties & knobs that I know of w.r.t rtspsrc
> ( udp-buffer-size, latency, drop-on-latency, buffer-mode,
> retransmissions), and have tried adding queues in the pipeline,
> etc..  No matter what I do, this occasionally happens when there is
> any other significant usage of cpu (for example a multi-job
> compilation).  I do know that I have enough CPU time 'on-average' to
> keep up with the stream rate, so it seems like with correct buffering
> in the right places, I shouldn't have to drop any information.

Have you also checked whether these parameters were actually effective?
e.g. udp buffer-size might be restricted and you might need something
like

 sudo /sbin/sysctl -w net.core.rmem_max=33554432

to up the max.

Did you check if the camera supports interleaved RTSP so that the data
is sent over the TCP connection instead via UDP? That might be the
easiest workaround in your case. You can try by using


  rtspsrc location=rtspt://...

instead of rtsp://

One would have to check if the omx decoder supports not outputting
corrupted frames.

Cheers
-Tim

-- 
Tim Müller, Centricular Ltd - http://www.centricular.com


More information about the gstreamer-devel mailing list