一种视频帧率定制的系统及方法

文档序号:7555721阅读:214来源:国知局
专利名称:一种视频帧率定制的系统及方法
技术领域
本发明涉及一种视频帧率调节的系统及方法,特别是一种根据用户需求对变帧率格式的视频进行帧率定制调节的系统及方法。
背景技术
:
在制作视频源文件时,经常需要将多个视频文件分别进行剪辑并最终合并为一个视频文件,如果这些视频文件中有定帧率格式的视频(如mp4),同时还有可变帧率格式的视频(如rmvb),简单的合并堆砌将直接造成音画不同步和画面抖动。发明内容:
为了解决上述技术问题,本发明提供了一种视频帧率定制调节的系统,包括:解封装装置,用于对音视频文件进行解封装,从而将所述音视频文件解析为相应的视频帧序列和音频帧序列;视频数据解码装置,用于对所述视频帧序列进行解码,并将所述视频帧序列中的视频帧还原为RAW格式的视频数据;帧率调节装置,根据用户输入的帧率数以一定时间长度为单位对所述RAW格式的视频数据进行帧率的调节,使得经调节后的所述RAW格式的视频数据的帧率等于预定帧率;编码装置,通过对经过所述帧率调节装置调节后的RAW格式的视频数据进行编码,获得经重新编码后的视频帧序列;封装装置,用于对所述经重新编码后的视频巾贞序列和所述首频巾贞序列进行封装。
优选地,所述帧率调节装置根据所述RAW格式的视频数据每一帧的时间戳,以所述一定时间长度为单位,循环处理所述RAW格式的视频数据,使得处理后的所述RAW格式的视频数据的帧率等于所述预定帧率。优选地,所述帧率调节装置计算所述一定时间长度内的RAW格式的视频数据的帧率,并将其与所述预定帧率作·比较,其中,当所述一定时间长度内的RAW格式的视频数据的帧率小于所述预定帧率时,对所述一定时间长度内的RAW格式的视频数据做增帧处理,增加的帧的个数为所述一定时间长度内的视频数据的帧率和所述预定帧率的差值再乘以所述一定时间长度内的视频数据的时长,当所述一定时间长度内的RAW格式的视频数据的帧率大于所述预定帧率时,对所述一定时间长度内的RAW格式的视频数据做删帧处理,删除的帧的个数为所述一定时间长度内的视频数据的帧率和所述预定帧率的差值再乘以所述一定时间长度内的视频数据的时长,当所述一定时间长度内的RAW格式的视频数据的帧率等于所述预定帧率时,对所述一定时间长度内的RAW格式的视频数据不做帧数调整。优选地,在所述增帧处理过程中,所述帧率调节装置计算出需要插入帧的插入点,再复制所述插入点的前一帧,将复制得到的帧插入到所述插入点;所述插入点的计算公式为:n=Nf+ (M-Nf),其中η为在所述一定时间长度内的视频数据中每隔η个帧为一个插入点、Nf为所述一定时间长度内的视频数据的帧率、M为所述预定帧率。优选地,在所述增帧处理过程中,当所述一定时间长度内的视频数据中所有插入点都插入帧后,如果经插入帧后的视频数据的帧率小于所述预定帧率,则所述帧率调节装置继续复制最后一个插入帧,并将复制得到的帧插入到最后一个插入点,直到经插入帧后的视频数据的帧率等于所述预定帧率。
优选地,在所述删帧处理过程中,所述帧率调节装置从所述一定时间长度内的视频数据的第二帧开始,计算每一帧与前一帧的差分值,选取差分值最小的帧作为删除帧,所述删除帧的个数为所述一定时间长度内的视频数据的帧率和所述预定帧率的差值再乘以所述一定时间长度内的视频数据的时长。优选地,帧率设置装置,用于设置所述预定帧率。优选地,用于存储数据的存储装置。优选地,所述一定时间长度为一秒。优选地,所述一定时间长度为一个GOP段。当以一个GOP段视频数据为单位对所述RAW格式的视频数据的帧率进行调整时,能够更有效地保持源视频的质量。优选地,所述视频帧率定制调节系统还包括:帧长调节装置,用于对所述一个GOP段的视频数据中的帧长进行调整。本发明还提供一种视频帧率定制调节的方法,包括:解封装步骤,对音视频文件进行解封装,从而将所述音视频文件解析为相应的音频帧序列和视频帧序列;视频数据解码步骤,对所述视频帧序列进行解码,并将所述视频帧序列中的视频帧还原为RAW格式的视频数据;帧率调节步骤,根据用户输入的帧率数以一定时间长度为单位对所述RAW格式的视频数据进行帧率的调节,使得经调节后所述RAW格式的视频数据的帧率等于预定帧率;编码步骤,通过对经过帧率调节后的RAW格式的视频数据进行编码,获得经重新编码后的视频帧序列;封装步骤,对所述经重新编码后的视频帧序列和所述音频帧序列进行封装。优选地,在所述帧率调节步骤中,根据所述RAW格式的视频数据每一帧的时间戳,以所述一定时间长度为单位,循环处理所述RAW格式的视频数据,使得处理后的所述RAW格式的视频数据的帧率等于预定帧率。

优选地,在所述帧率调节步骤中,计算所述一定时间长度内的RAW格式的视频数据的帧率,并将其与所述预定帧率作比较,其中,当所述一定时间长度内的RAW格式的视频数据的帧率小于所述预定帧率时,对所述一定时间长度内的RAW格式的视频数据做增帧处理,增加的帧的个数为所述一定时间长度内的视频数据的帧率和所述预定帧率的差值再乘以所述一定时间长度内的视频数据的时长;当所述一定时间长度内的RAW格式的视频数据的帧率大于所述预定帧率时,对所述一定时间长度内的RAW格式的视频数据做删帧处理,删除的帧的个数为所述一定时间长度内的视频数据的帧率和所述预定帧率的差值再乘以所述一定时间长度内的视频数据的时长;当所述一定时间长度内的RAW格式的视频数据的帧率等于所述预定帧率时,对所述一定时间长度内的RAW格式的视频数据不做处理。优选地,在所述增帧处理过程中,计算出需要插入帧的插入点,再复制所述插入点的前一帧,将复制得到的帧插入到所述插入点;所述插入点的计算公式为:n=Nf+(M-Nf),其中η为在所述一定时间长度内的视频数据中每隔η个帧为一个插入点、Nf为所述一定时间长度内的视频数据的帧率、M为所述预定帧率。优选地,在所述增帧处理过程中,当所述一定时间长度内的视频数据中所有插入点都插入帧后,如果经插入帧后的视频数据的帧率小于所述预定帧率,则继续复制最后一个插入帧,并将复制所得到的帧插入到最后一个插入点,直到经插入帧后的视频数据的帧率等于所述预定帧率。优选地,在所述删帧处理过程中,从所述一定时间长度内的视频数据的第二帧开始,计算每一帧与前一帧的差分值,选取差分值最小的帧作为删除帧,所述删除帧的个数为所述一定时间长度内的视频数据的帧率和所述预定帧率的差值再乘以所述一定时间长度内的视频数据的时长。优选地,视频帧率定制调节的方法的方法还包括:帧率设置步骤,设置所述预定帧率。优选地,所述一定时间长度为一秒。 优选 地,所述一定时间长度为一个GOP段。优选地,视频帧率定制调节的方法的方法还包括:帧长调节步骤,当所述一个GOP段的视频数据中的帧长不均匀时,在对所述一个GOP段的视频数据进行帧率调整之前对所述一个GOP段的视频数据中的帧长进行调整。


:
图1为本发明实施方式涉及的视频帧率定制调节系统的结构框 图2为本发明实施方式涉及的视频帧率定制调节系统的解封装模块的结构框 图3为本发明实施方式涉及的视频帧率定制调节系统的视频数据解码模块的结构框
图4为本发明实施方式涉及的视频帧率定制调节系统的帧率调节装置的结构框 图5为本发明实施方式涉及的视频帧率定制调节系统的增帧处理单元的处理方法示意 图6为本发明实施方式涉及的视频帧率定制调节系统的增帧处理单元的另一种处理方法示意 图7为本发明实施方式涉及的视频帧率定制调节系统的编码模块的结构框 图8为本发明实施方式涉及的视频帧率定制调节系统的封装模块的结构框 图9为本发明实施方式涉及的视频帧率定制调节流程 图10为本发明实施方式涉及的步骤S12的流程 图11为本发明实施方式涉及的步骤S13的流程 图12为本发明实施方式涉及的步骤S14的流程 图13为本发明实施方式涉及的步骤S145的流程 图14为本发明实施方式涉及的步骤S146的流程 图15为本发明实施方式涉及的步骤S15的流程 图16为本发明实施方式涉及的步骤S16的流程 图17为本发明实施方式涉及的视频帧率定制调节系统的帧率调节装置的另一种结构的结构框 图18为本发明实施方式涉及的步骤S14的另一处理方式的流程图。
具体实施方式
:
下面根据附图所示实施方式阐述本项发明。本发明实施方式所涉及的视频帧率定制调节系统根据用户的要求对可变帧率格式的视频文件进行帧率调整。图1显示了本发明实施方式涉及的视频帧率定制调节系统的结构框图。如图1所示,上述视频帧率定制调节系统包括音视频数据接收模块1、解封装模块2、视频数据解码模块3、帧率调节模块4、编码模块5、封装模块6、存储模块7、设置模块8和数据总线9。上述音视频数据接收模块1、解封装模块2、视频数据解码模块3、帧率调节模块4、编码模块5、封装模块6、存储模块7、设置模块8通过上述数据总线9进行连接。上述音视频数据接收模块I用于接收需要进行帧率调节的具有可变帧率格式的音视频数据,并将所接收的上述音视频数据输送至上述解封装模块2进行相应的解封装。上述解封装模块2从上述音视频数据接收模块I接收到上述音视频数据后,根据所收到的上述音视频数据的相应文件格式进行解封装。在上述解封装过程中,上述解封装模块2将音视频文件解析为相应的视频帧序列和音频帧序列。然后,上述解封装模块2将解封装后获得的上述视频帧序列和上述音视频文件封装格式的相关参数存储在上述存储模块7中,并将上述视频帧序列输送至上述视频数据解码模块3进行相应的解码。上述视频数据解码模块3从上述解封装模块2接收到上述视频帧序列后,根据所收到的视频帧序列的相应编码格式进行解码。在上述解码过程中,上述视频数据解码模块3对上述视频帧序列进行解码,将上述视频帧序列中的视频帧还原为RAW格式的视频数据,并将上述RAW格式的视频数据存储在上述存储模块7中,直至完成对所有的视频帧序列的解码。上述设置模块8接收用户对帧率数的设置,并将所接收的帧率数存储在上述存储模块7中。上述帧率调节模块4从上述存储模块7中获取所存储的RAW格式的视频数据和上述帧率数,并基于上述帧率数调节上述RAW格式的视频数据的帧率,将调节帧率后的RAW格式的视频数据存储在上述存储模块7中。上述编码模块5从上述存储模块7获取上述调节帧率后的RAW格式的视频数据,并根据用户的要求选择相应的编码器对上述调节帧率后的RAW格式的视频数据进行编码、压缩,形成新的视频帧序列并存储在存储模块7中。上述封装模块6从上述存储模块7中获取上述音视频文件封装格式的相关参数、上述音频帧序列和新的视频帧序列,然后根据上述音视频文件封装格式的相关参数将上述新的视频帧序列和上述音频帧序列封装成新的音视频文件。图2为本发明实施方式涉及的视频帧率定制调节系统的解封装模块2的结构框图。如图2所示,上述解封装模块2包括音视频文件格式判断单元21、解封装选择单元22和数个解封装单元23、24、·25……。其中,上述数个解封装单元23、24、25……具有不同的格式,可以对应于不同的文件格式进行解封装。上述音视频文件格式判断单元21可以判断来自上述音视频数据接收模块I所接收的音视频的文件格式并获取上述音视频的文件格式的相关参数,并将上述音视频的文件格式的相关参数存储到上述存储模块7中,上述解封装选择单元22可以根据上述音视频文件格式判断单元21的判断结果(即音视频文件的封装格式)从解封装单元23、24、25……中选择相应的解封装单元对上述音视频文件进行解封装,上述相应的解封装单元(即上述解封装单元23、24、25……中之一)将所接收到的上述音视频文件解封为相应的视频帧序列和音频帧序列,并将上述视频帧序列和音频帧序列存储在上述存储模块7中。图3为本发明实施方式涉及的视频帧率定制调节系统的视频数据解码模块3的结构框图。如图3所示,上述视频数据解码模块3包括编码格式判断单元31、解码器选择单元32和数个解码器33、34、35……。其中,上述数个解码器33,34,35……可以对不同的编码格式进行解码。上述编码格式判断单元31可以判断来自上述解封装模块2所解封的视频帧序列的编码格式,并可以根据上述编码格式判断单元31的判断结果(即上述视频帧序列的编码格式)从解码器33、34、35……中选择相应的解码器,上述相应的解码器(即上述解码器33、34、35……中之一)对所收到的上述视频帧序列进行解码,将上述视频帧序列中的视频帧还原为RAW格式的视频数据,上述RAW格式的视频数据被暂存在存储模块7中。图4为本发明实施方式涉及的视频帧率定制调节系统的帧率调节模块4的结构框图。如图4所示,上述帧率调节模块4包括帧率计算单元41,帧率比较单元42,增帧处理单元43、删帧处理单元44。上述帧率计算单元41根据上述存储模块7中存储的上述RAW格式的视频数据每一帧的时间戳,以一秒段为单位,依次从上述存储模块7中取出一秒段的RAff格式的视频数据,再计算出上述一秒段视频数据的帧率Nf,最后将上述一秒段的RAW格式的视频数据和上述计算得出的一秒段帧率Nf传递给上述帧率比较单元42,上述帧率比较单元42从上述存储模块7中获取用户设定的帧率M,再将上述设定帧率数M和上述从帧率计算单元41得到的一秒段帧率Nf作比较,当Nf〈M时,将上述一秒段的视频数据、上述一秒段帧率Nf和上述设定帧率M传递给上述增帧处理单元43 ;当Nf>M时,将上述一秒段的视频数据、上述一秒段帧率Nf和上述设定帧率M传递给上述删帧处理单元44。当Nf=M时,将上述一秒段的视频数据不做帧数调整直接存储到上述存储模块7中。上述增帧处理单元43接收到上述帧率比较单元42传递的上述一秒段视频数据、一秒段帧率Nf和设定帧率M,然后再在上述接收到的一秒段视频数据中插入帧,插入帧的个数为上述设定帧率M和上述一秒段帧率Nf的差值,即M-Nf,最后得到一秒段帧率为M的新的一秒段视频数据,并将上述新的一秒段视频数据存储到上述存储模块7中。上述增帧处理单元44接收到上述帧率比较单元42传递的上述一秒段视频数据、一秒段帧率Nf和设定帧率M,然后再删除掉上述一秒段视频数据的一些帧,删除的帧的个数为上述一秒段帧率Nf和上述设定帧率M的差值,即Nf-M,最后得到一秒段帧率为M的新的一秒段视频数据,并将上述新的一秒段视频数据存储到上述存储模块7中。图5为本发明实施方式涉及的视频帧率定制调节系统的增帧处理单元43的处理示意图。上述增帧处理单元43接收到上述帧数比较单元42传递的一秒段帧率Nf和设定帧率M,通过公式n=Nf + (M-Nf) (η取整数部分,当η=0时,设置η=1 ;n为在所述一秒段视频数据中每隔η个帧为一个插入 点;Nf为所述一秒段视频数据的帧率;M为所述设定帧率)计算出插入点,
如图5所示,本实例以设定帧率为25,一秒段帧率为21的视频数据处理过程为例,通过上述公式计算得出n=5,即每隔5个帧插入一个帧。在插入帧的过程中,首先复制上述插入点的前一帧,再将上述复制得到的帧插入到插入点,直到所有上述插入点都插入帧后,得到新的一秒段帧率为25的一秒段视频数据,最后将上述新的一秒段帧率为25的一秒段视频数据存储到上述存储模块7中。上述增帧处理单元43在增帧处理过程中还有另外一种处理情况,如图6所示,当上述计算得到的插入点的个数小于需要插入的帧的个数时,则按照图6所示的处理流程处理。例如,对用户指定帧率为25而一秒段帧率为5的一秒段视频数据进行处理的过程中,通过上述公式计算得出η=ι,即每隔I个帧插入一个帧,由于上述一秒段帧数为5,所以插入点的个数为5,在每个插入点插入帧后,上述一秒段视频数据的帧率仍然小于设定帧率25,上述增帧处理单元43判断在插入点都插入帧后的一秒段帧率小于设定帧率数时,继续复制最后一个帧,并将上述复制得到的帧插入到上述一秒段视频的最后,直到上述一秒段视频数据的帧率等于设定帧率数为止,最后得到新的一秒段帧率为25的一秒段视频数据。
上述删帧处理单元44接收到上述帧率比较单元42传递的一秒段视频数据、一秒段帧率Nf和设定帧率M,通过公式m= (Nf-M) XSCS为待处理视频数据段的时长,单位为秒,本实例中S=I秒)得到需要删除的帧数,再从上述一秒段视频数据的第二帧开始,计算当前帧与前一帧的差分值(或小波分析识别),然后删除m个上述差分值最小的帧,得到新的一秒段帧率等于设定帧率的一秒段视频数据,最后将上述得到的新的一秒段视频数据存储到上述存储模块7中。图7为本发明实施方式涉及的视频帧率定制调节系统的编码模块5的结构框图。如图7所示,上述编码模块5包括编码器选择单元51、数个编码器52、53、54……。上述编码器选择单元51可以从上述存储模块7中获取经上述帧率调节模块4进行帧率调节后的新的RAW格式数据。上述编码器选择单元51根据用户的要求选择相应的编码器(即上述编码器52、53、54……中之一)对上述经帧率调整后的RAW格式数据进行重新编码,形成新的视频帧序列,并将新的视频帧序列存储在上述存储模块7中。图8为本发明实施方式涉及的视频帧率定制调节系统的封装模块6的结构框图。如图8所示,上述封装模块6包括封装格式选择单元61和数个封装单元62、63、64……。其中,上述数个封装单元62、63、64……具有不同的封装格式,可以对应于不同的封装格式的要求进行封装。上述封装格式选择单元61从上述存储模块7中获取上述音视频文件封装格式的相关参数、上述音频帧序列、新的视频帧序列并根据上述音视频文件封装格式的相关参数
选择相应的封装单元(即封装单元62、63、64......中之一)对上述音频帧序列和新的视频帧
序列进行封装,获得巾贞率调节后的首视频文件。

图9为本发明实施方式涉及的视频帧率定制调节流程图。下面,参照图9说明在本实施方式涉及的视频帧率定制调节的处理过程。首先,输入音视频文件,上述音视频数据接收模块I接收上述音视频文件数据并将其输送至上述解封装模块2(步骤SI I)。上述解封装模块2对上述音视频文件数据进行解封装,将上述音视频文件数据解析为视频帧序列和音频帧序列,并将上述视频帧序列和音频帧序列以及原音视频文件的封装格式的相关参数存储在上述存储模块7中(步骤S12)。上述视频数据解码模块3从上述存储模块7中获取上述视频帧序列,将上述视频帧序列中的视频帧还原为RAW格式数据,并将上述RAW格式数据存储到上述存储模块7中(步骤S13)。上述帧率调节模块4根据用户通过上述设置模块8输入的帧率数,对RAW格式数据进行帧率的调节,获取经帧率调节后的RAW格式数据,并将经帧率调节后的RAW格式数据存储到上述存储模块7中(步骤S14)
上述编码模块5从上述存储模块7中获取经帧率调节后的RAW格式数据,并根据用户的要求对经帧率调节后的RAW格式数据进行编码,形成新的视频帧序列并存储到上述存储模块7中(步骤S15)。上述封装模块6从上述存储模块7中获取音频帧序列、新的视频帧序列和原音视频文件的封装格式的相关参数,并根据原音视频文件的封装格式的相关参数进行封装,形成新音视频文件(步骤S16)。图10为本发明实施方式涉及的视频帧率定制调节的步骤S12的流程图。下面,参照图10说明在本实施方式涉及的音视频文件进行解封装处理过程。音视频文件格式判断单元21基于所接收的音视频文件数据判断所接收的音视频文件的封装格式,将判断结果输送到解封装选择单元22 (步骤S121),同时将原音视频文件的封装格式的相关参数存储到上述存储模块7中。上述解封装选择单元22基于上述判断结果选择相应的解封装单元(步骤S122)。上述解封装单元(即解封装单元23、24、25……中之一)对上述音视频文件数据进行解封装,将上述音视频文件数据解析为视频帧序列和音频帧序列(步骤S123),并将视频帧序列和音频帧序列存储到上述存储模块7中(步骤S124)。图11为本发明实施方式涉及的视频帧率定制调节的步骤S13的流程图。下面,参照图11说明在本实施方式涉及的对视频数据进行解码处理的过程。编码格式判断单元31对解封装后的视频帧序列的编码格式进行判断,并将判断结果输送到解码器选择单元32(步骤S131)。上述解码器选择单元32基于上述判断结果选择与上述编码格式相应的解码器进行解码(步骤S132),上述解码器(即解码器33、34、35……中之一)将上述视频帧序列中的视频帧还原为RAW格式数据(步骤S133),并将上述RAW格式数据存储至存储模块7中(步骤 S134)。图12为本发明实施方式涉及的视频帧率定制调节的步骤S14的流程图。下面,参照图12说明在本实施方式涉及的对视频数据进行帧率调节的流程。帧率计算单元41从存储模块7中以一秒为单位读取上述RAW格式的视频数据(步骤S141 ),再计算上述读取的一秒段视频数据的帧率Nf (步骤S142)并将上述一秒段视频数据、一秒段视频数据的帧率Nf传递给帧率比较单元42。上述帧率比较单元42从存储模块7中读取出用户设定的帧率M,将上述设定帧率M和上述帧率计算单元41传递来的一秒段帧率Nf做比较,判断是否需要处理(步骤S143),如果M=Nf,则不对上述一秒段视频数据做处理(步骤S143:否),直接将上述一秒段视频数据存储到存储模块7中(步骤S147);如果M古Nf,则需要对上述一秒段视频数据做处理(步骤S143:是),并进入步骤S144。在步骤S144中,判断是否需要增帧处理。如果M>Nf,则需要进 行增帧处理(步骤S144:是),上述一秒段视频数据、设定帧率M和一秒段帧率Nf被传递给增帧处理单元43。上述增帧处理单元43接收到上述帧率比较单元42传递的上述一秒段视频数据、设定帧率数和一秒段帧率Nf后,计算出需要插入的帧数N(N=(M-Nf) XS,本例中S=I秒),再向上述一秒段视频数据中插入N个帧(步骤145),最后将得到的新的一秒段帧率等于设定帧率的一秒段视频数据存储在上述存储模块7中(步骤S147)。如果M〈Nf,则需要进行删帧处理(步骤S144:否),上述一秒段视频数据、设定帧率M和一秒段帧率Nf被传递给删帧处理单元44。上述删帧处理单元44接收到上述帧率比较单元42传递的上述一秒段视频数据、设定帧率M和一秒段帧率Nf后,计算出需要删除的帧数m (m= (Nf-M) XS,本例中S=I秒),并且从上述一秒段视频数据的第二巾贞开始,计算当前中贞与前一帧的差分值(或小波分析识别),然后删除m个上述差分值最小的帧(步骤S146),最后将得到的新的一秒段帧率等于设定帧率的一秒段视频数据存储在上述存储模块7中(步骤 S147)。图13为本发明实施方式涉及的视频帧率定制调节的步骤S145的流程图。下面,参照图13说明在本实施方式涉及的对视频数据进行增帧调节的流程。增帧处理单元43接收到上述帧率比较单元42传递的上述一秒段视频数据、设定帧率M和一秒段帧率Nf后,通过公式n=Nf + (M-Nf) (η取整数部分,当η=0时,设置η=1 ;n为在所述一秒段视频数据中,每隔η个帧为一个插入点;Nf为所述一秒段视频数据的帧率;M为所述设定帧率)计算出插入点(步骤S1451),然后循环判断是否有未插入帧的插入点(步骤S1452)。如果有(步骤S1452:是),则复制尚未插入帧的插入点的前一帧(步骤S1453),再将上述复制得到的帧插入到当前插入点(步骤S1454),直到上述所有插入点都插入了帧。如果没有(步骤S1452:否),则判断上述在插入点都插入了帧的新的一秒段视频数据的帧率是否等于上述设定帧率(步骤S1455),如果新的一秒段视频数据的帧率不等于上述设定帧率(步骤S1455:否),则复制最后一个插入点的前一帧(步骤S1456),再把上述复制得到的帧插入到最后一个插入点(步骤S1457),直到上述插入了帧的新的一秒段视频数据的帧率等于上述设定帧率(步骤S1455:是),最后得到新的一秒段帧率等于设定帧率的一秒段视频数据(步骤S1458)。图14为本发明实施方式涉及的视频帧率定制调节的步骤S146的流程图。下面,参照图14说明在本实施方式涉及的对视频数据进行删帧调节的流程。上述删帧处理单元44接收到上述帧率比较单元42传递的一秒段视频数据、一秒段帧率Nf和设定帧率M (步骤S1461),然后通过公式m= (Nf-M) XS (S为待处理视频数据的时长,单位为秒,本例中S=I秒)得到需要删除的帧数(步骤S1462),再从上述一秒段视频数据的第二帧开始,计算当前帧与前一帧的差分值(步骤S1463),然后删除m个上述差分值最小的帧(步骤S1464),最后得到新的一秒段帧率等于设定帧率的一秒段视频数据(步骤S1465)。图15为本发明实施方式涉及的对帧率调节的RAW格式视频数据进行编码的步骤S15的流程图。下面,参照图15说明在本实施方式涉及的对RAW格式数据进行编码处理过程。编码器选择单元51从上述存储模块7中获取上述经调节帧率后的RAW格式视频数据(步骤S151),并基于用户的要求选择相应的编码器(步骤S152)。上述被选定的编码器对上述经调节帧率后的RAW格式数据进行编码,以获得新的视频帧序列(步骤S153),并将所获得的新的视频帧序列存储在存储模块7中(步骤S154)。图16为本发明实施方式涉及的对音频帧序列和新的视频帧序列进行封装的步骤S16的流程图。下面,参照图16说明在本实施方式涉及的对音频帧序列和新的视频帧序列进行封装处理过程。

上述封装格式选择单元61从上述存储模块7中获取音频帧序列、新的视频帧序列和原音视频文件的封装格式的相关参数(步骤S161)。上述封装格式选择单元61基于原音视频文件的封装格式的相关参数选择与原音视频文件的封装格式相应的封装单元(步骤S162),上述封装单元对上述音频帧序列和上述新的视频帧序列进行重新封装,形成具有与原音视频文件的封装格式相同的新的音视频文件(步骤S163),并输出新的音视频文件(步骤 S164)。在上述实施方式中,以每一秒段视频数据为单位进行调节,但本发明并不限于此。本发明还可以以其它时长的视频数据段为单位进行调节。下面以一个GOP段视频数据为单位进行调节的例子进行说明。图17为本发明实施方式涉及的视频帧率定制调节系统的帧率调节模块4的另一结构框图。图17中的帧数计算单元41,帧数比较单元42,增帧处理单元43、删帧处理单元44与图4中的相同,此外上述巾贞率调节模块4还包括巾贞长调节单元45。上述巾贞率计算单元41以一个GOP段视频数据的时间长度为单位,依次从上述存储模块7中取出视频数据,再计算出上述一个GOP段视频数据的平均帧率Nf (即一个GOP段视频数据中的帧数除以该一个GOP段视频数据的时长),然后将上述一个GOP段的RAW格式的视频数据和上述计算得出的一个GOP段视频数据的平均帧率Nf传递给上述帧长调节单元45。上述帧长调节单元45接收到上述一个GOP段视频数据后,根据每一帧的时长参数判断是否需要对上述一个GOP段视频数据中的帧长进行调整。如果上述帧长调节单元45判断所接收的上述一个GOP段视频数据中的各个帧的时长不均匀,调整上述视频数据每一帧的时间戳,使上述视频数据的每一帧的帧长(或时长)相等,保持上述一个GOP段视频数据的总时长不变,再把上述调整帧长后的一个GOP段视频数据和上述计算得出的一个GOP段视频数据的平均帧率Nf传递给上述帧率比较单元42。如果上述帧长调节单元45判断所接收的上述一个GOP段视频数据中的各个帧的时长是均匀的,则无需进行帧长的调整而直接将上述一个GOP段视频数据和上述计算得出的一个GOP段视频数据的平均帧率Nf传递给上述帧率比较单元42。上述帧率比较单元42从上述存储模块7中获取用户设定的帧率M,再将上述设定帧率数M和上述从帧长调节单元41得到的上述一个GOP段视频数据的平均帧率Nf作比较。当Nf〈M时,将上述一个GOP段的视频数据、上述一个GOP段视频数据的平均帧率Nf和上述设定帧率M传递给上述增帧处理单元43。当Nf>M时,将上述一个GOP段的视频数据、上述一个GOP段视频数据的平均帧率Nf和上述设定帧率M传递给上述删帧处理单元44。当Nf=M时,将上述一个GOP段的视频数据不做帧数调整直接存储到上述存储模块7中。上述增帧处理单元43接收到上述帧率比较单元42传递的上述一个GOP视频数据、一个GOP段视频数据的平均帧率Nf和设定帧率M,然后再在上述接收到的一个GOP段视频数据中插入帧,插入帧的个数为上述设定帧率M和上述一个GOP段视频数据的帧率Nf的差值再乘以所述GOP段视频数据的时间长度,即(M-Nf)XS (取整数,S为一个GOP段视频数据的时间长度,单位为秒),最后得到帧率为M的新的一个GOP段视频数据,并将上述新的一个GOP段视频数据存储到上述存储模块7中。上 述增巾贞处理单元44接收到上述巾贞率比较单元42传递的上述一个GOP段视频数据、一个GOP段视频数据的平均帧率Nf和设定帧率M,然后再删除掉上述一个GOP段视频数据的一些帧,删除的帧的个数为上述一个GOP段视频数据的平均帧率Nf和上述设定帧率M的差值再乘以所述一个GOP段视频数据的时间长度,S卩(Nf-M)XS (取整数,S为一个GOP段视频数据的时间长度,单位为秒),最后得到帧率为M的新的一个GOP段视频数据,并将上述新的一个GOP段视频数据存储到上述存储模块7中。图18为本发明实施方式涉及的视频帧率定制调节的步骤S14的另一流程图。下面,参照图18说明在本实施方式涉及的以一个GOP段视频数据为单位对视频数据进行帧率调节的另一流程。帧率计算单元41从存储模块7中以一个GOP段视频数据的时长为单位读取上述RAW格式的视频数据(步骤S141 ),再计算上述读取的一个GOP段视频数据的平均帧率Nf (步骤S142)并将上述一个GOP段视频数据、一个GOP段视频数据的平均帧率Nf传递给帧长调节单元45。上述帧长调节单元45接收到上述一个GOP段视频数据后,判断是否需要对上述一个GOP段视频数据的帧进行帧长的调整(步骤S1421)。如果需要进行帧长的调整(步骤S1421:是),上述帧长调节单元45调整上述视频数据每一帧的时间戳,使上述视频数据的每一帧的时长相等,保持上述一个GOP段视频数据的总时长不变(步骤S1422),再把上述调整帧长后的一个GOP段视频数据和上述计算得出的一个GOP段视频数据的平均帧率Nf传递给帧率比较单元42,进入步骤S143的处理。如果无需要进行帧长的调整(步骤S1421:否),则直接进入步骤S143。在步骤S143中,上述帧率比较单元42从存储模块7中读取出用户设定的帧率M,将上述设定帧率M和上述帧长调整单元45传递来的一个GOP段视频数据的平均帧率Nf做比较,判断是否需要处理。如果M=Nf,则不对上述一个GOP段视频数据做处理(步骤S143:否),直接将上述一个GOP段视频数据存储到存储模块7中(步骤S147);如果M古Nf,则需要对上述一个GOP段视频数据做处理(步骤S143:是),并进入步骤S144。在步骤S144中,判断是否需要增帧处理。如果M>Nf,则需要进行增帧处理(步骤S144:是),上述一个GOP段视频数据、设定帧率M和一个GOP段视频数据的平均帧率Nf被传递给增帧处理单元43。上述增帧处理单元43接收到上述帧率比较单元42传递的上述一个GOP段视频数据、设定帧率数和GOP段视频数据的平均帧率Nf后,计算出需要插入的帧数N (N=(M-Nf) X S,S为一个GOP段视频数据的时长,单位为秒),再向上述一个GOP段视频数据中插入N个帧(步骤145),最后将得到的新的帧率等于设定帧率的一个GOP段视频数据存储在上述存储模块7中(步骤S147)。如果M〈Nf,则需要进行删帧处理(步骤S144:否),上述一个GOP段视频数据、设定帧率M和一个GOP段视频数据的平均帧率Nf被传递给删帧处理单元44。上 述删帧处理单元44接收到上述帧率比较单元42传递的上述GOP段视频数据、设定帧率M和一个GOP段视频数据的平均帧率Nf后,计算出需要删除的帧数mCm=(Nf-M) XS, S为一个GOP段视频数据的时长,单位为秒),并且从上述一个GOP段视频数据的第二帧开始,计算当前帧与前一帧的差分值(或小波分析识别),然后删除m个上述差分值最小的帧(步骤S146),最后将得到的新的帧率等于设定帧率的一个GOP段视频数据存储在上述存储模块7中(步骤S147)。在本实施方式中,在步骤S16中采用与原音视频文件的封装格式相同的封装格式对音频帧序列和新的视频帧序列进行封装。但本发明并不限于此,在步骤S16中也可以采用用户指定的封装格式对音频帧序列和新的视频帧序列进行封装。在本实施方式中,有关数据先存储在存储模块7中。但本发明并不限于此,前一模块所获取的数据可以不经存储直接用于后面模块的处理。应理解以上说明书中所描述的具体实施方式
和实施例仅用于说明本发明而不用于限制本发明的范围。在阅读了本发明之后,本领域技术人员对本发明的各种等同形式的修改均落于本申请所附权利要求所限定的范围。
权利要求
1.一种视频巾贞率定制调节的系统,包括: 解封装装置,用于对音视频文件进行解封装,从而将所述音视频文件解析为相应的视频帧序列和音频帧序列; 视频数据解码装置,用于对所述视频帧序列进行解码,并将所述视频帧序列中的视频帧还原为RAW格式的视频数据; 帧率调节装置,根据用户输入的帧率数以一定时间长度为单位对所述RAW格式的视频数据进行帧率的调节,使得经调节后的所述RAW格式的视频数据的帧率等于预定帧率; 编码装置,通过对经过所述帧率调节装置调节后的RAW格式的视频数据进行编码,获得经重新编码后的视频帧序列; 封装装置,用于对所述经重新编码后 的视频帧序列和所述音频帧序列进行封装。
2.根据权利要求1所述的系统,其特征在于:所述帧率调节装置根据所述RAW格式的视频数据每一帧的时间戳,以所述一定时间长度为单位,循环处理所述RAW格式的视频数据,使得处理后的所述RAW格式的视频数据的帧率等于所述预定帧率。
3.根据权利要求2所述的系统,其特征在于: 所述帧率调节装置计算所述一定时间长度内的RAW格式的视频数据的帧率,并将其与所述预定帧率作比较,其中, 当所述一定时间长度内的RAW格式的视频数据的帧率小于所述预定帧率时,对所述一定时间长度内的RAW格式的视频数据做增帧处理,增加的帧的个数为所述一定时间长度内的视频数据的帧率和所述预定帧率的差值再乘以所述一定时间长度内的视频数据的时长,当所述一定时间长度内的RAW格式的视频数据的帧率大于所述预定帧率时,对所述一定时间长度内的RAW格式的视频数据做删帧处理,删除的帧的个数为所述一定时间长度内的视频数据的帧率和所述预定帧率的差值再乘以所述一定时间长度内的视频数据的时长,当所述一定时间长度内的RAW格式的视频数据的帧率等于所述预定帧率时,对所述一定时间长度内的RAW格式的视频数据不做帧数调整。
4.根据权利要求3所述的系统,其特征在于: 在所述增帧处理过程中,所述帧率调节装置计算出需要插入帧的插入点,再复制所述插入点的前一帧,将复制得到的帧插入到所述插入点; 所述插入点的计算公式为:n=Nf+ (M-Nf),其中η为在所述一定时间长度内的视频数据中每隔η个帧为一个插入点、Nf为所述一定时间长度内的视频数据的帧率、M为所述预定帧率。
5.根据权利要求4所述的系统,其特征在于:在所述增帧处理过程中,当所述一定时间长度内的视频数据中所有插入点都插入帧后,如果经插入帧后的视频数据的帧率小于所述预定帧率,则所述帧率调节装置继续复制最后一个插入帧,并将复制得到的帧插入到最后一个插入点,直到经插入帧后的视频数据的帧率等于所述预定帧率。
6.根据权利要求3所述的系统,其特征在于: 在所述删帧处理过程中,所述帧率调节装置从所述一定时间长度内的视频数据的第二帧开始,计算每一帧与前一帧的差分值,选取差分值最小的帧作为删除帧; 所述删除帧的个数为所述一定时间长度内的视频数据的帧率和所述预定帧率的差值再乘以所述一定时间长度内的视频数据的时长。
7.根据权利要求1 6任意一项所述的系统,还包括:帧率设置装置,用于设置所述预定帧率。
8.根据权利要求7所述的系统,还包括:用于存储数据的存储装置。
9.根据权利要求1 6任意一项所述的系统,其特征在于:所述一定时间长度为一秒。
10.根据权利要求1 6任意一项所述的系统,其特征在于:所述一定时间长度为一个GOP 段。
11.根据权利要求10所述的系统,还包括:帧长调节装置,用于对所述一个GOP段的视频数据中的帧长进行调整。
12.一种视频帧率定制调节的方法,包括: 解封装步骤,对音视频文件进行解封装,从而将所述音视频文件解析为相应的音频帧序列和视频帧序列; 视频数据解码步骤,对所述视频帧序列进行解码,并将所述视频帧序列中的视频帧还原为RAW格式的视频数据; 帧率调节步骤,根据用户输入的帧率数以一定时间长度为单位对所述RAW格式的视频数据进行帧率的调节,使得经调节后所述RAW格式的视频数据的帧率等于预定帧率; 编码步骤,通过对经过帧率调节后的RAW格式的视频数据进行编码,获得经重新编码后的视频巾贞序列; 封装步骤,对所述经重新编码后的视频帧序列和所述音频帧序列进行封装。
13.根据权利要求12所述的方法,其特征在于:在所述帧率调节步骤中,根据所述RAW格式的视频数据每一帧的时间戳,以所述一定时间长度为单位,循环处理所述RAW格式的视频数据,使得处理后的所述RAW格式的视频数据的帧率等于预定帧率。
14.根据权利要求13所述的方法,其特征在于: 在所述帧率调节步骤中,计算所述一定时间长度内的RAW格式的视频数据的帧率,并将其与所述预定帧率作比较,其中, 当所述一定时间长度内的RAW格式的视频数据的帧率小于所述预定帧率时,对所述一定时间长度内的RAW格式的视频数据做增帧处理,增加的帧的个数为所述一定时间长度内的视频数据的帧率和所述预定帧率的差值再乘以所述一定时间长度内的视频数据的时长, 当所述一定时间长度内的RAW格式的视频数据的帧率大于所述预定帧率时,对所述一定时间长度内的RAW格式的视频数据做删帧处理,删除的帧的个数为所述一定时间长度内的视频数据的帧率和所述预定帧率的差值再乘以所述一定时间长度内的视频数据的时长, 当所述一定时间长度内的RAW格式的视频数据的帧率等于所述预定帧率时,对所述一定时间长度内的RAW格式的视频数据不做处理。
15.根据权利要求14所述的方法,其特征在于: 在所述增帧处理 过程中,计算出需要插入帧的插入点,再复制所述插入点的前一帧,将复制得到的帧插入到所述插入点; 所述插入点的计算公式为:n=Nf+ (M-Nf),其中η为在所述一定时间长度内的视频数据中每隔η个帧为一个插入点、Nf为所述一定时间长度内的视频数据的帧率、M为所述预定帧率。
16.根据权利要求15所述的方法,其特征在于:在所述增帧处理过程中,当所述一定时间长度内的视频数据中所有插入点都插入帧后,如果经插入帧后的视频数据的帧率小于所述预定帧率,则继续复制最后一个插入帧,并将复制所得到的帧插入到最后一个插入点,直到经插入帧后的视频数据的帧率等于所述预定帧率。
17.根据权利要求14所述的方法,其特征在于: 在所述删帧处理过程中,从所述一定时间长度内的视频数据的第二帧开始,计算每一帧与前一帧的差分值,选取差分值最小的帧作为删除帧; 所述删除帧的个数为所述一定时间长度内的视频数据的帧率和所述预定帧率的差值再乘以所述一定时间长度内的视频数据的时长。
18.根据权利要求12 17任意一项所述的方法,还包括:帧率设置步骤,设置所述预定帧率。
19.根据权利要求12 17任意一项所述的方法,其特征在于:所述一定时间长度为一秒。
20.根据权利要求12 17任意一项所述的方法,其特征在于:所述一定时间长度为一个GOP段。
21.根据权利要求20所述的方法,还包括:帧长调节步骤,当所述一个GOP段的视频数据中的帧长不均匀时,在对所述一个GOP段的视频数据进行帧率调整之前对所述一个GOP段的视频数据中的帧长进行调 整。
全文摘要
本发明提供一种视频帧率定制调节的系统,包括解封装装置,用于对音视频文件进行解封装,从而将所述音视频文件解析为相应的视频帧序列和音频帧序列;视频数据解码装置,用于对所述视频帧序列进行解码,并将所述视频帧序列中的视频帧还原为RAW格式视频数据;帧率调节装置,根据用户输入的帧率数以一定时间长度为单位对所述RAW格式视频数据进行帧率的调节,使得经调节后的所述RAW格式视频数据的帧率等于预定帧率;编码装置,通过对经过所述帧率调节装置调节后的RAW格式视频数据进行编码,获得经重新编码后的视频帧序列;封装装置,用于对所述经重新编码后的视频帧序列和所述音频帧序列进行封装。本发明还提供一种视频帧率定制调节的方法。
文档编号H04N21/4402GK103248950SQ20131015438
公开日2013年8月14日 申请日期2013年4月28日 优先权日2013年4月28日
发明者武悦 申请人:天脉聚源(北京)传媒科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1