CN102291611B - 机顶盒升级码流的生成方法 - Google Patents
机顶盒升级码流的生成方法 Download PDFInfo
- Publication number
- CN102291611B CN102291611B CN 201110217717 CN201110217717A CN102291611B CN 102291611 B CN102291611 B CN 102291611B CN 201110217717 CN201110217717 CN 201110217717 CN 201110217717 A CN201110217717 A CN 201110217717A CN 102291611 B CN102291611 B CN 102291611B
- Authority
- CN
- China
- Prior art keywords
- field
- descriptor
- file
- title
- upgrading
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Abstract
本发明涉及机顶盒升级码流的生成方法。包括步骤:a.在升级流的描述子的文件格式中,描述子分为条件和字段,其中条件包括:条件语句、条件开始符和条件结束符;字段的属性包括:本字段的关联文件名称、本字段的关联字段名称和本字段的功能接口函数;b.根据描述子的文件格式,生成描述子文件;c.生成各字段接口函数的实现函数;d.对各描述子文件进行解析生成数据模型,根据解析后各描述子文件中的接口函数运行实现函数,生成升级码流文件包。本发明机顶盒升级码流的生成方法,能够兼容各种升级规范,解决了传统技术中的升级码流生成工具种类繁多的问题,降低了开发成本,使得机顶盒升级码流的开发和开发工具得到了统一化和标准化。
Description
技术领域
本发明涉及机顶盒升级码流的生成方法。
背景技术
随着全球化数字电视行业的发展,数字电视机顶盒已经普及到每一个家庭,成为家庭必需品。与之相伴的是全球范围内诞生了许多数字电视运营商,这些运营商或由于所处不同地域或由于不同的发展理念,各自都制定了自己的运营商规范。这些规范也随着数字电视的发展,应用范围越来越广,其中的规范之一就是数字电视机顶盒软件升级规范。数字电视机顶盒生产厂商生产的机顶盒必须符合这些升级规范的要求,并且机顶盒生产厂商需要向运营商提供符合升级规范的升级码流,用来为市场上本厂生产的机顶盒进行软件升级。由于机顶盒厂家面对的市场是全球化的,每个市场有自己的独特性,导致起定制的升级规范也是有地域性的,彼此之间是不兼容的。而机顶盒厂家要进入这些的运营商市场,那么就必须开发出符合该市场的技术规范的机顶盒。比如欧洲市场有专门的欧洲标准的升级规范,另外运营商市场使用不同的CA(条件接收),而这些CA也有自己专门的升级规范,如irdeto CA的升级规范、NDS CA的升级规范等。又如国内的直播卫星的升级规范、国内每个省级市场的机顶盒升级规范等。有的运营商会为机顶盒厂家提供现成的码流打包工具和方法,但更多的市场需要机顶盒厂家自己来开发符合相应规范的码流打包工具并提供升级码流。因此通常机顶盒生产厂家会针对每一种规范,单独开发出一套生成升级码流的工具。机顶盒厂家支持的运营商越多,需要开发的生成升级码流的工具就越多,需要投入的开发人员和其它资源也就越多,增加了开发成本。同时,不同的开发人员有自己的开发风格,其实现的工具有不同的操作方式。因此工具种类越多,其他开发人员用起来就越复杂,降低了工作效率。
发明内容
针对上述的问题,本发明提供了一种机顶盒升级码流的生成方法,能够兼容各种升级规范的升级码流生成方法,解决传统技术中的升级码流生成工具种类繁多、开发成本高,且容易出错的问题。
本发明机顶盒升级码流的生成方法,包括步骤:
a.在机顶盒升级码流的描述子的文件格式中,描述子的内容分为条件和字段,其中条件包括:条件语句、条件开始符和条件结束符;字段的属性包括:本字段的关联文件名称、本字段的关联字段名称和本字段的功能接口函数;
b.根据步骤a中描述子的文件格式,生成描述子文件;
c.根据步骤b生成的描述子文件中各字段的本字段的关联文件名称、本字段的关联字段名称和本字段的功能接口函数属性,生成各字段接口函数的实现函数;
d.通过传输流生成工具对各描述子文件进行解析生成数据模型,根据解析后各描述子文件中的接口函数的优先级运行实现函数,生成升级码流文件包。
将不同的升级规范的描述子都拆分到了各个升级描述子文件中,各个升级描述子的实现又被细分到描述子的每个字段。通过每个字段的本字段的关联文件名称、本字段的关联字段名称和本字段的功能接口函数属性,找到对升级码流处理所对应的接口函数。一个接口函数是对一个问题的所有不同具体解决方案的概括表达式,但不涉及具体的实现方式,也就是说接口函数是只有函数名而没有函数体的,一个接口函数可以根据不同的应用环境,由不同的实现函数加以实现。如接口函数名称为“行走”,可以由不同的方式来实现“行走”,例如可以通过“直立行走”和“四肢行走”两种实现函数来实现“行走”接口函数。接口函数的最大特点是使处理系统具有极大的扩展性,而不局限于一种实现方式上。在本发明的方法中,在描述子的“本字段的功能接口函数”属性中定义出升级方法的接口函数,然后再通过各个规范对升级的具体方法、参数的不同来实现接口函数,这样就可以对任何规范的升级方法进行分解和实现,而在产生升级码流时是通过调用相同的接口函数来实现各个实现方法的,因而不改变生成升级码流的运行过程,使得对机顶盒升级码流的开发和开发工具得到了统一化、标准化。
一种具体的方案,是将升级流的描述子的文件格式以行为单位,对每一行进行条件、条件结束符或字段的标识;如果标识为条件,则该行的属性中包括条件语句和条件开始符;如果标识为条件结束符,则该行包括最近的一个条件范围结束的属性;如果标识为字段,则该行的属性包括字段名称、字段长度、初始值、本字段的关联文件名称、本字段的关联字段名称和本字段的功能接口函数。
为了使生成升级码流的过程中运行的正确性,还需要对步骤a中还包括对所有描述子文件的优先级顺序进行排列,定义执行的先后顺序。同时为了使系统更利于维护,开发模块更具有复用性,可以将步骤c中各描述子接口函数的实现函数分别存储于与所属描述子对应的文件中,将每个描述子的实现函数独立出来可以被重复调用,而不会对其它描述子和接口或实现方法产生影响。
在步骤d中,一种生成升级码流文件包的方案,步骤包括:
将升级文件的名称设于所对应描述子字段的本字段的关联文件名称的属性中;
如果当前处理字段的本字段的关联文件名称、本字段的关联字段名称和本字段的功能接口函数的属性值均为空,则只对本字段的值进行处理,然后进行下一个字段的处理;
如果当前处理字段的本字段的关联文件名称、本字段的关联字段名称和本字段的功能接口函数的属性值不为空,则通过本字段的关联文件名称和本字段的关联字段名称获得对应的值,结合所述的对应值运行本字段的功能接口函数的实现函数,将结果写入到升级码流文件包中;
当一个升级文件的信息处理完成后,如果升级码流文件包的长度未写满,则通过占位符写满升级码流文件包。
本发明机顶盒升级码流的生成方法,通过将各个升级规范拆分到了各个描述子文件中,再通过调用统一的接口函数的方式来实现不同的升级实现方法的。因为对不同的升级规范升级时不改变生成升级码流的运行过程,因此这种生成升级码流的方法能够兼容各种升级规范,并且解决了传统技术中的升级码流生成工具种类繁多的问题,降低了开发成本,使得机顶盒升级码流的开发和开发工具得到了统一化和标准化。
以下结合实施例的具体实施方式,对本发明的上述内容再作进一步的详细说明。但不应将此理解为本发明上述主题的范围仅限于以下的实例。在不脱离本发明上述技术思想情况下,根据本领域普通技术知识和惯用手段做出的各种替换或变更,均应包括在本发明的范围内。
具体实施方式
本发明机顶盒升级码流的生成方法,包括步骤:
a.在机顶盒升级码流的描述子的文件格式中,描述子的内容分为条件和字段,其中条件包括:条件语句、条件开始符和条件结束符;字段的属性包括:本字段的关联文件名称、本字段的关联字段名称和本字段的功能接口函数;并对所有描述子文件的优先级顺序进行排列。
在升级流的描述子的文件格式中,以行为单位,对每一行进行条件、条件结束符或字段的标识;如果标识为条件,则该行的属性中包括条件语句和条件开始符;如果标识为条件结束符,则该行包括最近的一个条件范围结束的属性;如果标识为字段,则该行的属性包括字段名称、字段长度、初始值、本字段的关联文件名称、本字段的关联字段名称和本字段的功能接口函数。
b.根据步骤a中描述子的文件格式,生成描述子文件;
c.根据步骤b生成的描述子文件中各字段的本字段的关联文件名称、本字段的关联字段名称和本字段的功能接口函数属性,生成各字段接口函数的实现函数;例如:描述子文件“second_file”文件的字段“Extable_ID”的运算规则是描述子文件“root_file”文件的字段“Extable_ID”的值加1。那么“second_file”文件的“Extable_ID”字段的“本字段的功能接口函数”属性的实现函数的算法就是:首先获取“root_file”文件内的“Extable_ID”的值,然后将其加1,再赋值给“second_file”文件的“Extable_ID”字段。
将各描述子接口函数的实现函数分别存储于与所属描述子对应的文件中,并且命名与升级流描述子文件呼应。如描述子文件的名称为“root_xxx”,则该描述子文件的接口函数的实现函数文件名称为“root_fun”。这样每个描述子的实现函数文件都是独立的,可以被不断重用。
d.通过传输流生成工具对各描述子文件进行解析生成数据模型,根据解析后各描述子文件中的接口函数的优先级运行实现函数,生成升级码流文件包。传输流生成工具分为两大模块:描述子解析模块和传输流(TS)生成模块。将升级文件的名称设于所对应描述子字段的本字段的关联文件名称的属性中,描述子解析模块根据导入的描述子文件的名称,判断出处理的先后顺序,依次对其进行描述子文件解析,根据文件内容生成相应的数据模型和TS包,对数据模型的相关字段进行初始赋值,并保存其值以供传输流生成模块调用。TS包即传输流文件包。每个包具有188字节,升级流文件由大量的TS包构成,所有的升级描述子信息均存放在TS包中。数字电视信号在传输过程中也是使用的这种包。
TS生成模块根据文件信息,获取到相应的数据模型,然后根据数据模型内各字段的“本字段的关联文件名称”、“本字段的关联字段名称”和“本字段的功能接口函数”属性的内容,来判断是否需要调用“本字段的功能接口函数”。具体包括:
如果当前处理字段的本字段的关联文件名称、本字段的关联字段名称和本字段的功能接口函数的属性值均为空,则只对本字段的值进行处理,然后进行下一个字段的处理;
如果当前处理字段的本字段的关联文件名称、本字段的关联字段名称和本字段的功能接口函数的属性值不为空,则通过本字段的关联文件名称和本字段的关联字段名称获得对应的值,结合所述的对应值运行本字段的功能接口函数的实现函数,将结果写入到升级码流文件包中;
当一个升级文件的信息处理完成后,如果升级码流文件包的长度未写满,则通过占位符写满升级码流文件包。例如:描述子文件“second_file”文件的字段“Pid_ID”的字段长度为16bit(2byte),初始值为0xA0,“本字段的关联文件名称”、“本字段的关联字段名称”和“本字段的功能接口函数”均为空,那么TS生成模块向TS包写入的数据为00A0;若三个属性值均不为空,则先执行“本字段的功能接口函数”,假设返回的数据为00780000,那么TS生成模块写入TS包的数据就为00780000。如果一个升级文件即一个描述子的信息处理完成后,TS包的长度未满188字节,则TS生成模块通过写入0xff将该包填充到188字节,并将该包写入到升级流文件。
当TS生成模块处理完所有的升级文件后,TS升级码流文件就生成完成了。
本发明机顶盒升级码流的生成方法通过将各个升级规范拆分到了各个描述子文件中,再通过调用统一的接口函数的方式来实现不同的升级实现方法的。因为对不同的升级规范升级时不改变生成升级码流的运行过程,因此这种生成升级码流的方法能够兼容各种升级规范,并且解决传统技术中的升级码流生成工具种类繁多、开发成本高的问题,使得对机顶盒升级码流的开发和开发工具得到了统一化和标准化。
Claims (4)
1.机顶盒升级码流的生成方法,其特征为包括步骤:
a.在机顶盒升级码流的描述子的文件格式中,描述子的内容分为条件和字段,其中条件包括:条件语句、条件开始符和条件结束符;字段的属性包括:本字段的关联文件名称、本字段的关联字段名称和本字段的功能接口函数;
b.根据步骤a中描述子的文件格式,生成描述子文件;
c.根据步骤b生成的描述子文件中各字段的本字段的关联文件名称、本字段的关联字段名称和本字段的功能接口函数属性,生成各字段接口函数的实现函数;
d.通过传输流生成工具对各描述子文件进行解析生成数据模型,根据解析后各描述子文件中的接口函数的优先级运行实现函数,生成升级码流文件包;
所述生成升级码流文件包的步骤包括:
将升级文件的名称设于所对应描述子字段的本字段的关联文件名称的属性中;
如果当前处理字段的本字段的关联文件名称、本字段的关联字段名称和本字段的功能接口函数的属性值均为空,则只对本字段的值进行处理,然后进行下一个字段的处理;
如果当前处理字段的本字段的关联文件名称、本字段的关联字段名称和本字段的功能接口函数的属性值不为空,则通过本字段的关联文件名称和本字段的关联字段名称获得对应的值,结合所述的对应值运行本字段的功能接口函数的实现函数,将结果写入到升级码流文件包中;
当一个升级文件的信息处理完成后,如果升级码流文件包的长度未写满,则通过占位符写满升级码流文件包。
2.如权利要求1所述的机顶盒升级码流的生成方法,其特征为在升级流的描述子的文件格式中,以行为单位,对每一行进行条件、条件结束符或字段的标识;如果标识为条件,则该行的属性中包括条件语句和条件开始符;如果标识为条件结束符,则该行包括最近的一个条件范围结束的属性;如果标识为字段,则该行的属性包括字段名称、字段长度、初始值、本字段的关联文件名称、本字段的关联字段名称和本字段的功能接口函数。
3.如权利要求1所述的机顶盒升级码流的生成方法,其特征为步骤a中还包括对所有描述子文件的优先级顺序进行排列。
4.如权利要求1所述的机顶盒升级码流的生成方法,其特征为步骤c中各描述子接口函数的实现函数分别存储于与所属描述子对应的文件中。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201110217717 CN102291611B (zh) | 2011-08-01 | 2011-08-01 | 机顶盒升级码流的生成方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201110217717 CN102291611B (zh) | 2011-08-01 | 2011-08-01 | 机顶盒升级码流的生成方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102291611A CN102291611A (zh) | 2011-12-21 |
CN102291611B true CN102291611B (zh) | 2013-08-07 |
Family
ID=45337675
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 201110217717 Active CN102291611B (zh) | 2011-08-01 | 2011-08-01 | 机顶盒升级码流的生成方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102291611B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1929604A (zh) * | 2006-09-21 | 2007-03-14 | 青岛有线宽带数字电视发展有限公司 | 描述符的通用插入播出方法 |
CN101001316A (zh) * | 2006-12-31 | 2007-07-18 | 北京广博数字电视科技有限公司 | 机顶盒软件升级管理方法和系统 |
CN101026684A (zh) * | 2007-03-30 | 2007-08-29 | 广东有线广播电视网络股份有限公司 | 一种数字电视机顶盒软件更新系统中的条件判定方法 |
CN101184151A (zh) * | 2007-03-27 | 2008-05-21 | 天栢宽带网络科技(上海)有限公司 | 对机顶盒下载器文件进行统一升级管理的系统 |
-
2011
- 2011-08-01 CN CN 201110217717 patent/CN102291611B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1929604A (zh) * | 2006-09-21 | 2007-03-14 | 青岛有线宽带数字电视发展有限公司 | 描述符的通用插入播出方法 |
CN101001316A (zh) * | 2006-12-31 | 2007-07-18 | 北京广博数字电视科技有限公司 | 机顶盒软件升级管理方法和系统 |
CN101184151A (zh) * | 2007-03-27 | 2008-05-21 | 天栢宽带网络科技(上海)有限公司 | 对机顶盒下载器文件进行统一升级管理的系统 |
CN101026684A (zh) * | 2007-03-30 | 2007-08-29 | 广东有线广播电视网络股份有限公司 | 一种数字电视机顶盒软件更新系统中的条件判定方法 |
Also Published As
Publication number | Publication date |
---|---|
CN102291611A (zh) | 2011-12-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102591667B (zh) | 一种远程发布应用的方法及装置 | |
CN101436185B (zh) | 一种利用xml内存树实现多种文件兼容的方法 | |
WO2015035908A1 (zh) | 一种智能电视操作系统 | |
CN101697125B (zh) | 一种开发环境转换的方法及装置 | |
CN101593127A (zh) | 一种数字电视中间件系统的跨平台Jave虚拟机 | |
CN106371825A (zh) | 一种移动端应用界面表单动态生成方法及装置 | |
CN103677921A (zh) | 一种Android系统兼容wifi芯片的方法及系统 | |
CN101604241A (zh) | 一种嵌入式系统的代码生成方法 | |
CN104461516A (zh) | 一种数据处理方法和装置 | |
CN104090946A (zh) | 应用安装包中添加信息的方法及装置 | |
CN102073633A (zh) | 资源文件的存储访问方法及装置 | |
CN103399895B (zh) | 一种基于svg的监控显示处理系统及方法 | |
CN107861723A (zh) | 海量数据处理方法及其系统 | |
CN102591685B (zh) | 一种实现应用程序自动在线更新的方法及装置 | |
CN105554552A (zh) | 一种基于机顶盒的ui动态布局系统及方法 | |
CN110007924A (zh) | Yang模型配置界面的自动化构建方法及系统 | |
CN109710265A (zh) | 一种软件安装包的获取方法、装置及电子设备 | |
CN104536963A (zh) | 一种存储过程的调度方法和系统 | |
CN101202736A (zh) | 一种在通讯网络中实现编解码的方法 | |
CN103269450B (zh) | 一种面向Android智能电视的多媒体系统 | |
CN101312580B (zh) | 一种直放站监控中心和直放站监控方法 | |
CN102291611B (zh) | 机顶盒升级码流的生成方法 | |
CN102111160A (zh) | 用于反应式系统测试的编解码系统及其编解码器 | |
CN108804120A (zh) | 一种页面构建方法、装置、设备及存储介质 | |
CN103744991A (zh) | 一种基于xml的sap系统间数据传输的方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |