摄像头接入

RTSP 与 ONVIF 摄像头接入指南:从发现设备到浏览器预览

说明 RTSP、ONVIF 在摄像头接入中的分工,如何准备账号、码流、云台(PTZ)、浏览器播放、录像回放和网关部署检查项。

RTSP 和 ONVIF 不是同一类能力

RTSP 是媒体取流协议,摄像头或 NVR 通过 RTSP 输出音视频码流。ONVIF 更像设备管理协议,用于发现设备、读取 Profile、获取 RTSP 地址、识别设备信息和执行部分 PTZ 控制。很多项目说“支持 ONVIF 播放”,实际落地仍然是 ONVIF 找到设备和地址,再用 RTSP 拉流。

理解这个分工后,接入问题会清楚很多:发现不到设备,通常查网络、账号、ONVIF 服务和端口;有地址但不能播放,通常查 RTSP URL、认证、码流编码、网络和权限。

接入前需要准备的信息

信息用途
摄像头 IP、端口、账号和密码设备发现、RTSP 拉流和云台(PTZ)控制
主码流 / 子码流决定清晰度、码率和服务器压力
编码格式确认 H.264 / H.265、音频编码和浏览器播放链路
ONVIF Profile用于获取 RTSP URL 和能力信息
NVR 通道号多通道设备需要确认真实通道映射
网络位置判断是否需要端口开放、VPN、专线或 SRT 回传

浏览器为什么不能直接播放 RTSP

标准浏览器不能直接播放普通 RTSP 摄像头流。工程项目通常采用网关方案:网关在服务器侧拉取 RTSP / ONVIF 设备流,再输出 WebRTC、HLS、FLV 或播放地址给浏览器和业务系统。

这种方式的好处是浏览器端不用装插件,摄像头账号不暴露给每个用户,播放链路和权限可以集中管理,也便于统一录像、回放和日志。

用 StreamGate 做现场接入

StreamGate 适合把现场摄像头、NVR、RTSP URL 和 ONVIF 设备集中接入,再通过 Web Console 管理通道、预览画面、配置录像和查看日志。业务系统可以通过接口获取通道状态、播放地址和录像索引。

评估时建议至少准备三类设备:一台常规 IP 摄像头、一台 NVR 或多通道设备、一条已有 RTSP URL。这样可以同时验证设备发现、账号权限、通道映射和播放稳定性。

排障顺序

  1. 先用厂商工具确认摄像头本身可登录。
  2. 再确认 ONVIF 服务是否启用、账号是否有 ONVIF 权限。
  3. 用 RTSP URL 验证主码流和子码流是否可拉取。
  4. 在 StreamGate 中添加设备,查看在线状态和错误日志。
  5. 验证浏览器预览、录像任务、录像检索和回放。
  6. 正式部署前确认端口、防火墙、存储和授权通道数。

RTSP 和 ONVIF 的分工

RTSP 解决媒体流获取,ONVIF 解决设备发现、能力读取和部分控制。工程上通常先通过 ONVIF 找到设备和 Profile,再取得 RTSP 地址进行拉流。不要把 ONVIF 当成播放协议,也不要假设所有摄像头的 ONVIF 实现都完全一致。

现场排障顺序

当摄像头无法接入时,建议按网络连通、账号密码、ONVIF 发现、Profile、RTSP URL、主码流/子码流、编码格式、防火墙和时间同步逐项检查。很多问题不是网关本身失败,而是设备权限、子码流关闭或地址不可达。

网关接入的价值

网关可以把不同厂商、不同配置方式的摄像头整理成统一通道列表,再向浏览器、业务系统和录像模块输出稳定接口。这样业务系统不必直接处理每台摄像头的差异。

RTSP 与 ONVIF 的关系

RTSP 通常承载实际媒体流,ONVIF 更多用于发现设备、读取媒体配置、获取流地址、云台(PTZ)控制和设备信息。很多项目误以为“支持 ONVIF 就等于能播放”,实际落地时还要确认 ONVIF 返回的 Profile、RTSP URL、认证方式、码流编码和网络可达性。

StreamGate 适合把这些差异收敛到 Web Console 和通道管理中,减少业务系统直接适配不同摄像头的成本。StreamCore SDK 则适合客户端或服务端软件直接完成播放、采集和推流。两种方式都应先用 Demo、运行包或试用授权验证真实设备链路,再进入正式授权。