网络流媒体协议——HLS协议

HTTP 实时流媒体(HTTP Live Streaming,HLS)协议是苹果公司提出的主要用于直播的流媒体协议。一个完整的基于HLS协议的流媒体直播系统由四部分组成,即音视频采集器、媒体服务器、媒体分发器和播放客户端。

媒体服务器

媒体服务器的核心任务是对数据采集端生成的音视频流数据进行编码、切分和整理,生成适合在HTTP网络中进行流式分发和传输的格式。媒体服务器的结构主要由媒体编码器媒体流切分器文件分割器三部分组成。

媒体编码器

主要作用是编码音频数据和视频数据,生成指定格式的音视频流。

在收到采集端获得的数据后须进行压缩编码,将视频图像编码为 H.264H.265 等格式的视频流,将音频数据编码为 HE-AACAC-3 等格式的音频流。编码完成的视频流和音频流可以被进一步封装为 MPEG-2 TSMPEG-2 传输流)格式进行输出。

媒体流切分器

媒体编码器输出的 MPEG-2 TS 格式的数据,媒体流切分器会将其切分为指定时长的多个 MPEG-2 TS 文件分片(简称 TS 文件分片),每个 TS 文件分片都可以作为一个独立的文件进行播放,而且按顺序衔接即可无缝还原为分割前的大文件。

媒体流切分器的另一项重要工作是生成并维护TS文件分片的索引文件。该索引文件以 .m3u8 为扩展名,是 HLS 协议的标志性特征之一。在 .m3u8 索引文件中包含了对每个 TS 文件分片的引用,在一个新的 TS 文件分片生成后,.m3u8 索引文件中的内容将同步更新。

文件分割器

文件分割器的作用是将一个已有的音视频文件按照 HLS 协议进行分割并封装为 TS 文件分片,然后进行传输。其角色类似于媒体编码器和媒体流切分器的组合,实现从输入文件进行转码、转封装,并进行文件切分的功能。

媒体分发器

连接和内容传输使用 HTTP,所以 HLS 媒体分发器仅需使用通用的 Web 服务器即可分发媒体内容,几乎不存在任何障碍。对服务器也只需配置与HLS对应的 MIME Type

相关推荐
REDcker6 天前
WebCodecs VideoDecoder 的 hardwareAcceleration 使用
前端·音视频·实时音视频·直播·webcodecs·videodecoder
gihigo19986 天前
基于TCP协议实现视频采集与通信
网络协议·tcp/ip·音视频
山河君6 天前
四麦克风声源定位实战:基于 GCC-PHAT + 最小二乘法实现 DOA
算法·音视频·语音识别·信号处理·最小二乘法·tdoa
音视频牛哥6 天前
Android平台RTMP/RTSP超低延迟直播播放器开发详解——基于SmartMediaKit深度实践
android·人工智能·计算机视觉·音视频·rtmp播放器·安卓rtmp播放器·rtmp直播播放器
qq_416276426 天前
通用音频表征的对比学习
学习·音视频
美狐美颜sdk6 天前
Android全局美颜sdk实现方案详解
人工智能·音视频·美颜sdk·视频美颜sdk·美狐美颜sdk
EasyDSS6 天前
私有化部署EasyDSS视频点播能力:全链路视频技术赋能,打造企业级视听新体验
音视频·hls·m3u8·点播技术·智能转码
qq_416276426 天前
DeLoRes——一种通用的音频表征学习新方法(DeLoRes(基于 Barlow Twins 的冗余最小化方法)
学习·音视频
Q_4582838686 天前
从定位到视频:808 + 1078 在各行业的落地实践
音视频
山顶望月川6 天前
实测MiniMax-Hailuo-02:当“开工大吉“变成“无字天书“,国产AI视频模型的能与之不能
人工智能·音视频