目录
一、背景
TS格式(Transport Stream)是一种用于传输和存储多媒体数据的格式,全称为MPEG2-TS。其中TS即"Transport Stream"的缩写。常用于广播,直播和流媒体传输。
二、TS流特点
所以MPEG2-TS格式的特点就是要求从视频流的任一片段开始都是可以独立解码的。TS格式是主要用于直播的码流结构,具有很好的容错能力。通常TS流的后缀是.ts、.mpg或者.mpeg,多数播放器直接支持这种格式的播放。TS流中不包含快速seek的机制,只能通过协议层实现seek。HLS协议基于TS流实现的。
三、TS流格式分析
TS文件(流)可以分为三层:TS层(Transport Stream)、PES层(Packet Elemental Stream)、ES层(Elementary Stream)。
ES层就是音视频数据,PES层是在音视频数据上加了时间戳等对数据帧的说明信息,TS层是在PES层上加入了数据流识别和传输的必要信息。TS文件(码流)由多个TS Packet组成的。
下图是TS文件(码流)的分层结构图:
3.1、TS层
TS包大小固定为188字节,TS层分为三个部分:TS Header、Adaptation Field、Payload。
TS Header固定4个字节;Adaptation Field可能存在也可能不存在,主要作用是给不足188字节的数据做填充;Payload是PES数据。