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

文档序号:8546458阅读:569来源:国知局
一种视频倍速播放方法及装置的制造方法
【技术领域】
[0001]本发明涉及一种视频倍速播放方法及装置,尤其涉及一种在通过互联网进行在线视频学习时,提高视频播放效率的倍速播放方法及其相应的装置。
【背景技术】
[0002]互联网视频倍速播放,可以方便用户把时间集中到感兴趣的片段上,尤其是在互联网教育网站,对提高学员的学习效率大有益处;老师在录课时为了照顾大部分学员课堂的内容比较丰富且语速比较平缓;但对于一些基础好的学生,在通过视频学习时希望能够提高播放速度的方法来提高学习效率;因此,本发明提出了一种视频倍速播放的方法及装置,解决互联网视频倍速播放的问题。
[0003]为了解决这个问题,常见的技术方案是通过adobe或其它的流媒体服务器提高播放速度,问题是随着倍速的增加,码流会相应的增加,导致服务端带宽突增,同时用户的带宽有更高的要求,从而导致观看的过程中经常播放不流畅。
[0004]本发明主要是解决通过互联网在线视频学习时,提高视频的播放倍速,导致的码流增加问题。视频码流的增加会导致企业的运营成本增加的同时,也影响用户观看的体验,带来的不良学习效果。

【发明内容】

[0005]为解决上述现有技术中存在的技术问题,本发明提出了一种视频倍速播放方法及装置,实现了在无需视频编解码的情况下,通过删除冗余帧的方式,实现不增加码流,不损失视频质量的倍速处理技术。
[0006]不进行编解码的原理是利用视频编解码的特性,例如,可以设置在编码时生成IBP帧,然而,B帧可以仅依赖前一个I帧或P及后面一个P帧进行解码,删除其他任何一个或多个B帧,不会影响视频的解码,因此在进行变速时,B帧数据可以作为冗余帧被删除。当然,该冗余帧也可以是预先设定的满足一定要求的视频帧。
[0007]基于上述的技术目的及要解决的技术问题,本发明的目的是提供了一种视频倍速播放方法,其特征在于无需编解码实现文件变速,所述步骤包括:
[0008]步骤1、从要求倍速播放的视频中提取出视频帧分布信息;
[0009]步骤2、对所述视频帧分布信息进行处理,生成冗余帧信息;
[0010]步骤3、依据所述视频的视频文件信息、所述冗余帧信息及倍速播放要求,从所述视频的冗余帧中删除部分或全部冗余帧数据,以达到所述倍速播放要求。
[0011]优选地,所述步骤2进一步包括,
[0012]步骤201、依据冗余帧的特性,从所述视频帧分布信息中提取出冗余帧信息;
[0013]步骤202、根据所述冗余帧信息计算冗余帧数量。
[0014]优选地,所述步骤3进一步包括,
[0015]步骤301、获取视频文件信息,所述视频文件信息包括视频总时长、帧率;
[0016]步骤302、根据视频文件信息及倍速播放要求,计算整个视频文件需要删除的冗余帧数量及删除步长;
[0017]步骤303、根据删除步长、所述冗余帧信息,删除冗余帧数据;结合所述视频帧分布信息,判断删除冗余帧后视频的播放倍速是否与所述倍速播放要求的倍速相等,如果相等,则按照所述删除步长继续删除,直至视频播放结束;否则不断调整删除步长,使播放倍速达到所述倍速播放要求的倍速。
[0018]优选地,所述步骤303中删除冗余帧数据是实时进行的,是在视频文件播放的同时进行删除。此处申请人需要说明的是,本领域技术人员应当知晓,该删除冗余帧数据的方式,可以是实时进行的,即边播放边删除,也可以是非实时进行的,例如在完成了删除后,在进行码流的传输与播放;详细而言,可以实现冗余帧的删除是在获取到待倍速文件以及用户的倍速请求后,可以边播放边实现删除的,即实现了动态对视频进行调整,以满足用户,尤其是在线用户对视频文件的实时观看及实时调整视频倍速的需求,这一实时是作为本发明的一个优选的实时方式而实现的;也可以是,如果在用户对视频变速的观看要求不高的情况下,在获取到视频文件以及用户的倍速请求后,根据倍速请求及视频文件的相关信息,将视频文件按照倍速要求处理完成后,即对冗余帧删除完成后,再发送给用户,这其中虽然会产生一定的延时,但对于时效要求不高的用户来说,也可以采用这一方式,执行本发明提出的冗余帧删除的倍速处理方式,并且有效降低了带宽压力。
[0019]优选地,所述步骤3中,删除部分或全部冗余帧数据,采用以下方式:依据当前播放的帧及删除步长,计算下一待删除的帧位置,如果该帧位置处为冗余帧,则进行删除,否贝IJ,依据预设规则计算冗余帧,再执行删除。
[0020]优选地,所述视频文件信息还包括:帧类型、帧序号、帧数据的起始位置、数据长度的信息。本领域技术人员也可以采用视频领域中的其他可用的文件信息,按照不同的视频倍速请求,删除冗余帧,从而实现视频倍速,例如,通过每帧的播放周期和总时长,计算删除冗余时长,从而达到变速效果,本领域技术人员应当知晓,此处仅作为例举,本发明的保护范围并不以此为限。同样,本领域技术人员也可以对上述视频文件信息进行任意的组合、筛选使用,这些均应视为落入本发明的保护范围之内。
[0021]优选地,所述步骤201中的冗余帧特性包括以下特性:冗余帧的特性是不能被其他帧解码所依赖,但解码可以依赖其他帧。从视频帧中识别出帧信息,并利用这些特性进行冗余帧的筛选,本领域技术人员应当知晓,冗余帧的特性,也可以是用户或开发人员等进行自定义的,本发明所述的冗余帧是B帧,这可作为本发明的优选的一种实施方式,当然,也可以使用其他有冗余帧特性的视频帧,例如,全I帧数据,任意一个I帧都可以做作为冗余帧。本领域技术人员应当知晓,此处仅作为本发明的示例性阐释,本领域技术人员也可以具体设置冗余帧的定义条件,从而使用本发明提出的删除冗余帧的方法,这些更改、设置也应当视为落入本发明的保护范围之内。
[0022]优选地,所述步骤201中的从所述视频帧分布信息中提取出冗余帧信息的具体步骤为:
[0023]分析所述视频文件,获取NAL信息;
[0024]记录NAL类型及NAL的起始位置;
[0025]分析记录的NAL类型及起始位置,区分I帧、B帧、P帧及其他NAL信息,并提取冗余帧信息;所述冗余帧信息包括:冗余帧的序号、位置、涉及的NAL序列;
[0026]所述步骤202中的计算冗余帧数量的具体步骤为:
[0027]在分析完NAL信息后,按照帧类型直接计算冗余帧数量。
[0028]优选地,所述步骤303中的计算整个视频文件需要删除的冗余帧数量及删除步长的具体步骤为:
[0029]根据变速的倍速要求,计算删除冗余帧数据的删除步长;
[0030]根据当前位置和已删除的帧的数量,计算出当前的播放倍速;
[0031]如果当前的播放倍速不满足请求变速的倍速要求,则增加/减少删除步长,直至满足倍速要求。
[0032]进一步优选地,所述增加/减少删除步长的具体步骤为:
[0033]计算应该删除的冗余帧的数量:X = (L_(L/V))*F ;
[0034]计算删除冗余帧的删除步长:S = T/X ;
[0035]计算当前冗余帧删除后的倍速的倍率=Vi= i/(1-R J
[0036]其中,L是总时长,V是要求倍速的倍率,F是帧率,T是总帧数,L、V、F、T是在文件分析时已经获得的已知变量;X是应该删除的冗余帧的数量,S是删除冗余帧的删除步长;\是当前冗余帧删除后的倍速的倍率,i是当前帧的序号;R i是在序号为i的帧位置之前已删除的冗余帧的总数;
[0037]当倍速调整到第i帧时,计算第i+Ι帧使用当前删除步长的倍率值Vi+1;i V i+1大于V时,通过增加删除步长改变在i+Ι帧时的1-民值从而使V i+1等于V或小于V ;当V i+1小于V时,通过减小删除步长改变在i+Ι帧时的1-&值从而使V i+1等于V或大于V。
[0038]进一步优选地,所述步长及增加/减少删除的步长的具体步骤也可以为:
[0039]计算满足倍速要求需要删除的总时长:X = (L-(L/V));
[0040]计算每秒需要删除的视频时长:S = L/X ;
[0041]计算已删除的帧的总时长!RTi= R jlOOO/F
[0042]计算当前冗余帧删除后的倍速的倍率Wi= TIME i/(TIME1-RTi)
[0043]其中,L是总时长,V是要求倍速的倍率,F是帧率,L、V、F是在文件分析时已经获得的已知变量,X是需要删除的总时长,S为每秒需要删除的视频时长,TIMEi为从视频文件起始(即视频文件的起始位置或起始帧)至当前第i帧的时长,RTi为已删除的帧的总时长A是当前冗余帧删除后的倍速的倍率,i是当前帧的序号Ai是在序号为i的帧位置之前已删除的冗余帧的总数;通过调节在第i帧时;
[0044]当倍速调整到第i帧时,计算第i+Ι帧使用当前删除步长的倍率值Vi+1;当V i+1大于V时,通过增加删除步长改变在i+Ι帧时的1-民值从而使V i+1等于V或小于V ;当V i+1小于V时,通过减小删除步长改变在i+Ι帧时的1-&值从而使V i+1等于V或大于V。
[0045]优选地,所述步骤303中,不断调整删除步长的具体步骤,同时也是调节Vi以满足倍速要求的含义,具体为:
[0046]当到第i帧时,计算第i+Ι帧使用当前删除步长的倍速值Vi+1;i V i+1大于V时,通过增加步长改变在i+Ι帧时的卜民值从而使V i+1等于V或小于V^V i+1小于V时,通过减小步长改变在i+Ι帧时的1-民值从而使V i+1等于V或大于V。此处,当步长改变后,使得Vi+1与V之间的关系满足倍速要求,则可以将此时的步长作为该倍速要求下的最优步长,该满足倍速要求即vi+1与V相等,或者V i+1与V之间的差值满足一预定的范围,例如,当改变步长后,如果不能满足vi+1与V相等,则可令V i+1与V之间差值的绝对值与V的比值小于10 %,视为满足倍速要求等,具体而言,当vi+1大于V时,增加步长后,如果V i+1小于V,并且差值在V的10%以内,即视为满足了倍速要求,同理,当vi+1小于V时,调整步长,调整步长后,如果Vi+1大于V,且差值在V的10%以内,即视为满足了倍速要求。此处,10%的比值仅作为例举说明,该比值也可以是任意其他的设定比值,本领域技术人员应当知晓,也可以采用本领域中常用的误差算法,例如统计算法等,或者依据具体的用户体验要求来设置这一满足倍速要求的条件,这些常规算法在此处的应用,均视为落入本发明的保护范围之内。
[0047]本发明的另一目的,是提供了一种视频倍速播放装置,其特征在于,所述装置包括:视频倍速模块、音视频复用模块、流化模块;
[0048]所述视频倍速模块用于分析统计视频文件信息及视频帧分布信息,并依据所述视频文件信息、视频帧分布信息及倍速要求,通过删除视频文件中的部分或全部冗余帧数据,以达到倍速要求;
[0
当前第1页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1