udpsink or udpsrc loosing data

Dmitry Valento va.dimon at tut.by
Fri Nov 25 14:07:37 UTC 2016


Try to use wireshark utility - it allows to analyze RTP streaming (i.e. 
dropping rate and much more).

If the problem in loosing UDP packets - add rtpbin and rtprtxqueue 
elements to server and rtpbin to client like this:

http://gstreamer-devel.966125.n4.nabble.com/RTP-retransmission-mechanism-in-gstreamer-1-2-0-tp4663965p4664003.html

On 11/25/2016 04:30 PM, Holger wrote:
> I try to stream a webcam video from one windows machine to another one.
>
> Server:
> $GL \
> ksvideosrc device-index=0 \
> !  videoscale method=0 add-borders=false !
> video/x-raw,width=$WIDTH,height=$HEIGHT ! videoconvert \
> ! x264enc tune=zerolatency rc-lookahead=0 intra-refresh=true
> sync-lookahead=0 speed-preset=1 ! h264parse \
> ! rtph264pay  ! udpsink   host=$DST_IP  port=$DST_PORT
>
> Client:
> $GL udpsrc port=$DST_PORT ! application/x-rtp, payload=96  ! rtph264depay  !
> h264parse \
> ! avdec_h264  ! glimagesink sync=false
>
> The quality on the client side is very bad, it seems that many packages are
> lost (bitrate is about 2Mbit - x264enc default). If I start server and
> client on the same machine, the quality is much better but there are still
> image errors.
>
> If I don't use udpsrc / sink and do everything in one pipeline, the image
> quality is good.
>
> $GL \
> ksvideosrc device-index=0 \
> !  videoscale method=0 add-borders=false !
> video/x-raw,width=$WIDTH,height=$HEIGHT ! videoconvert \
> ! x264enc tune=zerolatency rc-lookahead=0 intra-refresh=true
> sync-lookahead=0 speed-preset=1 ! h264parse  ! rtph264pay \
> ! application/x-rtp, payload=96  ! rtph264depay  ! h264parse ! avdec_h264  !
> glimagesink sync=false
>
> In another post I read, that most packages will be dropped by udpsink
> immediately. I think this is the problem - but I'm not sure. But I don't
> know how to solve this.



More information about the gstreamer-devel mailing list