How can I reduce TinyPilot's latency?

On a well-provisioned local network, TinyPilot achieves 100-140 milliseconds of latency on its H.264 video stream. On slower networks or across the Internet, you may experience higher latency. This article includes steps you can take to reduce TinyPilot's latency.

Switch to H.264 video

Switching to the H.264 video format can drastically improve latency.

To change which video format TinyPilot uses, go to System > Video Settings.

Screenshot of TinyPilot navigation bar selecting Video Settings

Choose H.264 from the streaming mode dropdown list.

Screenshot of TinyPilot video format selection dropdown list

If your network connection to the TinyPilot doesn't support WebRTC connections, you can optimize latency using MJPEG (see below).

Reducing latency with H.264 video

Adjust the frame rate and bit rate settings to fine-tune performance for your network. A higher bit rate will improve picture quality, and a higher frame rate will improve responsiveness. Using lower values may reduce latency.

Screenshot of TinyPilot's H.264 Video Settings dialog

Reducing latency with MJPEG video

For most users, you will achieve better performance using H.264 video. You should only switch to MJPEG video if your network is incompatible with the WebRTC connection that H.264 mode requires.

To select MJPEG mode, follow the instructions under Switch to H.264 video but choose MJPEG from the streaming mode dropdown list.

Adjust the frame rate and quality settings to fine-tune performance for your network. Latency will reduce as you lower the frame rate and quality.

Screenshot of TinyPilot's MJPEG Video Settings dialog