<div dir="ltr">Hi,<div><br></div><div>I'm trying to stream H264 video through TCP, and here is my pipeline:</div><div><br></div><div>Sender:</div><div>gst-launch-1.0 playbin uri=file:///[video-path] video-sink="x264enc tune=zetolatency ! tcpclientsink port=9999 host=localhost"</div><div><br></div><div>Receiver:</div><div>gst-launch-1.0 tcpserversrc port=9999 host=localhost ! h264parse ! avdec_h264 ! videoconvert ! avenc_bmp ! multifilesink location=[path]</div><div><br></div><div>The reason I have to use playbin is I want the sender to act like a camera and output video at specific frame rate (such as 5fps).</div><div><br></div><div>The whole pipeline works fine, but the problem is h264parse doesn't output one frame until it receives the information of next frame. This means if I have a 5fps video, the latency is at least 1/5=200ms. I don't have this problem when I'm streaming through UDP.</div><div><br></div><div>Does anyone has any idea to reduce the latency and let h264parse output the frame as long as it receives the whole frame?</div><div><br></div><div>Thanks!</div></div>