Camera latency issues
In video, latency refers to the time between capturing and displaying a frame. Achieving low latency is crucial for real-time interactions with video content, like live views or casting. However, the definition of "low latency" can vary, and methods for achieving it may not be straightforward. Latency depends on factors in the network environment and applications used. System delays can result from system overload, network congestion, or outdated components in the decoding client. Addressing these factors is essential for minimizing latency and ensuring optimal real-time video interaction.
Measuring Video Latency
Latency in the video context is commonly measured in time units like seconds or milliseconds. The primary contributors to video latency are processing stages that involve temporary storage of data, often in the form of short-term buffering. Video system engineers typically express latency to buffered video data, such as two frames or eight horizontal lines. The conversion from frame to time is contingent on the video's frame rate. For instance, a one-frame delay in 30 frames-per-second (fps) video corresponds to 1/30th of a second (33.3ms) of latency
Figure 1 illustrates latency in a 1080p / 30 FPS video stream.
To convert from video lines to time, you need both the frame rate and frame size (resolution). For a 720p HD video frame with 720 horizontal lines, a latency of one line at 30fps is calculated as 1/(30*720), resulting in 0.046ms of latency. In the case of 1080p @ 30fps, the same one-line latency is significantly shorter, at 0.030ms.
NOTE: Latency expectations in Live view on a Spot system is between 5-10 seconds with recommended resolution
How to achieve Live view low-latency
When designing a system to meet low-latency goals, keep these points in mind:
- Achieving low latency will require some trade-off of decreased video quality or a higher transmission bit rate (or both).
- Identify your latency contributors throughout the system, and eliminate any unnecessary buffering, make sure you have suitable network bandwidth. Focus on the granularity level (frame, level, pixel) that matters most in your system.
- You can toggle the live-view latency option within the live-view tab which will reduce camera streaming resolution. This action will result in decreased video processing time, enabling a faster live-view experience.
NOTE: Do not use the low-latency toggle if your camera resolution is 480p or lower.
Troubleshooting Latency Longer than 10 seconds
- Check your network bandwidth. Insufficient network bandwidth can lead to latency issues. Verify that your network connection has enough available bandwidth to handle the camera's video stream. Ensure that other devices or applications on your network are not consuming excessive bandwidth.
- Monitor network congestion. If there are multiple devices or heavy network usage in your environment, it may cause congestion and impact camera performance. Try reducing network congestion by limiting the number of devices or activities that consume significant bandwidth.
- Make sure all cameras are set to the recommended settings. Cameras running out of spec can run into various issues, including instability and extreme latency.
We hope this article was useful to you, please leave us a comment or feedback as it will help us improve our customer support center.