直接回答
设置延迟目标,测量每个阶段,并删除可避免的队列,同时为真实网络保留足够的抖动保护。 在指责 WebRTC 之前,从相机 GOP 和编码器缓冲开始。
为什么会发生这种情况
低延迟协议无法消除由摄像机编码器、转码器或过大的播放器缓冲区已经创建的延迟。 每个队列还可以用弹性来换取速度。
浏览器通常需要一个网关将摄像头输入转换为网络原生传输路径。
受控测试
使用可见时间源或同步时间戳方法来比较正常和受损网络条件下的捕获和显示。
一次更改一个变量。 记录相机型号、固件、终端、账号; 然后将网络可达性、协议响应、媒体传输和解码作为单独的层进行测试。
使用专用的仅供查看的帐户和值得信赖的本地诊断工具。 在共享输出之前编辑凭证、私人地址和识别数据。
诊断顺序
| 查看 | 行动 | 进展的证据 |
|---|---|---|
| 相机 | 测量编码器和关键帧行为。 | 源延迟是已知的。 |
| 网关 | 确定解码、转码和排队时间。 | 转嫁成本和转换成本是分开的。 |
| 网络 | 测量目标路径上的 RTT、损耗和抖动。 | 抖动缓冲区的大小是根据证据确定的。 |
| 浏览器 | 测量渲染延迟和丢失后的恢复。 | 体验达到了既定目标。 |
保留证据
发布延迟预算表,而不是单个最佳情况数字。 包括设备、编解码器、网络状况和测量方法。
边界和安全说明
将每个缓冲区减少到零可能会导致冻结和伪影; 目标是具有可接受弹性的有限延迟。
对于远程查看,请使用托管 VPN,而不是将 RTSP 或摄像机管理端口直接暴露到公共互联网。
SmartRTSP
SmartRTSP 是一款以相机为中心的 RTSP 和 ONVIF 查看器,适用于 Apple 设备、Windows 和 Android。 适合直接观看、发现和多机位检查; 当需要连续记录、证据导出或集中企业控制时,保留专用的 NVR 或 VMS。
常见问题
WebRTC 是否保证亚秒级延迟?
不会。相机编码器、网关和网络可能会在浏览器接收媒体之前消耗预算。
我应该先调整什么?
在减少浏览器抖动缓冲区之前测量相机 GOP 和网关队列。
直通可以减少延迟吗?
是的,当浏览器支持源编解码器和打包时,因为可以避免转码。
主要参考文献
相关 SmartRTSP 指南
打开相关指南将端到端延迟分解为摄像机编码、摄取、网关、网络、抖动和浏览器解码,而不是盲目地调整一个缓冲区。