HTTP-FLV
HTTP-FLV 播放器与 MSE 诊断
解释 HTTP-FLV 如何通过 mpegts.js、flv.js 或 Jessibuca 接入浏览器 MSE 播放。
网页能否直连
可播放
链路位置
低延迟 HTTP 流
浏览器结论
依赖 MSE 播放器
一句话结论
HTTP-FLV 常用于低延迟直播预览。它不是浏览器原生 video 格式,但可以用 mpegts.js、flv.js 或 Jessibuca 这类播放器接入。
它在视频链路里的位置
HTTP-FLV 是服务端通过一个 HTTP 连接持续输出 FLV 数据,前端播放器边收边解。
它常作为 RTSP/RTMP 转网页预览的输出格式。
在浏览器项目里怎么用
不能直接 `<video src="live.flv">` 期待所有浏览器播放。前端需要播放器把 FLV 里的音视频取出来,再交给浏览器播放能力。
最常见可播放组合是 H.264 视频 + AAC 音频。
服务端需要做什么
服务端要保证 FLV 数据连续、响应不要被代理缓冲、CORS 正确,并处理断线重连。
常见开发场景
- 内网监控预览、工程调试、直播控制台、延迟比 HLS 更敏感但不想上 WebRTC 的场景。
排查顺序
- 先确认响应内容真的是 FLV,不是 HTML 错误页或 JSON 鉴权错误。
- 再查 MSE 是否可用、编码是否 H.264/AAC、CORS 是否允许播放器读取。
推荐转换路径
- RTSP/RTMP -> HTTP-FLV 用于低延迟工程预览。
- 公开大规模分发建议同时提供 HLS。
最小可用实现
- 前端:用 mpegts.js 或同类播放器加载 FLV URL。
- 后端:输出标准 FLV tag,关闭不必要的代理缓冲,提供跨域响应头。
开发者判断标准
HTTP-FLV 不能只按名字判断是否可播,要看它在链路中承担的是源站输入、网页播放输出、低延迟会话,还是网络辅助能力。当前浏览器结论:依赖 MSE 播放器。落地前需要确认真实源站、是否需要服务端转换、CORS/HTTPS 策略、编码支持和延迟目标。