一种倍速播放视频的方法及装置的制造方法_4

文档序号:8286300阅读:来源:国知局
大小为12,视频帧的显示缓冲存储空间只能存放6帧视频帧,则在进行倍速播放视频帧选择时可隔一帧丢弃一帧,同时也需在满足解码参考关系完整的选择方式前提下进行选择,选择出6帧视频帧。当然需要说明的是,本发明实施例中也可选择出12帧视频帧,进行视频显示输出时,隔一帧丢弃一帧,最终按照反向播放时间顺序显示输出。
[0166]二、视频解码器对应于待播放视频的最大解码帧率不满足用户设置的视频播放倍速要求
[0167]A、高倍速播放(用户设置的视频播放倍速下每秒需要传输的视频帧数,达到视频解码器的最大解码帧率对应的视频帧数的设定倍数)
[0168]将用户设置的播放倍速下每秒需要传输的N个视频帧作为视频帧组合片段,N为用户设置的播放倍速与视频原始帧率的乘积得到的数值。
[0169]例如,用户设置的倍速为16倍的高倍速,视频原始帧率为30fps,则16倍的播放倍速下,每秒需要传输视频帧数为30*16 = 480帧,故可将每秒传输的视频帧数480帧作为视频帧组合片段。视频解码器对应于待播放视频的最大解码帧率为60fps,则进行快进倍速播放的视频帧选择的过程中,则需要从480帧中较均匀地挑选出来60帧的视频帧作为倍速播放的视频帧,如图9所示,即需要从每8个视频帧中选择一个视频帧,则首先选到I帧,然后选择第二个P帧。当然本发明实施例中选择的第二个P帧由于其需要参考I帧之后的第一个P帧,故本发明实施例中可直接选择解码参考关系完整的第一个P帧。
[0170]B、低倍速播放(用户设置的视频播放倍速下每秒需要传输的视频帧数,未达到视频解码器的最大解码帧率对应的视频帧数的设定倍数)
[0171]将视频原始帧率对应的每秒传输的视频帧序列中的各GOP作为所述视频帧组合片段。
[0172]例如用户设置的播放倍速为2倍速,视频原始帧率为30fps,则2倍的播放倍速下,每秒需要传输视频帧数为30*2 = 60帧,视频解码器对应于待播放视频的最大解码帧率为30fps,则进行快进倍速播放的视频帧选择的过程中,则可从每个GOP中较均匀地挑选出来一半的视频帧作为倍速播放的视频帧,如图10所示。
[0173]本发明实施例中为了使倍速播放的视频能够达到用户设置的播放倍速,解码所述视频帧集合中各视频帧后,可采用如图11所示的实现方式,将解码得到的视频帧按所述待播放视频中各视频帧的播放顺序或反向播放顺序输出,如图11所示,包括:
[0174]S601:判断视频解码器的最大解码帧率是否满足用户设置的视频播放倍速要求。
[0175]S602:判断用户设置的倍速播放类型是快退播放还是快进播放。
[0176]需要说明的是,本发明实施例并不限定S601和S602的执行先后顺序,例如可先执行S601,再执行S602,也可先执行S602,再执行S601。
[0177]本发明实施例中若用户设置的倍速播放类型为快进播放,且视频解码器的最大解码帧率满足用户设置的视频播放倍速要求,则执行S603a,若用户设置的倍速播放类型为快退播放,且视频解码器的最大解码帧率满足用户设置的视频播放倍速要求,则执行S604a。
[0178]S603a:在视频解码器对应于待播放视频的最大解码帧率满足用户设置的视频播放倍速要求、且倍速播放为快进播放的情况下,以视频输出帧率大小为视频原始帧率与所述视频播放倍速的乘积的帧率、按所述待播放视频中各视频帧的播放顺序输出解码得到的视频帧。
[0179]S604a:在视频解码器的最大解码帧率满足用户设置的视频播放倍速要求、且倍速播放为快退播放的情况下,以视频输出帧率大小为视频原始帧率与所述视频播放倍速的乘积的帧率、并以GOP为单位按所述待播放视频中各视频帧的反向播放顺序输出解码得到的视频帧。
[0180]本发明实施例中若用户设置的倍速播放类型为快进播放,且视频解码器的最大解码帧率不满足用户设置的视频播放倍速要求,则执行S603b,若用户设置的倍速播放类型为快退播放,且视频解码器的最大解码帧率不满足用户设置的视频播放倍速要求,则执行S604bo
[0181]S603b:在视频解码器的最大解码帧率不满足用户设置的视频播放倍速要求、且倍速播放为快进播放的情况下,以视频输出帧率大小为视频解码器的最大解码帧率、按所述待播放视频中各视频帧的播放顺序输出解码得到的视频帧。
[0182]S604b:在视频解码器的最大解码帧率不满足用户设置的视频播放倍速要求、且倍速播放为快退播放的情况下,以视频输出帧率大小为视频解码器的最大解码帧率、并以GOP为单位按所述待播放视频中各视频帧的反向播放顺序输出解码得到的视频帧。
[0183]本发明实施例上述输出解码得到的视频帧的方式,可根据选择的倍速播放的视频帧以及视频解码器的最大解码帧率,确定视频输出帧率进行倍速播放的播放速度控制,达到更好的播放效果。
[0184]本发明实施例中为保证视频帧集合中各视频帧能够正常解码,在解码所述视频帧集合中各视频帧之前,还可包括如下步骤:
[0185]解码所述视频帧集合中各视频帧的参考视频帧。
[0186]本发明实施例解码所述视频帧集合中各视频帧的参考视频帧,可保证各视频帧的参考视频帧已被解码,保证视频帧集合中各视频帧能够被正常解码。
[0187]本发明实施例中对于解码得到的参考视频帧可根据实际需要选择是否显示输出,即解码所述视频帧集合中各视频帧的参考视频帧之后,还包括如下步骤:
[0188]根据视频播放倍速,选择是否输出解码得到的参考视频帧。
[0189]基于上述实施例提供的倍速播放视频的方法,本发明实施例还提供一种倍速播放视频的装置1200,如图12所示,本发明实施例提供的倍速播放视频的装置1200包括划分单元1201、选择单元1202、解码单元1203和输出单元1204其中,
[0190]划分单元1201,用于根据视频播放倍速以及视频解码器的最大解码帧率,将待播放视频中各视频帧组成的视频帧序列划分为至少一个视频帧组合片段,所述最大解码帧率是视频解码器根据待播放视频的分辨率确定的。
[0191]选择单元1202,用于在所述划分单元1201划分得到的每个视频帧组合片段中,按照固定的帧间间隔分别选择至少一个视频帧以得到视频帧集合,所述视频帧集合中的视频帧用于实现按照所述视频播放倍速播放所述待播放视频。
[0192]解码单元1203,用于解码所述选择单元1202选择得到的所述视频帧集合中的视频帧。
[0193]输出单元1204,用于按所述待播放视频中各视频帧的播放顺序或反向播放顺序输出所述解码单元1203解码得到的视频帧。
[0194]在第一种实现方式中,所述划分单元1201,具体用于按如下方式根据视频播放倍速以及视频解码器的最大解码帧率,将待播放视频中各视频帧组成的视频帧序列划分为至少一个视频帧组合片段:
[0195]判断视频解码器的最大解码帧率是否满足视频播放倍速要求。
[0196]若视频解码器的最大解码帧率满足视频播放倍速要求,根据倍速播放的类型确定划分视频帧组合片段的基本单位,所述倍速播放的类型包括快进播放和快退播放。
[0197]若视频解码器的最大解码帧率不满足视频播放倍速要求,根据视频播放倍速下每秒需要传输的视频帧数与视频解码器的最大解码帧率对应的视频帧数,确定划分视频帧组合片段的基本单位。
[0198]按照所述划分视频帧组合片段的基本单位,将所述待播放视频中各视频帧组成的视频帧序列划分为至少一个视频帧组合片段。
[0199]在第二种实现方式中,所述划分单元1201,具体用于按如下方式根据倍速播放的类型确定划分视频帧组合片段的基本单位:
[0200]确定倍速播放的类型。
[0201 ] 在倍速播放为快进播放的情况下,将待播放视频中的每一视频帧作为划分视频帧组合片段的基本单位。
[0202]在倍速播放为快退播放的情况下,将待播放视频帧中的每一组视频帧GOP作为划分视频帧组合片段的基本单位。
[0203]在第三种实现方式中,所述选择单元1202,具体用于按如下方式在划分得到的每个视频帧组合片段中,按照固定的帧间间隔分别选择至少一个视频帧以得到视频帧集合:
[0204]在倍速播放为快进播放的情况下,将每个视频帧组合片段中的一个视频帧作为视频帧集合中的视频帧,以得到视频帧集合。
[0205]在倍速播放为快退播放的情况下,根据反向解码顺序以及用于存储视频解码器输出的视频帧的显示缓冲存储空间大小,在划分得到的每个视频帧组合片段中按照固定的帧间间隔分别选择至少一个视频帧,以得到视频帧集合,所述反向解码顺序为各GOP间按照从后向前的顺序解码,GOP内部按照播放顺序解码。
[0206]在第四种实现方式中,所述划分单元1201,具体用于按如下方式根据视频播放倍速下每秒需要传输的视频帧数与视频解码器的最大解码帧率对应的视频帧数,确定划分视频帧组合片段的基本单位:
[0207]判断视频播放倍速下每秒需要传输的视频帧数,是否达到视频解码器的最大解码帧率对应的视频帧数的设定倍数。
[0208]若达到,则将所述播放倍速下每秒需要传输的N个连续的视频帧,作为划分视频帧组合片段的基本单位,N为所述视频播放倍速下每秒需要传输的视频帧数。
[0209]若未达到,则将待播放视频帧中的每一组视频帧GOP作为划分视频帧组合片段的基本单位。
[0210]在第五种实现方式中,所述选择单元1202,具体用于按如下方式在划分得到的每个视频帧组合片段中,按照固定的帧间间隔分别选择至少一个视频帧以得到视频帧集合:
[0211]在倍速播放为快进播放的情况下,在划分得到的每个视频帧组合片段中按照固定的帧间间隔分别选择至少一个视频帧,以得到视频帧数为视频解码器的最大解码帧率对应帧数的视频帧集合。
[0212]在倍速播放为快退播放的情况下,根据反向解码顺序以及用于存储视频解码器输出的视频帧的显示缓冲存储空间大小,在划分得到的每个视频帧组合片段中按照固定的帧间间隔分别选择至少一个视频帧,以得到视频帧集合,所述反向解码顺序为各GOP间按照从后向前的顺序解码,GOP内部按照播放顺序解码。
[0213]在第六种实现方式中,所述选择单元1202,具体用于按如下方式根据反向解码顺序以及用于存储视频解码器输出的视频帧的显示缓冲存储空间大小,在划分得到的每个视频帧组合片段中按照固定的帧间间隔分别选择至少一个视频帧,以得到视频帧集合:
[0214]判断用于存储视频解码器输出的视频帧的显示缓冲存储空间是否能将每一 GOP中的视频帧全部存储。
[0215]在所述显示缓冲存储空间能够将每一 GOP中的视频帧全部存储的情况下,在划分得到的每个视频帧组合片段中选择全部视频帧以得到视频帧集合。
[0216]在所述显示缓冲存储空间不能将每一 GOP中的视频帧全部存储的情况下,在划分得到的每个视频帧组合片段中,按照固定的帧间间隔选择视频帧以得到视频帧集合,得到的视频帧集合中的视频帧的帧数为所述显示缓冲存储空间能够存储的视频帧数。
[0217]在第七种实现方式中,所述选择单元1202,还用于:
[0218]在得到视频帧集合以后,在所述视频帧集合中确定不能被解码的视频帧,在不能被解码的视频帧所在的视频帧组合片段中,选择所述不能被解码的视频帧的参考视频帧,将所述参考视频帧加入到所述视频帧集合中。
[0219]在第八种实现方式中,所述输出单元1204,具体用于按如下方式按所述待播放视频中各视频帧的播放顺序或反向播放顺序输出解码得到的视频帧:
[0220]在视频解码器的最大解码帧率满足视频播放倍速要求、且倍速播放为快进播放的情况下,以视频输出帧率大小为视频原始帧率与所述视频播放倍速的乘积的帧率、按所述待播放视频中各视频帧的播放顺序输出解码得到的视频帧。
[0221]在视频解码器的最大解码帧率满足视频播放倍速要求、且倍速播放为快退播放的情况下,以视频输出帧率大小为视频原始帧率与所述视频播放倍速的乘积的帧率、并以GOP为单位按所述待播放视频中各视频帧的反向播放顺序输出解码得到的视频帧。
[0222]在视频解码器的最大解码帧率不满足视频播放倍速要求、且倍速播放为快进播放的情况下,以视频输出帧率大小为视频解码器的最大解码帧率、按所述待播放视频中各视频帧的播放顺序输出解码得到的视频帧。
[0223]在视频解码器的最大解码帧率不满足视频播放倍速要求、且倍速播放为快退播放的情况下,以视频输出帧率大小为视频解码器的最大解码帧率、并以GOP为单位按所述待播放视频中各视频帧的反向播放顺序输出解码得到的视频帧。
[0224]在第九种实现方式中,所述解码单元1203,还用于:
[0225]解码所述视频帧集合中的
当前第4页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1