一种视频时间长度的估计方法和装置制造方法及图纸

技术编号:10926035 阅读:139 留言:0更新日期:2015-01-21 08:45
本发明专利技术实施例提供了一种视频时间长度的估计方法和装置,其中的方法具体包括:将待估计视频文件划分为多个视频分段;其中,每个视频分段包括若干视频封装单元;分别读取各视频分段中各视频封装单元的时间戳信息和文件位置信息;分别记录各视频分段中首个视频封装单元的时间戳信息和文件位置信息,以及最大的时间戳信息和所述最大的时间戳信息对应视频封装单元的位置;依据所记录的各视频分段中首个视频封装单元的时间戳信息和文件位置信息,以及最大的时间戳信息和所述最大的时间戳信息对应视频封装单元的文件位置信息,计算所述待估计视频文件对应的视频时间长度。本发明专利技术能够快速准确地估算出视频时间长度。

【技术实现步骤摘要】

本专利技术涉及视频处理
,特别是涉及一种视频时间长度的估计方法和装置
技术介绍
随着多媒体技术、网络技术和有线电视的发展,视频已经成为人们日常生活中获取信息和享受娱乐的主要载体。而视频处理能够增加视频的特效效果,增强视频的可观赏性,因此,具有重要的作用。视频的播放、编辑、截图、转码等视频处理任务都需要预先知道准确的视频时间长度。通常可以直接从视频文件所包含的信息中获取视频时长。然而,由于种种原因,很多视频文件并没有包含时长信息。因此,视频时间长度的估计方法成为亟待解决的事情。目前,Ffmpeg是最常见的视频工具,其能够提供视频时间长度的估计功能,具体原理是解出视频文件的起始位置时间戳DTS_start,以及结束位置时间戳DTS_end,使之相减即可得到视频时间长度T:T=(DTS_end–DTS_start)/time_base   (1)其中,time_base为时间单位。然而,在实际应用中,很多视频并不能通过Ffmpeg获得准确的视频时间长度,这是因为这些视频的时间戳并非单调递增,而是分段周期变化或者本身时间戳存在一些错误,这些视频使用Ffmpeg获取的视频时间长度,往往与实际的视频时间长度相差甚远,严重影响了其他视频业务。
技术实现思路
本专利技术实施例所要解决的技术问题是提供一种视频时间长度的估计方法,能够快速准确地估算出视频时间长度。相应的,本专利技术实施例还提供了一种视频时间长度的估计装置,用以保证上述方法的实现及应用。为了解决上述问题,本专利技术公开了一种视频时间长度的估计方法,包括:将待估计视频文件划分为多个视频分段;其中,每个视频分段包括若干视频封装单元;分别读取各视频分段中各视频封装单元的时间戳信息和文件位置信息;分别记录各视频分段中首个视频封装单元的时间戳信息和文件位置信息,以及最大的时间戳信息和所述最大的时间戳信息对应视频封装单元的位置;依据所记录的各视频分段中首个视频封装单元的时间戳信息和文件位置信息,以及最大的时间戳信息和所述最大的时间戳信息对应视频封装单元的文件位置信息,计算所述待估计视频文件对应的视频时间长度。优选的,所述依据所记录的各视频分段中首个视频封装单元的时间戳信息和文件位置信息,以及最大的时间戳信息和所述最大的时间戳信息对应视频封装单元的文件位置信息,计算所述待估计视频文件对应的视频时间长度的步骤,包括:依据所记录的各视频分段中首个视频封装单元的时间戳信息和最大的时间戳信息,计算各视频分段的时长;依据所记录的各视频分段中首个视频封装单元的文件位置信息,以及所述最大的时间戳信息对应视频封装单元的文件位置信息,计算各视频分段的大小;依据各视频分段的时长和大小,计算所述待估计视频文件对应的视频时间长度。优选的,所述分别读取各视频分段中各视频封装单元的时间戳信息和文件位置信息的步骤,包括:确定各视频分段的读取文件位置信息;按照所述各视频分段的读取位置从小到大的顺序,依次根据所述读取位置读取各视频分段中各视频封装单元的时间戳信息和文件位置信息。优选的,所述时间戳信息包括:显示时间戳信息或者解码时间戳信息。另一方面,本专利技术还公开了一种视频时间长度的估计装置,包括:划分模块,用于将待估计视频文件划分为多个视频分段;其中,每个视频分段包括若干视频封装单元;读取模块,用于分别读取各视频分段中各视频封装单元的时间戳信息和文件位置信息;记录模块,用于分别记录各视频分段中首个视频封装单元的时间戳信息和文件位置信息,以及最大的时间戳信息和所述最大的时间戳信息对应视频封装单元的位置;及计算模块,用于依据所记录的各视频分段中首个视频封装单元的时间戳信息和文件位置信息,以及最大的时间戳信息和所述最大的时间戳信息对应视频封装单元的文件位置信息,计算所述待估计视频文件对应的视频时间长度。优选的,所述计算模块包括:第一计算子模块,用于依据所记录的各视频分段中首个视频封装单元的时间戳信息和最大的时间戳信息,计算各视频分段的时长;第二计算子模块,用于依据所记录的各视频分段中首个视频封装单元的文件位置信息,以及所述最大的时间戳信息对应视频封装单元的文件位置信息,计算各视频分段的大小;第三计算子模块,用于依据各视频分段的时长和大小,计算所述待估计视频文件对应的视频时间长度。优选的,所述读取模块包括:确定子模块,用于确定各视频分段的读取文件位置信息;读取子模块,用于按照所述各视频分段的读取位置从小到大的顺序,依次根据所述读取位置读取各视频分段中各视频封装单元的时间戳信息和文件位置信息。优选的,所述时间戳信息包括:显示时间戳信息或者解码时间戳信息。与现有技术相比,本专利技术实施例包括以下优点:本专利技术实施例不是类似现有方案根据视频文件的结束位置时间戳和起始位置时间戳估计视频时间长度,而是将待估计视频文件划分为多个视频分段,从所述多个视频分段对应的多个位置读取时间戳信息和文件位置信息,并利用所述多个视频分段的时间戳信息和文件位置信息进行视频时间长度的估计;由于利用了更多、更丰富的时间戳信息和文件位置信息进行视频时间长度的估计,因此能够提高视频时间长度估计的准确度。附图说明图1是本专利技术的一种视频时间长度的估计方法实施例的步骤流程图;图2是本专利技术的一种视频时间长度的估计方法示例5的步骤流程图;以及图3是本专利技术的一种视频时间长度的估计方法装置实施例的结构框图。具体实施方式为使本专利技术的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本专利技术作进一步详细的说明。如果视频文件的时间戳是单调递增的,那么,现有的估计方法只需用视频文件的结束位置时间戳减去起始位置时间戳,就能够准确地得到视频时间长度。例如,一个视频文件有10个视频帧,如果它们的时间戳是单调递增的,例如示例1中PTS(显示时间戳,Presentation Timestamp)值为1、2、3、4、5、6、7、8、9、10,那么,上述估计方法得到的视频时间长度10-1=9是准确的。然而,如果PTS不是单调递增的,比如示例2中PTS值分别为1、2、3、4、5、1、2、3、4、5,那么上述估计方法得到的视频时间长度就是5-1=4,这和真实的时长9相差甚远。本专利专利技术人注意到了上述问题,并创造性地将待估计视频文件划分为多个视频分段,从所述多个本文档来自技高网...
一种视频时间长度的估计方法和装置

【技术保护点】
一种视频时间长度的估计方法,其特征在于,包括:将待估计视频文件划分为多个视频分段;其中,每个视频分段包括若干视频封装单元;分别读取各视频分段中各视频封装单元的时间戳信息和文件位置信息;分别记录各视频分段中首个视频封装单元的时间戳信息和文件位置信息,以及最大的时间戳信息和所述最大的时间戳信息对应视频封装单元的位置;依据所记录的各视频分段中首个视频封装单元的时间戳信息和文件位置信息,以及最大的时间戳信息和所述最大的时间戳信息对应视频封装单元的文件位置信息,计算所述待估计视频文件对应的视频时间长度。

【技术特征摘要】
1.一种视频时间长度的估计方法,其特征在于,包括:
将待估计视频文件划分为多个视频分段;其中,每个视频分段包括若干
视频封装单元;
分别读取各视频分段中各视频封装单元的时间戳信息和文件位置信息;
分别记录各视频分段中首个视频封装单元的时间戳信息和文件位置信
息,以及最大的时间戳信息和所述最大的时间戳信息对应视频封装单元的位
置;
依据所记录的各视频分段中首个视频封装单元的时间戳信息和文件位
置信息,以及最大的时间戳信息和所述最大的时间戳信息对应视频封装单元
的文件位置信息,计算所述待估计视频文件对应的视频时间长度。
2.根据权利要求1所述的方法,其特征在于,所述依据所记录的各视
频分段中首个视频封装单元的时间戳信息和文件位置信息,以及最大的时间
戳信息和所述最大的时间戳信息对应视频封装单元的文件位置信息,计算所
述待估计视频文件对应的视频时间长度的步骤,包括:
依据所记录的各视频分段中首个视频封装单元的时间戳信息和最大的
时间戳信息,计算各视频分段的时长;
依据所记录的各视频分段中首个视频封装单元的文件位置信息,以及所
述最大的时间戳信息对应视频封装单元的文件位置信息,计算各视频分段的
大小;
依据各视频分段的时长和大小,计算所述待估计视频文件对应的视频时
间长度。
3.根据权利要求1或2所述的方法,其特征在于,所述分别读取各视
频分段中各视频封装单元的时间戳信息和文件位置信息的步骤,包括:
确定各视频分段的读取文件位置信息;
按照所述各视频分段的读取位置从小到大的顺序,依次根据所述读取位
置读取各视频分段中各视频封装单元的时间戳信息和文件位置信息。
4.根据权利要求1或2所述的方法,其特征在于,所述时间戳信息包

【专利技术属性】
技术研发人员:黄剑飞
申请(专利权)人:北京奇艺世纪科技有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1