一种视频处理方法及装置的制造方法

文档序号:9567517阅读:293来源:国知局
一种视频处理方法及装置的制造方法
【技术领域】
[0001]本发明涉及视频处理技术领域,尤其涉及一种视频处理方法及装置。
【背景技术】
[0002]随着网络事业文化的发展,音视频资源极大丰富,对音视频文件流化处理也是越来越普遍。
[0003]音视频流化的基本的流程如下:首先将要处理的音视频文件解封装成视频帧序列和音频帧序列;然后对视频帧序列和音频帧序列分别解码为RAW格式数据;对于解码得到的RAW格式数据根据需要再进行编码,编码成所需要的视频帧序列和音频帧序列;对编码后的视频帧序列和音频帧序列根据所需流媒体文件参数的要求对其进行分割;最后将分割后的视频帧序列和音频帧序列封装成所需要的流媒体文件序列。
[0004]在将音视频文件流化成所需要的流媒体文件序列时,可能出现多数流媒体文件的视频帧序列的首帧不是I帧,从而在缺少前一个流媒体文件时,该流媒体文件的视频帧序列的首个I帧之前的帧不能被解码。

【发明内容】

[0005]本发明实施例提供一种视频处理方法及装置,包括如下技术方案:
[0006]根据本发明实施例的第一方面,提供一种视频处理方法,包括:
[0007]在将视频对应的画面组文件进行解码得到图像文件时,若解码到当前画面组文件中的最后一个关键帧,则获取下一个画面组文件;
[0008]判断所述下一个画面组文件中首个关键帧之前是否存在非关键帧;
[0009]在判断存在所述非关键帧时,确定所述当前画面组文件中最后一个关键帧及之后的所有帧、和所述非关键帧组成一个帧块;
[0010]对所述帧块进行解码,并在所述当前画面组对应的图像文件中保存所述最后一个关键帧及之后的所有帧对应的图像,在所述下一个画面组文件对应的图像文件中保存所述非关键帧对应的图像。
[0011 ] 在一个实施例中,所述方法还包括:
[0012]在对所述下一个画面组文件对应的图像文件进行编码得到流媒体文件时,将所述下一个画面组文件对应的图像文件中的第一帧图像编码成关键帧。
[0013]在一个实施例中,所述画面组文件的帧数大于所述流媒体文件的帧数。
[0014]在一个实施例中,所述画面组文件的帧数是所述流媒体文件的帧数的整数倍。
[0015]在一个实施例中,所述关键帧之后的所有帧、和所述非关键帧中包括前向预测帧和/或双向预测内插帧。
[0016]根据本发明实施例的第二方面,提供一种视频处理装置,包括:
[0017]获取模块,用于在将视频对应的画面组文件进行解码得到图像文件时,若解码到当前画面组文件中的最后一个关键帧,则获取下一个画面组文件;
[0018]判断模块,用于判断所述下一个画面组文件中首个关键帧之前是否存在非关键帧;
[0019]确定模块,用于在判断存在所述非关键帧时,确定所述当前画面组文件中最后一个关键帧及之后的所有帧、和所述非关键帧组成一个帧块;
[0020]保存模块,用于对所述帧块进行解码,并在所述当前画面组对应的图像文件中保存所述最后一个关键帧及之后的所有帧对应的图像,在所述下一个画面组文件对应的图像文件中保存所述非关键帧对应的图像。
[0021 ] 在一个实施例中,所述装置还包括:
[0022]编码模块,用于在对所述下一个画面组文件对应的图像文件进行编码得到流媒体文件时,将所述下一个画面组文件对应的图像文件中的第一帧图像编码成关键帧。
[0023]在一个实施例中,所述画面组文件的帧数大于所述流媒体文件的帧数。
[0024]在一个实施例中,所述画面组文件的帧数是所述流媒体文件的帧数的整数倍。
[0025]在一个实施例中,所述关键帧之后的所有帧、和所述非关键帧中包括前向预测帧和/或双向预测内插帧。
[0026]本发明的实施例提供的技术方案可以包括以下有益效果:
[0027]上述技术方案,在将视频对应的画面组文件进行解码得到图像文件时,若解码到当前画面组文件中的最后一个关键帧,则获取下一个画面组文件,判断下一个画面组文件中首个关键帧之前是否存在非关键帧;在判断存在非关键帧时,确定当前画面组文件中最后一个关键帧及之后的所有帧、和非关键帧组成一个帧块;对该帧块进行解码,并在当前画面组对应的图像文件中保存最后一个关键帧及之后的所有帧对应的图像,在下一个画面组文件对应的图像文件中保存非关键帧对应的图像,这样,保证画面组文件都可以正常进行编解码。
[0028]应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本发明。
【附图说明】
[0029]此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。
[0030]图1是根据一示例性实施例示出的视频处理方法的流程图。
[0031]图2是根据一示例性实施例示出的另一种视频处理方法的流程图。
[0032]图3是根据一示例性实施例示出的视频处理装置的框图。
[0033]图4是根据一示例性实施例示出的另一种视频处理装置的框图。
【具体实施方式】
[0034]这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本发明相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本发明的一些方面相一致的装置和方法的例子。
[0035]本发明实施例提供了一种视频处理方法,该方法可用于分布式处理系统中,如图1所示,该方法包括步骤S101-S104:
[0036]在步骤S101中,在将视频对应的画面组文件进行解码得到图像文件时,若解码到当前画面组文件中的最后一个关键帧,则获取下一个画面组文件;
[0037]在步骤S102中,判断下一个画面组文件中首个关键帧之前是否存在非关键帧;
[0038]在步骤S103中,在判断存在非关键帧时,确定当前画面组文件中最后一个关键帧及之后的所有帧、和非关键帧组成一个帧块;
[0039]在步骤S104中,对帧块进行解码,并在当前画面组对应的图像文件中保存最后一个关键帧及之后的所有帧对应的图像,在下一个画面组文件对应的图像文件中保存非关键帧对应的图像。
[0040]在该实施例中,在将视频对应的画面组文件进行解码得到图像文件时,若解码到当前画面组文件中的最后一个关键帧,则获取下一个画面组文件,判断下一个画面组文件中首个关键帧之前是否存在非关键帧;在判断存在非关键帧时,确定当前画面组文件中最后一个关键帧及之后的所有帧、和非关键帧组成一个帧块;对该帧块进行解码,并在当前画面组对应的图像文件中保存最后一个关键帧及之后的所有帧对应的图像,在下一个画面组文件对应的图像文件中保存非关键帧对应的图像,这样,保证画面组文件都可以正常进行编解码和播放。
[0041 ] 如图2所示,在一个实施例中,方法还包括步骤S201:
[0042]在步骤S201中,在对下一个画面组文件对应的图像文件进行编码得到流媒体文件时,将下一个画面组文件对应的图像文件中的第一帧图像编码成关键帧。
[0043]在该实施例中,在对画面组文件对应的图像文件进行编码,得到流媒体文件时,将画面组文件对应的图像文件的第一帧图像编码成关键帧,这样,保证流媒体文件的首帧为关键帧I帧,从而使得流媒体文件能够进行正常的编解码和播放。
[0044]在一个实施例中,画面组文件的帧数大于流媒体文件的帧数。
[0045]在该实施例中,画面组文件的帧数大于流媒体文件的帧数,比如,画面组文件的帧数为1500帧,流媒体文件的帧数为250帧。
[0046]在一个实施例中,画面组文件的帧数是流媒体文件的帧数的整数倍。
[0047]在该实施例中,画面组文件的帧数是流媒体文件的帧数的整数倍,比如,画面组文件的帧数为1500帧,流媒体文件的帧数为250帧,这样,一个画面组文件可以分成6个流媒体文件。
[0048]在一个实施例中,关键帧之后的所有帧、和非关键帧中包括前向预测帧和/或双向预测内插帧。
[0049]关键帧即为I帧,除了关键帧,还包括前向预测帧(P帧)和/或双向预测内插帧(B 帧)。
[0050]其中,I帧的特点为:
[0051]1)它是一个全帧压缩编码帧。它将全帧图像信息进行JPEG压缩编码及传输;
[0052]2)解码时仅用I帧的数据就可重构完整图像;
[0053]3) I帧描述了图像背景和运动主体的详情;
[0054]4) I帧不需要参考其他画面而生成;
[0055]5) I帧是P帧和B帧的参考帧(其质量直接影响到同组中以后各帧的质量);
[0056]6) I帧是帧组GOP的基础帧(第一帧),在一组中只有一个I帧;
[0057]7) I帧不需要考虑运动矢量;
[0058]8) I帧所占数据的信息量比较大。
[0059]P帧的预测与重构
[0060]P帧是以I帧为参考帧,在I帧中找出P帧“某点”的预测值和运动矢量,取预测差值和运动矢量一起传送。在接收端根据运动矢量从I帧中找出P帧“某点”的预测值并与差值相加以得到P帧“某点”样值,从而可得到完整的P帧。
[0061]P帧特点:
[0062]1)P帧是I帧后面相隔1?2帧的编码帧;
[0063]2) P帧采用运动补偿的方法传送它与前面的I或P帧的差值及运动矢量(预测误差);
[0064]3)解码时必须将I帧中的预测值与预测误差求和后才能重构完整的P帧图像;
[0065]4)P帧属于前向预测的帧间编码,它只参考前面最靠近它的I帧或P帧;
[0066]5)P帧可以是其后面P帧的参考帧,也可以是其前后的B帧的参考帧;
[0067
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1