Packet drops while sending data over internet using udpsink/udpsrc

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

Packet drops while sending data over internet using udpsink/udpsrc

ankitjain
Hi,

I am trying to transfer live webcam feed over internet.
My setup:
I am using two Reliance 3G datacards (upload: ~350 kbps down: 1.2 Mbps) connected to two different laptops.

I am running the following pipeline on one of the laptops:

gst-launch-0.10 v4l2src ! ffmpegcolorspace ! video/x-raw-yuv,format=\(fourcc\)I420 ! videoscale ! video/x-raw-yuv,width=320,height=240 ! videorate ! video/x-raw-yuv,framerate=\(fraction\)15/1 ! x264enc bitrate=200 tune=zerolatency ! rtph264pay config-interval=5 ! udpsink port=12000 host=120.42.20.114 -v

and the below one on other laptop:

gst-launch-0.10 udpsrc port=12000 ! "application/x-rtp, media=(string)video, clock-rate=(int)90000, encoding-name=(string)H264, sprop-parameter-sets=(string)\"Z01ACtkChH5cBEAAAAMAQAAAB6PEiZI\\=\\,aOvMsg\\=\\=\", payload=(int)96, ssrc=(uint)1152645577, clock-base=(uint)1615839529, seqnum-base=(uint)7545" ! rtph264depay ! ffdec_h264 skip-frame=2 ! xvimagesink sync=false -v


I am able to get the video at the other end (I handle NATing and port opening issues separately). However there are too many packet drops in the same.

To test the network, I started skype clients on both the laptops and started video call between the two laptops. The video quality was excellent with almost no packet loss.

I am planning to implement error resiliency techniques in the above system to patch up the distortions caused by the pkt drops and also to reduce packet drops to some extent. But before I go in to this, I want to know if I am doing anything wrong? Have I missed out on any buffer settings, etc? please give me some pointers on what settings of rtp, udp plugins can I tweak

Thanks in advance

Regards
Ankit