网络电视的频道切换方法和终端与流程

文档序号:12136419阅读:1000来源:国知局
网络电视的频道切换方法和终端与流程
本发明涉及IPTV(InternetProtocolTelevision,网络电视)
技术领域
,特别是涉及一种网络电视的频道切换方法和终端。
背景技术
:随着宽带业务的普及,IPTV作为一种新的宽带交互式视频业务得到了迅速的发展和推广。IPTV使传统的电信运营商可以不再局限于提供语音服务和网络宽带,而传统的广电运营商也可以利用IPTV销售其大量闲置的节目资源,因此IPTV将为广播电视的发展提供新的机遇。在IPTV业务高速发展的同时,如何提高用户体验成为各大运营商关注的焦点。频道切换时延是指IPTV在不同频道间进行切换时所需的时间,如果频道切换时延过长,将增加用户在切换频道时的等待时间,进而影响用户体验。现有技术中,IPTV频道切换方法主要包括以下步骤:根据目标频道的播放地址下载并缓存码流;在缓存的码流中根据PAT表(ProgramAssociationTable,节目关联表)的PID(PacketID,数据包标识)实时检测是否获取到PAT表;在获取到PAT表后,对PAT表进行解析,获得目标频道的PMT表(ProgramMapTable,节目映射表)的PID;根据PMT表的PID实时检测是否获取到PMT表;在获取到PMT表后,对PMT表进行解析,获取目标频道的音视频信息,该音视频信息包括视频类型、视频PID、PCR(programclockreference,参考时钟)数据PID、音频类型和音频PID等信息,从而根据音视频信息设置解码器进行播放。综上可以看出,现有技术中每次进行频道切换时都要在码流中查找PAT表和PMT表,并对查找到的PAT表和PMT表进行解析,其中,对PAT表和PMT表的查找和解析过程均需要占用一定的时间,导致频道切换时延过长,影响用户体验。技术实现要素:本发明实施例中提供了一种网络电视的频道切换方法和终端,以解决现有技术中频道切换时延过长,影响用户体验的问题。第一方面,本发明实施例提供了一种网络电视的频道切换方法,所述方法包括:根据接收到的频道切换指令,确定将要切换的目标频道;判断在预设的频道信息统计表中是否存在所述目标频道的音视频信息;当所述频道信息统计表中存在所述目标频道的音视频信息时,在所述频道信息统计表中提取出所述目标频道的音视频信息;根据所述目标频道的音视频信息设置解码器的解码参数,播放所述目标频道的音视频码流。第二方面,本发明实施例提供了一种终端,所述终端包括:处理器;用于存储处理器可执行指令的存储器,其中,所述处理器被配置为执行上述第一方面所述的方法。在本发明实施例提供的技术方案中,预设频道信息统计表,在接收到频道切换指令后,首先查找频道信息统计表中是否存在目标频道的音视频信息,如果存在,则直接根据频道信息统计表中存储的目标频道的音视频信息设置解码器的解码参数,完成频道切换,省去了对目标频道的PAT表和PMT表进行查找和解析的时间,进而减少网络电视频道切换时延,提高用户体验。附图说明为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本发明实施例提供的一种场景示意图;图2为本发明实施例一网络电视的频道切换方法流程示意图;图3为本发明实施例二网络电视的频道切换方法流程示意图;图4为本发明实施例三网络电视的频道切换方法流程示意图;图5为本发明实施例四网络电视的频道切换方法流程示意图;图6为本发明实施例提供的一种终端的结构示意图。具体实施方式为了使本
技术领域
的人员更好地理解本发明中的技术方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。图1为本发明实施例提供的一种场景示意图,图1中包括电视机101和网络机顶盒102,电视机101和网络机顶盒102可以通过有线或无线的方式连接,网络机顶盒102用于将网络资源传输至电视机101,使用户可以通过电视机101浏览网页或收看网络电视等。其中,图1所示仅为本发明的一种场景示意图,图中网络机顶盒102以及电视机101的具体类型和对应关系都不限于图1中公开的具体形式。例如,网络机顶盒102和电视机101可以设置在一起,形成安装有网络电视模块的电视机101,本发明对此不做具体限定。用户在收看网络电视时,通常会根据自己的喜好切换电视频道。相关技术中,为了保证播放的准确性,在每次接收到频道切换指令后,都要根据缓存的码流对频道信息进行解析,但是实际上网络电视的频道信息变化并不频繁,因此这种处理方式并不经济。而且由于对频道信息进行解析的过程占用的时间较长,导致频道切换时延较长,影响用户体验。针对上述问题,本发明实施例提供了一种可以减少频道切换时延的网络电视的频道切换方法。图2为本发明实施例一网络电视的频道切换方法流程示意图,如图2所示,其主要包括以下步骤。步骤S201:根据接收到的频道切换指令,确定将要切换的目标频道。用户可以通过网络机顶盒的遥控器触发频道切换指令,也可以通过网络机顶盒上的按键触发频道切换指令。例如,电视机当前播放的频道为CCTV1,在电视机存储的频道列表中,CCTV1的下一频道为CCTV2,则当用户点击遥控器的“频道+”按键时,确定用户将要切换的目标频道为CCTV2。步骤S202:判断在预设的频道信息统计表中是否存在所述目标频道的音视频信息。在本发明实施例中,设有用于存储频道信息的频道信息统计表,该频道信息统计表中可以包括频道基本信息表和频道音频信息表。其中,频道基本信息表中可以包括频道标识以及与频道标识相关联的频道名称、视频类型、视频PID、PCR(programclockreference,参考时钟)数据PID等信息;频道音频信息表中可以包括频道标识以及与频道标识相关联的频道名称、音频类型、音频PID等信息。其中,频道标识为频道在系统中的唯一身份标识,则“确定将要切换的目标频道”可以理解为确定将要切换的目标频道的频道标识。根据目标频道的频道标识在频道信息统计表中查找是否存在目标频道的音视频信息。在本发明一种可选实施例中,频道基本信息表和频道音频信息表分别如表一和表二所示。表一:频道标识频道名称视频类型视频PIDPCRPID001CCTV1Ox1bOx200Ox200002CCTV2Ox1bOx201Ox201表二:频道标识频道名称音频类型音频PID001CCTV1Ox03Ox28a002CCTV2Ox03Ox28b如表一和表二所示,在频道信息统计表中存在CCTV1和CCTV2的音视频信息。当确定目标频道后,根据目标频道的频道标识查找表一和表二即可确定频道信息统计表中是否存在目标频道的音视频PID信息。例如,当用户由CCTV1切换至CCTV2时,则在表一和表二中查找与CCTV2的频道标识002相关联的音视频信息,当确定频道信息统计表中存在CCTV2的音视频信息后,进入步骤S203。步骤S203:在所述频道信息统计表中提取出所述目标频道的音视频信息。当目标频道为CCTV2时,由于在表一和表二中存在CCTV2的音视频信息,因此可以在表一和表二中直接提取CCTV2的音视频信息,省去了对CCTV2的码流进行解析的时间。以4M高清码流每100ms插入一个PAT表和PMT表为例,可以省去200-300ms时间,对于1S-1.5S的平均换台速度而言可以提高20%效率。步骤S204:根据所述目标频道的音视频信息设置解码器的解码参数,播放所述目标频道的音视频码流。在上述技术方案中预设频道信息统计表,在接收到频道切换指令后,首先查找频道信息统计表中是否存在目标频道的音视频信息,如果存在,则直接根据频道信息统计表中存储的目标频道的音视频信息设置解码器的解码参数,完成频道切换,省去了对目标频道的PAT表和PMT表进行查找和解析的时间,进而减少网络电视频道切换时延,提高用户体验。图3为本发明实施例二网络电视的频道切换方法流程示意图,如图3所示,该方法主要包括以下步骤。步骤S301:根据接收到的频道切换指令,确定将要切换的目标频道。步骤S302:判断在预设的频道信息统计表中是否存在所述目标频道的音视频信息。当在预设的频道信息统计表中存在所述目标频道的音视频信息时,进入步骤S303;否则进入步骤S304。步骤S303:在所述频道信息统计表中提取出所述目标频道的音视频信息,提取出所述目标频道的音视频信息,之后进入步骤S306。步骤S304:对所述目标频道的码流进行解析,在所述目标频道的码流中提取出所述目标频道的音视频信息。例如,用户将要切换的目标频道为CCTV3,由于在表一和表二中不存在CCTV3的音视频信息,因此需要对CCTV3的码流进行缓存和解析,在CCTV3的码流中提取出其音视频信息。步骤S305:将提取出的所述目标频道的音视频信息添加到所述频道信息统计表中。在提取出CCTV3的音视频信息后,将CCTV3的音视频信息添加到频道信息统计表中,完成对频道信息统计表的更新,则当用户下次切换到CCTV3时,可以在频道信息统计表中直接提取出CCTV3的音视频信息,避免对CCTV3的码流再次解析。步骤S306:根据所述目标频道的音视频信息设置解码器的解码参数,播放所述目标频道的音视频码流。在本发明实施例中,当频道信息统计表中存在目标频道的音视频信息时,优选在频道信息统计表中提取出目标频道的音视频信息,以减少本次频道切换时延;当频道信息统计表中不存在目标频道的音视频信息时,对目标频道的码流进行解析,在目标频道的码流中提取出目标频道的音视频信息,并将目标频道的音视频信息添加到频道信息统计表中,以减少下次频道切换时延。容易理解的是,对于初次切换的频道,频道信息统计表中通常不存在其音视频信息,需要对该频道的码流进行解析,并将该频道的音视频信息添加到频道信息统计表中。随着用户的使用,网络电视的频道逐渐添加到频道信息统计表中,将频道信息统计表完善。当然,系统也可以在网络空闲时,在后台逐渐对各个频道的码流进行解析,将解析后的各个频道的音视频信息逐渐添加到频道信息统计表中,实现对频道信息统计表的主动完善。图4为本发明实施例三网络电视的频道切换方法流程示意图,如图4所示,该方法主要包括以下步骤。步骤S401:根据接收到的频道切换指令,确定将要切换的目标频道。步骤S402:判断在预设的频道信息统计表中是否存在所述目标频道的音视频信息。当在预设的频道信息统计表中存在所述目标频道的音视频信息时,进入步骤S403;否则,进入步骤S408。步骤S403:当在预设的频道信息统计表中存在所述目标频道的音视频信息时,判断所述频道信息统计表中所述目标频道的音视频信息的存储时间是否小于预设的老化时间阈值。频道的音视频信息并不是一成不变的,运营商可能根据自己的业务发展需求对频道的音视频信息进行变更。假如在目标频道的音视频信息发生变化后,仍然采用频道信息统计表中存储的目标频道的音视频信息设置解码器,显然会引起解码错误。因此,在本发明实施例中引入了老化时间的概念,其中,老化时间是指频道的音视频信息可能发生变化的时间间隔,其用于预测频道的音视频信息是否发生变化。在本发明实施例中,频道信息统计表中还记录了频道的音视频信息的存储时间,将存储时间与老化时间阈值进行比较,以确定所存储的音视频信息是否老化。例如,预设CCTV1的老化时间阈值为720h,如果频道信息统计表中CCTV1的音视频信息的存储时间小于720h,说明CCTV1的音视频信息很可能未老化;如果频道信息统计表中CCTV1的音视频信息的存储时间大于或等于720h说明CCTV1的音视频信息很可能已经老化。当目标频道的音视频信息的存储时间小于预设的老化时间阈值时,预测目标频道的音视频信息没有发生变更,则进入步骤S404;当目标频道的音视频信息的存储时间大于或等于预设的老化时间阈值时,预测目标频道的音视频信息发生了变更,则进入步骤S405。步骤S404:当目标频道的音视频信息的存储时间小于预设的老化时间阈值时,在所述频道信息统计表中提取出所述目标频道的音视频信息,之后进入步骤S410。步骤S405:当目标频道的音视频信息的存储时间大于或等于预设的老化时间阈值时,对所述目标频道的码流进行解析,在所述目标频道的码流中提取出所述目标频道的音视频信息。当目标频道的音视频信息的存储时间大于或等于预设的老化时间阈值时,说明目标频道的音视频信息可能已经发生变更,则重新对目标频道的码流进行解析,在目标频道的码流中提取出所述目标频道的音视频信息。步骤S406:将在所述目标频道的码流中提取出的所述目标频道的音视频信息与所述频道信息统计表中存储的所述目标频道的音视频信息进行对比,判断所述目标频道的音视频信息是否存在更新。在步骤S403中将目标频道的音视频信息的存储时间与老化时间进行比较,只是预估目标频道的音视频信息发生变更的可能性,即使目标频道的音视频信息的存储时间大于或等于预设的老化时间阈值,目标频道的音视频信息也可能并没有发生变化,此时需要将在目标频道的码流中提取出的音视频信息与频道信息统计表中存储的音视频信息进行对比,以确定目标频道的音视频信息是否存在更新。容易理解的是,在目标频道的码流中提取出的音视频信息为目标频道最新的音视频信息,以此为依据,当在目标频道的码流中提取出的音视频信息与频道信息统计表中存储的所述目标频道的音视频信息相同时,说明目标频道的音视频信息不存在更新;否则,说明目标频道的音视频信息存储更新。其中,当目标频道的音视频信息存在更新时,进入步骤S407;当目标频道的音视频信息不存在更新时,进入步骤S410。步骤S407:当目标频道的音视频信息存在更新时,对所述频道信息统计表中目标频道的音视频信息进行更新,然后进入步骤S410。对频道信息统计表中目标频道的音视频信息进行更新是为了便于用户下次切换到该目标频道时,直接利用频道信息统计表中的音视频信息进行解码。其中,对所述频道信息统计表中目标频道的音视频信息进行更新可以理解为:将频道信息统计表中所存储的目标频道的音视频信息更新为在目标频道的码流中提取出的音视频信息。步骤S408:当在预设的频道信息统计表中不存在所述目标频道的音视频信息时,对所述目标频道的码流进行解析,在所述目标频道的码流中提取出所述目标频道的音视频信息。步骤S409:将提取出的所述目标频道的音视频信息添加到所述频道信息统计表中。步骤S410:根据所述目标频道的音视频信息设置解码器的解码参数,播放所述目标频道的音视频码流。其中,当满足下述条件之一时,用于设置解码器的音视频信息为频道信息统计表中存储的音视频信息:a、频道信息统计表中存在所述目标频道的音视频信息,且所述目标频道的音视频信息没有老化;b、频道信息统计表中存在所述目标频道的音视频信息,所述目标频道的音视频信息已经老化,但所述目标频道的音视频信息不存在更新。当满足下述条件之一时,用于设置解码器的音视频信息为在目标频道的码流中提取出的音视频信息:a、频道信息统计表中不存在所述目标频道的音视频信息;b、频道信息统计表中存在所述目标频道的音视频信息,所述目标频道的音视频信息已经老化,且所述目标频道的音视频信息存在更新。在本发明实施例中,引入音视频信息的老化机制,对频道信息统计表中所存储的音视频信息的准确度进行预测,在减小频道切换时延的同时,降低解码器误解码的概率。需要指出的是,如果将频道的老化时间阈值设置的过长,会导致解码器误解码的概率提高;如果将频道的老化时间阈值设置的过短,会导致对码流的解析过于频繁,加大频道切换时延。因此,为频道设置合理的老化时间阈值可以提高频道切换时的用户体验。由于不同频道的音视频信息的变化频度不同,因此可以为不同的频道分别设置相应的老化时间阈值。另外,频道的音视频信息的变化频度也可能会发生变化,为了达到更好的预测效果,需要对频道的老化时间阈值进行数据修正。在本发明一种可选实施例中,当某频道的音视频信息存在更新时,记录该频道的更新日期和更新时间,根据该频道的更新日期和更新时间,调整其老化时间阈值。因此,频道信息统计表中还包括频道信息变化表,参见表三。表三:频道标识频道名称更新日期更新时间001CCTV110/05/201610:30:00002CCTV220/05/20165:25:20001CCTV112/06/201620:30:00002CCTV225/06/20168:15:12在表三中示出了CCTV1和CCTV2的音视频信息最近两次的更新日期和更新时间,以CCTV1为例,根据其最近两次的更新日期和更新时间进行差值运算,计算出其更新时间间隔为33*24h+10h=802h,因此将CCTV1的老化时间阈值调整为802h。需要指出的是,上述实施例为了描述简洁,以一次更新时间间隔为例进行说明,本领域技术人员为了提高对老化时间阈值更新的准确性,也可以取最近多次更新时间间隔的均值对老化时间阈值进行更新,其均应当落入本发明的保护范围之内。本发明的另一种可选实施例,在一定的时间间隔内统计频道的音视频信息发生更新的次数,以及频道的观看次数,根据频道的更新次数和观看次数,调整频道的老化时间阈值。例如,在一个月内,频道CCTV1被观看了20次,其音视频信息发生了2次变更,CCTV1的标准老化时间为720h,则根据公式Ag=AT*(1-CT/WT)计算出CCTV1的老化时间阈值为648h,即将CCTV1的老化时间阈值调整为648h,AT为标准老化时间,CT为音视频信息的变更次数,WT为频道的观看次数。其中,当频道的观看次数WT为0时,则不对老化时间阈值进行调整。图5为本发明实施例四网络电视的频道切换方法流程示意图,如图5所示,该方法主要包括以下步骤。步骤S501:根据接收到的频道切换指令,确定将要切换的目标频道。步骤S502:判断在预设的频道信息统计表中是否存在所述目标频道的音视频信息。当在预设的频道信息统计表中存在所述目标频道的音视频信息时,进入步骤S503;否则进入步骤S504步骤S503:在所述频道信息统计表中提取出所述目标频道的音视频信息,提取出所述目标频道的音视频信息,之后进入步骤S506步骤S504:对所述目标频道的码流进行解析,在所述目标频道的码流中提取出所述目标频道的音视频信息。步骤S505:将提取出的所述目标频道的音视频信息添加到所述频道信息统计表中。步骤S506:根据所述目标频道的音视频信息设置解码器的解码参数,播放所述目标频道的音视频码流。由于在频道的播放过程中,频道的音视频信息也可能发生变化,因此,在使用已有的音视频信息进行播放时,需要在后台同时启动信息监控流程,监控频道的音视频信息是否发生改变,其监控过程如步骤S507-S509所示。步骤S507:按照预设的第一监测时间间隔,对所述目标频道的码流进行解析,在所述目标频道的码流中提取出所述目标频道的音视频信息。步骤S508:将在所述目标频道的码流中提取出的所述目标频道的音视频信息与所述解码器当前应用的所述目标频道的音视频信息进行对比,判断所述目标频道的音视频信息是否存在更新,当目标频道的音视频信息存在更新时,进入步骤S509;否则,返回步骤S507,在到达下一个第一检测时间间隔时,重新对目标频道的码流进行解析。步骤S509:当所述目标频道的音视频信息存在更新时,根据在所述目标频道的码流中提取出的所述目标频道的音视频信息重新设置所述解码器的解码参数。在本发明实施例中,当发生播放动作时,对当前播放频道的音视频信息进行监测,当发现音视频信息发生变更时,根据新的音视频信息重新设置解码器,所损失的时间只是重新启动一次解码器的时间,对于用户来讲是无感知的,不会对用户体验造成明显影响。另外,当不存在播放动作时,系统没有流量和数据处理的压力,可以启动监控流程,对所有频道的音视频信息进行检测。具体为:按照预设的第二时间间隔分别对各个频道的码流进行解析,在所述各个频道的码流中提取出所述各个频道的音视频信息,其中,所述各个频道包括所述频道信息统计表中存储的部分或全部频道;分别将在所述各个频道的码流中提取出的所述各个频道的音视频信息与所述频道信息统计表中存储的所述各个频道的音视频信息进行对比,判断所述各个频道的音视频信息是否存在更新;当第一频道的音视频信息存在更新时,根据在所述第一频道的码流中提取出的所述第一频道的音视频信息更新所述频道信息统计表中存储的所述第一频道的音视频信息,所述第一频道为所述各个频道中的任意一个。当然,如果系统的数据处理能力较强,在存在播放动作时,也可以按照一定的时间间隔对各个频道的音视频信息进行监测,其均应当落入本发明的保护范围之内。采用本发明实施例所提供的频道切换方法,在接收到频道切换指令后,首先查找频道信息统计表中是否存在目标频道的音视频信息,如果存在,则直接根据频道信息统计表中存储的目标频道的音视频信息设置解码器的解码参数,完成频道切换,省去了对目标频道的PAT表和PMT表进行查找和解析的时间,进而减少网络电视频道切换时延,提高用户体验。在上述方法实施例的基础上,本发明还提供了一种终端实施例,该终端的具体形式可以为网络机顶盒或具有网络电视模块的电视机。图6为本发明实施例提供的一种终端的结构示意图,如图6所示,所述终端600可以包括:处理器601、存储器602及通信单元603。这些组件通过一条或多条总线进行通信,本领域技术人员可以理解,图中示出的服务器的结构并不构成对本申请的限定,它既可以是总线形结构,也可以是星型结构,还可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中,所述通信单元603,用于建立通信信道,从而使所述存储设备可以与其它设备进行通信。接收其他设备发是的用户数据或者向其他设备发送用户数据。所述处理器601,为存储设备的控制中心,利用各种接口和线路连接整个电子设备的各个部分,通过运行或执行存储在存储器602内的软件程序和/或模块,以及调用存储在存储器内的数据,以执行电子设备的各种功能和/或处理数据。所述处理器可以由集成电路(IntegratedCircuit,简称IC)组成,例如可以由单颗封装的IC所组成,也可以由连接多颗相同功能或不同功能的封装IC而组成。举例来说,处理器601可以仅包括中央处理器(CentralProcessingUnit,简称CPU)。在本申请实施方式中,CPU可以是单运算核心,也可以包括多运算核心。所述存储器602,用于存储处理器601的执行指令,存储器602可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。当存储器602中的执行指令由处理器601执行时,使得终端600能够执行以下上述方法实施例中的部分或全部步骤。具体实现中,本申请还提供一种计算机存储介质,其中,该计算机存储介质可存储有程序,该程序执行时可包括本申请提供的呼叫方法的各实施例中的部分或全部步骤。所述的存储介质可为磁碟、光盘、只读存储记忆体(英文:read-onlymemory,简称:ROM)或随机存储记忆体(英文:randomaccessmemory,简称:RAM)等。本领域的技术人员可以清楚地了解到本申请实施例中的技术可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本申请实施例中的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例或者实施例的某些部分所述的方法。本说明书中各个实施例之间相同相似的部分互相参见即可。尤其,对于终端实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例中的说明即可。以上所述的本申请实施方式并不构成对本申请保护范围的限定。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1