返回测试器
RTSP

RTSP 浏览器播放边界与转换方案

解释为什么浏览器不能直连 RTSP,以及 RTSP 转 WebRTC、HLS、HTTP-FLV 的实际测试路径。

网页能否直连
需转换
链路位置
摄像头源站协议
浏览器结论
不能浏览器直连

一句话结论

RTSP 是摄像头和 NVR 很常见的源地址,但不是网页播放地址。开发网页播放器时,RTSP 通常放在服务端接入层,不能直接交给浏览器播放。

它在视频链路里的位置

RTSP 负责控制摄像头媒体会话,真实音视频通常走 RTP。浏览器没有内置 RTSP/RTP 播放入口。

项目里常见结构是:摄像头 RTSP -> 媒体服务器 -> HLS/WebRTC/HTTP-FLV -> 浏览器。

在浏览器项目里怎么用

前端可以识别 rtsp:// 并提示用户需要转换,但不能用 video、hls.js 或 mpegts.js 直接播放 rtsp://。

如果 RTSP 地址是 192.168.x.x、10.x.x.x 或 172.16-31.x.x,云端网页通常也访问不到。转换服务必须部署在能访问摄像头的网络里。

服务端需要做什么

服务端要先验证 RTSP 账号、密码、端口、通道路径和 TCP/UDP 模式,再把流转成网页能用的输出。

低延迟选 WebRTC,兼容播放选 HLS,内网工程预览可选 HTTP-FLV 或 WS-FLV。

常见开发场景

  • IP 摄像头预览、NVR 通道接入、园区监控、设备安装调试。
  • 适合后端可控制网络环境、能部署媒体服务的项目。

排查顺序

  • 先在媒体服务器所在机器用 VLC 或 ffprobe 测 RTSP 是否能打开,不要先怀疑浏览器。
  • 再查认证、通道路径、TCP/UDP、摄像头并发连接数、内网访问和防火墙。

推荐转换路径

  • 实时预览:RTSP -> WebRTC/WHEP。
  • 公开分发:RTSP -> HLS/m3u8。
  • 内网低延迟:RTSP -> HTTP-FLV 或 WS-FLV。

最小可用实现

  • 前端:输入 rtsp:// 后显示“需要服务端转换”,并允许用户填转换后的 HLS/WebRTC/FLV 地址播放。
  • 后端:用媒体服务器接入 RTSP,暴露一个网页播放 URL,并返回可读的错误原因。

开发者判断标准

RTSP 不能只按名字判断是否可播,要看它在链路中承担的是源站输入、网页播放输出、低延迟会话,还是网络辅助能力。当前浏览器结论:不能浏览器直连。落地前需要确认真实源站、是否需要服务端转换、CORS/HTTPS 策略、编码支持和延迟目标。

相关协议