一种快速回放视频文件方法及系统与流程

文档序号:11279697阅读:502来源:国知局
一种快速回放视频文件方法及系统与流程

本发明涉及大数据检索技术领域,特别涉及一种快速回放视频文件方法及系统。



背景技术:

在智能交通的实际应用当中,经常会出现客户端针对某一端非常具有参考价值的信息进行重复查看。

现有技术中,每次回放查看都需要在存储服务端的磁盘视频文件信息表中进行查询检索,而磁盘视频文件信息表中拥有大量的数据,查询速度慢,导致回放视频文件效率低。

因此,如何快速的回放视频文件,提高回放效率是有待解决的问题。



技术实现要素:

有鉴于此,本发明的目的在于提供一种快速回放视频文件方法及系统,以快速的回放视频文件,提高回放效率。其具体方案如下:

一种快速回放视频文件方法,包括:

接收用户输入的回放时间段;

在存储空间中查找与所述回访时间段对应的视频文件集的索引文件集,将所述索引文件集复制到回放索引文件;

接收用户输入的播放信息,在所述回放索引文件中查找所述播放信息中的起始播放时间对应的索引文件;

利用在所述回放索引文件中查找到的与所述起始播放时间对应的索引文件,播放相应的视频内容。

可选的,所述利用在所述回放索引文件中查找到的与所述起始播放时间对应的索引文件,播放相应的视频内容的过程,包括:

判断当前索引文件与下一个索引文件是否来自同一视频文件;

如果否,则切换到下一个索引文件相应的视频文件。

可选的,所述回放索引文件为依据用户输入的回放时间段,用于保存与所述回访时间段对应的视频文件集的索引文件集的临时文件。

可选的,所述利用在所述回放索引文件中查找到的与所述起始播放时间对应的索引文件,播放相应的视频内容的过程,包括:

遍历所述回放索引文件,得到关键帧集;

在所述关键帧集中查找到与所述起始播放时间对应的关键帧,定位到与所述起始播放时间对应的关键帧对应的索引信息的位置di;

并依次读取di和di的下一帧数据dn,以播放相应的视频内容。

可选的,所述接收用户输入的播放信息的过程,包括:

生成一个与所述回放时间段相应的时间轴;

接收包括用户利用所述时间轴输入的起始播放时间的所述播放信息。可选的,所述接收用户输入的播放信息的过程,包括:

可选的,所述所述利用在所述回放索引文件中查找到的与所述起始播放时间对应的索引文件,播放相应的视频内容的过程,包括:

遍历所述回放索引文件,得到关键帧集;

利用所述起始播放时间和关键帧信息查找公式,查找到与所述起始播放时间对应的索引信息在所述回放索引文件的位置dd;

将dd赋值给di,并依次读取di和di的下一帧数据dn,以播放相应的视频内容;其中,

所述关键帧信息查找公式为:

式中,index表示数组下标,tx表示所述起始播放时间,t1表示所述回放时间段的起始回访时间点,t2表示所述回放时间段的结束回访时间点。

可选的,所述回放索引文件包括利用数据文件内帧偏移量计算公式计算得到的数据文件内帧偏移量,和利用索引文件内帧信息偏移量计算公式计算得到的索引文件内帧信息偏移量;其中,

所述数据文件内帧偏移量计算公式为:

所述索引文件内帧信息偏移量计算公式为:indexlen=(x-1)×indexlen;

式中,datalen表示数据文件内帧偏移量,x表示数据文件中的第x帧,framelen为每一帧的帧长度,indexlen表示所有字段长度。

可选的,所述遍历所述回放索引文件,得到关键帧集的过程,包括:

遍历回放索引文件,得到所有关键帧总个数n,创建一个长度为n的数组iframearray[n],依次存储关键帧信息iframeinfo,其中,n为正整数。

本发明还公开了一种快速回放视频文件系统,包括:

第一接收模块,用于接收用户输入的回放时间段;

第一查找模块,用于在存储空间中查找与所述回访时间段对应的视频文件集的索引文件集;

复制模块,用于将所述索引文件集复制到回放索引文件;

第二接收模块,用于接收用户输入的播放信息;

第二查找模块,用于在所述回放索引文件中查找所述播放信息中的起始播放时间对应的索引文件;

播放模块,用于利用在所述回放索引文件中查找到的与所述起始播放时间对应的索引文件,播放相应的视频内容。

可选的,所述播放模块,包括:

遍历单元,用于遍历所述回放索引文件,得到关键帧集;

查找单元,用于在所述关键帧集中查找到与所述起始播放时间对应的关键帧,定位到与所述起始播放时间对应的关键帧对应的索引信息的位置di;

播放单元,用于依次读取di和di的下一帧数据dn,以播放相应的视频内容。

本发明中,快速回放视频文件方法,包括:接收用户输入的回放时间段;在存储空间中查找与回访时间段对应的视频文件集的索引文件集,将索引文件集复制到回放索引文件;接收用户输入的播放信息,在回放索引文件中查找播放信息中的起始播放时间对应的索引文件;利用在回放索引文件中查找到的与起始播放时间对应的索引文件,播放相应的视频内容。本发明在接收到用户输入的回访时间段后,将存储空间中与回访时间段相应的索引文件集复制到预先建立的回放索引文件中,依据用户输入的播放信息,在回放索引文件中查找到与起始播放时间相应的索引文件,而无需再前往存储空间中进行大规模的查找以查找到与起始播放时间相应的索引文件,从而减少了对视频索引文件的查找时间大幅度提高回访时间段内的任一时间点的随机回放效率,最后利用与起始播放时间相应的索引文件,播放回访时间段相应的视频内容。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。

图1为本发明实施例公开的一种快速回放视频文件方法流程示意图;

图2为本发明实施例公开的一种快速回放视频文件系统结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

本发明实施例公开了一种快速回放视频文件方法,参见图1所示,包括:

步骤s11:接收用户输入的回放时间段。

具体的,接收用户输入的想要观看的回放视频的回访时间段,回放时间段里包括起始回访时间点和结束回访时间点。

步骤s12:在存储空间中查找与回访时间段对应的视频文件集的索引文件集,将索引文件集复制到回放索引文件。

具体的,利用回访时间段,在存储空间中查找与回访时间段对应的视频文件集的索引文件集,因为,用户输入的是时间段,而在智能交通定长文件存储系统中,单个视频文件长度有限,因此,可能用户输入的回访时间段包括多个视频文件的录制时间,且每个视频文件的每一帧都对应一个索引文件,所以回放时间段内将包括多个索引文件,后续操作中便可以利用索引文件集中的索引文件查找到相应的回放视频内容;将包括多个索引文件的索引文件集复制到回放索引文件,回放索引文件是预先创建的用于保存与回访时间段对应的视频文件集的索引文件集的文件,在后续操作中,需要使用索引文件时便可以在回放索引文件中进行查找。

步骤s13:接收用户输入的播放信息,在回放索引文件中查找播放信息中的起始播放时间对应的索引文件。

具体的,用户在输入回访时间段后,还需要接受用户输入的播放信息,利用播放信息决定起始播放时间和播放方式,播放信息中可以包括用户设定的起始播放时间和播放方式信息,起始播放时间可以与起始回访时间点相同,也可以不同,起始播放时间可以为回访时间段中的任一时间点,播放方式信息可以设定对回放视频以何种方式进行播放,例如,循环播放,加速播放等;利用播放信息中的起始播放时间,在回放索引文件中查找与起始播放时间相应的索引文件,无需再存储空间中查找相应的索引文件。

步骤s14:利用在回放索引文件中查找到的与起始播放时间对应的索引文件,播放相应的视频内容。

具体的,通过在回放索引文件中查找到的与起始播放时间对应的索引文件,读取与索引文件相应的视频内容,依次读取索引文件,从而播放相应的视频内容。

可见,本发明实施例在接收到用户输入的回访时间段后,将存储空间中与回访时间段相应的索引文件集复制到预先建立的回放索引文件中,依据用户输入的播放信息,在回放索引文件中查找到与起始播放时间相应的索引文件,而无需再前往存储空间中进行大规模的查找以查找到与起始播放时间相应的索引文件,从而减少了对视频索引文件的查找时间大幅度提高回访时间段内的任一时间点的随机回放效率,最后利用与起始播放时间相应的索引文件,播放回访时间段相应的视频内容。

本发明实施例公开了一种具体的快速回放视频文件方法,相对于上一实施例,本实施例对技术方案作了进一步的说明和优化。具体的:

步骤s21:接收用户输入的回放时间段;

例如,回放时间段为视频信息起始回放时间2017-4-1611:30:02:000至视频信息结束回放时间2017-4-1611:45:02:000。

步骤s22:在存储空间中查找与回访时间段对应的视频文件集的索引文件集,将索引文件集复制到回放索引文件;

具体的,回放索引文件可以为依据用户输入的回放时间段,用于保存与回访时间段对应的视频文件集的索引文件集的临时文件,当然,回放索引文件也可以为预先建立的长期存在的文件,同时可以定期清理存储在回放索引文件中的索引文件集,例如,每接收5次用户输入的回放时间段,则清理历史索引文件集,以保证回放索引文件中的索引文件不会过多,从而降低查找效率。

进一步的,回放索引文件还包括帧类型一个字节(其中“0”表示音频帧、“1”表示关键帧、“2”表示其他类型的帧)、关键帧帧绝对时间20个字节、数据文件内帧偏移量12个字节、帧长度10个字节、索引文件内帧信息偏移量12个字节、数据文件路径100个字节、索引文件路径100个字节共7个基本字段共255个字节。

其中,回放索引文件中的数据文件内帧偏移量和索引文件内帧信息偏移量分别由数据文件内帧偏移量计算公式和索引文件内帧信息偏移量计算公式计算得到;其中,

数据文件内帧偏移量计算公式为:

索引文件内帧信息偏移量计算公式为:indexlen=(x-1)×indexlen;

式中,datalen表示数据文件内帧偏移量,x表示数据文件中的第x帧,framelen为每一帧的帧长度,indexlen表示所有字段长度。

例如,存储空间为磁盘,参见表1磁盘视频文件信息表所示,在磁盘视频文件信息表中查询到该时间段内的所有索引文件,再把该时间段内对应的索引信息复制到回放索引文件,如查找到该段回放时间段内对应的索引文件为indexf2,将该时间段内对应的索引信息复制到回放索引文件中。

表1

步骤s23:接收用户输入的播放信息,在回放索引文件中查找播放信息中的起始播放时间对应的索引文件。

具体的,接收用户输入的播放信息得过程可以包括步骤s231和步骤s232;其中,

步骤s231:生成一个与回放时间段相应的时间轴;

具体的,生成一个与回放时间段相应的时间轴,以便于用户输入播放信息中的起始播放时间。

步骤s232:接收包括用户利用时间轴输入的起始播放时间的播放信息。

例如,用户拖动游标,起始播放时间变为2017-4-1611:40:02:000。

步骤s24:利用在回放索引文件中查找到的与起始播放时间对应的索引文件,播放相应的视频内容。

在实际应用中,由于用户输入的回访时间段包括多个视频文件的录制时间,因此,在播放相应的视频内容时,需要判断是否需要切换视频文件;具体的,可以包括步骤s241和步骤s242,

步骤s241:判断当前索引文件与下一个索引文件是否来自同一视频文件。

步骤s242:如果否,则切换到下一个索引文件相应的视频文件。

可以理解的是,如果是,则继续播放。

当用户输入的播放信息中的起始播放时间为起始回放时间,即,按照默认设置,依序播放回访时间段的视频内容时,步骤s24可以具体包括步骤s243至步骤245;其中,

步骤s243:遍历回放索引文件,得到关键帧集;

具体的,遍历回放索引文件,得到所有关键帧总个数n,创建一个长度为n的数组iframearray[n],依次存储关键帧信息iframeinfo,其中,n为正整数。

例如,遍历回放索引文件,假设回放索引文件内一共有1750个关键帧信息,第1个关键帧的对应的时间为2017-4-1611:30:02:021,最后一个关键帧时间为2017-4-1611:45:02:019,得到所有关键帧总个数n为1750,创建一个长度为1750的数组iframearray[1750],依次存储关键帧信息iframeinfo。

其中,ifameinfo为自定义数据结构,其属性包括:索引文件名、索引文件路径信息、回放索引文件内帧信息偏移量indexlen、数据文件内帧偏移量datalen、视频数据文件名、视频数据文件路径。

步骤s244:在关键帧集中查找到与起始播放时间对应的关键帧,定位到与起始播放时间对应的关键帧对应的索引信息的位置di。

具体的,读取iframearray[0]对应的关键帧索引信息,即,起始播放时间对应的关键帧索引信息,在回放索引文件文件中定位到该关键帧索引信息的位置di。

例如,回放时间段为2017-4-1611:30:02:000至2017-4-1611:45:02:000,起始回放时间点出第一个关键帧在回放索引文件内的第23帧,由上述索引文件内帧信息偏移量计算公式可得第1帧对应的关键帧在索引文件内的偏移量indexlen0=22×255=5610。

步骤s235:并依次读取di和di的下一帧数据dn,以播放相应的视频内容。

具体的,依次读取回放索引文件中di位置对应的下一帧数据索引信息位置dn,将dn的值赋值给di,以播放相应的视频内容,例如,di位置对应的下一帧数据索引信息位置为d2,则将d2的值赋给di,di位置对应的下一帧数据索引信息位置变为d3,则将d3的值赋给di,直到与结束回放时间点相应的dn的值赋值给di,完成对相应的视频内容的播放。

具体的,当用户输入的播放信息不是起始回访时间点时,步骤s24可以具体包括步骤s246至步骤s248;其中,

步骤s246:遍历回放索引文件,得到关键帧集。

具体的,遍历回放索引文件,得到所有关键帧总个数n,创建一个长度为n的数组iframearray[n],依次存储关键帧信息iframeinfo,其中,n为正整数。

步骤s247:利用起始播放时间和关键帧信息查找公式,查找到与起始播放时间对应的索引信息在回放索引文件的位置dd。

具体的,确定iframearray下标index。利用起始播放时间和关键帧信息查找公式,通过ifamearray[index]得到对应的关键帧索引信息,并确定该索引信息在回放索引文件中的位置dd,其中,

关键帧信息查找公式为:

式中,index表示数组下标,tx表示起始播放时间,t1表示起始回访时间点,t2表示结束回访时间点。

例如,先将对应的时间转化为毫秒,则起始播放时间点:

t1=16×24×60×60×1000+11×60×60×1000+30×60×1000+2×1000=1423802000;

结束回放时间点:

t2=16×24×60×60×1000+11×60×60×1000+45×60×1000+2×1000=1424702000;

起始播放时间:

tx=16×24×60×60×1000+11×60×60×1000+49×60×1000+2×1000=1424402000;

通过ifamearray[1166]得到对应的关键帧索引信息,并确定该索引信息在回放索引文件中的位置dd。

步骤s248:将dd赋值给di,并依次读取di和di的下一帧数据dn,以播放相应的视频内容。

可以理解的是,本发明实施例中,所有公式中时间单位均需要转化到豪秒:时间=天×24×60×60×1000+时×60×60×1000+分×60×1000+秒×1000+毫秒。

相应的,本发明实施例还公开了一种快速回放视频文件系统,参见图2所示,该系统包括:

第一接收模块11,用于接收用户输入的回放时间段;

第一查找模块12,用于在存储空间中查找与回访时间段对应的视频文件集的索引文件集;

复制模块13,用于将索引文件集复制到回放索引文件;

第二接收模块14,用于接收用户输入的播放信息;

第二查找模块15,用于在回放索引文件中查找播放信息中的起始播放时间对应的索引文件;

播放模块16,用于利用在回放索引文件中查找到的与起始播放时间对应的索引文件,播放相应的视频内容。

可见,本发明实施例在接收到用户输入的回访时间段后,将存储空间中与回访时间段相应的索引文件集复制到预先建立的回放索引文件中,依据用户输入的播放信息,在回放索引文件中查找到与起始播放时间相应的索引文件,而无需再前往存储空间中进行大规模的查找以查找到与起始播放时间相应的索引文件,从而减少了对视频索引文件的查找时间大幅度提高回访时间段内的任一时间点的随机回放效率,最后利用与起始播放时间相应的索引文件,播放回访时间段相应的视频内容。

本发明实施例中,上述播放模块16,可以具体包括第一遍历单元、第一查找单元和第一播放单元;其中,

第一遍历单元,用于遍历回放索引文件,得到关键帧集;

第一查找单元,用于在关键帧集中查找到与起始播放时间对应的关键帧,定位到与起始播放时间对应的关键帧对应的索引信息的位置di;

第一播放单元,用于依次读取di和di的下一帧数据dn,以播放相应的视频内容。

上述播放模块16,还可以具体包括判断单元和切换单元;其中,

判断单元,用于判断当前索引文件与下一个索引文件是否来自同一视频文件;

切换单元,用于当判断单元判定当前索引文件与下一个索引文件不是来自同一视频文件,则切换到下一个索引文件相应的视频文件。

需要说明的是,回放索引文件为依据用户输入的回放时间段,用于保存与回访时间段对应的视频文件集的索引文件集的临时文件。回放索引文件中的数据文件内帧偏移量和索引文件内帧信息偏移量分别由数据文件内帧偏移量计算公式和索引文件内帧信息偏移量计算公式计算得到;其中,

数据文件内帧偏移量计算公式为:

索引文件内帧信息偏移量计算公式为:indexlen=(x-1)×indexlen;

式中,datalen表示数据文件内帧偏移量,x表示数据文件中的第x帧,framelen为每一帧的帧长度,indexlen表示所有字段长度。

本发明实施例中,上述第二接收模块14,可以具体包括生成单元和接收单元;其中,

生成单元,用于生成一个与回放时间段相应的时间轴;

接收单元,用于接收包括用户利用时间轴输入的起始播放时间的播放信息。

本发明实施例中,上述播放模块16,还可以具体包括第二遍历单元、第二查找单元和第二播放单元;其中,

第二遍历单元,用于遍历回放索引文件,得到关键帧集;

第二查找单元,用于利用起始播放时间和关键帧信息查找公式,查找到与起始播放时间对应的索引信息在回放索引文件的位置dd;

第二播放单元,用于将dd赋值给di,并依次读取di和di的下一帧数据dn,以播放相应的视频内容其中,

所述关键帧信息查找公式为:

式中,index表示数组下标,tx表示所述起始播放时间,t1表示所述回放时间段的起始回访时间点,t2表示所述回放时间段的结束回访时间点。

进一步的,上述第一遍历单元和第二遍历单元,均可以具体用于遍历回放索引文件,得到所有关键帧总个数n,创建一个长度为n的数组iframearray[n],依次存储关键帧信息iframeinfo,其中,n为正整数。

最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

以上对本发明所提供的一种快速回放视频文件方法及系统进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1