视频解码方法、装置及终端设备制造方法及图纸

技术编号:13790400 阅读:49 留言:0更新日期:2016-10-05 21:48
本申请公开了一种视频解码方法、装置及终端设备,其通过创建并启动多个解码线程,各个解码线程相互独立且并发运行,使得同一时刻可以有多个画面组被解码,相对于现有通过串行方式进行解码的方法,解码速度也相应提高多倍,从而可以实现数据量较大的高清视频文件的在线播放,避免卡顿现象。

【技术实现步骤摘要】

本申请涉及视频处理
,尤其涉及一种视频解码方法、装置及终端设备
技术介绍
随着互联网技术的发展,利用可以访问互联网的终端,用户不仅可以浏览文字、图片信息,还可以观看互联网中的视频文件;相对于将视频文件完全下载至终端后再观看,用户更倾向直接通过浏览器或专用播放器在线观看互联网中的视频文件,不仅方便快捷,还可以节省终端的存储空间。由于播放视频文件前需要对其进行解码操作,以得到每个视频帧对应的图像,故为实现在线播放视频文件,终端需要同时执行解码和播放两种操作,解码得到的各帧图像直接加入播放队列进行播放。现有视频解码方法以画面组(Group of Pictures,GOP)为单位,通过串行方式进行解码,即同一时刻只解码一个GOP,故视频文件的质量越高,即单位时长的视频文件包含的信息量越大,所需的解码时间越长,即解码速度越低。相应的,在应用现有解码技术执行高清视频的在线播放时,极易因视频解码速度小于播放速度而导致视频播放卡顿的现象。因此,如何提高视频解码速度已成为一个亟需解决的技术问题。
技术实现思路
为克服相关技术中存在的问题,本申请提供一种视频解码方法、装置及终端设备。本申请第一方面提供一种视频解码方法;该方法包括:创建并启动多个解码线程;依次读取待解码视频的各个视频帧;当读取到的多个视频帧构成一个画面组时,则触发一个处于空闲状态的解码线程对所述画面组执行解码操作,得到所述画面组中各个视频帧对应的图像。结合第一方面,在第一方面的第一种可行的实施方式中,所述视频解码方法还包括:创建帧存储队列并将读取到的视频帧存入所述帧存储队列;其中,所述帧存储队列的个数大于所述解码线程的个数,且属于同一个画面组的各个视频帧存入同一个帧存储队列。结合第一方面,或者第一方面的第一种可行的实施方式,在第一方面的第二种可行
的实施方式中,所述触发一个处于空闲状态的解码线程对所述画面组执行解码操作包括以下任意一种:触发一个处于空闲状态的解码线程控制软解码器对所述画面组进行解码,和,触发一个处于空闲状态的解码线程控制硬解码器对所述画面组进行解码。结合第一方面,或者第一方面的第一种可行的实施方式,在第一方面的第三种可行的实施方式中,所述视频解码方法还包括:将同一个画面组解码得到的图像存入同一个待渲染队列,并根据每个画面组中的关键视频帧对应的时间戳对各个待渲染队列进行排序;根据排序结果对所述待渲染队列中的图像执行渲染操作。本申请第二方面提供一种视频解码装置;该装置包括:线程配置单元,用于创建并启动多个解码线程;视频读取单元,用于读取待解码视频的各个视频帧;解码控制单元,用于当读取到的多个视频帧构成一个画面组时,触发一个处于空闲状态的解码线程对所述画面组执行解码操作,得到所述画面组中各个视频帧对应的图像。结合第二方面,在第二方面的第一种可行的实施方式中,所述视频解码装置还包括:解码队列控制单元,用于创建帧存储队列并将读取到的视频帧存入所述帧存储队列;其中,所述帧存储队列的个数大于所述解码线程的个数,且属于同一画面组的各个视频帧存入同一个帧存储队列。结合第二方面,或者第二方面的第一种可行的实施方式,在第二方面的第二种可行的实施方式中,所述解码控制单元包括以下至少一种:第一控制子单元,用于触发一个处于空闲状态的解码线程控制软解码器对所述画面组进行解码;第二控制子单元,用于触发一个处于空闲状态的解码线程控制硬解码器对所述画面组进行解码。结合第二方面,或者第二方面的第一种可行的实施方式,在第二方面的第三种可行的实施方式中,所述视频解码装置还包括:排序单元,用于将同一个画面组解码得到的图像存入同一个待渲染队列,并根据每个画面组中的关键视频帧对应的时间戳对各个待渲染队列进行排序;渲染单元,用于根据排序结果对所述待渲染队列中的图像执行渲染操作。本申请第三方面提供一种终端设备;该终端设备包括:处理器,以及用于存储处理器可执行指令的存储器;其中,所述处理器被配置为:创建并启动多个解码线程;读取待解码视频的各个视频帧;当读取到的多个视频帧构成一个画面组时,触发一个处于空闲状态的解码线程对所述画面组执行解码操作,得到所述画面组中各个视频帧对应的图像。结合第三方面,在第三方面的第一种可行的实施方式中,所述处理器还被配置为:创建帧存储队列并将读取到的视频帧存入所述帧存储队列;其中,所述帧存储队列的个数大于所述解码线程的个数,且属于同一个画面组的各个视频帧存入同一个帧存储队列。结合第三方面,或者第三方面的第一种可行的实施方式,在第三方面的第二种可行的实施方式中,为实现触发一个处于空闲状态的解码线程对所述画面组执行解码操作,所述处理器被配置为以下任意一种:触发一个处于空闲状态的解码线程控制软解码器对所述画面组进行解码,和,触发一个处于空闲状态的解码线程控制硬解码器对所述画面组进行解码。结合第三方面,或者第三方面的第一种可行的实施方式,在第三方面的第三种可行的实施方式中,所述处理器还被配置为:将同一个画面组解码得到的图像存入同一个待渲染队列,并根据每个画面组中的关键视频帧对应的时间戳对各个待渲染队列进行排序;根据排序结果对所述待渲染队列中的图像执行渲染操作。由以上技术方案可知,本申请实施例通过创建并启动多个解码线程,各个解码线程相互独立且并发运行,使得同一时刻可以有多个画面组被解码,相对于现有通过串行方式进行解码的方法,解码速度也相应提高多倍,从而可以实现数据量较大的高清视频文件的在线播放,避免卡顿现象。应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。附图说明此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本专利技术的实施例,并与说明书一起用于解释本专利技术的原理。图1是根据一示例性实施例示出的一种视频解码方法的流程图。图2是根据另一示例性实施例示出的一种视频解码方法的流程图。图3是根据一示例性实施例示出的一种视频解码装置的框图。图4是根据另一示例性实施例示出的一种视频解码装置的框图。图5是根据又一示例性实施例示出的一种视频解码装置的框图。图6是根据一示例性实施例示出的一种终端设备的框图。具体实施方式这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本专利技术相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本专利技术的一些方面相一致的装置和方法的例子。图1为本申请实施例提供的一种视频解码方法的流程图。如图1所示,该方法包括以下步骤。S11、创建并启动多个解码线程。线程即执行中的程序指令集合;一个程序的执行可以划分为一个或多个线程,属于同一个程序的多个线程之间相互独立且可以并发执行。相应的,本申请实施例所述的解码线程用于控制解码指令序列的执行,每个解码线程每运行一次,即完成一次解码操作。上述创建解码线程具体包括设置线程入口、申请数据存储空间等操作;启动解码线程包括初始化各个解码线程。本实施例需要创建的解码线程的具体个数可以根据终端的CPU、内存、视频的分辨率等数据动态设定。S12、依次读取待解码视频的各个视频帧。S13、当读取到的多个视频帧构成一个GOP时,触发一个处于空闲本文档来自技高网
...

【技术保护点】
一种视频解码方法,其特征在于,包括:创建并启动多个解码线程;依次读取待解码视频的各个视频帧;当读取到的多个视频帧构成一个画面组时,则触发一个处于空闲状态的解码线程对所述画面组执行解码操作,得到所述画面组中各个视频帧对应的图像。

【技术特征摘要】
1.一种视频解码方法,其特征在于,包括:创建并启动多个解码线程;依次读取待解码视频的各个视频帧;当读取到的多个视频帧构成一个画面组时,则触发一个处于空闲状态的解码线程对所述画面组执行解码操作,得到所述画面组中各个视频帧对应的图像。2.根据权利要求1所述的视频解码方法,其特征在于,还包括:创建帧存储队列并将读取到的视频帧存入所述帧存储队列;其中,所述帧存储队列的个数大于所述解码线程的个数,且属于同一个画面组的各个视频帧存入同一个帧存储队列。3.根据权利要求1或2所述的视频解码方法,其特征在于,所述触发一个处于空闲状态的解码线程对所述画面组执行解码操作包括以下任意一种:触发一个处于空闲状态的解码线程控制软解码器对所述画面组进行解码,和,触发一个处于空闲状态的解码线程控制硬解码器对所述画面组进行解码。4.根据权利要求1或2所述的视频解码方法,其特征在于,还包括:将同一个画面组解码得到的图像存入同一个待渲染队列,并根据每个画面组中的关键视频帧对应的时间戳对各个待渲染队列进行排序;根据排序结果对所述待渲染队列中的图像执行渲染操作。5.一种视频解码装置,其特征在于,包括:线程配置单元,用于创建并启动多个解码线程;视频读取单元,用于读取待解码视频的各个视频帧;解码控制单元,用于当读取到的多个视频帧构成一个画面组时,触发一个处于空闲状态的解码线程对所述画面组执行解码操作,得到所述画面组中各个视频帧对应的图像。6.根据权利要求5所述的视频解码装置,其特征在于,还包括:解码队列控制单元,用于创建帧存储队列并将读取到的视频帧存入所述帧存储队列;其中,所述帧存储队列的个数大于所述解码线程的个数,且属于同一画面组的各个视频帧存入同一个帧存储队列。7.根据权利要求5或6所述的视频解码装置,其特征在于,所述解...

【专利技术属性】
技术研发人员:梁捷马妙魁
申请(专利权)人:广州市动景计算机科技有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1