ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

把摄像头“放“上地图之前:HLS、FLV、MP4、萤石云——四种视频流格式入门

把摄像头“放“上地图之前:HLS、FLV、MP4、萤石云——四种视频流格式入门 开篇动手前先搞清你要接的是什么想在自己项目里看摄像头画面或者把监控放到地图、三维场景上通常会被四个词绕晕HLS、FLV、MP4、萤石云。它们经常被当成一回事实际根本不是一类东西——HLS 和 FLV 是直播流MP4 是文件萤石云是云平台。选错了轻则延迟高、画面卡重则接了半天根本播不出来。这篇把四种方式拆开讲透文末附一张选型对照表可以直接对号入座。一、HLSm3u8为弱网而生的直播流HLSHTTP Live Streaming由苹果提出核心思路是切分把连续的视频切成 2~6 秒的小分片通常为 .ts再用一个 m3u8 索引文件把这些分片按顺序串起来。播放器像翻书一样一段段请求、一段段播。它最值钱的地方是自适应码率同一路画面同时备好几档码率的分片网络好时播高清网络一抖动就自动切到低码率画面会糊一点但不会断流。加上 Safari 等苹果生态原生支持很长一段时间里移动端网页看直播基本绕不开它。代价是延迟偏高——切片粒度决定了端到端延迟通常在 3~10 秒量级对马上看到画面的诉求不友好。适合场景网络不稳定、需要长时间稳定观看的监控直播。二、FLV低延迟网页播放的老朋友FLV 源自 Flash 时代如今作为容器格式活跃在低延迟直播链路里常见形态是 HTTP-FLV。它不需要切片和索引服务器收到数据就推给客户端端到端延迟能做到 1~3 秒量级配合 flv.js基于浏览器 MSE 能力可以在网页里无插件播放部署简单上手快。两个坑要提前知道一是标准 FLV 没有自适应码率网络抖动时更容易卡顿、花屏弱网表现不如 HLS二是 Safari 对 MSE 的支持有限在苹果设备网页端播放 FLV 会受限一般要降级走 HLS。适合场景对实时性要求高、想马上看到画面的现场查看比如应急指挥、工地远程巡检。三、MP4录像回放与归档的通用格式MP4 是当前通用度很高的视频文件格式几乎所有播放器、剪辑软件都能打开。它不是直播流——是录下来之后存起来再看的形式天然适合历史回放、复盘分析、证据归档。一个小知识点MP4 的索引信息moov box如果在文件末尾边下载边播放会很卡。正规的流式场景会要求把 moov 挪到文件头。但对监控回放来说文件在本地这个坑基本不存在随便拖拽进度条都能播。适合场景历史录像回放、事后复盘、存档取证。四、萤石云它是平台不是格式萤石云是海康旗下的云平台常见于民用及小型商用安防。它把设备→云端→客户端整条链路打包好了摄像头接入萤石云后你在控制台拿到授权后的播放 URL通常带有效期就能免自建拉流服务直接看画面开箱即用顺带提供云存储、告警通知这类增值能力。代价是链路经过公网云端延迟一般有几秒且画面数据经过第三方平台对数据敏感度高的场景要掂量一下合规和保密要求。适合场景手头已经有萤石云或同类云平台摄像头的用户接入成本很低。五、选型对照表四个场景直接对号入座你的需求优先选一句话理由直播看现场延迟越低越好FLV1~3 秒级延迟浏览器直接播网络差但要长期稳定看直播HLS自适应码率网络抖了也不断流历史回放、复盘、归档MP4通用文件格式任何播放器都能开手里已经有萤石云设备萤石云免自建拉流授权即看既看直播又要回放HLS MP4 组合直播走 HLS回放走录像文件六、本质把现场画面变成可调用的数据视频接入的本质是把现场画面变成可调用的数据。整条链路可以简化成这样格式只是这条链路的其中一环。接进来之后还有两件事绕不开一是把视频源放到对的位置——在地图上挂接点位、绑定设备信息让这个画面属于哪个位置清晰可查二是让人随时点开就能看——统一的播放入口和切换体验而不是每次翻协议、拼地址。本文只解决格式怎么选这一环。视频源接入三维平台的具体实现细节涉及点位挂接与播放交互属于另一篇文章的话题后续再展开。工具推荐: 视频源接入三维场景可参考图新说监控接入方案可在三维底图上挂接点位并实时播放详见产品文档。
返回列表