TS码流格式分析

本文详细解析了MPEG2-TS传输流的结构,包括TS包包头、节目专用信息PSI(如PAT表和PMT表)及其组成部分。TS包头中的关键字段如同步字节、错误指示、PID和连续性计数器等,以及PSI中的表、节和描述符,是理解TS码流的关键。此外,还介绍了PAT和PMT表在TS流中的作用和格式。
摘要由CSDN通过智能技术生成

目录

背景

1、TS包包头 

2、节目专用信息PSI

 2.1 表Table

2.2 节Section

2.3 描述符Descriptor

3、常用的表格式

3.1 PAT表 

3.2 PMT表


背景

TS是Transport Stream 的缩写,全称则是MPEG2-TS。MPEG2-TS主要应用于实时传送的节目,比如实时广播的电视节目。

MPEG-2中规定TS传输包的长度为188 字节,包头为4个字节,负载为184个字节。但通信媒介会为包添加错误校验字节,从而有了不同于188字节的包长。例如: 

DVB 规定中,使用204字节作为包长:

1、通过调制器时,在每个传输包后增加了16 字节的里德所罗门前向纠错码,因而形成了204字节的数据包。调制后总存在204 字节的数据包。2、调制之前存复用器插入RS码或虚构的RS码。

ATSC规定中,使用208字节作为包长:添加20 字节的 RS(Reed-Solomon)前向纠错码。与DVB不同,ATSC规定RS码只能出现在调制的TS流中。

所有的TS包都分为包头和净荷部分。TS包中可以填入很多东西(填入的东西都是填入到净荷部分),有:视频、音频、数据(包括PSI、SI以及其它任何形式的数据)。

 

1、TS包包头 

TS包的包头提供关于传输方面的信息:同步、有无差错、有无加扰、PCR(节目参考时钟)等标志。TS包的包头长度不固定,前32比特(4个字节)固定,后面可能跟有自适应字段(适配域)。32个比特(4个字节)是最小包头。 
sync_byte (同步字节):固定为0100 0111 (0x47);该字节由解码器识别,使包头和有效负载可相互分离。 
transport_error_indicator(传输错误指示):‘1’表示在相关的传输包中至少有一个不可纠正的错误位。当被置1后,在错误被纠正之前不能重置为0。
payload_unit_start_indicator(开始指示):为1时,在前4个字节之后会有一个调整字节,其的数值为后面调整字段的长度length。因此有效载荷开始的位置应再偏移1+[length]个字节。

transport_priority(传输优先级):‘1’表明优先级比其他具有相同PID 但此位没有被置‘1’的分组高。 
PID:指示存储与分组有效负载中数据的类型。PID 值 0x0000—0x000F 保留。其中0x0000为PAT保留;0x0001为

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值