epg私有描述符定义

更新时间:2023-07-19 08:29:01 阅读量: 实用文档 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

epg私有描述符定义

EPG私有描述符定义

1

说明

本文归纳总结了数字电视行业中前端EPG系统、终端机顶盒和CA厂商定义的各种私有描述符,用于机顶盒在线升级、频道排序、频道音量调节、频道分类、节目分类等。

2 私有描述符TAG值分配

Table 1–私有描述符TAG值分配表

编号

名称 TAG值

意义

1 Channel_Order_Descriptor

2 Channel_Volume_Compensating_Descriptor 3 Channel_Volume_Compensating_Descriptor

0x82 永新同方频道排序描述符 0x83 永新同方频道音量调节描述符 0x83 永新同方多声道频道音量调节

描述符

4 User_Content_Name_Descriptor 0x8F 永新同方用户自定义节目分类

描述符

5 TFCAS_CodeDownload_Descriptor 6 Channel_Volume_Descriptor 7 Channel_Order_Descriptor 8 Channel_Level_Descriptor 9 Channel_Level_Name_Descriptor 10 Bouquet_List_Descriptor 11 Linkage_Descriptor 12 Linkage_Descriptor 13 OTA_Descriptor

0xA1 永新同方CA代码下载描述符 0x90 创维频道音量调节描述符 0x91 创维频道排序描述符 0x92 创维频道分类描述符 0x93 创维频道分类名称描述符 0x96 业务群列表描述符 0x4A 熊猫Loader更新描述符 0x4A 同洲机顶盒升级描述符 0xA1 机顶盒升级描述符

3

3.1

私有描述符定义

永新同方频道排序描述符

用于采用永新同方机顶盒方案的机顶盒的频道排序,描述符在BAT表第二层中插入,用于频道排序的BAT表的BouquetID规定为24577,该BAT中必须包含系统中的

epg私有描述符定义

所有业务。频道排序私有描述符格式如下:

Table 2–Channel_Order_Descriptor

Syntax

Channel_Order_Descriptor (){

descriptor_tag descriptor_length for(i=0;i<N;i++){

service_id channel_index_no } }

descriptor_tag: This 8-bit field shall have the value 0x82.

service_id: This 16-bit field identifies the service to which an ordinal order is being assigned.

channel_index_no:This 16-bit field assigns an ordinal number to the service being identified by service_id. There must be no gaps in the ordinal sequence. 在终端产品(如机顶盒)上,搜索频道时:

1) 解析BAT表,根据transport_stream_id、original_network_id及service_id记录要显示的

所有频道的标识。

2) 解析channel_order_descriptor(),记录每个频道的显示索引。

3) 根据频道标识在SDT(Actual/Other)中查找频道名称、多语种频道名称。 4) 按频道的显示索引显示频道名称。

161688

No. of bits

identifier

uimsbf uimsbf uimsbf uimsbf

3.2 永新同方频道音量调节描述符

用于采用永新同方机顶盒方案的机顶盒的音量调节,该描述符在BAT表第二层中插入,用于音量调节的BAT表的BouquetID规定为24577,该BAT中必须包含系统中的所有业务。频道音量调节私有描述符格式如下:

Table 3–Channel_Volume_Compensating_Descriptor

epg私有描述符定义

Syntax

Channel_Volume_Compensating_Descriptor (){

descriptor_tag descriptor_length for(i=0;i<N;i++){

service_id

channel_volume_compensate } }

service_id: 业务ID

No. of bits identifier

88

uimsbfuimsbf

168

uimsbfuimsbf

channel_volume_compensate:音量调节值范围为 [-5,+5],负数表示原始音量很高,需降低;正数表示原始音量过低,须调高(绝对值越大表示调节得越多);0表示无需修改。

3.3 永新同方频道多声道音量调节描述符

用于采用永新同方机顶盒方案的机顶盒的多声道音量调节,该描述符在BAT表第二层中插入,用于音量调节的BAT表的BouquetID规定为24577,该BAT中必须包含系统中的所有业务。频道音量调节私有描述符格式如下:

Table 4–Channel_Volume_Compensating_Descriptor Syntax

No. of bits

identifier

88

uimsbfuimsbf

1688

uimsbfuimsbfuimsbf

Channel_Volume_Compensating_Descriptor (){

descriptor_tag descriptor_length for(i=0;i<N;i++){

service_id

channel_volume_compensate channel_volume_track } }

epg私有描述符定义

service_id: 业务ID

channel_volume_compensate:音量调节值范围为 [-5,+5],负数表示原始音量很高,需降低;正数表示原始音量过低,须调高(绝对值越大表示调节得越多);0表示无需修改。

channel_volume_track:声道标识0表示不做声道选择;1表示左声道;2表示右声道;3表示立体声。。

3.4 永新同方用户自定义节目分类名称描述符

发送描述“自定义分类信息”的私有数据,作为机顶盒解析时作为节目分类的依据,并

依此按类显示不同的节目,便于用户浏览;同时,当运营商更改“自定义分类信息”时,机顶盒不用升级,自动根据新的分类方式进行处理。该描述符在NIT第一层插入,具体格式如下:

Table 5–User_Content_Name_Descriptor

Syntax

No. of bits

User_Content_Name_Descriptor (){

descriptor_tag descriptor_length for(i=0;i<N;i++){

user_nibble_1 reserved_future_use user_nibble_1_name_length

for(j=0;j< ser_nibble_1_name_length;j++){

user_nibble_1_name_char }

user_nibble2_length for(j=0;j<N;j++){

user_nibble_2

8 8 4 4 8 8 8 4

uimsbf uimsbf uimsbf uimsbf uimsbf uimsbf uimsbf uimsbf identifier

epg私有描述符定义

reserved_future_use user_nibble_2_name_length

for(k=0;k<user_nibble_2_name_length;k++){

user_nibble_2_name_char } } }

}

4 8 8

uimsbf uimsbf uimsbf

该描述符与EIT表中的Content_Descriptor配合使用,指示节目的自定义分类。 使用示例: 1) 分类名称如下:

新片秀场 友通院线1 科幻世界 友通院线2 爱情吧

2) 私有描述符数据是:

8F350000320008DOC2C6ACDOE3B3A11009D3D1CDA8D4BACFDF312008BFC6BBC3CAC0BDE73009D3D1CDA8D4BACFDF324006B0AEC7E9B0C9

3) 私有描述符数据字段意义

8F________________________________________descriptor_tag 35________________________________________descriptor_length

00________________________________________user_nibble_1/reserved_future_use 00________________________________________user_nibble_1_length 32________________________________________user_nibble2_length

00________________________________________user_nibble_2/reserved_future_use 08_____________________________________user_nibble_2_name_length DOC2C6ACDOE3B3A1_________________user_nibble_2_name_char,“新片秀场” 10 09 D3D1CDA8D4BACFDF31 20 08 BFC6BBC3CAC0BDE7 30 09 D3D1CDA8D4BACFDF32 40 06 B0AEC7E9B0C9

3.5 永新同方CA代码下载描述符

用于对集成永新同方CA的机顶盒软件进行在线升级,该描述符在NIT表的第一层插

epg私有描述符定义

入,具体格式如下:

Table 6–TFCAS_CodeDownload_Descriptor

Syntax

TFCAS_CodeDownload_Descriptor (){

descriptor_tag descriptor_length STB_Manufacturer_ID for(i=0;i<N;i++){

Delivery_system_descriptor Download_PID Download_Type Private_Data_Len for(i=0;i<N;i++){ Private_data_byte } }

}

descriptor_tag:0xA1;

descriptor_length:本字段之后的字节数;

STB_Manufacturer_ID:机顶盒厂商标识,由永新同方同一分配; Delivery_system_descriptor:详见DVB SI标准;

Download_PID:下载的高清机顶盒软件所在的流的PID,根据现场情况分配; Download_Type:代码下载类型,根据运营商或高清机顶盒厂商的要求具体分配;

“1”表示手动下载,用户可以选择是否更新高清机顶盒代码; “2”表示强制下载,高清机顶盒自动下载并升级高清机顶盒软件;

Private_data_byte:高清机顶盒下载的控制数据;可以包括高清机顶盒型号、版本信息等,该信息有高清机顶盒厂商提供;

813388816

No. of bits

identifier

uimsbf uimsbf uimsbf uimsbf uimsbf uimsbf uimsbf

3.6 创维频道音量调节描述符

在SDT表的循环中使用私有描述符channel_volume_descriptor (),建议tag = 0x90。

epg私有描述符定义

Table 7–Channel_Volume_Descriptor

Syntax

Channel_Volume_Descriptor (){

descriptor_tag descriptor_length

channel_volume_compensate }

channel_volume_compensate表示音量调节值,音量调节值范围为[0,10],值越低表示原始音量很高,需降低;值越高表示原始音量过低,须调高。

888

No. of bits

identifier

uimsbf uimsbf uimsbf

3.7 创维频道排序描述符

在SDT表的循环中使用私有描述符channel_order_descriptor(),建议tag = 0x91。每一个描述符描述一个传输流中一个频道的显示索引。描述符格式如下:

Table 8–Channel_Order_Descriptor

Syntax

Channel_Order_Descriptor (){

descriptor_tag descriptor_length channel_index_no }

在终端产品(如机顶盒)上,搜索频道时:

5) 解析SDT表,根据transport_stream_id、original_network_id及service_id解析

channel_order_descriptor(),记录每个频道的显示索引。 6) 根据频道标识在SDT(Actual/Other)中查找频道名称。 7) 按频道的显示索引显示频道名称。

8816

No. of bits

identifier

uimsbf uimsbf uimsbf

3.8 创维频道分类描述符

在SDT表的循环中使用私有描述符channel_level_descriptor(),建议tag = 0x92。

epg私有描述符定义

Table 9–Channel_Level_Descriptor

Syntax

Channel_Level_Descriptor (){

descriptor_tag descriptor_length channel_Level }

在终端产品(如机顶盒)上,搜索频道时:

1) 解析SDT表,根据transport_stream_id、original_network_id及service_id解析

channel_level_descriptor(),记录每个频道的分类级别值。 2) 根据频道标识在SDT(Actual/Other)中查找频道名称。

8816

No. of bits

identifier

uimsbf uimsbf uimsbf

3.9 创维频道分类名称描述符

在BAT表的第一层循环中使用私有描述符channel_level_name_descriptor(),建议tag = 0x93。每一个描述符描述一批频道分类的名称。如果一个描述符发送不完所有的分类名称,可分多个描述符来发送。建议在每一个BAT表内都发送所有的频道分类名称。描述符格式如下:

Table 10–Channel_Level_Name_Descriptor

Syntax

No. of bits

Channel_Level_Name_Descriptor (){

descriptor_tag descriptor_length

ISO_639_language_code for(i=0;i<N;i++){

channel_level

channel_level_name_length

for(j=0;j< channel_level_name_length;j++){

1688 8 24

uimsbf uimsbf uimsbf uimsbf uimsbf

identifier

epg私有描述符定义

channel_level_name_char } } }

8uimsbf

3.10 业务群列表描述符

业务群列表描述符用于描述系统中所有的业务群信息,描述符在各个BAT表第一层中插入,该描述符用于机顶盒获取前端EPG系统发送的业务群的数量,验证是否已经完整接收传输流中的业务群信息,描述符具体格式如下:

Table 11–Bouquet_List_Descriptor

Syntax

Bouquet_List_Descriptor (){

descriptor_tag descriptor_length for(i=0;i<N;i++){

bouquet_id } }

descriptor_tag:描述符标识,建议采用0x96 bouquet_id:业务群标识

1688

No. of bits

identifier

uimsbf uimsbf uimsbf

3.11 熊猫Loader更新描述符

用于对熊猫机顶盒进行在线升级,该描述符在NIT表的的第一层插入,具体格式如下:

Table 12–Linkage_Descriptor

Syntax

Linkage_Descriptor (){

descriptor_tag descriptor_length

88

No. of bits

identifier

uimsbf uimsbf

epg私有描述符定义

transport_stream_id original_network_id service_id linkage_type for(i=0;i<N;i++){

hardware_version software_version

cable_delivery_system_descriptor}

}

1616168

uimsbf uimsbf uimsbf uimsbf

8813*8

uimsbf uimsbf

linkage_type,如果是0x88,就表示对应的TS流中可能包含新版本的软件,如果是0x89,就表示对应的TS流中可能包含新版本的loader。cable_delivery_system_desc描述子对应更新的频点信息,transport_stream_id,original_network_id,service_id未用到。

hardware_version指明现有码流中程序的硬件版本号,software_version指明现有码流中程序的软件版本号,cable_delivery_system_desc描述子指明了码流中程序更新的频率、符号率、调制方式等信息。

通过在线一直过滤NIT表中linkage描述子,解出码流中是否有更新的程序。对比硬件版本号和软件版本号,如果硬件版本一致,软件版本比现有的更新,则切换到Loader中开始更新程序或Loader。

3.12 同洲机顶盒升级描述符

用于对同洲机顶盒进行在线升级,该描述符在NIT第一层插入,具体格式如下:

Table 13–Linkage_Descriptor

Syntax

Linkage_Descriptor (){

descriptor_tag descriptor_length ts_id

original_network_id

881616

No. of bits

identifier

uimsbf uimsbf uimsbf uimsbf

epg私有描述符定义

service_id linkage_type

if(linkage_type == 0xa0){

manufacturer_code hardware_ver software_ver serial_start serial_end control_code reserve

private_data_Len for(i=0;i<N;i++){ private_data_byte }

}

168

uimsbf uimsbf

8323232328168

uimsbf uimsbf uimsbf uimsbf uimsbf uimsbf uimsbf

8uimsbf

linkage_type,如果是0xA0,就表示对应的TS流中可能包含新版本的软件。 hardware_version指明现有码流中程序的硬件版本号,software_version指明现有码流中程序的软件版本号,manufacturer_code描述机顶盒制造商代码,当其值是0x88表示同洲。

control_code:0xf0 表示强制升级。

3.13 空中下载描述符

空中下载OTA(Over The Air)描述符用于对机顶盒进行在线升级,该描述符在SDT表插入,具体格式如下:

Table 14–OTA_Descriptor

Syntax

OTA_Descriptor (){

descriptor_tag descriptor_length

88

No. of bits

identifier

uimsbf uimsbf

epg私有描述符定义

other1 PID other2

hardware_version other3

software_version other4 frequency symbol_rate modulation other5

}

3216161616168*8321688

uimsbf uimsbf uimsbf uimsbf uimsbf uimsbf

举例:

整个描述符(16进制)内容如下:a1 1e 4a 00 00 2f e0 fe 00 00 01 2c 00 00 00 6c 00 00 00 00 00 00 00 00 00 04 fd 58 1a db 02 0f

(以下标记的位置可以根据你们需要更改,这些都是16进制表示) e0 fe 表示升级数据使用的PID是254

01 2c 表示升级流硬件版本是300 00 6c表示升级流软件版本是108 00 04 fd 58表示升级流频点是327000KMHz 1a db 表示升级流频点符号率 6875 02 表示升级流频点调制方式 64QAM

4

4.1

私有描述符使用说明

永新同方机顶盒方案

1) 在使用Channel_Order_Descriptor、Channel_Volume_Compensating_Descriptor

时,必须在BAT表中发送Private_Data_Specifier_Descriptor描述符,该描述符的内容必须是“5F0400000000”;

2) 在使用Channel_Order_Descriptor、Channel_Volume_Compensating_Descriptor

时,BAT表的Bouquet ID必须是24577,并且BAT表中必须包含所有的频道;

epg私有描述符定义

3) Channel_Volume_Compensating_Descriptor支持多声道和不支持多声道的私有

描述符只能选取其中一个。

4.2 移植永新同方CA的机顶盒

必须支持TFCAS_CodeDownload_Descriptor。

本文来源:https://www.bwwdw.com/article/mwg1.html

Top