HLS

物联网· 网络 · 通信 · 解决方案

定义

HLS(HTTP Live Streaming)是苹果公司提出的基于 HTTP 的流媒体传输协议,将音视频流切分为短时长的 TS 切片(通常 2~10 秒),通过 M3U8 索引文件描述播放列表与多码率变体,实现自适应码率(ABR)播放。HLS 基于标准 HTTP,易于穿透防火墙与 CDN 分发,广泛应用于视频监控、推流、直播、点播等场景,是物联网视频回传的常用协议之一。

技术特点与架构

HLS 技术架构包括:编码与切片——源端将音视频编码(H.264/H.265、AAC)后切分为 TS 切片;索引文件——M3U8 描述切片序列及多码率变体(Master Playlist + Variant Playlist);分发——通过 HTTP 服务器或 CDN 分发,支持缓存与边缘加速;播放——客户端按索引拉取切片,根据网络状况切换码率。HLS 延迟通常 10~30 秒,适合对实时性要求不极致的场景。与RTMP、视频推流结合,可实现推流端 RTMP ingest、服务端转 HLS 输出的架构。

跨境场景下,HLS 依托 CDN 与 HTTP 可轻松实现全球分发,物联网设备通过一卡多国连接上传至就近节点。

在物联网与跨境场景中的应用

HLS 广泛应用于:视频监控——视频监控摄像头、车载 DVR 将视频转 HLS 供远程查看;无人机图传——机载相机图传经地面站或蜂窝网络上传,转 HLS 供指挥中心观看;充电桩监控——充电站现场监控视频 HLS 回传;跨境直播——活动、展会直播经 CDN 全球分发。跨境视频监控、全球直播等场景均依赖 HLS 实现低延迟、高兼容的流媒体传输。

达希物联为 HLS 推流设备提供覆盖 200+ 国家的连接,助力跨境视频监控与直播场景落地。

切片索引在跨境回传里表示什么

HLS 的技术含义是“用 HTTP 拉取一串已经切好的媒体文件”,不是把摄像机的原始码流端到端推到播放器。主播放列表列出若干变体,每个变体再指向自己的媒体播放列表;播放器按当前带宽选择变体,再按序号或日期范围取切片。切片时长、关键帧间隔和播放器缓冲三者共同决定起播时延。物联网回传若先把摄像机送到边缘转码器,再由转码器发布 M3U8,则摄像机侧的蜂窝质量只影响切片是否按时生成,不直接决定观看端的缓冲长度。

适合用 HLS 的条件是观看端可以接受数秒到数十秒的时延,并且沿途 HTTP 缓存不会把直播列表冻住。跨境分发时,切片应落在观看者附近的缓存节点,摄像机则就近上传到转码点。上传链路抖动时,应先降码率或丢弃非关键帧,而不是让播放列表出现大段空洞。若目标国对媒体文件的跨境传递有本地化要求,播放列表里的切片地址必须指向允许落地的节点,不能只把索引文件留在国内、把切片留在境外。

播放列表被缓存后造成的错觉

直播 M3U8 若被中间缓存按静态文件保存,播放器会反复拿到过期序号,画面停在旧切片,运维却以为摄像机离线。相反,摄像机已经断流,播放器仍在消耗缓冲区,监控墙上会继续显示“在线”。这两种现象都不是编码参数本身的故障。排查时要看播放列表的缓存头、切片序号是否前进,以及转码器收到的上一帧时间,而不是只看播放器的缓冲图标。

另一类错误是把 HLS 的自适应码率当成蜂窝侧的拥塞控制。播放器降档只减少观看端流量,摄像机若仍按最高码率上传,弱网跨境链路上的队列会继续堆积。低时延操控、云台跟踪不适合只靠 HLS;需要秒级反馈时应另走控制信令,媒体仍可按 HLS 归档。跨境观看还应核对切片时间戳与平台时区,避免把正常的跨境数据回传延迟记成摄像机时钟故障。

发布直播列表时,缓存时间应短于一个切片时长,否则跨境节点会把旧序号继续交给播放器。转码器若长时间不前进序号,应告警切片停滞,而不是等待播放器自己超时后才发现摄像机早已断流。


相关术语

返回国际物联网卡专业术语