本发明涉及数字电视领域,尤其涉及一种屏蔽电视节目频道的方法及装置。
背景技术:
随着电视技术的不断发展,高清晰度的数字电视为广大消费群体带来了不一样的视听享受,越来越多的数字电视机进入到了普通家庭中,电视频道的模拟信号也逐渐被数字信号所取代。
然而,由于同一个地方有很多电视台,不同电视台可能在转发同一个DTV(Digital TV,数字电视)节目源所提供的电视节目,但是发射的频点不一样,这样就会造成电视可以搜索到很多不同的频道,其一直都播放相同的数字电视节目,严重影响用户的电视体验。
在现有技术中,数字电视在电视频道搜索完毕后,一般是通过遥控器或电视机壳上的按键开关进行频道切换。在节目播放的过程中,当用户发现有重复节目的频道后,主要是通过遥控器上的删除按键对重复节目的频道依次进行手动删除。所以,现有技术对于播放重复节目的频道的处理方式费时费力,用户体验较差。
技术实现要素:
为解决相关技术问题,本发明提供一种屏蔽电视节目频道的方法及装置,避免了相同数字电视节目的不同频道同时出现的现象,提升了用户体验。
为实现上述目的,本发明实施例采用如下技术方案:
第一方面,本发明实施例提供了一种屏蔽电视节目频道的方法,所述方法包括:
根据频道搜索指令对接收到的节目码流包进行解码;
根据解码结果分别获取各路节目传输流中的电视节目标识,所述电视节目标识至少包括所述电视节目的信号源在节目传输流中添加的标识;
若识别出存在相同电视节目标识的至少两个频道,则对所述至少一个频道进行屏蔽处理。
第二方面,本发明实施例提供了一种屏蔽电视节目频道的装置,所述装置包括:
解码模块,用于根据频道搜索指令对接收到的节目码流包进行解码;
标识获取模块,用于根据解码结果分别获取各路节目传输流中的电视节目标识,所述电视节目标识至少包括所述电视节目的信号源在节目传输流中添加的标识;
频道屏蔽模块,用于若识别出存在相同电视节目标识的至少两个频道,则对所述至少一个频道进行屏蔽处理。
本技术方案中,根据频道搜索指令对接收到的节目码流包进行解码后,可获取各路节目传输流中的电视节目标识,其中,所述电视节目标识至少包括电视节目的信号源在节目传输流中添加的标识,该标识可唯一确定电视节目所在的传输流,为识别是否存在相同电视节目的频道提供依据。根据电视节目标识若识别出存在相同节目标识的至少两个频道,则对至少一个频道进行屏蔽处理,避免了相同数字电视节目的不同频道同时出现的现象,提升了用户的电视体验。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对本发明实施例描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据本发明实施例的内容和这些附图获得其他的附图。
图1为本发明实施例一提供的一种屏蔽电视节目频道的方法的流程图;
图2为本发明实施例二提供的一种屏蔽电视节目频道的方法的流程图;
图3为本发明实施例三提供的一种屏蔽电视节目频道的装置的结构框图。
具体实施方式
为使本发明解决的技术问题、采用的技术方案和达到的技术效果更加清楚,下面将结合附图对本发明实施例的技术方案作进一步的详细描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例一
图1为本发明实施例一提供的一种屏蔽电视节目频道的方法的流程图。本实施例的方法可以由屏蔽电视节目频道的装置来执行,其中该装置可由软件和/或硬件实现,一般可集成在数字电视一体机或机顶盒中。如图1所述,该方法可以包括如下步骤:
S110:根据频道搜索指令对接收到的节目码流包进行解码。
其中,频道搜索指令主要指由用户发起的对所接收到的所有电视节目频道的搜索指令。
示例性的,用户在第一次使用数字电视一体机或机顶盒时需要对所有电视频道进行搜索。或者在数字电视一体机或机顶盒的使用过程中,用户也可对电视频道进行搜索以更新现有的电视频道。示例性的,用户可通过数字电视一体机或机顶盒的遥控器或电视机上的控制面板输入频道搜索指令,数字电视一体机或机顶盒在接收到该指令后作出相应的响应。或者,部分电视一体机或机顶盒中还设置了通过用户输入的切换频道操作来自动触发电视频道搜索指令。
其中,数字电视一体机或机顶盒响应频道搜索指令的过程即是先扫描频点,得到各频点对应的频道,而后从该频点接收节目码流包,而后对接收到的节目码流包进行解码,确定该频道的相关频道信息。本发明实施例中的码流包指传输流(Transport Stream,TS)数据包,其是由打包的视频或音频基本码流经过再次打包而形成的复合码流包。在传输流数据包中携带有不同节目的不同视频和音频信息。通过解码处理后可将复合码流包解码为多个传输流,每个传输流可含有一个或多个电视节目。
S120:根据解码结果分别获取各路节目传输流中的电视节目标识,所述电视节目标识至少包括电视节目的信号源在节目传输流中添加的标识。
示例性的,电视节目的信号源在节目传输流中添加的标识为传输流标识,具体可表示为TSI(Transport Stream ID)。在不同传输流的节目专用信息(Program Specific Information,PSI)中,TSI是不同的。由于TSI具有唯一性,因此,通过TSI可识别出数字电视节目的传输流是否相同。
具体的,解码后的TSI是一串十六进制的数字。比较TSI的方式是对每个数字按位进行比较,若每位数字都相同,表示TSI相同,也可是表示发送电视节目的传输流相同。
示例性的,电视节目标识还可进一步包括电视节目所在频道的虚拟频道号信息以及频道名信息。其中,虚拟频道号是指电视节目的信号源在节目传输流中为同一个频道的节目添加的标识,可用于区分两个不同的频道。虚拟频道号的表示形式也是一串十六进制的数字。示例性的,由于虚拟频道号可以标识原始电视台A,因此当存在多个电视台随意转发同一个原始电视台A的电视节目时,用户可搜索到两个相同频道A1和A2的情况,通过虚拟频道号也可识别频道A1和A2是为相同的频道。
需要注意的是,虚拟频道号可与电视节目在电视屏幕界面所显示的频道号对应,但并不是一一对应的关系。具体的,电视中所显示的频道号是呈现给用户用于区分不同节目所在不同频道的一个特征,例如中央一套在频道1、中央二套在频道2或者湖南卫视在频道3等。而对于一直播放相同电视节目的频道(例如上述频道A1和A2播放的节目一直相同),虽然呈现给用户的频道号(A1和A2)不同,但该不同频道号(A1和A2)对应的虚拟频道号是相同的,都表示转发电视台A的电视节目。因此,虚拟频道号也可作为识别相同电视节目的两个频道是否同时出现(两个频道的所有电视节目一直都相同)的标识。
具体的,在解码节目码流包后不同节目的频道名是以统一码(Unicode)的形式来表示。本领域技术人员可以理解的是:统一码是计算机科学领域里的一项业界标准,是由国际组织制定的可以将全球的字符以数字的形式进行编码的方案。在本发明实施例中,判断频道名是否相同也是通过按位比较的方式将代表频道名的十六进制数依次进行比较。只要有一位数字不同,则频道名不同。
电视节目标识的确定可为识别是否存在相同电视节目标识的至少两个频道提供数据基础。
S130:若识别出存在相同电视节目标识的至少两个频道,则对至少一个频道进行屏蔽处理。
其中,通过相同电视节目标识可唯一确定一个频道。在一般情况下,不同频道的电视节目标识不同。
示例性的,对于一些管理不严格地区,由于存在多个电视台,不同电视台转发同一个数字电视节目源所提供的电视节目的频点不一样,导致同时出现相同电视节目标识的多个频道。例如,A电视台以63兆的频率转发C电视台提供的节目C;而B电视台以69兆的频率也转发了C电视台提供的节目C。由于节目C都由C电视台提供,因此节目C的电视节目标识是确定的,A电视台和B电视台转发过程中并不能随意更改。因此,在接收到A电视台和B电视台发送的电视节目后,用户在换台的过程中将会出现播放相同电视节目C的两个频道,且这两个频道一直播放的节目一直相同。因此,当上述情况出现时,可通过对电视节目进行搜索,将其中一个频道屏蔽。
示例性的,对于具有相同电视节目标识的至少两个频道,对至少一个频道进行屏蔽处理的方式可为删除具有相同电视节目标识的至少一个频道,而非用户依次手动删除。这样可以使得用户在换台的过程中,不同频道播放的电视节目并不完全相同,用户可根据自己的需求进行选择性观看,进而提升了用户体验。
需要说明的是,本发明实施例中的电视节目均为数字电视节目。只对于数字电视节目才存在具有相同电视节目标识的至少两个频道的情况。示例性的,由于数字电视一体机也可接收到模拟电视节目,因此在搜索到所有电视节目后,可通过调用函数If(Is_DTV())区分模拟电视节目与数字电视节目。
本发明实施例提供了一种屏蔽电视节目频道的方法,在接收到频道搜索指令后,通过对接收到的节目码流包进行解码可获取各路节目传输流中的电视节目标识,为判断是否存在相同电视节目的频道的识别提供依据。其中,所述电视节目标识至少包括电视节目的信号源在节目传输流中添加的标识,该标识可唯一确定电视节目所在的传输流。通过对电视节目标识进行识别后,若判断出存在相同节目标识的至少两个频道,则对至少一个频道进行屏蔽处理,避免了相同数字电视节目的不同频道同时出现的现象,提升了用户的电视体验。
实施例二
图2为本发明实施例二提供的一种屏蔽电视节目频道的方法的流程图。本实施例二在实施例一的基础上,对步骤“若识别出存在相同电视节目标识的至少两个频道,则对至少一个频道进行屏蔽处理”进行了优化,参照图2,本发明实施例二具体包括如下步骤:
S210:根据频道搜索指令对接收到的节目码流包进行解码。
S220:根据解码结果保存所有电视节目的频道信息,并保存数字电视节目的电视节目标识。
其中,所有电视节目的频道信息包括传输流的个数、不同频道对应的频率点。频道信息的保存是为了用户在转台时根据频率点进行转台,并可获知转台后的频道名以及频道总数。
需要注意的是,保存所有电视节目的频道信息是在频道搜索过程中(未完成搜索时),且通过增加频率的形式可以搜索到节目频道的情况下进行的。其中,判断频道搜索是否完成可通过调用函数(If(Auto_Search_Finished(fq)))来执行。
示例性的,每增加1兆赫兹的频率,可搜索到一个电视节目的频道。通过增加频率判断是否搜到电视节目频道也可通过调用函数:If(Search_Channel_ok())来执行。当判断出搜索到电视节目的频道时,则通过调用函数Save_channel_info()保存电视节目的频道信息。若未搜索到电视节目频道,则继续执行频道搜索指令。示例性的,若频道搜索已经完成,将通过调用函数Exit_Auto_Search()自动退出节目搜索指令。
示例性的,保存数字电视节目的电视节目标识包括保存数字电视节目的传输流标识、虚拟频道号信息以及频道名信息。保存的介质优选为电视主板的Flash存储器。具体的,可通过调用以下函数对电视节目标识分别进行保存:
Save_virtual_number();//保存虚拟频道号
Save_channel_name();//保存频道名
Save_TSI();//保存传输流标识
通过保存电视节目标识,可为下一步识别是否存在相同节目的至少两个频道提供依据。通过将三个电视节目标识相结合,可提高识别率。
S230:根据解码结果分别获取各路节目传输流中的电视节目标识。
S240:识别是否存在相同电视节目的至少两个频道,若是,则执行S250;否则,执行步骤S210。
S250:基于预设算法,获取传输流标识信息、虚拟频道号信息以及频道名信息均相同的至少两个频道作为目标频道。
示例性的,预设算法优选为冒泡法。其具体执行方法如下:
读取已经保存的所有数字电视节目频道的虚拟频道号信息、频道名信息以及传输流标识并保存的一个数组中。从第一个电视节目的频道1开始将第一个电视节目的频道1与第二个电视节目的频道2的虚拟频道号信息、频道名信息以及传输流标识分别进行比较,若存在三个标识均相同的情况,则将频道1与频道2作为目标频道。若存在其中一个标识不同,则继续比较第三个电视节目的频道3,直到比较完所有电视节目的频道,并将电视节目标识均相同的电视节目频道作为目标频道。
示例性的,确定目标频道的算法也可以为其他比较算法,本实施例在此不做具体限定。
S260:在目标频道中保留一个频道作为当前频道,并将当前频道之外的其他频道进行屏蔽。
示例性的,在目标频道中保留一个频道作为当前频道,并将当前频道之外的其他频道进行屏蔽包括:将当前频道的状态设置为添加状态(Add),并将其他频道的状态设置为跳过状态(Skip);在切换频道控制过程中,根据添加状态或跳过状态对相应的频道进行添加处理或跳过处理。其中,添加状态表示在接收到用户所触发的频道加减指令后可以转到的频道,而跳过状态表示频道加减不可以转到的频道。
对于上述步骤所举事例,若识别出频道1、频道2和频道3为具有相同电视节目标识,则将频道3作为当前频道进行保留,频道1和频道2作为其他频道进行跳过。通过上述操作,当获取到用户频道加减的换台指令后,避免了相同电视节目的频道重复出现的现象,给用户带来了良好地操作体验,增加了市场竞争力。
本领域技术人员可以理解的是,可以通过编写保留当前频道并且屏蔽其他频道的C代码,并在屏蔽相同电视节目的频道时调用该代码来实现。通过采用软件编程的方式,在给用户提供方便的同时也可达到降低成本的效果。
具体的,C代码可以具体为以下形式:
本实施例二在上述实施例的基础上,通过比较所有数字电视节目的节目标识,可确定出目标频道。通过保留目标频道中的一个频道作为当前频道,而将与当前频道具有相同电视节目标识的其他频道屏蔽后,可以解决相同电视节目的频道重复出现的现象,不仅提升了用户体验,也提高了市场竞争力。
实施例三
图3为本发明实施例三提供的一种屏蔽电视节目频道的装置的结构框图。该装置可由软件和/或硬件实现,一般可集成在数字电视一体机或机顶盒中。如图3所示,该装置包括:解码模块310、标识获取模块320和频道屏蔽模块330。
其中,解码模块310,用于根据频道搜索指令对接收到的节目码流包进行解码;
标识获取模块320,用于根据解码结果分别获取各路节目传输流中的电视节目标识,所述电视节目标识至少包括所述电视节目的信号源在节目传输流中添加的标识;
频道屏蔽模块330,用于若识别出存在相同电视节目标识的至少两个频道,则对所述至少一个频道进行屏蔽处理。
本发明实施例提供了一种屏蔽电视节目频道的装置,在接收到频道的搜索指令后,通过对接收到的节目码流包进行解码可获取各路节目传输流中的电视节目标识,为判断是否存在相同电视节目的频道的识别提供依据。其中,所述电视节目标识至少包括电视节目的信号源在节目传输流中添加的标识,该标识可唯一确定电视节目所在的传输流。通过对电视节目标识进行识别后,若判断出存在相同节目标识的至少两个频道,则对至少一个频道进行屏蔽处理,避免了相同数字电视节目的不同频道同时出现的现象,提升了用户的电视体验。
在上述实施例的基础上,所述电视节目的信号源在节目传输流中添加的标识为传输流标识;所述电视节目标识还包括所述电视节目所在频道的虚拟频道号信息以及频道名信息。
在上述实施例的基础上,该装置还包括:保存模块,用于根据频道搜索指令对接收到的节目码流包进行解码之后,根据解码结果保存所有电视节目的频道信息,并保存数字电视节目的电视节目标识。
在上述实施例的基础上,所述频道屏蔽模块包括:目标频道获取单元,用于基于预设算法,获取所述传输流标识、所述虚拟频道号信息以及所述频道名信息均相同的至少两个频道作为目标频道;屏蔽处理单元,用于在所述目标频道中保留一个频道作为当前频道,并将所述当前频道之外的其他频道进行屏蔽。
在上述实施例的基础上,所述预设算法为冒泡算法。
在上述实施例的基础上,所述屏蔽处理单元具体用于:将所述当前频道的状态设置为添加状态,并将所述其他频道的状态设置为跳过状态;在切换频道控制过程中,根据所述添加状态或跳过状态对相应的频道进行添加处理或跳过处理。
本发明实施例提供的屏蔽电视节目频道的装置可执行本发明任意实施例所提供的屏蔽电视节目频道的方法,具备执行方法相应的功能模块和有益效果。未在上述实施例中详尽描述的技术细节,可参见本发明任意实施例所提供的屏蔽电视节目频道的方法。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。