电子服务指南信息更新装置的制作方法

文档序号:7973773阅读:162来源:国知局
专利名称:电子服务指南信息更新装置的制作方法
技术领域
本发明涉及通信领域,更具体地涉及一种电子服务指南信息更新装置。

背景技术
随着移动数据业务的普及、手机性能的提高以及数字电视技术和网络的迅速发展,利用具有操作系统和视频功能的智能手机观看电视的手机电视业务引起了人们的广泛关注。由于手机用户普及率高且手机拥有携带方便等特性,手机电视业务显示出了比普通电视更广泛的影响力。DVB-H标准是手机电视标准中一种很有影响力的地面数字电视广播标准,在许多国家,尤其是欧美国家,都得到了大力的推广和应用。
在DVB-H中,ESG包含当前可用服务的信息,通过这些信息,用户可以选择自己感兴趣的服务并且可以找到自己手机上已经存储的信息。
如图1A所示,手机对准电视传输信道,接收数据广播(IPDatacast-IP,简称IPDC)数据之后,从节目特定信息/业务信息(Program Specific Information/Service Information,简称PSI/SI)的表格当中可以知道如何收取ESG导入信息(BootStrap),ESG从中解析出相关的信息。ESG应用将这些信息反映给用户,用户就可以选择一个业务(服务应用)执行(因为ESG中包含信息,可以让手机对准到所需要的互联网协议(Internet Protocol,简称IP)数据流上去),其中ESG的操作主要有3个(如图1B所示) ESG引导(BootStrap)让终端知道哪些ESG信息可用,并且如何得到这些ESG信息; ESG获取长时间没有连接手机电视的情况下,第一次获取ESG信息; ESG更新手机刷新自己所存储的ESG信息。
ESG更新可以让用户及时获取最新的服务信息,是ESG功能实现中的重要一部分。对于ESG更新的实现,DVB-H中并没有进行过多的说明。目前,对于ESG更新比较常见的处理方式有如下几种 第一种,在传输层由内容投递协议(Content Delivery Protocol,简称CDP)来实现。
传输层的CDP在接收套接字(Socket)上面的文件投递表(FileDelivery Table,简称FDT)后,对比新旧FDT表,对变化了的传输对象标识(Transport Object Identifier,简称TOI)进行重新下载,作为变化的ESG容器文件更新消息通知ESG,由ESG进行相应的更新处理。
该种方法可以有效获取ESG的更新消息。但是在CDP保存旧有的FDT表,同时周期性进行比较,会大量消费CDP的系统资源,特别是在网络侧不会频繁更新文件的情况下,对CDP本身的传输功能有较大的影响。
第二种,在ESG保存ESG数据分段信息,通过直接比较数据分段,从而实现ESG的信息更新。
ESG更新主要应该在ESG处理中实现,而不应该过度增加CDP的负担。因此,需要在ESG中专门保存相应的容器文件信息或是分段信息,在ESG信息更新触发时,对比接收到的CDP信息和ESG保存的相应信息,来判断是否有ESG更新,以及ESG信息更新所属类型(即ESG信息增加、ESG信息删除、ESG信息改变或无变化)。该种方法需要大量的系统资源,比如保存ESG信息需要的内存资源,比较时遍历ESG信息需要的时间资源。
第三种,在ESG保存信息,由CDP进行比较,从而实现ESG的信息更新。
该种方法是前述两种方法的一种折衷,由ESG保存ESG信息列表,在ESG信息更新触发时,通过对CDP的交互,把该信息列表告诉CDP,由CDP进行比较,确定ESG更新类型后,再把相应的文件送给ESG,由ESG进行更新文件的处理。
该种方法需要增加消息交互,如果ESG保存的信息比较多,传递的消息量就大,对系统正常运行的性能有影响。
上述方法,都能够实现ESG的信息更新,但都稍嫌烦琐,需要额外考虑由于ESG信息保存所需的大量的内存资源,以及进行ESG信息遍历所需的时间消耗。


发明内容
鉴于上述问题,本发明提供了一种新的电子服务指南信息更新装置,以有效降低保存大量ESG信息所需的内存资源,同时在CDP文件传输的配合下,高效地实现对ESG分段信息的遍历。
根据本发明的一方面,提供了一种电子服务指南信息更新装置。该电子服务指南信息更新装置包括目录链表建立单元302,用于根据电子服务指南初始化容器的目录结构建立电子服务指南分段信息的目录链表,目录链表的根节点为IndexList,根节点下的子节点为SubIndex结构链表,子节点下的叶节点为电子服务指南分段信息结构链表;以及更新单元304,用于将从传输层接收到的容器文件与电子服务指南分段信息的目录链表进行比较,确定电子服务指南分段信息是否改变,在改变的情况下,更新目录链表中对应的电子服务指南分段信息,在没有改变的情况下,不进行操作。
在前述电子服务指南信息更新装置中,更新单元304包括容器文件比较单元3042,用于在传输流为单流的情况下,根据接收到的数据容器文件的标识和版本判断电子服务指南分段信息是否发生改变并在发生改变的情况下确定改变类型,以及在传输流为多流的情况下,从IndexList头指针开始在目录链表中查找接收到的Index容器文件,将查找到的Index容器文件与接收到的Index容器文件进行比较并在发生改变的情况下确定改变类型;以及分段信息更新单元3044,在比较结果为发生改变的情况下,根据确定的改变类型从传输层获取Index容器文件中包括的电子服务指南分段信息,更新目录链表中的对应电子服务指南分段信息并将更新后的电子服务指南分段信息传输至用户应用。
在前述电子服务指南信息更新装置中,在网络侧重发目录结构更新后的初始化容器的情况下,比较对应的目录结构并确认电子服务指南分段信息更新类型,用新的目录结构代替旧的目录结构。
在前述电子服务指南信息更新装置中,改变类型包括以下至少一种电子服务指南信息增加、电子服务指南信息删除、电子服务指南信息改变、电子服务指南信息不变。
在前述电子服务指南信息更新装置中,在系统关机或重启的情况下,释放电子服务指南分段信息的目录链表。
本发明充分利用了DVB-H的容器信息(容器标识和容器版本),以及初始化容器,特别是初始化容器中的目录结构(IndexList),通过对目录结构链表的建立、修改和维护,有效降低了保存大量ESG信息所需的内存资源,同时在CDP文件传输的配合下,高效地实现了对ESG分段信息的遍历。



此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中 图1A是DVD-H中的ESG位置及功能示意图; 图1B是ESG的主要功能及其流程的示意图; 图2是在ESG中实现ESG更新的通用方法的分段链表示意图; 图3是根据本发明的电子服务指南信息更新装置的框图; 图4是根据本发明的电子服务指南信息更新方法的流程图; 图5是根据本发明的ESG分段信息的目录链表结构示意图; 图6是根据本发明的一个ESG实体的目录链表结构示意图; 图7是根据本发明的ESG和CDP启动时的交互示意图; 图8是根据本发明的Indexlist链表结构和Index链表结构的示意图; 图9是根据本发明的SubIndex链表结构和数据分段链表结构的示意图; 图10是根据本发明的ESG更新流程的示意图;以及 图11是根据本发明的ESG更新的流程图。

具体实施例方式 下面参考附图,详细说明本发明的具体实施方式

参考图3,说明根据本发明的电子服务指南信息更新装置。该电子服务指南信息更新装置包括目录链表建立单元302,用于根据电子服务指南初始化容器的目录结构建立电子服务指南分段信息的目录链表,目录链表的根节点为IndexList,根节点下的子节点为SubIndex结构链表,子节点下的叶节点为电子服务指南分段信息结构链表;以及更新单元304,用于将从传输层接收到的容器文件与电子服务指南分段信息的目录链表进行比较,确定电子服务指南分段信息是否改变,在改变的情况下,更新目录链表中对应的电子服务指南分段信息,在没有改变的情况下,不进行操作。
其中,更新单元304包括容器文件比较单元3042,用于在传输流为单流的情况下,根据接收到的数据容器文件的标识和版本判断电子服务指南分段信息是否发生改变并在发生改变的情况下确定改变类型,以及在传输流为多流的情况下,从IndexList头指针开始在目录链表中查找接收到的Index容器文件,将查找到的Index容器文件与接收到的Index容器文件进行比较并在发生改变的情况下确定改变类型;以及分段信息更新单元3044,在比较结果为发生改变的情况下,根据确定的改变类型从传输层获取Index容器文件中包括的电子服务指南分段信息,更新目录链表中的对应电子服务指南分段信息并将更新后的电子服务指南分段信息传输至用户应用。
其中,在网络侧重发目录结构更新后的初始化容器的情况下,比较对应的目录结构并确认电子服务指南分段信息更新类型,用新的目录结构代替旧的目录结构。
其中,改变类型包括以下至少一种电子服务指南信息增加、电子服务指南信息删除、电子服务指南信息改变、电子服务指南信息不变。
其中,在系统关机或重启的情况下,释放电子服务指南分段信息的目录链表。
参考图4,说明根据本发明的电子服务指南信息更新方法。该电子服务指南信息更新方法包括以下步骤S402,电子服务指南实体根据电子服务指南初始化容器的目录结构建立电子服务指南分段信息的目录链表,其中,目录链表的根节点为IndexList,根节点下的子节点为SubIndex结构链表,子节点下的叶节点为电子服务指南分段信息结构链表;以及S404,电子服务指南实体将从传输层接收到的容器文件与电子服务指南分段信息的目录链表进行比较,确定电子服务指南分段信息是否改变,在改变的情况下,更新目录链表中对应的电子服务指南分段信息,在没有改变的情况下,不进行操作。
其中,在步骤S404中,在传输流为单流的情况下,根据接收到的数据容器文件的标识和版本判断电子服务指南分段信息是否发生改变并在发生改变的情况下确定改变类型。
其中,在步骤S404中,以及在传输流为多流的情况下,从IndexList头指针开始在目录链表中查找接收到的Index容器文件,将查找到的Index容器文件与接收到的Index容器文件进行比较并在发生改变的情况下确定改变类型。
其中,在步骤S404中,在比较结果为发生改变的情况下,根据确定的改变类型从传输层获取Index容器文件中包括的电子服务指南分段信息,更新目录链表中的对应电子服务指南分段信息并将更新后的电子服务指南分段信息传输至用户应用。
其中,在网络侧重发目录结构更新后的初始化容器的情况下,比较对应的目录结构并确认电子服务指南分段信息更新类型,用新的目录结构代替旧的目录结构。
其中,改变类型包括以下至少一种电子服务指南信息增加、电子服务指南信息删除、电子服务指南信息改变、电子服务指南信息不变。
其中,在系统关机或重启的情况下,释放电子服务指南分段信息的目录链表。
具体地,参考图5至图10,详细说明根据本发明的电子服务指南信息更新方法的具体实施例。
如图10所示,要完成在DVB-H下的ESG信息更新的目的,需要如下的步骤 步骤一,建立ESG分段信息的目录链表结构(如图5所示)。为了利用ESG初始化容器的目录结构,所以首先需要接收初始化容器。在DVB-H中,接收初始化容器的过程如图6所示,ESG接收CDP上报的ESG导入信息(BootStrap),解析获取运营商信息和接收信息后,再配置接入ESG信息的IP地址、端口号、TSI给CDP,CDP根据接收到的ESG实体信息接收并上报对应的初始化容器文件给ESG。ESG解析初始化容器中的目录结构,建立目录结构链表。如图7和图8所示,根节点是IndexList,包含该IndexList结构所在容器的ID、版本,以及用于区分多个ESG实体的会话ID;Index节点包含表明这个Index所在容器的ID和所在结构的ID,会话ID等信息,其中是否查找字段用于遍历时确认ESG更新的删除类型使用,初始化为未查找;SubIndex结构(如图9所示)包含其所在容器的ID和所在结构的ID,会话ID等信息;数据分段结构(如图9所示)包含分段ID、分段版本、会话ID、所属SubIndex指针等信息。对于不包含目录结构的单流传输,为了兼容性考虑,也使用该ESG分段信息的目录链表结构,只不过其使用是对多流传输的简化。其中list_head是双向链表节点,定义如下 struct list_head{ struct list_head*next;//指向下一个节点 struct list_head*prev;//指向上一个节点 } 步骤二,在ESG更新触发(包括自动和手动更新)时,CDP接收到新的文件投递表(FDT),并将相应的容器文件传递给ESG,由ESG进行更新流程处理。其中,该步骤又分为以下四步 步骤a,首先根据接收到的容器标识和版本,判断该容器是否改变,对于没有发生改变的容器,不进行处理,直接返回。
步骤b,如果ESG接收到的是Index容器文件,表明网络侧同一时候批量更新ESG信息。ESG在IndexList根节点下搜索同该Index容器ID相等的容器,如果容器ID相等,容器版本也相等,说明该ESG信息更新没有变化;如果容器ID相等,容器版本不相等,说明该ESG信息更新有改变;如果搜索结束后,容器ID不相等,说明该ESG信息更新增加;遍历后,设置相关的搜索标识,通过对搜索标识的检查,判断该Index容器下面是否有ESG信息的删除。对ESG信息有改变的,要求CDP上报该Index容器包含的数据容器,处理过程如步骤d。处理结束后同步更新目录链表结构。
步骤c,如果网络侧重发目录结构更新后的初始化容器,表明该ESG实体下的信息有比较大的改变。ESG对比新旧目录结构(包括IndexList节点、Index节点、SubIndex节点和分段节点),依次判断IndexList节点下面的Index节点、SubIndex节点和数据分段节点属于那种ESG更新类型(ESG信息增加、ESG信息删除、ESG信息改变和ESG信息不变)。如果是Index容器改变,处理过程同步骤b;如果是数据分段的改变,处理过程同步骤d。处理结束后,使用新的目录结构替代旧有的目录结构。
步骤d,如果是数据容器改变,需要解析该数据容器包含的数据分段,在IndexList节点下的数据分段链表中进行查找和比较,如果数据分段的ID相同,版本不同,说明数据分段有改变;如果数据分段的ID相同,版本也不同,说明数据分段无改变;如果没有找到相同ID的数据分段,说明数据分段增加;对查找、比较后对数据分段设置相应的搜索标识,查找结束后,检索搜索标识,判读是否存在数据分段删除。确定数据分段的更新类型后,进行相应的数据分段XML解析(或BIM解析)后把数据送给应用。处理结束后同步更新目录链表结构。
步骤三,系统关机或是重启时,释放步骤一建立的目录链表内存。
可见,上述实例中利用了ESG的容器标识和版本号,对ESG更新进行了一次过滤,节省了解析时间;利用了ESG的初始化容器的目录结构,避免了对ESG数据分段保存链表的额外内存开销;而且对于批量的ESG信息更新省却了遍历时间;同时,由于ESG分段信息的目录链表结构是在接收初始化容器时建立,对ESG更新时的性能影响基本可以忽略不计,相比其他方法,在内存资源和时间资源的开销上都有明显优势。
综上所述,一种DVB-H中的ESG信息更新的实现方法主要包括以下步骤(如图11所示) S1102,建立ESG分段信息的目录链表结构。为了充分利用ESG初始化容器的目录结构,对于包含目录结构的传输流,ESG分段信息的目录链表结构如图5所示。IndexList作为一个目录结构的根节点,从相应的Index容器文件读出并且建立Index结构链表、SubIndex结构链表、分段信息结构链表。在分段信息节点中保存分段标识,分段版本以及是否查找的标识等信息;对于没有目录结构的单流(Single Stream)传输或是多流(Multiple Stream)传输,其链表结构中的Index、SubIndex都为单节点链表,信息主要集中在叶节点,从而可以简化如图6所示,其中,一个ESG实体结构对应图5的一个Indexlist结构,而一个容器结构对应图5的一个Index(或SubIndex),这样,就形成了无目录结构的流传输的链表结构。
S1104,ESG信息更新触发后,对无目录结构的单流传输,接收CDP传输来的数据容器文件后,根据容器的标识和版本判断该容器是否发生改变,只对发生改变的容器进行解析,得到相应的分段信息,在图6所示的目录结构中对应的容器节点下面查找该分段信息。根据查找、比较结果确定ESG信息更新类型,并进行相应的解析处理后送达用户应用;处理结束后,对目录结构进行相应的同步维护。
S1106,ESG信息更新触发后,对携带目录结构的多流传输,如果接收到CDP传输来的Index容器文件后,从IndexList头指针开始的链表中查找相应的Index,并且根据比较结果,要求CDP传输Index容器文件中包含的数据分段,对数据分段解析后送达用户应用,处理结束后,对目录结构进行相应的同步维护;如果接收到CDP传输来的数据容器文件,处理过程同步骤S1104;如果网络侧重发目录结构更新后的初始化容器,对相应的目录对比后确认ESG更新类型后用新的目录结构替代旧的目录结构。
S1108,在系统重启时,释放步骤S1102建立的目录结构链表。
其中,在步骤S1102中,利用ESG初始化容器中的目录结构信息来建立ESG分段信息的目录结构链表,由于ESG初始化容器中的目录结构信息需要保存备诸如会话分割声明(Session PartitionDeclaration,简称SPD)等使用,相比较专门使用一段缓冲保存具体的分段信息方法,可以节省额外的内存资源开销;对于单流传输,增加的只是一个Index单节点和SubIndex单节点,对内存资源开销的影响是很小的。在步骤S1104中,ESG更新类型包括ESG信息增加、ESG信息删除、ESG信息改变、ESG信息没有变化;相应的,比较确认ESG更新信息后,需要对目录结构链表进行相应的同步处理,以便及时准确确认下一次ESG更新。由于只是解析容器标识和版本发生改变的容器,相对于对容器的全部解析,节省了容器解析时间开销和相应的ESG更新类型判断。在步骤S1106中,由于使用了步骤S1102中的目录链表结构,对于CDP传输的Index容器文件的比较在Index或SubIndex节点比较就可以确认ESG更新类型了,相比较专门使用一段缓冲保存具体的分段信息的方法,省却了对Index容器文件包含的多个数据分段的遍历,节省和缓解了对数据分段遍历的时间消耗。
本发明充分利用了DVB-H的容器信息(容器标识和容器版本),以及初始化容器,特别是初始化容器中的目录结构(IndexList),通过对目录结构链表的建立、修改和维护,有效降低了保存大量ESG信息所需的内存资源,同时在CDP文件传输的配合下,高效地实现了对ESG分段信息的遍历。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
权利要求
1.一种电子服务指南信息更新装置,其特征在于包括
目录链表建立单元,用于根据电子服务指南初始化容器的目录结构建立电子服务指南分段信息的目录链表,所述目录链表的根节点为IndexList,所述根节点下的子节点为SubIndex结构链表,所述子节点下的叶节点为电子服务指南分段信息结构链表;以及
更新单元,用于将从传输层接收到的容器文件与所述电子服务指南分段信息的目录链表进行比较,确定所述电子服务指南分段信息是否改变,在改变的情况下,更新所述目录链表中对应的电子服务指南分段信息,在没有改变的情况下,不进行操作。
2.根据权利要求1所述的电子服务指南信息更新装置,其特征在于,所述更新单元包括
容器文件比较单元,用于在传输流为单流的情况下,根据接收到的数据容器文件的标识和版本判断所述电子服务指南分段信息是否发生改变并在发生改变的情况下确定改变类型,以及在所述传输流为多流的情况下,从所述IndexList头指针开始在所述目录链表中查找接收到的Index容器文件,将查找到的Index容器文件与接收到的Index容器文件进行比较并在发生改变的情况下确定改变类型;以及
分段信息更新单元,在比较结果为发生改变的情况下,根据确定的改变类型从所述传输层获取所述Index容器文件中包括的电子服务指南分段信息,更新所述目录链表中的对应电子服务指南分段信息并将所述更新后的电子服务指南分段信息传输至用户应用。
3.根据权利要求2所述的电子服务指南信息更新装置,其特征在于,在网络侧重发目录结构更新后的初始化容器的情况下,比较对应的目录结构并确认所述电子服务指南分段信息更新类型,用新的目录结构代替旧的目录结构。
4.根据权利要求2所述的电子服务指南信息更新装置,其特征在于,所述改变类型包括以下至少一种电子服务指南信息增加、电子服务指南信息删除、电子服务指南信息改变、电子服务指南信息不变。
5.根据权利要求1至4中任一项所述的电子服务指南信息更新装置,其特征在于,在系统关机或重启的情况下,释放所述电子服务指南分段信息的目录链表。
全文摘要
本发明公开了一种电子服务指南信息更新装置。该电子服务指南信息更新装置包括目录链表建立单元,用于根据电子服务指南初始化容器的目录结构建立电子服务指南分段信息的目录链表,目录链表的根节点为IndexList,根节点下的子节点为SubIndex结构链表,子节点下的叶节点为电子服务指南分段信息结构链表;以及更新单元,用于将从传输层接收到的容器文件与电子服务指南分段信息的目录链表进行比较,确定电子服务指南分段信息是否改变,在改变的情况下,更新目录链表中对应的电子服务指南分段信息,在没有改变的情况下,不进行操作。本发明有效降低了保存大量ESG信息所需的内存资源,同时高效地实现了对ESG分段信息的遍历。
文档编号H04N7/08GK101207780SQ20061016175
公开日2008年6月25日 申请日期2006年12月19日 优先权日2006年12月19日
发明者王泽民, 徐立锋 申请人:中兴通讯股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1