视频压缩方法和设备的制造方法_2

文档序号:9691355阅读:来源:国知局
0、步骤S240、步骤S242、步骤S244、步骤S246和步骤S250。其中步骤S210、步骤S230和步骤S250与上述视频压缩方法100中的对应步骤类似,为了简洁,在此不再赘述。
[0034]在步骤S230之前,视频压缩方法200可以包括步骤S205,检测多个处理器的计算能力。可以在硬件上电时,进行硬件设备自检,从而检测多个处理器的计算能力。由此,可以评估计算资源的可用性。
[0035]可选地,检测多个处理器的计算能力进一步包括:检测多个处理器的数目、多个处理器中的核心的数目和/或多个处理器中的核心的主频。处理器的数目越多,处理器中的核心数越多,核心的主频越高,则处理器的计算能力越强。
[0036]在步骤S230中,将视频切片分发到多个处理器可以根据多个处理器的计算能力。
[0037]处理器的数目显著影响计算能力。可选地,根据处理器的数目将视频切片分发到多个处理器。假如处理器的数目较少,而视频切片的数目较多,那么可以为每个处理器分多个视频切片。
[0038]在本发明的一些场景中,可以对很多个视频文件同时进行视频压缩。这些视频文件的分辨率可以是不同的,例如分辨率为3840X2160和4096X2160像素的超高清数字视频、分辨率为1920X1080像素的全高清数字视频。可选地,将超高清数字视频分发给计算能力较高的处理器,例如其中核心较多、主频较高的处理器。而将全高清数字视频分发给计算能力较低的处理器,例如其中核心较少、主频较低的处理器。
[0039]在本发明的另一些场景中,可以将一个视频文件压缩为不同分辨率的视频文件。例如将一个蓝光视频文件分别压缩为全高清数字视频和分辨率为720X480的数字视频。通常,前者需要较多计算量,后者需要较少计算量。可以将前者分发给计算能力较高的处理器,而将后者分发给计算能力较低的处理器。
[0040]检测处理器的计算能力并且根据该计算能力分发视频切片的处理任务,可以有效利用每个处理器的计算能力,让每一个处理器物尽其用。并且,由于处理器能够能者多劳,所以能够尽可能同时完成各自的处理任务,避免因为短板效应导致个别处理器等待的情况,提高了视频压缩设备的压缩速度。
[0041]在对视频切片进行压缩之后,方法200可以进一步包括步骤S240,检查经压缩的视频切片的压缩结果。压缩结果可以包括很多方面,例如经压缩的视频切片的视频帧数、大小和/或视频质量评估值。压缩结果能够作为压缩操作质量评估的依据。
[0042]视频文件的压缩前后,期望视频切片的视频帧数保持不变。假设压缩后,视频切片的视频帧数发生了变化,那么很有可能是压缩发生了错误。检查视频切片的视频帧数能够一定程度上保证压缩操作的正确性。
[0043]视频切片的大小是指视频切片的数据量大小。例如,原始视频文件的大小为300GB,期望压缩后的视频文件为3GB。则期望的压缩率为1%。对于视频文件的每个视频切片,期望其压缩率要低于1 %。压缩率是压缩操作的硬性指标,如果达不到压缩率要求,那么压缩操作就是失败的。检查视频切片的大小保证了压缩目标的实现。
[0044 ]视频切片的视频质量评估值是指能够表征视频质量的参数,例如峰值信噪比(PSNR)和结构相似性指标(SSIM)等。视频质量评估值有效地表征了压缩操作完成后所获得的视频切片的质量。压缩的目的是减小视频文件的大小,但不能以视频无法观看为代价,这样就失去了压缩的意义。检查视频质量评估值有效保证了压缩操作对视频质量没有过多的不利影响,提高了用户体验。
[0045]在方法200的步骤S242中,根据压缩结果,调整多个处理器中的、与压缩结果不符合预定条件的视频切片对应的处理器的压缩参数。
[0046]如果在步骤S240中检查到视频切片的压缩结果不符合预定条件,那么可以将这次压缩获得的经压缩的视频切片丢弃。可以根据压缩结果调整压缩该视频切片的(即与之对应的)处理器的压缩参数,以在再次执行压缩操作时,生成压缩结果理想的视频切片。压缩参数可以包括:量化因子值、关键帧间隔、目标码率等。
[0047]根据一个示例,对于视频切片的大小小于期望值的视频切片,将与之对应的处理器的目标码率降低和/或增大量化因子值。对于视频质量评估值低于期望的阈值的视频切片,将与之对应的处理器的目标码率增大和/或减小量化因子值。
[0048]根据一个示例,对于视频切片的大小和视频质量评估值都满足预定条件的情况,将场景切换的帧作为关键帧,从而调整关键帧间隔。将场景切换的帧作为关键帧,其不依赖于其他帧而独立压缩,有效减小了压缩的计算量;此外,还有效提高了该关键帧以及该关键帧与其相邻关键帧之间的帧的画质。
[0049]方法200可以进一步包括步骤S244,将压缩结果不符合预定条件的视频切片再次分别分发到与之对应的处理器,以进行重新压缩。
[0050]将与压缩结果不符合预定条件的原始视频切片(未经压缩的)再次分发到与之对应的处理器(先前所分发的处理器),再次重新压缩。因为处理器的压缩参数已经根据上次压缩结果进行调整,所以再次压缩时能够获得理想的经压缩的视频切片。
[0051]上述步骤S240、步骤S242和步骤S244通过对压缩结果进行检测并根据压缩结果调整处理器以重新压缩视频切片,保证了视频文件的压缩质量。
[0052]可以理解,上述步骤S242并不是必须的。如果步骤S242不存在,那么步骤S244中,可以将压缩结果不符合预定条件的视频切片再次分别分发到多个处理器中的任意处理器,例如非与之对应的处理器。根据本发明一个示例,压缩前后视频切片的视频帧数发生了改变,那么可以判断出压缩过程发生了问题,可以直接将原始的视频切片重新分发给多个处理器中的任意处理器来重新压缩。这样可以避免因为处理器原因导致的压缩结果不理想,也能够在一定程度上保证视频文件的压缩质量。
[0053]在步骤S240检查经压缩的视频切片的压缩结果之后,方法200还可以进一步包括步骤S246,释放多个处理器中的、与压缩结果符合预定条件的视频切片对应的处理器。及时释放处理器,避免无谓占用计算资源。当存在新的视频文件待压缩时,即可利用已经释放的处理器。从而,使整个系统的资源被更有效的利用。
[0054]本领域普通技术人员可以理解,上述视频压缩方法仅为示例,并不够构成对本发明的限制。例如,虽然在视频压缩方法200中,步骤S205先于步骤S210执行,但其执行顺序并非受此限制。步骤S210可以先于步骤S205执行。步骤S205还可以与步骤S210—起执行,以节约时间成本。
[0055]根据本发明另一方面,还提供了一种视频压缩设备。图3示出了根据本发明一个实施例的视频压缩设备300的示意性框图。如图3所示,该视频压缩设备300包括切分装置310、分发装置330和重组装置350。
[0056]切分装置310用于对视频文件进行切片处理,以获得视频切片。可选地,切分装置310根据视频文件的画面组或者视频场景切换对视频文件进行切片处理。分发装置330用于将视频切片分发到多个处理器,以由多个处理器对分到的视频切片进行压缩。重组装置350用于重组经压缩的视频切片。
[0057]多个处理器可以是数字信号处理器。多个处理器可以分别集成在多个板卡上。每个板卡上集成有至少一个处理器。板卡包括网络接口,用于与视频压缩设备通信。
[0058]该视频压缩设备300还可以包括处理器检测装置。处理器检测装置用于检测所述多个处理器的计算能力。处理器检测装置可以配置为检测多个处理器的数目、多个处理器中的核心的数目和/或多个处理器中的核心的主频。分发装置将视频切片分发到多个处理器是根据多个处理器各自的计算能力。
[0059]该视频压缩设备300
当前第2页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1