预备知识1:PSI/SI关键字
PRE-LEARNING1
关键字 | 解释 | 翻译 | 备注 |
PSI | Program Specific Information | 节目引导信息 | 对单一码流的描述 |
SI | Service Information | 业务信息 | 对系统中所有码流的描述,包含了PSI(PSI+9张表) |
TS包 | Transport Packet | 传输包 | 数字视音频、图文数据打包成TS包 |
TS | Transport Stream | 传输流 (常称为TS流) | 一个频道(多个节目及业务)的TS包复用后称TS流 |
PAT | Program Association Table | 节目关联表 | 将节目号码和节目映射表PID相关联,获取数据的开始 |
PMT | Program Map Table | 节目映射表 | 指定一个或多个节目的PID |
CAT | Conditional Access Table | 条件接收表 | 将一个或多个专用EMM流分别与唯一的PID相关联 |
NIT | Network Information Table | 网络信息表 | 描述整个网络,如多少TS流、频点和调制方式等信息 |
SDT | Service Description Table | 业务描述表 | 包含业务数据(如业务名称、起始时间、持续时间等) |
BAT | Bouquet Association Table | 业务群关联表 | 给出业务群的名称及其业务列表等信息 |
EIT | Event Information Table | 事件信息表 | 包含事件或节目相关数据,是生成EPG的主要表 |
RST | Running Status Table | 运行状态表 | 给出事件的状态(运行/非运行) |
TDT | Time&Date Table | 时间和日期表 | 给出当前事件和日期相关信息,更新频繁 |
TOT | Time Offset Table | 时间偏移表 | 给出了当前时间日期与本地时间偏移的信息 |
ST | Stuffing Table | 填充表 | 用于使现有的段无效,如在一个传输系统的边界 |
SIT | Select Information Table | 选择信息表 | 仅用于码流片段中,如记录的一段码流,包含描述该码流片段业务信息段的地方 |
DIT | Disconnect Information Table | 间断信息表 | 仅用于码流片段,如记录的一段码流中,它将插入到码流片段业务信息间断的地方 |
HINT:上表中,绿色底纹的为PSI信息,蓝色底纹的为SI信息。但是,虽然NIT是PSI信息,但NIT标准是由SI规定的。
预备知识2:常识
PRE-LEARNING2
- 生成EPG的数据来源于DVB码流中的业务信息(SI)和节目引导信息(PSI)
- 视频、音频、图片、文字等处理后成为数据,以MPEG-2标准打包成为固定长度(188字节)的传送包,并将这些包复用形成传输流(TS流)
- 通常,一个频道对应一个TS流,一个频道的TS流由多个节目及业务组成
预备知识3:ES、PES、PS和TS
PRE-LEARNING3
ES流(ElementaryStream):基本码流,不分段的音频、视频或其他信息的连续码流。
PES流:把基本流ES分割成段,并加上相应头文件打包成形的打包基本码流。
PS流(ProgramStream):节目流,将具有共同时间基准的一个或多个PES组合(复合)而成的单一数据流(用于播放或编辑系统,如m2p)。
TS流(TransportStream):传输流,将具有共同时间基准或独立时间基准的一个或多个PES组合(复合)而成的单一数据流(用于数据传输)。
不论是视频、音频、文字、图片还是业务信息(包括PSI/SI)都将被划分为最基本的ES,并将它们通过PES的形式组装起来,经过复用形成TS流
对TS流的解析:首先获取到TS流中的包Packet,根据其PID过滤出需要的包,根据其section的结构还原成section,再由上层协议来处理。
预备知识4:业务与事件
PRE-LEARNING4
关于业务(Service)与事件(Event)。
这里将会大量出现这两个词。那么什么是“业务”,什么是“事件”呢?一般来说,接下来所说的“业务”就是指“频道”,“事件”就是“节目”。这里需要明确“节目”的概念,举个例子:CCTV1是一个频道,也就是我们所说的“业务(Service)”;《新闻联播》是一个节目,也就是我们所说的“事件”。分清楚了这两个概念,我们才能区分下面的很多SI信息。