tcpserversink latency/buffering

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

tcpserversink latency/buffering

Lusine
This post was updated on .
Hi Folks,

I'm trying to get ultra low video-streaming latency on the local machine.
With udpsink & udpsrc elements the latency is less than 20ms. With
tcpserversink and  tcpclientsrc the latency is more than 300ms.
I have a c++ application where I'm able to see the latecy.
My pipelines look like this:
# udp streamer & receiver on local machine
gst-launch-1.0 -v videotestsrc is-live=true ! x264enc tune=zerolatency bitrate=500 speed-preset=superfast ! rtph264pay ! udpsink host=127.0.0.1 port=5000
gst-launch-1.0 -v udpsrc port=5000 caps = "application/x-rtp, media=(string)video, clock-rate=(int)90000, encoding-name=(string)H264, payload=(int)96" ! rtph264depay ! h264parse  ! avdec_h264 ! videoconvert ! autovideosink

# tcp streamer and receiver on local machine
gst-launch-1.0 -v videotestsrc is-live=true ! x264enc tune=zerolatency bitrate=500 speed-preset=superfast ! tcpserversink host=127.0.0.1 port=5000
gst-launch-1.0 -v tcpclientsrc port=5000  ! h264parse  ! avdec_h264 ! videoconvert ! autovideosink

How I can get smaller latency with tcp. It seems that tcpserversink has
local buffering which causes the latency. Is it possible to turn it off?
I've tried:
unit-format=buffers units-max=1 buffers-max=1 but it didn't help. Any other
clue why we see the latency on the local machine?



--
Sent from: http://gstreamer-devel.966125.n4.nabble.com/
_______________________________________________
gstreamer-devel mailing list
gstreamer-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel