If the problem is high end-to-end latency, follow these steps to debug the system:
- Understand how much the jitter buffer is used in the client side pipeline
(udpsrc). Note: The latency for the rtpjitterbuffer should correspond to the CPB size in the server pipeline. Often it is useful to use LowLatency rate control (or hardware rate control) algorithm to maintain a lower CPB buffer that reduces the rtpjitterbuffer latency.
- Many times, latency is related to frame drop. Ensure there is no frame drop in the pipeline before measuring latency.
- Check if use of the filler-data setting in the encoder pipeline is causing longer latency. If so, set filler-data=false in the pipeline and check for latency.
- Use a fine-tuned internal-entropy-buffers count. Note: Internal-entropy-buffers setting impacts the latency and an optimal value needs to be used. You can update this decoder property to ensure no frame drop first and later to optimize the pipeline latency.