一种机顶盒滤取epg避免数据溢出的方法

文档序号:7683640阅读:343来源:国知局
专利名称:一种机顶盒滤取epg避免数据溢出的方法
一种机顶盒滤取EPG避免数据溢出的方法
技术领域
本发明涉及一种嵌入式技术领域,尤其涉及一种机顶盒滤取EPG避免数据溢出的方法。
背景技术
随着国家数字电视的大规模普及,作为数字电视终端产品的数字电视机顶盒越来越多的进入百姓的家庭,epg(电子节目指南)功能作为机顶盒的重要功能,被广泛使用,它提供给用户所需的节目分类数据,未来一周的节目播出表,使用户可以提前知道自己想看的节目的播出时间。由于前端发送的EPG数据量非常巨大,包括了未来一周时间内的所有节目信息,一般机顶盒中接收epg数据后会先把数据放入数据缓冲区,然后在进行分析,而数据缓冲区的大小一般有限,当接收的数据过快时会造成缓冲区数据溢出。同时前端epg 数据的发送使用轮播方式进行,如果边接收边分析会造成要接收的数据,需要比较久的时间才能接收齐全。传统机顶盒使用环形缓冲区接收数据的方法在cpu处理速度不够快的时候会出现接收的数据溢出,产生数据丢失的问题,甚至造成机顶盒死机的问题。

发明内容本发明要解决的技术问题,在于提供一种机顶盒滤取EPG避免数据溢出的方法, 改善了机顶盒数据接收模块的压力,防止数据溢出造成的数据丢失或机顶盒死机等问题。本发明是这样实现的一种机顶盒滤取EPG避免数据溢出的方法,包括如下步骤步骤10、当机顶盒接收到EPG数据信息时,先对EPG信息数据中含有PID和 TableID字段的EIT表数据进行接收;步骤20、配置机顶盒的解复用通道的过滤条件,其过滤条件为EIT表的第七个字节设置为0x00,mask参数位置为0x01,所述mask参数为机顶盒需要得到的过滤数据的匹配值;步骤30、当接收到的含有PID和TableID字段的EIT表数据进入所述解复用通道时,机顶盒对EIT表中第七个字节数据段section number为偶数的EIT表数据进行接收;步骤40、当接收完数据后,配置机顶盒的解复用通道过滤条件中EIT表的第七个字节为0x01,mask参数位置为0x01 ;步骤50、此时机顶盒将EIT表中第七个字节数据段section number为奇数的EIT 表数据进行接收。其中所述解复用通道是机顶盒硬件上用来接收dvb (数字视频广播)数据的部件, 其解复用通道采用filter函数来对数据进行过滤。本发明具有如下优点通过配置机顶盒的解复用通道的过滤条件,根据EIT表中第七个字节数据段section number的奇偶值,分类别进行EIT表数据的收取,本发明大大改善了机顶盒数据接收模块的压力,防止数据溢出造成的数据丢失或机顶盒死机等问题。
图1为本发明方法流程示意图。
具体实施方式如图1所示,一种机顶盒滤取EPG避免数据溢出的方法,包括如下步骤步骤10、当机顶盒接收到EPG数据信息时,先对EPG信息数据中含有PID和 TableID字段的EIT表数据进行接收;步骤20、配置机顶盒的解复用通道的过滤条件,其过滤条件为EIT表的第七个字节设置为0x00,mask参数位置为0x01,所述mask参数为机顶盒需要得到的过滤数据的匹配值;步骤30、当接收到的含有PID和TableID字段的EIT表数据进入所述解复用通道时,机顶盒对EIT表中第七个字节数据段section number为偶数的EIT表数据进行接收;步骤40、当接收完数据后,配置机顶盒的解复用通道过滤条件中EIT表的第七个字节为0x01,mask参数位置为0x01 ;步骤50、此时机顶盒将EIT表中第七个字节数据段section number为奇数的EIT 表数据进行接收。其中所述解复用通道是机顶盒硬件上用来接收dvb数据的部件,其解复用通道采用filter函数来对数据进行过滤。下面结合一具体实施例对本发明作进一步说明。 机顶盒硬件上用来接收dvb (数字视频广播)数据的部件叫做解复用,其主要原理是使用硬件过滤出所需要的Pid(数字电视复用系统名称标志码传输包)的数据,为了更精确的过滤出机顶盒所需要的数据,解复用通道使用filter函数来对数据进行过滤,一般硬件提供8-16个字节的过滤。其中value为需要过滤的数据,mask为需要过滤数据的匹配值,mask中的某一位为1时表示当接收的数据value中的对应位相同的数据才接收;为 0时表示不管value对应位是0还是1数据都接收。例如配置value 为 0x37 = 00110111(2 进制),mask 为 OxOf = 00001111 的过滤条件,则此时所需数据为xxxxllll的数据都会被接收下来,χ表示既可以是1,也可以是0。根据以上原理则当机顶盒接收到EPG数据信息时,先对EPG信息数据中含有PID 和TableID字段的EIT表数据进行接收;此时有段EIT数据流传入解复用通道,其EIT表中第七个字节数据段section number分别为0,1,2,3,4,5,6,... · ·,100 ;则先把机顶盒的解复用的过滤条件中第7字节设置为0X00,mask参数位置为0x01,这样所有进入解复用通道的数据中第7字节第0位(最后一位)为0的数据流都会被接收进来,包括了 section number分别为0,2,4,6,8,……,100的偶数数据,这时当接收完上面数据后,对数据进行相应的分析,并清空数据缓冲区,然后把机顶盒的解复用的过滤条件中第7字节设置为0x01, mask参数位置为0x01,这样所有进入解复用通道的数据中第7字节第0位为1的数据流都会被接收进来,包括了 section number分别为1,3,5,7,9,……,99的奇数数据,直到接收完上面数据后,关闭对这个数据流的接收通道。总之,通过配置机顶盒的解复用通道的过滤条件,根据EIT表中第七个字节数据段section number的奇偶值,分类别进行EIT表数据的收取,将电视广播中心前端发送的
4EIT数据的码流速度降低了一半,大大改善了机顶盒数据接收模块的压力,防止数据溢出造成的数据丢失或机顶盒死机等问题。 以上所述仅为本发明的较佳实施例,凡依本发明申请专利范围所做的均等变化与修饰,皆应属本发明的涵盖范围。
权利要求
1.一种机顶盒滤取EPG避免数据溢出的方法,其特征在于包括如下步骤步骤10、当机顶盒接收到EPG数据信息时,先对EPG信息数据中含有PID和TableID字段的EIT表数据进行接收;步骤20、配置机顶盒的解复用通道的过滤条件,其过滤条件为EIT表的第七个字节设置为0x00,mask参数位置为0x01,所述mask参数为机顶盒需要得到的过滤数据的匹配值; 步骤30、当接收到的含有PID和TableID字段的EIT表数据进入所述解复用通道时,机顶盒对EIT表中第七个字节数据段section number为偶数的EIT表数据进行接收;步骤40、当接收完数据后,配置机顶盒的解复用通道过滤条件中EIT表的第七个字节为0x01,mask参数位置为0x01 ;步骤50、此时机顶盒将EIT表中第七个字节数据段section number为奇数的EIT表数据进行接收。
2.根据权利要求1所述的一种机顶盒滤取EPG避免数据溢出的方法,其特征在于所述解复用通道是机顶盒硬件上用来接收dvb数据的部件,其解复用通道采用filter函数来对数据进行过滤。
全文摘要
本发明提供一种机顶盒滤取EPG避免数据溢出的方法,通过配置机顶盒的解复用通道的过滤条件,根据EIT表中第七个字节数据段section number的奇偶值,分类别进行EIT表数据的收取,将电视广播中心前端发送的EIT数据的码流速度降低了一半,大大改善了机顶盒数据接收模块的压力,防止数据溢出造成的数据丢失或机顶盒死机等问题。
文档编号H04N21/431GK102215430SQ201110146860
公开日2011年10月12日 申请日期2011年6月2日 优先权日2011年6月2日
发明者方立, 陈晓辉 申请人:福建新大陆通信科技股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1