HLS 编解码协议详解

1 概述

HTTP Live Streaming(HLS)是一个由苹果公司提出的基于 HTTP 的流媒体网络传输协议。是苹果公司 QuickTime X 和 iPhone 软件系统的一部分。它的基本原理是在服务端把文件或媒体流分成许多小块的基于 HTTP 的文件或媒体流,客户端在播放码流时,可以根据自身的带宽及性能限制,在同一视频内容的不同码率的备用源中,选择合适码率的码流进行下载播放。在传输会话开始时,客户端首先需要下载描述不同码流元数据的 M3U8 索引文件,用于寻找可用的媒体流。

与基于 UDP 的 实时传输协议(RTP)协议不同,HLS 只请求基本的 HTTP 报文,因此可以穿过任何允许 HTTP 数据通过的防火墙或代理服务器。这也便于使用传统的 HTTP 服务器作为源,并广泛使用基于 HTTP 的内容分发网络来传输媒体流。

2 HLS 协议简介

HLS 协议格式可简单归纳如下:

网络协议: HTTP

封装格式: TS

编码格式: 视频编码格式 -> H.264 音频编码格式 -> MP3、AAC、AC-3

索引文件: M3U8

需要说明的是,目前已有厂家实现了 H.265 的 HLS 编码。在封装层面,除了 MPEG-2 TS 封装外,在 WWDC2016 上,苹果宣布了HLS对分段 MP4(fMP4)文件字节寻址的支持,为 HLS 向 MPEG-DASH 的兼容提供了可能。

根据媒体流的生成及流向,HLS 的结构可划分为如下几个部分:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值