PSI/SI解析(各种id说明)

简介: 一、SI信息的构成1、信息构成SI信息内容是按照network(网络)→transport strem(传输流)→service(业务)→event(事件)的分层顺序描述,如图1所示。

一、SI信息的构成

1、信息构成

SI信息内容是按照network(网络)→transport strem(传输流)→service(业务)→event(事件)的分层顺序描述,如图1所示。

SI数据信息是按照一定的数据结构进行存储的,这样一来才能达到方便、快捷地进行数据检索和提取。SI数据主要有:网络信息、传输流信息、业务信息、业务的事件信息等,并且大量的信息都是通过描述符来传输的,所以可用树状链表来存储数据,构成从网络、传输流、业务、事件的树状结构。机顶盒接收端的解析主要负责这些SI数据的重建。

[转载]PSI/SI解析(各种id说明)


在数字电视系统中,为了能有效地从众多的数据包中组织起SI信息,而使用了很多的标识。有Network_id(网络标识)、 Original_network_id(原始网络标识)、Transport_stream_id(传输流标识)、Service id(业务标识)、eventid_id(事件标识)、Bouquet_id(业务群组标识)。这些标识是作为信息查找定位用的,例如:要在一个TS里找出一个业务信息,就要知道这个业务信息在那个网络里、在哪个TS里和这个业务信息在这个流里的标识,这样一来,通过层层过滤,就能精确地定位描述这个业务信息的位置,并把它们找出来进行数据组织。图1就非常清楚地表明了这种查找思路。

 

一个网络信息由network_id来定位。

 

一个TS由network_id、Original_network_id、Transport_stream_id来定位,标明这个流在那个网络播发,它原属那个网络,并给它加上标识。

 

一个业务由network_id、Original_network_id、Transport_stream_id、service_id来定位,标明这个业务在那个网络播发,它原属那个网络和那个流,并给它加上标识。这体现在SDT表中。

 

一个事件由network_id、Original_network_id、Transport_stream_id、service_id、event_id来定位,标明这个事件在那个网络播发,它原属那个网络和那个流及那个业务,并给它加上标识。这体现在EIT表中。

 

据此,根据各个SI表的功能,各表的ID结构如下:

NIT:network_id、Original_network_id、Transport_stream_id 、service_id。

SDT:Original_network_id、Transport_stream_id 、service_id。

EIT:Original_network_id、Transport_stream_id 、service_id、event_id。

BAT:bouquet_id 、Original_network_id 、Transport_stream_id 、service_id。

 

另外,还有一个PID(包标识),它的作用是给每一个数据包打上一个标记,TS承载有视频数据、音频数据、PSI和SI信息数据、图文电视数据、字幕数据、数据广播数据、交互业务数据、CA系统的控制信息数据等等,除了PSI和SI信息数据和CA系统的控制信息数据外,其他的数据的PID都是通过 PMT表给出的,CA系统的控制信息数据的PID是由CAT表给出的,而承载了PSI和SI信息的各种表的PID值是固定分配的。

如下表

表                                   PID值

PAT                     |            0X0000
CAT                      |            0X0001
TSDT                    |             0X0002
NIT、ST                 |           0X0010
SDT、BAT、ST           |          0X0011
EIT、ST               |        0X0012
RST、ST               |          0X0013
TDT、TOT、ST           |          0X0014
DIT                        |          0X001E
SIT                        |     

目录
相关文章
|
11月前
|
缓存 NoSQL Java
千万级电商线上无阻塞双buffer缓冲优化ID生成机制深度解析
【11月更文挑战第30天】在千万级电商系统中,ID生成机制是核心基础设施之一。一个高效、可靠的ID生成系统对于保障系统的稳定性和性能至关重要。本文将深入探讨一种在千万级电商线上广泛应用的ID生成机制——无阻塞双buffer缓冲优化方案。本文从概述、功能点、背景、业务点、底层原理等多个维度进行解析,并通过Java语言实现多个示例,指出各自实践的优缺点。希望给需要的同学提供一些参考。
190 8
|
11月前
|
监控 关系型数据库 MySQL
MySQL自增ID耗尽应对策略:技术解决方案全解析
在数据库管理中,MySQL的自增ID(AUTO_INCREMENT)属性为表中的每一行提供了一个唯一的标识符。然而,当自增ID达到其最大值时,如何处理这一情况成为了数据库管理员和开发者必须面对的问题。本文将探讨MySQL自增ID耗尽的原因、影响以及有效的应对策略。
520 3
|
Linux 数据处理 数据库
深入解析Linux命令id:理解用户身份与权限
`id`命令在Linux中用于显示用户身份(UID, GID和附加组)。它查看系统用户数据库获取信息。参数如`-u`显示UID,`-g`显示GID,`-G`显示附加组,结合`-n`显示名称而非ID。用于确认命令执行者身份,确保权限正确。在脚本中使用时注意权限管理,遵循最小权限原则。
|
存储 算法 NoSQL
全网最全的分布式ID生成方案解析
全网最全的分布式ID生成方案解析
818 0
|
算法 安全 API
虾皮shopee根据ID取商品详情详细解析
虾皮shopee根据ID取商品详情详细解析
虾皮shopee根据ID取商品详情详细解析
|
SQL JSON 算法
【微服务38】分布式事务Seata源码解析六:全局/分支事务分布式ID如何生成?序列号超了怎么办?时钟回拨问题如何处理?
【微服务38】分布式事务Seata源码解析六:全局/分支事务分布式ID如何生成?序列号超了怎么办?时钟回拨问题如何处理?
1044 1
【微服务38】分布式事务Seata源码解析六:全局/分支事务分布式ID如何生成?序列号超了怎么办?时钟回拨问题如何处理?
|
消息中间件 存储 算法
分布式ID生成方案选型!详细解析雪花算法Snowflake
本篇文章中和大家分享了分布式项目中的全局唯一ID生成算法的雪花算法。首先从分布式项目中的ID需要满足的条件引入问题,然后详细解析了雪花算法Snowflake生成唯一ID的具体方式,最后通过一个具体实例SnowflakeIdWorker介绍了雪花算法的具体使用。
1393 0
分布式ID生成方案选型!详细解析雪花算法Snowflake
|
数据库
关于一道数据库例题的解析。为什么σ age>22 (πS_ID,SCORE (SC) ) 选项是错的?
本人大二学子。近段时间在做数据库复习题的时候遇到一道题,如下。 有关系SC(S_ID,C_ID,AGE,SCORE),查找年龄大于22岁的学生的学号和分数,正确的关系代数表达式是( ) 。 ⅰ. πS_ID,SCORE (σ age>22 (SC) ) ⅱ. σ age>22 (πS_ID,SCORE (SC) ) ⅲ. πS_ID,SCORE (σage>22 (πS_ID,SCORE,AGE (SC) ) )   答案是 i和iii,当时我自己做的结果是三个都正确。
1604 0
|
7月前
|
算法 测试技术 C语言
深入理解HTTP/2:nghttp2库源码解析及客户端实现示例
通过解析nghttp2库的源码和实现一个简单的HTTP/2客户端示例,本文详细介绍了HTTP/2的关键特性和nghttp2的核心实现。了解这些内容可以帮助开发者更好地理解HTTP/2协议,提高Web应用的性能和用户体验。对于实际开发中的应用,可以根据需要进一步优化和扩展代码,以满足具体需求。
707 29

推荐镜像

更多
  • DNS