数字节目自动排序方法技术

技术编号:7810903 阅读:419 留言:0更新日期:2012-09-27 19:22
本发明专利技术公开了一种数字节目自动排序方法,包括以下步骤:1、请求各频点的NIT表、BAT表和SDT表;2、提取各表中的所有私有描述子;3、解析私有描述子中的LCN;4、将Service?id和解析出的LCN通过Service?id与节目信息关联起来;5、按照LCN的大小对节目进行排序。本发明专利技术可以动态识别不同有线网络运营商定义的LCN,无论运营商选择在哪个表中发放LCN,或者通过何种形式进行发放,都可以统一读取,然后进行排序处理,具有很强的适应性和通用性。采用该节目排序方法设计的数字电视一体机,无论销往何地都能按照当地有线网络运行商定义的排序规则对所有节目进行正确排序,节约了人力物力。

【技术实现步骤摘要】

本专利技术属于数字电视
,具体地说,是涉及ー种对数字节目的自动排序方法。
技术介绍
数字电视正在全国各地迅速推广并将最終取代模拟电视。目前,全国各地的网络运营商在播放数字节目时,往往使用不同方案的EPG(电子节目指南)系统对节目信息进行定义处理,然后经过复用后,通过电视信号中的PSI/SI (Program Specific Information/Specific Information,节目定义信息/定义信息)信息播出。在PSI/SI信息中定义有姆套数字节目的唯一服务编号Service id。若当地有线网络运营商需要对各套数字节目的排列顺序进行特别定义,则还需要在PSI/SI信息中写入每套数字节目所对应的逻辑频道号LCN(Logic Channel Number),从而为接收终端提供一种有序的节目排列方式。但是,这种 针对LCN的节目排序方式目前仅适合机顶盒产业ー批订单就针对ー个运营商的研、产、销模式,对于数字电视一体机而言,由于产品需要面向全国市场,因此在产品销往不同城市、地区时,并不能事先预知所有地区的有线网络运营商的节目排序规则,而且有的运营商习惯将LCN定义在网络信息表NIT(Network Information Table)中,有的定义在业务群关联表 BAT (Bandwidth Allocation Threshold)中,还有的定义在服务描述表 SDT (ServiceDescription Table)中。有的在ー个频点发放所有节目的LCN,有的只在本频点发送本频点节目的LCN,而且各地描述子的数据结构也不一样,由此导致现有的数字电视一体机不能按照当地有线网络运营商的要求对所有节目进行自动排序,往往都是根据各地情况定向开发,不仅増加了很多人力物力,而且系统程序难以维护。
技术实现思路
本专利技术的目的在于提供ー种数字节目的自动排序方法,以实现按照当地有线网络运营商的要求对数字节目进行自动排序。为解决上述技术问题,本专利技术采用以下技术方案予以实现ー种,包括以下步骤(I)请求各频点的NIT表、BAT表和SDT表;(2)提取各表中的所有私有描述子;(3)提取描述子标签值相同的私有描述子,若该标签值的所有私有描述子存在与之一一对应的Service id,则解析该标签值的所有私有描述子中的描述子数据是否具有连续性,若有,则认为是LCN;若该标签值的所有私有描述子不存在与之——对应的Service id,则将该标签值的所有私有描述子中的描述子数据与所有节目的Service id进行对比,若找到全部对应的Service id,则依次从各Service id以外的描述子数据中提取数据进行解析,若存在具有连续性的数据,则认为是LCN;若没有找到LCN,则依次提取下一组描述子标签值相同的私有描述子进行解析;(4)将Service id和解析出的LCN通过Service id与节目信息关联起来;(5)按照LCN的大小对节目进行排序。进ー步的,在所述步骤(3)中,首先判断相同标签值的所有私有描述子是否是SDT表中的私有描述子;若是,则在SDT表中姆个节目的业务描述符中查找与所述私有描述子--对应的 Service id。又进ー步的,在所述步骤(3)中,将相同频点的所有私有描述子中,描述子标签值相同的私有描述子连同当前频点值保存起来;并且,若某一相同标签值的所有私有描述子 存在与之--对应的Service id,则将Service id同与之对应的私有描述子关联保存,形成与Service id个数对应的多个数据块;否则,将该标签值的所有私有描述子中的描述子长度累加,描述子数据合并作为ー个描述子保存,形成ー个数据块。由此形成的数据块,若存在下述三种情況,则认为在私有描述子中有可能存在有线网络运营商定义的LCN:第一种情况,在所形成的所述数据块中,若描述子标签值相同的数据块个数等于节目个数,则分析该标签值的每个数据块中的描述子数据,寻找具有连续性的数据,作为LCN。进ー步的,所述寻找具有连续性的数据的过程为分析每个描述子数据,每相邻的两个字节循环组合成ー个数字,对比所形成的所有数字是否具有连续性,如果连续,则认为是 LCN。第二种情况,在所形成的所述数据块中,若描述子标签值相同的数据块只有ー个,且数据块中私有描述子的描述子长度值Descriptorjength是节目个数N的整数倍,则分析该数据块中的描述子数据,查找与全部Service id 一一对应的数据,如果找到所有的Service id,则提取姆个Service id之后的数据并分析其中是否具有连续性的数据,若有,则认为是LCN,否则,认为不存在LCN;若在该数据块中的描述子数据中没有查找到与全部Service id——对应的数据,则认为不存在LCN。进ー步的,所述分析该数据块中的描述子数据的过程为从描述子数据的第一个字节开始,将每相邻的两个字节循环组合成ー个数字,然后与所有节目的Service id进行对比,若存在相同的数字,贝1J认为是Service id,然后依次后移(Descriptor_length/N)个字节,并依次提取两个字节组合成数字,与所有节目的Service id进行对比,以找到所有的Service id ;在查找到的姆ー个Service id之后依次提取两个字节组成数字,并验证数字的连续性,若连续则认为是LCN,否则,在查找到的每ー个Service id之后顺序后移ー个字节后,再依次提取两个字节组成数字,并验证数字的连续性,若连续则认为是LCN,以此循环直到数据验证完毕。第三种情况,若所形成的所述数据块的个数大于1,且描述子标签值相同的数据块个数与频点个数相同,或者虽然描述子标签值相同的数据块个数与频点个数不同,但是该标签值的所有数据块中的描述子长度值之和是节目个数的整数倍,则分析该标签值的所有数据块中的描述子数据,查找与全部Service id--对应的数据,如果找到所有的Serviceid,则在剩余的数据中分析是否具有连续性的数据,若有,则认为是LCN,否则,不存在LCN ;如果找不到所有的Service id,则认为不存在LCN。优选的,在所述步骤(5)中,针对所述LCN利用插入排序、冒泡排序、选择排序、快速排序、推排序或者归并排序等算法对节目进行排序。再进ー步的,若找不到所述的LCN,则系统按照Service id的大小对所有节目进行排序。与现有技术相比,本专利技术的优点和积极效果是本专利技术的可以动态识别不同有线网络运营商定义的逻辑频道号LCN,无论运营商选择在哪个表中发放LCN,或者通过何种形式进行发放,都可以统ー读取,然后进行排序处理,具有很强的适应性和通用性。采用该节目排序方法设计的数字电视一体机,无论销往何地,都能按照当地有线网络运行商定义的排序规则对所有节目进行正确排序,从而节约了人力物力,方便了电视机程序的维护管理工作。 结合附图阅读本专利技术实施方式的详细描述后,本专利技术的其他特点和优点将变得更加清楚。附图说明图I是本专利技术所提出的中建立数据链表的一种实施例的程序流程图;图2是数据链表的结构图;图3是从数据链表中寻找LCN并对数字节目进行排序的程序流程图。具体实施例方式下面结合附图对本专利技术的具体实施方式进行详细地描述本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.ー种数字节目自动排序方法,包括以下步骤 (1)请求各频点的NIT表、BAT表和SDT表; (2)提取各表中的所有私有描述子; (3)提取描述子标签值相同的私有描述子,若该标签值的所有私有描述子存在与之一一对应的Service id,则解析该标签值的所有私有描述子中的描述子数据是否具有连续性,若有,则认为是LCN; 若该标签值的所有私有描述子不存在与之一一对应的Service id,则将该标签值的所有私有描述子中的描述子数据与所有节目的Service id进行对比,若找到全部对应的Service id,则依次从各Service id以外的描述子数据中提取数据进行解析,若存在具有 连续性的数据,则认为是LCN; 若没有找到LCN,则依次提取下一组描述子标签值相同的私有描述子进行解析; (4)将Serviceid和解析出的LCN通过Service id与节目信息关联起来; (5)按照LCN的大小对节目进行排序。2.根据权利要求I所述的数字节目自动排序方法,其特征在于在所述步骤(3)中,首先判断相同标签值的所有私有描述子是否是SDT表中的私有描述子;若是,则在SDT表中每个节目的业务描述符中查找与所述私有描述子--对应的Service id。3.根据权利要求I所述的数字节目自动排序方法,其特征在干在所述步骤(3)中,将相同频点的所有私有描述子中,描述子标签值相同的私有描述子连同当前频点值保存起来;并且,若某一相同标签值的所有私有描述子存在与之一一对应的Service id,则将Service id同与之对应的私有描述子关联保存,形成与Service id个数对应的多个数据块;否则,将该标签值的所有私有描述子中的描述子长度累加,描述子数据合并作为ー个描述子保存,形成ー个数据块。4.根据权利要求3所述的数字节目自动排序方法,其特征在于在所形成的所述数据块中,若描述子标签值相同的数据块个数等于节目个数,则分析该标签值的每个数据块中的描述子数据,寻找具有连续性的数据,作为LCN。5.根据权利要求4所述的数字节目自动排序方法,其特征在于在所述寻找具有连续性的数据的过程中,分析每个描述子数据,每相邻的两个字节循环组合成ー个数字,对比所形成的所有数字是否具有连续性,如果连续,则是LCN。6.根据权利要求3所述的数字节目自动排序方法,其特征在干在所形成的所述数据块中,若描述...

【专利技术属性】
技术研发人员:张明远
申请(专利权)人:青岛海信电器股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1