一种视频播放方法及装置制造方法

文档序号:7799883阅读:147来源:国知局
一种视频播放方法及装置制造方法
【专利摘要】本发明实施例公开了一种视频播放方法及装置,应用于移动终端,该方法包括:从目标视频文件播放开始,检测预设时长内目标视频文件的视频解码帧数;判断目标视频文件帧解码速度是否小于目标视频文件帧播放速度;在目标视频文件帧解码速度小于目标视频文件帧播放速度的情况下,丢弃目标视频文件中尚未解码的非参考帧,对目标视频文件中尚未解码的参考帧进行解码;对已解码的所述目标视频文件中的参考帧进行播放。应用本发明实施例,预先对目标视频文件中尚未解码的非参考帧进行丢弃,在进行后续视频播放的过程中,就不需要对丢弃的视频帧进行解码和播放,解决了视频播放过程中,出现的视频播放卡顿的现象,提高了用户观看视频的体验效果。
【专利说明】一种视频播放方法及装置
【技术领域】
[0001]本发明涉及移动终端视频播放领域,特别涉及一种视频播放方法及装置。
【背景技术】
[0002]移动终端(例如手机、笔记本电脑、平板电脑等)的迅速发展,让人们可以随时随地进行视频的播放。
[0003]现有技术中的视频播放方法,通常是预先设置视频音画同步时间点,在视频播放的过程中,CPU (Central Processing Unit,中央处理器)对视频的音频巾贞和视频巾贞进行解码,在视频音画同步时间点对音频帧和视频帧进行同步,同步完成后,继续视频的音频帧和视频帧解码和播放。
[0004]但是,上述的视频播放方法,在某些情况下,视频播放过程中,就会出现视频播放卡顿的现象,严重影响用户观看视频的体验。
[0005]例如,在利用低配置手机观看高清视频时,由于手机性能的限制造成对视频的解码能力不足,即对视频帧的解码速度达不到视频帧的正常播放速度,在这种情况下,为了达到音画同步的效果,就需要将视频停止播放,等待CPU对视频帧的解码,当解码的视频帧的时间戳到达音画同步时间点时,从该时间点,继续视频的播放。
[0006]例如,某视频共60秒,正常播放帧率25帧/秒,在第10秒末进行音画同步时,音频帧播放到250帧,视频帧播放到225帧,此时视频将停止播放,直到第226帧至第250帧的视频帧被解码完成,视频从第10秒末重新继续播放。

【发明内容】

[0007]本发明实施例的目的在于提供一种视频播放方法及装置,以解决视频播放过程中,出现的视频播放卡顿的现象,提高用户观看视频的体验效果。
[0008]为达到上述目的,本发明实施例公开了一种视频播放方法,应用于移动终端,包括:
[0009]从目标视频文件播放开始,对预设时长内目标视频文件的视频解码帧数进行检测;
[0010]根据检测出的结果,判断单位时间内目标视频文件的视频解码帧数是否小于预先获得的目标视频文件帧率;
[0011]在单位时间内目标视频文件的视频解码帧数小于预先获得的目标视频文件帧率的情况下,丢弃目标视频文件中尚未解码的非参考帧,不进行解码,对目标视频文件中尚未解码的参考帧进行解码;
[0012]对已解码的所述目标视频文件中的参考帧进行播放;
[0013]其中,非参考帧指IPB编码时不需参考的帧。
[0014]较佳的,所述目标视频文件帧率的预先获得,包括:
[0015]在未对目标视频文件播放之前,获得目标视频文件帧率;或[0016]在目标视频文件开始播放之后、且在判断操作之前,获得目标视频文件帧率;
[0017]其中,所述判断操作为
[0018]判断单位时间内目标视频文件的视频解码帧数是否小于预先获得的目标视频文件帧率。
[0019]较佳的,所述丢弃目标视频文件中尚未解码的非参考帧,不进行解码,对目标视频文件中尚未解码的参考帧进行解码,包括:
[0020]判断目标视频文件中尚未解码的各个视频帧是否为非参考帧;
[0021 ] 在目标视频文件中尚未解码的视频帧为非参考帧的情况下,丢弃目标视频文件中尚未解码的非参考帧,不进行解码;
[0022]对目标视频文件中尚未解码的参考帧进行解码。
[0023]较佳的,所述判断目标视频文件中尚未解码的各个视频帧是否为非参考帧,包括:
[0024]判断目标视频文件中尚未解码的各个视频帧的帧类型是否属于非参考帧;或
[0025]判断目标视频文件中尚未解码的各个视频帧的帧头是否含有非参考帧所特有的标识。
[0026]较佳的,所述对已解码的所述目标视频文件中的参考帧进行播放,包括:
[0027]根据检测出的预设时长内目标视频文件的视频解码帧数,计算目标视频文件视频帧解码速度,对已解码的所述目标视频文件中的参考帧以计算出的解码速度进行播放。
[0028]较佳的,所述对已解码的所述目标视频文件中的参考帧进行播放,包括:
[0029]对已解码的所述目标视频文件中的参考帧以目标视频文件帧率进行播放,其中,被丢弃的非参考帧处图像按照与其相邻的前一参考帧图像进行显示。
[0030]为达到上述目的,本发明实施例还公开了一种视频播放装置,应用于移动终端,包括:
[0031]检测模块,用于从目标视频文件播放开始,对预设时长内目标视频文件的视频解码帧数进行检测;
[0032]判断模块,用于根据检测出的结果,判断单位时间内目标视频文件的视频解码帧数是否小于预先获得的目标视频文件帧率;
[0033]解码模块,用于在判断模块判断结果为是的情况下,丢弃目标视频文件中尚未解码的非参考帧,不进行解码,对目标视频文件中尚未解码的参考帧进行解码;
[0034]播放模块,用于对已解码的所述目标视频文件中的参考帧进行播放;
[0035]其中,非参考帧指IPB编码时不需参考的帧。
[0036]较佳的,所述目标视频文件帧率的预先获得,包括:
[0037]在未对目标视频文件播放之前,获得目标视频文件帧率;或
[0038]在目标视频文件开始播放之后、且在判断操作之前,获得目标视频文件帧率;
[0039]其中,所述判断操作为
[0040]判断单位时间内目标视频文件的视频解码帧数是否小于预先获得的目标视频文件帧率。
[0041]较佳的,所述解码模块,包括:判断子模块、丢弃子模块和解码子模块;
[0042]所述判断子模块,用于判断目标视频文件中尚未解码的各个视频帧是否为非参考帧;
[0043]所述丢弃子模块,用于在判断子模块判断为是的情况下,丢弃目标视频文件中尚未解码的非参考帧,不进行解码;
[0044]所述解码子模块,用于对目标视频文件中尚未解码的参考帧进行解码。
[0045]较佳的,所述判断子模块,具体用于:
[0046]判断目标视频文件中尚未解码的各个视频帧的帧类型是否属于非参考帧;或
[0047]判断目标视频文件中尚未解码的各个视频帧的帧头是否含有非参考帧所特有的标识。
[0048]较佳的,所述播放模块,具体用于:
[0049]根据检测出的预设时长内目标视频文件的视频解码帧数,计算目标视频文件视频帧解码速度,对已解码的所述目标视频文件中的参考帧以计算出的解码速度进行播放。
[0050]较佳的,所述播放模块,具体用于:
[0051]对已解码的所述目标视频文件中的参考帧以目标视频文件帧率进行播放,其中,被丢弃的非参考帧处图像按照与其相邻的前一参考帧图像进行显示。
[0052]由上述的技术方案可见,本发明实施例提供一种视频播放方法及装置,应用于移动终端,从目标视频文件播放开始,就对预设时长内目标视频文件的视频解码帧数进行检测,根据检测出的结果,判断单位时间内目标视频文件的视频解码帧数是否小于预先获得的目标视频文件帧率,在单位时间内目标视频文件的视频解码帧数小于预先获得的目标视频文件帧率的情况下,预先对目标视频文件中尚未解码的非参考帧进行丢弃,不进行解码,只对目标视频文件中尚未解码的参考帧进行解码,在进行后续视频播放的过程中,就不需要对丢弃的视频帧进行解码和播放,解决了视频播放过程中,出现的视频播放卡顿的现象,提高了用户观看视频的体验效果。
【专利附图】

【附图说明】
[0053]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0054]图1为本发明实施例提供的一种视频播放方法的流程示意图;
[0055]图2为本发明实施例提供的一种视频播放装置的结构示意图。
【具体实施方式】
[0056]下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0057]下面通过具体实施例,对本发明进行详细说明。
[0058]需要说明的是,本发明实施例所提供一种视频播放方法适用于移动终端。在实际应用中,该移动终端可以为智能手机、笔记本电脑、平板电脑等。[0059]图1为本发明实施例提供的一种视频播放方法的流程示意图,包括:
[0060]SlOl:从目标视频文件播放开始,对预设时长内目标视频文件的视频解码帧数进行检测;
[0061]S102:根据检测出的结果,判断单位时间内目标视频文件的视频解码帧数是否小于预先获得的目标视频文件帧率,如果是,执行S103,如果否,执行S105 ;
[0062]S103:丢弃目标视频文件中尚未解码的非参考帧,不进行解码,对目标视频文件中尚未解码的参考帧进行解码;
[0063]S104:对已解码的所述目标视频文件中的参考帧进行播放;
[0064]S105:对目标视频文件中尚未解码和播放的视频帧进行解码和播放。
[0065]需要说明的是,非参考帧指IPB编码时不需参考的帧,解码时也不需要参考该帧就可以对其他帧进行解码,如果丢弃了参考帧,后续视频帧的解码需要参考该帧进行解码时,就会导致后续视频帧的解码出现问题,从而导致一段视频不能进行显示,直到解码到下一参考中贞。
[0066]示例性的,在本发明的实施例中,假设目标视频文件A时长30秒,帧率25帧/秒,则目标视频文件A视频共计750帧。
[0067]假设从目标视频文件A播放开始,检测到前2秒内对A共解码视频56帧,则对A的视频帧平均解码速度为56帧/2秒=28帧/秒。
[0068]由此可见,对目标视频文件A的视频帧平均解码速度大于A帧率,此时不会产生音画同步视频卡顿现象的发生,无需对目标视频文件A进行丢帧操作,继续对目标视频文件A中尚未解码和播放的视频帧进行解码和播放即可。
[0069]假设从目标视频文件A播放开始,假设检测到前2秒内对A共解码视频48帧,则对A的视频帧平均解码速度为48帧/2秒=24帧/秒。
[0070]由此可见,对目标视频文件A的视频帧平均解码速度小于A帧率,则丢弃目标视频文件A中尚未解码的非参考帧,不进行解码,对目标视频文件中尚未解码的参考帧进行解码。
[0071]具体的,在丢弃目标视频文件中尚未解码的非参考帧之前,需要对目标视频文件中尚未解码的各个视频帧是否为非参考帧进行判断,在该视频帧为非参考帧的情况下,进行丢弃。
[0072]可以理解的是,判断目标视频文件中的非参考帧的方法有多种,例如:判断目标视频文件中的视频帧类型是否属于非参考帧,当视频帧类型属于非参考帧时,该帧为非参考帧;或者判断目标视频文件中的视频帧的帧头是否含有非参考帧所特有的标识,当视频帧的帧头含有非参考帧所特有的标识时,该帧为非参考帧;当然并不局限于此。
[0073]可以理解的是,对目标视频文件中尚未解码的非参考帧进行丢弃,可以对目标视频文件中尚未解码的各个视频帧进行检测,在检测完成后,对非参考帧一起进行丢弃,也可以每检测到一非参考帧时,即丢弃该帧,继续检测下一视频帧。
[0074]可选的,对目标视频文件帧率的预先获得,可以在目标视频文件开始播放之后、且在判断操作之前获得,其中,该判断操作为:
[0075]判断单位时间内目标视频文件的视频解码帧数是否小于预先获得的目标视频文件帧率。[0076]进一步,可选的,对目标视频文件帧率的预先获得,还可以在未对目标视频文件播放之前获得。例如,对移动终端上保存的文件事先进行分析,将移动终端上的所有视频文件的帧率、时长、文件位置、文件名称等信息保存在数据表中,待进行视频文件帧率比较的时候,从该数据表中提取待判断视频文件的帧率。
[0077]可选的,在本发明的一个具体实现中,当对非参考帧进行一起丢弃完成之后,继续参考帧的解码和播放时,可以根据目标视频文件剩余参考帧数和剩余播放时长,计算目标视频文件播放速度,以计算出的速度对目标视频文件剩余参考帧进行播放。
[0078]示例性的,目标视频文件A视频共计750帧、30秒、帧率25帧/秒,其中,播放前2秒内解码48帧,丢弃的目标视频文件A中尚未解码视频中的非参考帧共58帧,则目标视频文件剩余参考帧数为:750-48-58=644帧,剩余播放时长为:30-2=28秒,则目标视频文件播放速度=644帧/28秒=23帧/秒。即以每秒23帧的播放速度对目标视频文件A的剩余参考帧进行播放。[0079]可选的,在本发明的一个具体实现中,当对已解码的目标视频文件中的参考帧继续进行播放时,可以根据检测出的预设时长内目标视频文件的视频解码帧数,计算目标视频文件视频帧解码速度,对已解码的所述目标视频文件中的参考帧以计算出的解码速度进行播放。
[0080]示例性的,目标视频文件A视频共计750帧、30秒、帧率25帧/秒,其中,播放前2秒内解码48帧,则每秒解码24帧,以对目标视频文件A的解码速度进行剩余视频进行播放,即每秒播放24帧。
[0081]可选的,在本发明的一个具体实现中,当对已解码的目标视频文件中的参考帧继续进行播放时,可以对已解码的所述目标视频文件中的参考帧以目标视频文件帧率进行播放,其中,被丢弃的非参考帧处图像按照与其相邻的前一参考帧图像进行显示。
[0082]示例性的,目标视频文件A视频共计750帧、30秒、帧率25帧/秒,其中,播放前2秒内解码48帧,丢弃的目标视频文件A中尚未解码视频中的非参考帧分别为:第100帧、第117帧、第147帧……。
[0083]以每秒25帧的速度对目标视频文件进行播放,当播放第100帧视频的时候,由于该帧视频已被丢弃,因此该帧处图像显示第99帧的图像,相同的,当播放第117帧视频的时候,该帧处图像显示第116帧的图像,当播放第147帧视频的时候,该帧处图像显示第146帧的图像……。
[0084]应用本发明图1所示实施例,预先对目标视频文件中尚未解码的非参考帧进行丢弃,不进行解码,只对目标视频文件中尚未解码的参考帧进行解码,在进行后续视频播放的过程中,就不需要对丢弃的视频帧进行解码和播放,解决了视频播放过程中,出现的视频播放卡顿的现象,提高了用户观看视频的体验效果。
[0085]图2为本发明实施例提供的一种视频播放装置的结构示意图,包括:检测模块201、判断模块202、解码模块203和播放模块204。
[0086]其中,检测模块201,用于从目标视频文件播放开始,对预设时长内目标视频文件的视频解码帧数进行检测;
[0087]判断模块202,用于根据检测出的结果,判断单位时间内目标视频文件的视频解码帧数是否小于预先获得的目标视频文件帧率;[0088]可选的,对目标视频文件帧率的获得,可以在未对目标视频文件播放之前,获得目标视频文件帧率;或
[0089]在目标视频文件开始播放之后、且在判断操作之前,获得目标视频文件帧率;
[0090]其中,所述判断操作为
[0091]判断单位时间内目标视频文件的视频解码帧数是否小于预先获得的目标视频文件帧率;
[0092]解码模块203,用于在判断模块判断结果为是的情况下,丢弃目标视频文件中尚未解码的非参考帧,不进行解码,对目标视频文件中尚未解码的参考帧进行解码;
[0093]本实施例中的解码模块203,包括:判断子模块、丢弃子模块和解码子模块(图中未示出);
[0094]其中,判断子模块,用于判断目标视频文件中尚未解码的各个视频帧是否为非参考中贞;
[0095]丢弃子模块,用于在判断子模块判断为是的情况下,丢弃目标视频文件中尚未解码的非参考帧,不进行解码;
[0096]解码子模块,用于对目标视频文件中尚未解码的参考帧进行解码;
[0097]其中,判断子模块,具体可以用于:
[0098]判断目标视频文件中尚未解码的各个视频帧的帧类型是否属于非参考帧;或
[0099]判断目标视频文件中尚未解码的各个视频帧的帧头是否含有非参考帧所特有的标识;
[0100]播放模块204,用于对已解码的所述目标视频文件中的参考帧进行播放;
[0101]本实施例中的播放模块204,具体可以用于:
[0102]根据检测出的预设时长内目标视频文件的视频解码帧数,计算目标视频文件视频帧解码速度,对已解码的所述目标视频文件中的参考帧以计算出的解码速度进行播放;
[0103]本实施例中的播放模块204,具体可以用于:
[0104]对已解码的所述目标视频文件中的参考帧以目标视频文件帧率进行播放,其中,被丢弃的非参考帧处图像按照与其相邻的前一参考帧图像进行显示。
[0105]需要说明的是,非参考帧指IPB编码时不需参考的帧,解码时也不需要参考该帧就可以对其他帧进行解码,如果丢弃了参考帧,后续视频帧的解码需要参考该帧进行解码时,就会导致后续视频帧的解码出现问题,从而导致一段视频不能进行显示,直到解码到下一参考中贞。
[0106]应用本发明图2所示实施例,预先对目标视频文件中尚未解码的非参考帧进行丢弃,不进行解码,只对目标视频文件中尚未解码的参考帧进行解码,在进行后续视频播放的过程中,就不需要对丢弃的视频帧进行解码和播放,解决了视频播放过程中,出现的视频播放卡顿的现象,提高了用户观看视频的体验效果。
[0107]需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0108]本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
[0109]本领域普通技术人员可以理解实现上述方法实施方式中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,所述的程序可以存储于计算机可读取存储介质中,这里所称得的存储介质,如:R0M/RAM、磁碟、光盘等。
[0110]以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明 的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
【权利要求】
1.一种视频播放方法,应用于移动终端,其特征在于,所述方法包括: 从目标视频文件播放开始,对预设时长内目标视频文件的视频解码帧数进行检测;根据检测出的结果,判断单位时间内目标视频文件的视频解码帧数是否小于预先获得的目标视频文件帧率; 在单位时间内目标视频文件的视频解码帧数小于预先获得的目标视频文件帧率的情况下,丢弃目标视频文件中尚未解码的非参考帧,不进行解码,对目标视频文件中尚未解码的参考帧进行解码; 对已解码的所述目标视频文件中的参考帧进行播放; 其中,非参考帧指IPB编码时不需参考的帧。
2.根据权利要求1所述的方法,其特征在于,所述目标视频文件帧率的预先获得,包括: 在未对目标视频文件播放之前,获得目标视频文件帧率;或 在目标视频文件开始播放之后、且在判断操作之前,获得目标视频文件帧率; 其中,所述判断操作为 判断单位时间内目标视频文件的视频解码帧数是否小于预先获得的目标视频文件帧率。
3.根据权利要求1所述的方法,其特征在于,所述丢弃目标视频文件中尚未解码的非参考帧,不进行解码,对目标·视频文件中尚未解码的参考帧进行解码,包括: 判断目标视频文件中尚未解码的各个视频帧是否为非参考帧; 在目标视频文件中尚未解码的视频帧为非参考帧的情况下,丢弃目标视频文件中尚未解码的非参考帧,不进行解码; 对目标视频文件中尚未解码的参考帧进行解码。
4.根据权利要求3所述的方法,其特征在于,所述判断目标视频文件中尚未解码的各个视频帧是否为非参考帧,包括: 判断目标视频文件中尚未解码的各个视频帧的帧类型是否属于非参考帧;或 判断目标视频文件中尚未解码的各个视频帧的帧头是否含有非参考帧所特有的标识。
5.根据权利要求1所述的方法,其特征在于,所述对已解码的所述目标视频文件中的参考帧进行播放,包括: 根据检测出的预设时长内目标视频文件的视频解码帧数,计算目标视频文件视频帧解码速度,对已解码的所述目标视频文件中的参考帧以计算出的解码速度进行播放。
6.根据权利要求1所述的方法,其特征在于,所述对已解码的所述目标视频文件中的参考帧进行播放,包括: 对已解码的所述目标视频文件中的参考帧以目标视频文件帧率进行播放,其中,被丢弃的非参考帧处图像按照与其相邻的前一参考帧图像进行显示。
7.一种视频播放装置,应用于移动终端,其特征在于,所述装置包括: 检测模块,用于从目标视频文件播放开始,对预设时长内目标视频文件的视频解码帧数进行检测; 判断模块,用于根据检测出的结果,判断单位时间内目标视频文件的视频解码帧数是否小于预先获得的目标视频文件帧率;解码模块,用于在判断模块判断结果为是的情况下,丢弃目标视频文件中尚未解码的非参考帧,不进行解码,对目标视频文件中尚未解码的参考帧进行解码; 播放模块,用于对已解码的所述目标视频文件中的参考帧进行播放; 其中,非参考帧指IPB编码时不需参考的帧。
8.根据权利要求7所述的装置,其特征在于,所述目标视频文件帧率的预先获得,包括: 在未对目标视频文件播放之前,获得目标视频文件帧率;或 在目标视频文件开始播放之后、且在判断操作之前,获得目标视频文件帧率; 其中,所述判断操作为 判断单位时间内目标视频文件的视频解码帧数是否小于预先获得的目标视频文件帧率。
9.根据权利要求7所述的装置,其特征在于,所述解码模块,包括:判断子模块、丢弃子模块和解码子模块; 所述判断子模块,用于判断目标视频文件中尚未解码的各个视频帧是否为非参考帧;所述丢弃子模块,用于在判断子模块判断为是的情况下,丢弃目标视频文件中尚未解码的非参考帧,不进行解码; 所述解码子模块,用于对目标视频文件中尚未解码的参考帧进行解码。·
10.根据权利要求9所述的装置,其特征在于,所述判断子模块,具体用于: 判断目标视频文件中尚未解码的各个视频帧的帧类型是否属于非参考帧;或 判断目标视频文件中尚未解码的各个视频帧的帧头是否含有非参考帧所特有的标识。
11.根据权利要求7所述的装置,其特征在于,所述播放模块,具体用于: 根据检测出的预设时长内目标视频文件的视频解码帧数,计算目标视频文件视频帧解码速度,对已解码的所述目标视频文件中的参考帧以计算出的解码速度进行播放。
12.根据权利要求7所述的装置,其特征在于,所述播放模块,具体用于: 对已解码的所述目标视频文件中的参考帧以目标视频文件帧率进行播放,其中,被丢弃的非参考帧处图像按照与其相邻的前一参考帧图像进行显示。
【文档编号】H04N21/4405GK103856812SQ201410115032
【公开日】2014年6月11日 申请日期:2014年3月25日 优先权日:2014年3月25日
【发明者】余续刚, 马跃 申请人:北京奇艺世纪科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1