电视节目播放方法及播放装置制造方法

文档序号:8006444阅读:261来源:国知局
电视节目播放方法及播放装置制造方法
【专利摘要】本发明公开了一种电视节目播放方法及播放装置,所述方法包括下述步骤:预设消息队列,用来存储节目播放参数;在接收到用户的节目播放命令时,获取该节目播放命令对应的节目播放参数,并插入到所述消息队列中;根据所述消息队列所处状态立即或延时播放所述消息队列中有效的节目播放参数对应的电视节目。本发明利用消息队列实现电视节目的播放,从而减少了电视节目播放对CPU等系统资源的占用和浪费,提高了系统资源利用率。
【专利说明】电视节目播放方法及播放装置
【技术领域】
[0001 ] 本发明涉及数字电视处理技术,具体地说,是涉及电视节目播放方法及播放装置。【背景技术】
[0002]电视节目播放是数字电视机顶盒、数字电视一体机等电视播放终端的最基本功能,而用户通过遥控器或控制面板按键进行电视节目换台也是最基本的用户操作。现有电视播放终端在执行电视节目播放时,通常的处理方式为:在一个线程(或者称之为任务)里通过一个无条件循环来查询是否有节目播放命令,若有则执行节目播放。为了防止连续换台的情况下不断地执行节目播放、导致CPU被严重占用而影响用户操作体验的问题,会在无条件循环中加一个固定的Sleep延时,在延时时间到达时才会执行节目播放。
[0003]但是,这种电视节目播放方法存在以下缺点:
(I)不能快速响应用户的节目播放操作。例如,当用户按下换台按键时,可能该线程中的无条件循环正处在Sleep延时状态,只有Sleep结束后才能开始查询和执行节目播放。
[0004](2)浪费CPU等系统资源。线程中的无条件循环一直在运行,即使中间通过Sle印延时释放了 CPU,但由于整个电视播放终端运行过程中,用户换台时间是很少很少的,在非延时过程中仍然会占用大量的CPU等系统资源。

【发明内容】

[0005]本发明的目的是提供一种电视节目播放方法及播放装置,利用消息队列实现电视节目的播放,从而减少了电视节目播放对CPU等系统资源的占用。
[0006]为实现上述发明目的,本发明提供的电视节目播放方法采用下述技术方案予以实现:
一种电视节目播放方法,所述方法包括下述步骤:
a、预设消息队列,用来存储节目播放参数;
b、在接收到用户的节目播放命令时,获取该节目播放命令对应的节目播放参数,并插入到所述消息队列中;
C、根据所述消息队列所处状态立即或延时播放所述消息队列中有效的节目播放参数对应的电视节目。
[0007]如上所述的播放方法,所述消息队列预设有第一状态,所述第一状态为所述消息队列的初始化状态以及在设定时间内所述消息队列中无有效节目播放参数的状态,在所述步骤c中,若所述消息队列处在所述第一状态,则立即播放所述消息队列中有效的节目播放参数对应的电视节目。
[0008]如上所述的播放方法,为提高连续换台时节目播放速度,所述消息队列预设有第二状态,所述第二状态为所述消息队列在所述第一状态下接收到新的有效节目播放参数而进入的状态,在所述步骤c中,若所述消息队列处在所述第二状态,则延时播放所述消息队列中有效的节目播放参数对应的电视节目。[0009]如上所述的播放方法,为保证正常播放最后一个节目,在所述步骤c中,若所述消息队列处在所述第二状态,在所述设定时间到达后,播放所述消息队列中最后接收到的有效节目播放参数对应的电视节目。
[0010]其中,所述设定时间从所述消息队列进入所述第二状态的时刻开始计时。
[0011]如上所述的播放方法,为进一步降低节目播放对系统资源的占用,在所述消息队列处在所述第二状态时,若在所述设定之间为未接收到新的有效节目播放参数,或在播放最后接收到的有效节目播放参数对应的电视节目之后,退出所述第二状态,进入所述第一状态。
[0012]如上所述的播放方法,在执行完所述有效的节目播放参数对应的电视节目之后,将该电视节目对应的节目播放参数设置为无效。
[0013]为实现前述发明目的,本发明提供的电视节目播放装置采用下述技术方案予以实现:
一种电视节目播放装置,所述装置包括:
节目播放命令接收单元,用于接收用户的节目播放命令;
节目播放参数获取及写入单元,与所述节目播放命令接收单元相连接,用于获取所述节目播放命令接收单元所接收的节目播放命令对应的节目播放参数,并将节目播放参数写入至消息队列;
消息队列,与所述节目播放参数获取及写入单元相连接,用于存储节目播放参数;
节目播放执行单元,与所述消息队列相连接,用于根据所述消息队列所处状态立即或延时播放所述消息队列中有效的节目播放参数对应的电视节目。
[0014]如上所述的播放装置,所述消息队列预设有第一状态和第二状态,所述第一状态为所述消息队列的初始化状态以及在设定时间内所述消息队列中无有效节目播放参数的状态,所述第二状态为所述消息队列在所述第一状态下接收到新的有效节目播放参数而进入的状态,若所述消息队列处在所述第一状态,所述节目播放执行单元立即播放所述消息队列中有效的节目播放参数对应的电视节目,若所述消息队列处在所述第二状态,所述节目播放执行单元延时播放所述消息队列中有效的节目播放参数对应的电视节目。
[0015]优选的,若所述消息队列处在所述第二状态,在所述设定时间到达后,所述节目播放执行单元播放所述消息队列中最后接收到的有效节目播放参数对应的电视节目。
[0016]与现有技术相比,本发明的优点和积极效果是:本发明通过设置消息队列,既能够存储与节目播放命令相关的节目播放参数,又具有延时处理功能,且以消息方式反映电视节目播放命令,与现有无条件循环查询播放命令的处理方式相比,不占用CPU等系统资源,提高了系统资源的利用率。
[0017]结合附图阅读本发明的【具体实施方式】后,本发明的其他特点和优点将变得更加清
λ.Μ
/E.ο
【专利附图】

【附图说明】
[0018]图1是本发明电视节目播放方法一个实施例的流程图;
图2是本发明电视节目播放方法另一个实施例的流程图;
图3是本发明电视节目播放装置一个实施例的结构框图。【具体实施方式】
[0019]下面结合附图和【具体实施方式】对本发明的技术方案作进一步详细的说明。
[0020]请参考图1,该图所示为本发明电视节目播放方法一个实施例的流程图。
[0021 ] 如图1所示,该实施例执行电视节目播放的过程如下:
步骤101:流程开始。
[0022]步骤102:预设消息队列。
[0023]为实现消息方式进行电视节目播放,该实施例预先设置有消息队列,用来存储节目播放参数。
[0024]步骤103:接收用户的节目播放命令,获取该节目播放命令对应的节目播放参数,并插入到消息队列中。
[0025]在接收到用户通过遥控器或电视控制面板输入的节目播放命令时,先获取与节目播放命令相对应的节目播放参数,如视频PID、音频PID等,以便根据节目播放参数执行相应电视节目的播放。然后,将节目播放参数插入到消息队列中。
[0026]步骤104:根据消息队列所处状态立即或延时播放消息队列中有效的节目播放参数对应的电视节目。
[0027]在消息队列中存在有效的节目播放参数时,可以直接使用该节目播放参数播放相应的电视节目。
[0028]通过设置消息队列,能够存储与节目播放命令相关的节目播放参数,且以消息这种信号量的方式来反映电视节目播放命令,与现有无条件循环查询播放命令的处理方式相t匕,不占用CPU等系统资源,提高了系统资源的利用率。而且,消息队列还具有暂时存储、延时处理的功能,因而,可以为消息队列设置不同的状态,根据状态的不同立即或延时播放电视节目,以满足用户对连续换台时的节目播放处理。根据消息队列的状态立即或延时处理的具体实现方法可参考图2实施例。
[0029]请参考图2,该图所示为本发明电视节目播放方法另一个实施例的流程图。在该实施例中,仍然设置消息队列,而且,消息队列预设有两种状态,分别是作为第一状态的永久等待状态和作为第二状态的延时等待状态。
[0030]如图2所示,该实施例执行电视节目播放的过程如下:
步骤201:流程开始。
[0031]步骤202:设置消息队列为永久等待状态。
[0032]在系统初始化时,预设消息队列的状态为永久等待状态。在该永久等待状态下,不需要循环查询是否存在节目播放命令,因而不会占用CPU等系统资源。
[0033]步骤203:接收用户的节目播放命令,获取该节目播放命令对应的节目播放参数,并插入到消息队列中。
[0034]在接收到用户通过遥控器或电视控制面板输入的节目播放命令时,先获取与节目播放命令相对应的节目播放参数,如视频PID、音频PID等,以便根据节目播放参数执行相应电视节目的播放。然后,将节目播放参数插入到消息队列中。
[0035]步骤204:判定是否消息队列中是否存在消息。若存在,执行步骤205 ;若不存在,继续执行步骤203。[0036]在存在用户节目播放命令时,会产生与该命令相对应的消息,该消息被插入到消息队列中。如果存在消息,说明用户发出了节目播放的命令。如果不存在消息,说明不存在用户要执行节目播放的命令,则执行步骤203,继续接收用户的节目播放命令。当然,本领域技术人员应当理解,这里所说的用户节目播放命令,对于开机后进入开机画面、不执行某个节目播放的电视系统来说,是用户通过遥控器或电视控制面板发出的播放某个指定节目的命令,而对于开机后根据记忆功能直接播放上次关机时的节目的电视系统来说,则是指用户通过遥控器或电视控制面板发出的换台命令。
[0037]步骤205:在存在消息时,判断消息队列是否为永久等待状态。若是,执行步骤206 ;若否,转至步骤207。
[0038]步骤206:在消息队列处于永久等待状态、且消息队列中存在新的消息时,立即播放消息队列中有效的节目播放参数对应的电视节目,然后将该节目播放参数设置为无效;同时,消息队列进入延时等待状态,计时器开始计时。然后,转至步骤208。
[0039]消息队列在永久等待状态下接收到新的消息时,消息队列中的消息所对应的节目播放参数为有效参数,为快速响应用户的节目播放命令,则立即播放该有效的节目播放参数对应的电视节目,确保第一次换台(或节目播放)按键命令得到及时响应。而且,每次执行完节目播放后,将该播放的节目所对应的节目播放参数设置为无效,避免对消息队列的占用及产生节目播放误动作。
[0040]此外,考虑到用户在执行连续换台操作时,希望尽早看到节目画面、整个换台过程要流畅不卡顿、将中间的频道尽可能多的播放出来,为满足用户的这些要求,该实施例为消息队列设置了延时等待的第二状态。而且,在永久等待状态下接收到新的消息、立即播放了相应的电视节目之后,控制消息队列进入延时等待状态,且计时器开始计时。永久等待及延时等待这两种状态,可以通过不同的变量值进行表征和赋值。而延时等待对应的延时时间为预设的一个设定时间,计时器的计时时间也是该设定时间。这个设定时间为两次节目播放的最大时间间隔,可以根据系统运行性能、用户对节目播放速度的要求具体设定,例如,可设定为1000ms。
[0041]步骤207:如果在步骤205中判断消息队列不是永久等待状态,则消息队列为延时等待状态。
[0042]如上所述,消息队列状态的判断可以通过预设的状态变量值来进行。在该实施例中,消息队列只有两种状态,如果不是永久等待状态,则处于延时等待状态。
[0043]消息队列处于延时等待状态时,如果接收到新的节目播放命令,仍然将新的节目播放命令对应的节目播放参数插入到消息队列中,但不响应该节目的播放操作。而且,在消息队列的延时等待状态过程中,用新的节目播放参数覆盖旧的、未响应的节目播放参数。
[0044]步骤208:判断延时时间是否已到。如果未到,继续在延时等待;若时间已到,执行步骤209。
[0045]步骤209:在延时时间到达时,判断消息队列中是否有新的有效节目播放参数。若有,执行步骤210 ;否则,转至步骤202。
[0046]利用计时器判断延时时间到达时,判断消息队列中是否有新的有效节目播放参数。如果没有,说明在延时时间内用户未发出新的节目播放命令。此情况下,为减少资源的占用,同时为快速响应下一次的节目播放命令,转至步骤202,将消息队列的状态再设置为永久等待状态,重新从永久等待状态开始节目播放的控制处理过程。
[0047]步骤210:在延时时间到达、且消息队列中有新的有效节目播放参数时,播放消息队列中最后接收到的有效节目播放参数对应的电视节目,然后将该节目播放参数设置为无效。然后,转至步骤202。
[0048]如步骤206所述,在消息队列的永久等待状态下接收到新的有效节目播放参数,将立即执行该节目的播放,然后将该节目播放参数设置为无效,同时控制消息队列进入延时等待状态。在延时等待状态过程中,如果再接收到有效节目播放参数,说明在设定的延时时间内用户又发出了换台的节目播放命令。由于延时时间表征的是两次换台的最大时间间隔,所以,在延时时间到达时,仅播放消息队列中最后接收到的有效节目播放参数对应的电视节目。如果中间还存在有其他节目播放命令,表明用户执行的是连续换台操作,为避免每个台均响应而造成的不流畅,将这些中间节目播放命令对应的节目过滤掉,不再播放。如果用户不是连续换台,而仅是在延时时间内执行了一次换台操作,也能够确保该节目正常播放出来。
[0049]在执行完最后一个节目播放命令之后,将该节目播放参数设置为无效,然后,转至步骤202,将消息队列的状态再设置为永久等待状态,重新从永久等待状态开始节目播放的控制处理过程。
[0050]该实施例为消息队列设置永久等待和延时等待这两个状态,并结合节目播放的执行控制消息队列在这两个状态之间不断变换,既能保证立即执行用户首次发出的节目播放命令所对应的节目的播放,提高节目播放响应速度,又能确保在速度较快的连续换台过程中略掉部分节目的播放、以保证连续换台的流畅性,且能够保证用户发出的最后一个节目播放命令对应的节目被正常播放出来,满足用户的观看需求。而且,整个播放处理过程占用CPU等系统资源较少,提高了系统资源的利用率。
[0051]图3示出了本发明电视节目播放装置一个实施例的结构框图。
[0052]如图3所示,该实施例的电视节目播放装置包括有节目播放命令接收单元31、节目播放参数获取及写入单元32、消息队列33及节目播放执行单元34,各单元之间的连接关系及每个单元的功能如下:
节目播放命令接收单元31,用于接收用户的节目播放命令;
节目播放参数获取及写入单元32,与节目播放命令接收单元31相连接,用于获取节目播放命令接收单元31所接收的节目播放命令对应的节目播放参数,并将节目播放参数写入至与之相连接的消息队列33中;
消息队列33,与节目播放参数获取及写入单元32相连接,用于存储节目播放参数;以

节目播放执行单元34,与消息队列33相连接,用于根据消息队列所处状态立即或延时播放所述消息队列中有效的节目播放参数对应的电视节目。该节目播放执行单元34可以按照图2所示的电视节目播放方法执行节目的播放,以提高节目播放速度和流畅度,又不占用电视系统过多的硬件资源。
[0053]以上实施例仅用以说明本发明的技术方案,而非对其进行限制;尽管参照前述实施例对本发明进行了详细的说明,对于本领域的普通技术人员来说,依然可以对前述实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或替换,并不使相应技术方案的本质脱离本发明所要求保护的技术方案的精神和范围。
【权利要求】
1.一种电视节目播放方法,其特征在于,所述方法包括下述步骤: a、预设消息队列,用来存储节目播放参数; b、在接收到用户的节目播放命令时,获取该节目播放命令对应的节目播放参数,并插入到所述消息队列中; C、根据所述消息队列所处状态立即或延时播放所述消息队列中有效的节目播放参数对应的电视节目。
2.根据权利要求1所述的播放方法,其特征在于,所述消息队列预设有第一状态,所述第一状态为所述消息队列的初始化状态以及在设定时间内所述消息队列中无有效节目播放参数的状态,在所述步骤c中,若所述消息队列处在所述第一状态,则立即播放所述消息队列中有效的节目播放参数对应的电视节目。
3.根据权利要求2所述的播放方法,其特征在于,所述消息队列预设有第二状态,所述第二状态为所述消息队列在所述第一状态下接收到新的有效节目播放参数而进入的状态,在所述步骤c中,若所述消息队列处在所述第二状态,则延时播放所述消息队列中有效的节目播放参数对应的电视节目。
4.根据权利要求3所述的播放方法,其特征在于,在所述步骤c中,若所述消息队列处在所述第二状态,在所述设定时间到达后,播放所述消息队列中最后接收到的有效节目播放参数对应的电视节目。
5.根据权利要求4所述的播放方法,其特征在于,所述设定时间从所述消息队列进入所述第二状态的时刻开始计时。
6.根据权利要求4所述的播放方法,其特征在于,在所述消息队列处在所述第二状态时,若在所述设定之间为未接收到新的有效节目播放参数,或在播放最后接收到的有效节目播放参数对应的电视 节目之后,退出所述第二状态,进入所述第一状态。
7.根据权利要求1至6中任一项所述的播放方法,其特征在于,在执行完所述有效的节目播放参数对应的电视节目之后,将该电视节目对应的节目播放参数设置为无效。
8.—种电视节目播放装置,其特征在于,所述装置包括: 节目播放命令接收单元,用于接收用户的节目播放命令; 节目播放参数获取及写入单元,与所述节目播放命令接收单元相连接,用于获取所述节目播放命令接收单元所接收的节目播放命令对应的节目播放参数,并将节目播放参数写入至消息队列; 消息队列,与所述节目播放参数获取及写入单元相连接,用于存储节目播放参数; 节目播放执行单元,与所述消息队列相连接,用于根据所述消息队列所处状态立即或延时播放所述消息队列中有效的节目播放参数对应的电视节目。
9.根据权利要求8所述的播放装置,其特征在于,所述消息队列预设有第一状态和第二状态,所述第一状态为所述消息队列的初始化状态以及在设定时间内所述消息队列中无有效节目播放参数的状态,所述第二状态为所述消息队列在所述第一状态下接收到新的有效节目播放参数而进入的状态,若所述消息队列处在所述第一状态,所述节目播放执行单元立即播放所述消息队列中有效的节目播放参数对应的电视节目,若所述消息队列处在所述第二状态,所述节目播放执行单元延时播放所述消息队列中有效的节目播放参数对应的电视节目。
10.根据权利要求9所述的播放装置,其特征在于,若所述消息队列处在所述第二状态,在所述设定时间到达后,所述节目播放执行单元播放所述消息队列中最后接收到的有效节目播放参 数对应的电视节目。
【文档编号】H04N21/65GK103428581SQ201310396568
【公开日】2013年12月4日 申请日期:2013年9月4日 优先权日:2013年9月4日
【发明者】田友强 申请人:青岛海信宽带多媒体技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1