MPEG2/TS 包结构简述

时间:2021-07-08 07:55:07

TS 包由以下3部分组成:

包头: 4字节, 同步,识别,检错和加密用

自适配域:可选

包数据:最大184字节(不存在自适配域)

4字节

184字节

包头

自适配域

包数据

4字节包头结构:

1字节

1比特

1比特

1比特

13比特

2比特

2比特

4比特

同步字节

传输错误描述符

载荷起始描述符

传输优先

包识别

传输加扰控制

适配域控制

连续计数器

自适配域结构包含:

域长度:1字节

域标志:1字节, PCR标志就是其中一个重要标志

域信息: 由域长度指定

包数据的类型一般有如下几种:

PSI信息:  PAT/PMT/CAT/NIT表

视频流

音频流

字幕流

除了PSI信息,视频流、音频流和字幕流会做PES打包。

PAT表结构

完整的PAT表包含一个头结构和若干个节目结构,

最后还要加上CRC校验。

PAT表头结构(总共8字节)

1Byte

1bit

1bit

2bit

12bit

2Byte

2bit

5bit

1bit

1Byte

1Byte

表标识

段语法标识符

填0

保留

段长度含CRC

传输流标识

保留

版本号

有效标识

段号

最后段号

PAT表节目结构

2Byte

3bit

13bit

节目号

保留

节目映射表PID

PMT表结构

一个完整的PMT表包含一个表头和若干个流结构,

最后还要加上CRC校验。

PMT表流结构

1Byte

3bit

13bit

4bit

12bit

流类型

保留

基本元素PID

保留

节目元素长度

PMT头结构(总共12字节)

1Byte

1bit

1bit

2bit

12bit

2Byte

2bit

5bit

1bit

1Byte

1Byte

3bit

13bit

4bit

12bit

表标识

段语法标识符

填0

保留

段长度含CRC

节目数

保留

版本

有效标识

段号

最后段号

保留

PCR PID

保留

节目信息长度