CN109819265A - 数据存储、数据获取方法及系统 - Google Patents
数据存储、数据获取方法及系统 Download PDFInfo
- Publication number
- CN109819265A CN109819265A CN201711158564.8A CN201711158564A CN109819265A CN 109819265 A CN109819265 A CN 109819265A CN 201711158564 A CN201711158564 A CN 201711158564A CN 109819265 A CN109819265 A CN 109819265A
- Authority
- CN
- China
- Prior art keywords
- video
- video segment
- segment
- mark
- data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Landscapes
- Information Transfer Between Computers (AREA)
- Television Signal Processing For Recording (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
本申请实施例提供了一种数据存储、数据获取方法及系统。该数据存储方法包括:获取实时采集的视频数据;当所获取的视频数据的长度达到预设切片长度时,将所获取的视频数据作为一个视频切片发送至云服务器,生成该视频切片的视频切片标识,以使云服务器存储该视频切片。应用本申请实施例提供的方案,能够提高视频数据存储的实时性,提高用户体验。
Description
技术领域
本申请涉及数据存储技术领域,特别是涉及一种数据存储、数据获取方法及系统。
背景技术
随着技术的发展,摄像机等图像采集设备的应用越来越多。为了更方便地存储图像采集设备采集的视频,可以将采集的视频存储至云服务器。当需要观看已采集的视频时,可以从云服务器中下载。
在相关技术中,在将实时采集的视频存储至云服务器时,常常需要将采集的视频数据形成视频文件,将视频文件发送至云服务器,以使云服务器存储该视频文件。
通常,采用上述方法能够将实时采集的视频存储至云服务器。但是,当实时采集的视频时长较长时,从将采集的长视频形成视频文件,到将长视频文件发送至云服务器,并使云服务器存储该长视频文件为止,需要花费较长时间,用户需要在较长时间之后才能从云服务器中下载采集的视频。因此,采用上述方法存储这种长视频时,视频数据存储的实时性不够高,用户后续下载视频数据或回放都会十分缓慢。
发明内容
本申请实施例的目的在于提供了一种数据存储、数据获取方法及系统,以提高视频数据存储的实时性,提高用户体验。具体的技术方案如下。
第一方面,本申请实施例提供了一种数据存储方法,所述方法包括:
获取实时采集的视频数据;
当所获取的视频数据的长度达到预设切片长度时,将所获取的视频数据作为一个视频切片发送至云服务器,以使所述云服务器存储所述视频切片;
生成所述视频切片的视频切片标识。
可选的,在生成所述视频切片的视频切片标识之后,所述方法还包括:
记录所述视频切片标识;
当所述视频切片为视频文件的最后一个视频切片时,根据记录的视频切片标识,生成视频文件元数据,存储所述视频文件元数据。
可选的,在生成所述视频切片标识之后,包括:
将所述视频切片标识发送至管理服务器,以使管理服务器记录所述视频切片标识和视频文件元数据,其中,所述视频文件元数据为:所述管理服务器在所述视频切片为视频文件的最后一个视频切片时根据记录的视频切片标识生成的视频文件元数据。
可选的,所述云服务器为:预设的与实时采集视频数据的图像采集设备的特征信息对应的云服务器。
可选的,所述云服务器包括不同网络运营商的云服务器。
可选的,所述获取实时采集的视频数据的步骤,包括:获取图像采集设备实时采集的视频数据。
第二方面,本申请实施例提供了一种数据获取方法,所述方法包括:
接收视频数据获取请求,视频数据获取请求携带待获取视频的时间信息;
根据所述时间信息,确定所述待获取视频包含的视频切片的视频切片标识;其中,一个视频切片为:当电子设备获取的实时采集的视频数据的长度达到预设切片长度时将所获取的视频数据作为的视频切片;视频切片为所述电子设备发送至云服务器的视频切片;
向所述云服务器发送视频切片获取请求,所述视频切片获取请求携带所述视频切片标识;
接收所述云服务器根据所述视频切片标识确定的视频切片,作为所述待获取视频。
可选的,所述时间信息包括所述待获取视频的开始时刻和结束时刻;所述根据所述时间信息确定所述待获取视频包含的视频切片的视频切片标识的步骤,包括:
根据所述时间信息,确定所述待获取视频所在的视频文件;
将所述视频文件的处于所述开始时刻和结束时刻之间的视频切片标识,确定为所述待获取视频包含的视频切片的视频切片标识。
可选的,所述将所述视频文件的处于所述开始时刻和结束时刻之间的视频切片标识,确定为所述待获取视频包含的视频切片的视频切片标识的步骤,包括:
当所述视频文件不存在对应的视频文件元数据时,从记录的所述视频文件包含的视频切片标识中确定处于所述开始时刻和结束时刻之间的视频切片标识,作为所述待获取视频包含的视频切片的视频切片标识;
当所述视频文件存在对应的视频文件元数据时,从所述视频文件元数据中确定处于所述开始时刻和结束时刻之间的视频切片标识,作为所述待获取视频包含的视频切片的视频切片标识。
可选的,所述视频切片标识是从管理服务器中获取;和/或,所述视频文件元数据是从管理服务器中获取。
可选的,在接收到所述视频切片之后,所述方法还包括:将所述视频切片发送至用户终端。
第三方面,本申请实施例提供了一种摄像机,该摄像机包括:图像采集器、处理器和存储器;
其中,所述图像采集器,用于实时采集视频数据,并将实时采集的视频数据发送至所述处理器;
所述处理器,用于接收所述图像采集器实时采集的视频数据,当所获取的视频数据的长度达到预设切片长度时,将所获取的视频数据作为一个视频切片发送至云服务器,生成所述视频切片的视频切片标识。
可选的,所述处理器,还用于在生成所述视频切片的视频切片标识之后,将所述视频切片标识记录在所述存储器中,当所述视频切片为视频文件的最后一个视频切片时,根据记录的视频切片标识,生成视频文件元数据,将所述视频文件元数据存储在所述存储器中。
可选的,所述处理器,还用于在生成所述视频切片标识之后,将所述视频切片标识发送至管理服务器,以使管理服务器记录所述视频切片标识和视频文件元数据,其中,所述视频文件元数据为:所述管理服务器在所述视频切片为视频文件的最后一个视频切片时根据记录的视频切片标识生成的视频文件元数据。
可选的,云服务器为:预设的与所述摄像机的特征信息对应的云服务器。
可选的,所述云服务器包括不同网络运营商的云服务器。
第四方面,本申请实施例提供了一种下载服务器,该下载服务器包括:处理器和存储器;
其中,所述处理器,用于接收视频数据获取请求,根据所述视频数据获取请求携带的待获取视频的时间信息,确定所述待获取视频包含的视频切片的视频切片标识,向云服务器发送携带所述视频切片标识的视频切片获取请求,接收所述云服务器根据所述视频切片标识确定的视频切片,作为所述待获取视频;其中,一个视频切片为:当电子设备获取的实时采集的视频数据的长度达到预设切片长度时将所获取的视频数据作为的视频切片;视频切片为所述电子设备发送至所述云服务器的视频切片。
可选的,所述时间信息包括所述待获取视频的开始时刻和结束时刻;所述处理器,具体用于根据所述时间信息,确定所述待获取视频所在的视频文件,将所述视频文件的处于所述开始时刻和结束时刻之间的视频切片标识,确定为所述待获取视频包含的视频切片的视频切片标识。
可选的,所述处理器,具体用于当所述视频文件不存在对应的视频文件元数据时,从记录的所述视频文件包含的视频切片标识中确定处于所述开始时刻和结束时刻之间的视频切片标识,作为所述待获取视频包含的视频切片的视频切片标识;当所述视频文件存在对应的视频文件元数据时,从所述视频文件元数据中确定处于所述开始时刻和结束时刻之间的视频切片标识,作为所述待获取视频包含的视频切片的视频切片标识。
可选的,所述视频切片标识是从管理服务器中获取;和/或,所述视频文件元数据是从管理服务器中获取。
可选的,所述处理器,具体用于在接收到所述视频切片之后,将所述视频切片发送至用户终端。
第五方面,本申请实施例提供了一种数据存储系统,该系统包括:摄像机和切片服务器;
所述摄像机,用于实时采集视频数据,并将实时采集的视频数据发送至所述切片服务器;
所述切片服务器,用于接收所述摄像机实时采集的视频数据,当所接收的视频数据的长度达到预设切片长度时,将所接收的视频数据作为一个视频切片发送至云服务器,生成所述视频切片的视频切片标识。
可选的,所述云服务器包括不同网络运营商的云服务器。
第六方面,本申请实施例提供了一种数据获取系统,该系统包括:用户终端和下载服务器;
所述用户终端,用于向所述下载服务器发送视频数据获取请求,所述视频数据获取请求携带待获取视频的时间信息,接收所述下载服务器发送的待获取视频;
所述下载服务器,用于接收所述用户终端发送的携带待获取视频的时间信息的视频数据获取请求,根据所述时间信息,确定所述待获取视频包含的视频切片的视频切片标识,向云服务器发送携带所述视频切片标识的视频切片获取请求,接收所述云服务器根据所述视频切片标识确定的视频切片,作为所述待获取视频,将所述待获取视频发送至所述用户终端;其中,一个视频切片为:当电子设备获取的实时采集的视频数据的长度达到预设切片长度时将所获取的视频数据作为的视频切片;视频切片为所述电子设备发送至所述云服务器的视频切片。
第七方面,本申请实施例提供了一种计算机可读存储介质,该计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现本申请实施例提供的数据存储方法。该数据存储方法包括:
获取实时采集的视频数据;
当所获取的视频数据的长度达到预设切片长度时,将所获取的视频数据作为一个视频切片发送至云服务器,以使所述云服务器存储所述视频切片;
生成所述视频切片的视频切片标识。
第八方面,本申请实施例提供了一种计算机可读存储介质,该计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现本申请实施例提供的数据获取方法。该数据获取方法包括:
接收视频数据获取请求,所述视频数据获取请求携带待获取视频的时间信息;
根据所述时间信息,确定所述待获取视频包含的视频切片的视频切片标识;其中,一个视频切片为:当电子设备获取的实时采集的视频数据的长度达到预设切片长度时将所获取的视频数据作为的视频切片;视频切片为所述电子设备发送至云服务器的视频切片;
向所述云服务器发送视频切片获取请求,所述视频切片获取请求携带所述视频切片标识;
接收所述云服务器根据所述视频切片标识确定的视频切片,作为所述待获取视频。
本申请实施例提供的数据存储方法,可以获取实时采集的视频数据,当所获取的视频数据的长度达到预设切片长度时,将所获取的视频数据作为一个视频切片发送至云服务器,生成该视频切片的视频切片标识。这样,云服务器可以接收该视频切片并存储该视频切片。当实时采集的视频数据未形成视频文件时,能够以视频切片的形式存储至云服务器,提高视频数据存储的实时性。在视频文件存储完成之前,可以根据生成的视频切片标识请求获取已经存储的视频切片,无需等待视频文件最终形成,从而使用户更快地获取到存储的视频数据。因此,本申请实施例能够提高视频数据存储的实时性,提高用户体验。当然,实施本申请的任一产品或方法并不一定需要同时达到以上所述的所有优点。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍。显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的数据存储方法的一种流程示意图;
图2a和图2b为本申请实施例提供的用于数据存储的两种应用场景示意图;
图2c为本申请实施例提供的一种应用实例的系统结构示意图;
图2d为本申请实施例提供的一种切片规则示意图;
图3为本申请实施例提供的数据存储系统的一种结构示意图;
图4为本申请实施例提供的数据获取方法的一种流程示意图;
图5a为本申请实施例提供的获取视频数据时的一种应用场景示意图;
图5b为本申请实施例提供的用于数据获取的一种系统结构示意图;
图6为本申请实施例提供的数据获取系统的一种结构示意图;
图7为本申请实施例提供的摄像机的一种结构示意图;
图8为本申请实施例提供的下载服务器的一种结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整的描述。显然,所描述的实施例仅仅是本申请的一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
为了提高视频数据存储的实时性,本申请实施例提供了一种数据存储方法及系统。下面通过具体实施例,对本申请进行详细说明。
图1为本申请实施例提供的数据存储方法的一种流程示意图。该方法应用于电子设备。该电子设备可以为图像采集设备,也可以为切片服务器。图像采集设备可以为摄像机、应用于手机中的摄像头等,摄像机还可以为监控摄像机或非监控摄像机。图2a和图2b为本申请实施例提供的两种应用场景示意图。在图2a中,图像采集设备实时采集视频数据,并采用以下步骤确定视频切片,向云服务器发送视频切片。在图2b中,切片服务器接收图像采集设备实时采集的视频数据并采用以下步骤确定视频切片,向云服务器发送视频切片。
具体的,本实施例的数据存储方法包括如下步骤S101~步骤S103:
步骤S101:获取实时采集的视频数据。
在获取实时采集的视频数据之后,可以将实时采集的视频数据存储在电子设备的缓存中。其中,视频数据可以为是以帧图像为单位的数据。
在本步骤中,当执行主体为图像采集设备时,获取实时采集的视频数据时,具体可以为,获取图像采集设备中图像采集器实时采集的视频数据。
当执行主体为切片服务器时,获取实时采集的视频数据时,具体可以为,获取图像采集设备实时采集的视频数据。
在获取视频数据之后,可以将视频数据存储在缓存中。
步骤S102:当所获取的视频数据的长度达到预设切片长度时,将所获取的视频数据作为一个视频切片发送至云服务器,以使云服务器存储上述视频切片。
其中,视频数据的长度,可以理解为视频数据的时间长度。对应的,预设切片长度可以为预先设置的时间长度。例如,预设切片长度可以为10秒等值。在另一种实施方式中,视频数据的长度也可以理解为视频数据的数据量长度,对应的,预设切片长度可以为预先设置的数据量长度。例如,预设切片长度可以为100kB等值。在本申请中,预设切片长度可以为根据实际情况预先确定的值。
在本步骤中,当电子设备的缓存中的视频数据的长度达到预设切片长度时,将缓存中的视频数据作为一个视频切片发送至云服务器。初始时,电子设备在获取实时采集的视频数据时,可以第一个I帧之后的视频数据保存到缓存区。第一个I帧之前的视频数据可以认为是无用的数据,舍弃即可。其中,I帧为视频中的关键帧、独立帧,是不以其他帧图像为参考的帧。
云服务器接收视频切片之后可以存储该视频切片。其中,云服务器可以为私有云服务器,也可以为公有云服务器。本申请对此不做具体限定。
步骤S103:生成上述视频切片的视频切片标识。
其中,视频切片标识(Identification,ID)可以以数字表示,也可以以字符表示。例如,视频切片ID可以为1、2、3等,也可以为A、B、C等。该视频切片所在的视频文件可以采用视频文件ID表示。
当该视频切片为视频文件中的第一个视频切片时,可以根据上一视频文件的视频文件ID,按照次序生成该视频文件的视频文件ID以及该视频切片的视频切片ID。当该视频切片不为视频文件中的第一个视频切片时,该视频文件ID已经确定,可以根据上一视频切片的视频切片ID,按照次序生成该视频切片的视频切片ID。
例如,当视频切片为视频文件的第一个视频切片时,上一视频文件为视频文件4,则可以确定该视频文件ID为视频文件5,视频切片为视频切片1;在获取到第二个视频切片时,该视频切片的视频切片标识可以为视频切片2,在获取到第三个视频切片时,该视频切片的视频切片标识可以为视频切片3……视频切片1、视频切片2和视频切片3等均属于视频文件5。
视频文件存在开始时刻和结束时刻。在确定视频文件ID时,若执行主体为图像采集设备,则当视频数据采集完成时,从视频数据开始采集到停止采集之间的连续视频数据可以作为一个视频文件。图像采集设备可以在开始采集条件满足时开始采集视频数据,在停止采集条件满足时停止采集视频数据。具体的,开始采集条件可以为检测到图像中存在移动物体时,或者预设时间周期达到时;停止采集条件可以为检测到图像中不存在移动物体时,或者预设的采集时长达到时。
若开始采集条件为检测到图像中存在移动物体时,停止采集条件为检测到图像中不存在移动物体时,图像采集设备为监控摄像机,则监控摄像机可以被设定为检测图像中的移动物体,将物体移动时的视频数据存储至云服务器。在这种情况下,监控摄像机在检测到图像中存在移动物体时,开始采集视频数据,当视频数据的长度达到预设切片长度时,将所采集的视频数据作为一个视频切片发送至云服务器。当移动物体停止移动或者移出视频画面时,监控摄像机停止采集视频数据。从开始采集到停止采集时所采集的连续视频数据即作为一个视频文件。
若开始采集条件为检测到图像中存在移动物体时,停止采集条件为预设的采集时长达到时,图像采集设备为监控摄像机,则监控摄像机在检测到图像中存在移动物体时,开始采集视频数据,当采集的视频数据的时长达到预设的采集时长时,停止采集视频数据。
若开始采集条件为预设时间周期达到时,停止采集条件为预设的采集时长达到时,则图像采集设备可以被设定为每隔第一时长采集第二时长的视频数据。其中,第一时长和第二时长均可以为预设值,例如,第一时长可以为10分钟,第二时长可以为20分钟。即,图像采集设备每隔10分钟采集20分钟的视频数据。这样,每个视频文件的长度都是20分钟。
在采集视频数据的过程中,当采集的视频数据的长度达到预设切片长度时,将所获取的视频数据作为一个视频切片发送至云服务器。
若执行主体为切片服务器,则当接收到图像采集设备发送的视频文件结束指令时,或者视频数据接收超时时,可以确定视频文件接收完成。
图像采集设备可以在开始采集条件满足时开始采集视频数据,在停止采集条件满足时停止采集视频数据。在采集视频数据的过程中,图像采集设备将采集的视频数据发送至切片服务器。当视频文件采集完成时,图像采集设备可以向切片服务器发送视频文件结束指令,也可以不发送视频文件结束指令。
视频文件可以对应一个或多个视频切片。实时获取的视频数据每形成一个视频切片,即向云服务器发送一个视频切片,并生成一个视频切片的视频切片标识。
在生成视频切片的视频切片标识之后,用户终端即可以根据上述视频切片标识从云服务器上下载该视频切片,因此,用户查看视频时的实时性较好。
由上述内容可知,本实施例中,当实时采集的视频数据未形成视频文件时,能够以视频切片的形式存储至云服务器,提高视频数据存储的实时性。这样,在视频文件存储完成之前,即可以根据生成的视频切片标识请求获取已经存储的视频切片,无需等待视频文件最终形成,从而使用户更快地获取到存储的视频数据。因此,本实施例能够提高视频数据存储的实时性,提高用户体验。
当将上述视频切片发送至公有云服务器时,可以将上述视频切片发送至指定公有云服务器,指定公有云服务器可以为数据存储质量好、收费低的服务商的服务器,从而提高用户体验,降低运营成本。当某个公有云服务器发生故障时,可以将视频切片发送至其他公有云服务器,从而实现服务的灾备和冗余。
在本申请的另一实施例中,图1所示实施例中的步骤S103之后,即在生成上述视频切片的视频切片标识之后,该方法还可以包括以下步骤1和步骤2:
步骤1:记录该视频切片标识。
具体的,可以将视频切片标识记录在缓存或者内存中。当视频文件还未接收完成即还未形成时,用户终端即可以根据已经记录的视频切片标识获取该视频文件中已经存储至云服务器的视频切片,无需等待视频文件完全形成。
步骤2:当上述视频切片为视频文件的最后一个视频切片时,根据记录的视频切片标识,生成视频文件元数据,并存储该视频文件元数据。
在本步骤中,根据记录的视频切片标识,生成视频文件元数据时,可以根据记录的属于该视频文件的所有视频切片的视频切片标识,生成视频文件元数据。
其中,视频文件元数据可以包括图像采集设备标识(Identification,ID),视频文件ID、视频文件包含的视频切片ID、视频文件的开始时刻和结束时刻、视频文件存储的云服务器ID等。当云服务器为公有云服务器时,云服务器ID可以为云服务器提供商的厂商ID。
视频文件的开始时刻可以为属于该视频文件的第一个视频切片的开始时刻,视频文件的结束时刻可以为属于该视频文件的最后一个视频切片的结束时刻。
例如,视频文件1中第一个视频切片1的开始时刻为10:30,预设切片时长为30秒钟,则从接收视频文件1的视频数据开始,当视频长度达到30秒长度,即将这30秒视频作为一个视频切片。如果在10:50时接收到视频文件1的结束指令,则视频文件1的最后一个视频切片的结束时刻为10:50。该视频文件1共包含40个视频切片,视频切片ID分别为视频切片1~视频切片40。视频文件1的视频文件元数据可以包括以下信息:视频文件1,40个视频切片,视频切片1~视频切片40,视频文件的开始时刻和结束时刻分别为10:30和10:50。
可见,在本实施例中,作为执行主体的电子设备可以存储视频文件元数据,当用户终端请求视频时可以直接从作为执行主体的设备中获取视频文件元数据,这样处理流程更简洁。
为了减少电子设备的计算量,在本申请的另一实施例中,图1所示实施例中的步骤S103之后,即生成上述视频切片的视频切片标识之后,该方法还可以包括以下步骤:
将上述视频切片标识发送至管理服务器,以使管理服务器记录上述视频切片标识和视频文件元数据。
其中,视频文件元数据可以为:管理服务器在上述视频切片为视频文件的最后一个视频切片时根据记录的视频切片标识生成的视频文件元数据。
在本实施例中,电子设备将上述视频切片标识发送至管理服务器;管理服务器接收并记录电子设备发送的上述视频切片标识,当上述视频切片为视频文件的最后一个视频切片时,根据记录的视频切片标识生成视频文件元数据,并存储该视频文件元数据。
在将上述视频切片标识发送至管理服务器时,电子设备可以向云服务器每发送一个视频切片,即向管理服务器发送该视频切片的视频切片标识,管理服务器接收并记录该视频切片标识。当上述视频切片为视频文件的最后一个视频切片时,管理服务器根据记录的视频切片标识生成并存储视频文件元数据。
管理服务器可以将视频文件元数据存储在数据库中。数据库可以存储在管理服务器内部,也可以存储在其他设备中,本申请对此不做具体限定。
可见,本实施例可以将视频切片标识存储在管理服务器中。这样,可以由管理服务器生成并存储视频文件元数据,减少电子设备的计算量,提高处理效率。
在本申请的另一实施例中,云服务器可以分布在不同的地理位置,也可以包括不同的网络运营商的云服务器,为了提高存储不同图像采集设备的视频数据时的稳定性以及提高服务质量,图1所示实施例中,云服务器可以为:预设的与实时采集视频数据的图像采集设备的特征信息对应的云服务器。或者,云服务器可以包括不同网络运营商的云服务器。
其中,特征信息可以包括图像采集设备ID、图像采集设备所使用的网络运营商、图像采集设备所在的地理位置等。网络运营商可以包括电信运营商、联通运营商和移动运营商。地理位置可以以省份为单位来划分,也可以以地区为单位来划分,例如华东地区、华中地区、华北地区等。
本实施例中,可以预先建立特征信息与云服务器的对应关系。例如,建立图像采集设备ID与云服务器的对应关系,可以将不同的图像采集设备的视频数据存储在不同的云服务器中,实现对视频数据的分布存储,提高视频数据存储时的稳定性。也可以是,建立不同地理位置与处于该地理位置中的云服务器的对应关系,将图像采集设备采集的视频数据存储在与该图像采集设备处在相同地理位置中的云服务器中,从而提高数据存储的稳定性。还可以是,将图像采集设备采集的视频数据存储在与该图像采集设备采用相同网络运营商的云服务器中,提高数据存储的稳定性和服务质量。
当本实施例的执行主体为切片服务器时,也可以预先设置位于不同地理位置和/或使用不用网络运营商的切片服务器。根据地理位置和/或网络运营商,预先设置切片服务器与图像采集设备的对应关系,根据该对应关系,图像采集设备将视频数据发送至对应的切片服务器。
一个图像采集设备的视频数据可以存储在不同网络运营商的云服务器中。
出于服务容灾和备份的目的,在电子设备系统运行过程中,可以选择多个云存储运营商来提供视频数据存储服务。图像采集设备的视频数据可以在多个公有云网络运营商之间存储是保证系统稳定性和服务质量的重要环节。例如,切换和调度可以基于两个层面:一是,可以将特定的摄像机ID指定到某个公有云存储供应商;二是,可以按照地理位置、网络运营商类型将不同的摄像机的视频数据存储至不同的公有云服务器,或者将同一图像采集设备的视频数据存储至不同的云服务器。由于视频数据可以存储在不同网络运营商的云服务器中,因此当一个网络运营商云服务器故障时,还可以从其他网络运营商的云服务器中获取视频数据,从而能够提高数据备份和容错的能力。
可见,本实施例中云服务器为与实时采集视频数据的图像采集设备的特征信息对应的云服务器,不同的图像采集设备的视频数据可以存储在不同的云服务器中,这样能够使视频数据的存储更加灵活。当视频数据存储在不同网络运营商的云服务器中时,能够提高数据备份和容错的能力。
下面结合具体应用实例对本申请再做详细说明。
作为一种实施方式,可以将用于监控的摄像机采集的实时视频数据存储在云服务器,供用户终端下载和回放。该摄像机可以具有以下特性:
1)摄像机在检测到移动物体等情况下可以触发视频数据上传,当摄像机画面中一直存在移动物体时,摄像机将持续向云服务器上传视频数据。因此,摄像机上传的视频数据具有大小不确定的特点。
2)摄像机自身的内存较小,能够缓存的实时视频数据有限,无法将完整的一段移动侦测录像保存在内存中。
3)摄像机的视频数据存储到云服务器后,用户接收到消息通知,能够立即通过用户终端从云服务器下载播放。
4)摄像机的视频数据存储到云服务器后,在录像回放时可以按时间播放。因此,可以保存精确的录像索引信息,并且用户终端上的客户端在播放视频时能够通过索引信息获取到对应的视频数据。
为了满足上述特性的要求,对摄像机采集的实时视频进行以下切片处理。
当摄像机检测到视频画面中存在移动物体时,或者预设的定时录像的时间到达时,摄像机开始实时采集视频数据,并将实时采集的视频数据发送至切片服务器,由切片服务器上传到云服务器进行存储,系统结构图如图2c所示。摄像机可以使用安全套接层(Secure Sockets Layer,SSL)等安全链路以及统一的私有协议,将实时采集的视频数据发送至切片服务器;切片服务器将获取的视频数据进行缓存切片,再按照公有云存储协议将视频切片上传到公有云服务器进行存储,并将生成的视频切片标识发送到管理服务器,管理服务器将视频切片标识存储到缓存。当视频切片为视频文件的最后一个视频切片时,管理服务器根据记录的各个视频切片标识生成视频文件元数据,并将视频文件元数据存储至数据库。
切片服务器接收摄像机发送的实时视频数据并缓存,同时对缓存数据进行切片,切片规则如图2d所示,视频切片按照实时视频数据的时长来分割,每个视频切片的时间长度为10秒。切片服务器对视频数据进行切片的处理逻辑如下:
步骤1:接收摄像机发送的视频数据,检查第一个I帧,将该I帧之后的视频数据保存到缓存区。
步骤2:检查缓存区中数据的时间长度(最后一帧的时间-最先一帧的时间)是否大于或等于10秒,如果大于或等于10秒,则执行步骤3,否则继续接收视频数据。如果摄像机结束视频数据上传,则执行步骤3。其中,10秒只是预设切片长度的一个例子,预设切片长度还可以其他值。
步骤3:按照公有云存储协议将缓存区中的数据上传到云存储,上传成功后清空缓存区。生成视频切片标识,将视频切片标识发送至管理服务器,管理服务器将视频切片标识存储至缓存区,在视频切片为视频文件的最后一个视频切片时生成视频文件元数据,并将生成的视频文件元数据存储至数据库。
切片服务器可以将以下信息发送至管理服务器,以便管理服务器生成视频文件元数据(如图2d所示的视频文件元数据结构图):摄像机ID、视频文件ID、视频切片ID、视频文件开始时刻和结束时刻、云服务器厂商ID。
图3为本申请实施例提供的数据存储系统的一种结构示意图,与图1所示方法实施例相对应。该系统包括:摄像机301和切片服务器302。
其中,摄像机301,用于实时采集视频数据,并将实时采集的视频数据发送至切片服务器302;
切片服务器302,用于接收摄像机301实时采集的视频数据,当所接收的视频数据的长度达到预设切片长度时,将所接收的视频数据作为一个视频切片发送至云服务器,生成上述视频切片的视频切片标识。
在本实施例中,切片服务器302可以将接收到的摄像机301实时采集的视频数据存储在缓存中。当缓存中的视频数据的长度达到预设切片长度时,将缓存中的视频数据作为一个视频切片。
视频文件可以对应一个或多个视频切片。切片服务器接收的实时视频数据每形成一个视频切片,即向云服务器发送一个视频切片,并生成一个视频切片标识。
在生成视频切片标识之后,用户终端即可以通过上述视频切片标识从云服务器上下载该视频切片,因此,用户查看视频的实时性较好。
由上述内容可知,本实施例中,当实时采集的视频数据未形成视频文件时,切片服务器能够将视频数据以视频切片的形式存储至云服务器,提高视频数据存储的实时性。这样,在视频文件存储完成之前,即可以根据生成的视频切片标识请求获取已经存储的视频切片,无需等待视频文件最终形成,从而使用户更快地获取到存储的视频数据。因此,本实施例能够提高视频数据存储的实时性,提高用户体验。
其中,云服务器可以为私有云服务器,也可以为公有云服务器。当切片服务器将上述视频切片发送至公有云服务器时,可以将上述视频切片发送至指定公有云服务器,指定公有云服务器可以为数据存储质量好、收费低的服务商的服务器,从而提高用户体验,降低运营成本。当某个公有云服务器发生故障时,可以将视频切片发送至其他公有云服务器,从而实现服务的灾备和冗余。
在本申请的另一实施例中,在图3所示实施例中,切片服务器302,还可以用于在生成上述视频切片的视频切片标识之后,记录视频切片标识,当上述视频切片为视频文件的最后一个视频切片时,根据记录的视频切片标识,生成视频文件元数据,存储该视频文件元数据。
具体的,可以将视频切片标识记录在缓存或者内存中。当视频文件还未接收完成即还未形成时,用户终端即可以根据已经记录的视频切片标识获取该视频文件中已经存储至云服务器的视频切片,无需等待视频文件完全形成。
其中,视频文件元数据可以包括图像采集设备ID,视频文件ID、视频文件包含的视频切片ID、视频文件的开始时刻和结束时刻、视频文件存储的云服务器ID等。当云服务器为公有云服务器时,云服务器ID可以为云服务器提供商的厂商ID。
在本实施例中,根据记录的视频切片标识,生成视频文件元数据时,可以根据记录的属于该视频文件的所有视频切片的视频切片标识,生成视频文件元数据。视频文件的开始时刻可以为属于该视频文件的第一个视频切片的开始时刻,视频文件的结束时刻可以为属于该视频文件的最后一个视频切片的结束时刻。
可见,在本实施例中,切片服务器可以存储视频文件元数据,当用户终端请求视频时可以直接从切片服务器中获取视频文件元数据,这样处理流程更简洁。
在本申请的另一实施例中,在图3所示实施例中,切片服务器302,还可以用于在生成视频切片的视频切片标识之后,将上述视频切片标识发送至管理服务器,以使管理服务器记录上述视频切片标识和视频文件元数据。其中,上述视频文件元数据为:管理服务器在上述视频切片为视频文件的最后一个视频切片时根据记录的视频切片标识生成的视频文件元数据。
在将上述视频切片标识发送至管理服务器时,切片服务器可以向云服务器每发送一个视频切片,即向管理服务器发送该视频切片的视频切片标识,管理服务器接收并记录该视频切片标识。当上述视频切片为视频文件的最后一个视频切片时,管理服务器根据记录的视频切片标识生成并存储视频文件元数据。
管理服务器可以将视频文件元数据存储在数据库中。
可见,本实施例中切片服务器可以将视频切片标识存储在管理服务器中。这样,可以由管理服务器生成并存储视频文件元数据,减少电子设备的计算量,提高处理效率。
在本申请的另一实施例中,在图3所示实施例中,云服务器可以为:预设的与摄像机的特征信息对应的云服务器。
其中,特征信息可以包括摄像机ID、摄像机所使用的网络运营商、摄像机所在的地理位置等。
本实施例中,可以预先建立特征信息与云服务器的对应关系。例如,建立摄像机ID与云服务器的对应关系,可以将不同的摄像机的视频数据存储在不同的云服务器中,实现对视频数据的分布存储,提高视频数据存储时的稳定性。也可以是,建立不同地理位置与处于该地理位置中的云服务器的对应关系,将摄像机采集的视频数据存储在与该摄像机处在相同地理位置中的云服务器中,从而提高数据存储的稳定性。还可以是,将摄像机采集的视频数据存储在与该摄像机采用相同网络运营商的云服务器中,提高数据存储的稳定性和服务质量。
本实施例可以预先设置位于不同地理位置和/或使用不用网络运营商的切片服务器。根据地理位置和/或网络运营商,预先设置切片服务器与各个摄像机的对应关系,根据该对应关系,将视频数据发送至对应的切片服务器。
可见,本实施例中云服务器为与实时采集视频数据的图像采集设备的特征信息对应的云服务器,不同的图像采集设备的视频数据可以存储在不同的云服务器中,这样能够使视频数据的存储更加灵活。
在本申请的另一实施例中,在图3所示实施例中,云服务器可以不同网络运营商的云服务器。本实施例中,同一摄像机的视频数据可以存储至不同的云服务器。当一个网络运营商的云服务器故障时,还可以从其他网络运营商的云服务器中获取视频数据,从而能够提高数据备份和容错的能力。
图4为本申请实施例提供的数据获取方法的一种流程示意图。该方法实施例应用于下载服务器。图5a为本申请实施例提供的一种应用场景示意图。在图5a中,用户终端可以通过下载服务器请求云服务器中的视频文件。在一种实施方式中,下载服务器与图1或图3实施例中的切片服务器可以由同一个服务器实现,也可以由不同的服务器实现。
本实施例提供的数据获取方法包括以下步骤S401~步骤S404:
步骤S401:接收视频数据获取请求。该视频数据获取请求携带待获取视频的时间信息。其中,该时间信息可以为时间点信息,也可以为时间段信息。当时间信息为时间点信息时,可以将该时间点作为待获取视频的开始时刻,将接收视频数据获取请求时的时刻作为待获取视频的结束时刻。
本步骤中,下载服务器可以接收用户终端发送的视频数据获取请求。
步骤S402:根据上述时间信息,确定待获取视频包含的视频切片的视频切片标识。
其中,一个视频切片为:当电子设备获取的实时采集的视频数据的长度达到预设切片长度时将所获取的视频数据作为的视频切片。视频切片为电子设备发送至云服务器的视频切片。
本步骤中,根据时间信息可以确定待获取视频所在的视频文件,进而可以根据确定的视频文件确定视频文件标识。。
步骤S403:向云服务器发送视频切片获取请求。该视频切片获取请求携带上述视频切片标识。
例如,视频切片标识可以为视频文件1的视频切片5~视频切片10。
步骤S404:接收云服务器根据视频切片标识确定的视频切片,作为待获取视频。
可见,本实施例可以根据视频数据获取请求携带的时间信息,确定待获取视频包含的视频切片的视频切片标识,向云服务器发送携带视频切片标识的视频切片获取请求,接收云服务器根据视频切片标识确定的视频切片。在视频文件存储完成之前,即可以从云服务器中下载已存储的视频切片,无需等待视频文件最终形成并存储完成,从而使用户更快地、更实时地获取到存储的视频数据。因此,本实施例能够提高视频数据获取的实时性,提高用户体验。
在本申请的另一实施例中,当上述时间信息包括待获取视频的开始时刻和结束时刻时,图4所示实施例中的步骤S402,即根据时间信息,确定待获取视频包含的视频切片的视频切片标识的步骤,可以包括以下步骤1和步骤2:
步骤1:根据时间信息,确定待获取视频所在的视频文件。
本步骤具体可以为,根据上述时间信息以及存储的各个视频文件的时间信息,确定待获取视频所在的视频文件。其中,上述时间信息包括待获取视频的开始时刻和结束时刻,各个视频文件的时间信息包括各个视频文件的开始时刻和结束时刻。本步骤具体可以为,将存储的时间信息中包含上述时间信息的视频文件,确定为待获取视频所在的视频文件。
本步骤中,视频文件可以为当前未存储完成的视频文件,也可以为已存储完成的视频文件。
例如,存储的各个视频文件的时间信息包括:视频文件1(10:30—10:50),视频文件2(11:00—11:05),视频文件3(11:20—?)。其中,视频文件1和视频文件2均为已存储完成的视频文件,视频文件3为未存储完成的视频文件,视频文件3的结束时刻为未知的,以“?”来表示未知。如果上述时间信息为10:35—10:50,则可以确定待获取视频所在的视频文件为视频文件1;如果上述时间信息为10:35—11:15,则可以确定待获取视频所在的视频文件为视频文件1和视频文件2。如果上述时间信息为11:20—当前时刻,则可以确定待获取视频所在的视频文件为视频文件3。
步骤2:将上述视频文件的处于上述开始时刻和结束时刻之间的视频切片标识,确定为待获取视频包含的视频切片的视频切片标识。
本步骤具体可以包括以下几种实施方式:
当上述视频文件不存在对应的视频文件元数据时,从记录的视频文件包含的视频切片标识中确定处于上述开始时刻和结束时刻之间的视频切片标识,作为待获取视频包含的视频切片的视频切片标识。
当上述视频文件存在对应的视频文件元数据时,从视频文件元数据中确定处于上述开始时刻和结束时刻之间的视频切片标识,作为待获取视频包含的视频切片的视频切片标识。
沿用上述步骤1中的例子,当待获取视频的开始时刻和结束时刻分别为10:35—11:10时,可以确定待获取视频所在的视频文件为视频文件1和视频文件2,视频文件1和视频文件2均为已经存储完成的视频文件,设备中存在该视频文件1和视频文件2的视频文件元数据。已知该视频文件1的视频文件元数据包括:视频文件1开始时刻和结束时刻为10:30—10:50,包含120个视频切片,编号从1~120;视频文件2的视频文件元数据包括:视频文件2开始时刻和结束时刻为11:00—11:05,包含30个视频切片,编号从1~30。已知每个视频切片的时间长度为10秒。
根据上述信息,可以采用以下过程确定待获取视频包含的视频切片的视频切片标识:待获取视频的开始时刻为10:35,结束时间为11:10,待获取视频包含的视频切片标识包括视频文件1中的部分视频切片,以及视频文件2中的全部视频切片。视频文件1的开始时刻为10:30,10:35与10:30之间的差值为5分钟,5分钟时长对应的视频切片个数为5分钟*60秒/10秒=30个,又由于视频文件1共包含120个视频切片,则待获取视频包含的视频文件1中的视频切片标识为视频切片30~视频切片120,进而可以确定待获取视频包含的视频切片标识为:视频文件1中的视频切片30~视频切片120,视频文件2中的视频切片1~视频切片30。
当待获取视频的开始时刻和结束时刻分别为11:20—当前时刻时,可以确定待获取视频所在的视频文件为视频文件3,视频文件3为未存储完成的视频文件,设备中还不存在该视频文件3的视频文件元数据,设备中存在该视频文件3包含的视频切片标识。已知该视频文件3的视频文件标识包括:视频文件3开始时刻11:20,包含视频切片1~视频切片50。
根据上述信息,可以采用以下过程确定待获取视频包含的视频切片的视频切片标识:由于待获取视频的开始时刻与视频文件3的开始时刻相同,待获取视频的结束时刻为当前时刻,因此可以将视频切片1~视频切片50确定为待获取视频包含的视频切片标识。
其中,上述视频切片标识可以存储在作为执行主体的下载服务器中,也可以是下载服务器从管理服务器中获取的视频切片标识。视频文件元数据可以存储在下载服务器中,也可以是下载服务器从管理服务器中获取的元数据。
可见,本实施例可以根据待获取视频的开始时刻和结束时刻确定待获取视频所在的视频文件,根据该视频文件的处于开始时刻和结束时刻之间的视频切片标识,确定待获取视频的视频切片标识,能够更准确地确定用户需要的待获取视频。即便是视频文件还未存储完成,也能够从已记录的该视频文件的视频切片标识中确定待获取视频的视频切片标识。
在本申请的另一实施例中,图4所示实施例中,云服务器可以为:预设的与实时采集视频数据的图像采集设备的特征信息对应的云服务器。
其中,特征信息可以包括图像采集设备ID、图像采集设备所使用的网络运营商、图像采集设备所在的地理位置等。
在本实施例中,用户终端可以与采集视频数据的摄像机进行关联,同时用户终端与下载服务器进行关联。当用户终端需要获取该摄像机采集的视频数据时,向关联的下载服务器发送视频数据获取请求。从与实时采集视频数据的图像采集设备的特征信息对应的云服务器中获取视频切片,能够更准确地获取视频数据。
在本申请的另一实施例中,图4所示实施例中,在接收到上述视频切片之后,该方法还可以包括:将上述视频切片发送至用户终端。这样,用户终端可以将视频切片展示给用户,以便用户查看待获取视频。
下面结合具体应用实例对本申请再做详细说明。
用户终端中可以在确定用户想要观看的视频时,向下载服务器发送视频数据获取请求,下载服务器可以从管理服务器的数据库中读取摄像机的视频记录,并从云服务器中下载视频切片,将下载的视频切片发送至用户终端,系统结构图如图5b所示。图5b中包括用户终端、下载服务器、管理服务器和云服务器。管理服务器与数据库连接。数据库可以存储在管理服务器中,也可以不存储在管理服务器中。客户端可以根据用户选择的待获取视频的开始时刻和结束时刻向下载服务器请求视频数据,下载服务器从管理服务器查询到用户请求回放视频的详细信息,再根据电子设备的切片规则计算出待下载的视频切片标识列表,从云服务器下载视频切片,下载服务器对下载的视频切片进行处理后通过SSL安全链路发送给客户端播放。已知待获取视频的开始时刻晚于视频文件的开始时刻,待获取视频的结束时刻晚于视频文件的结束时刻,视频文件已存储完成。下载服务器确定待获取视频的视频切片标识列表的步骤如下:
步骤1:确定待获取视频的开始时刻与视频文件的开始时刻的时间差值D(单位:秒),计算出待获取视频对应的第一个视频切片在视频文件中的次序IDn=D/10。其中,每个视频切片的长度为10秒。
步骤2:从记录的上述视频文件的视频文件元数据中,确定上述视频文件的时间长度T=视频文件的结束时刻ETime-视频文件的开始时刻STime(单位:秒),结合时间差值D,计算出待获取视频对应的所有视频切片的个数为N=(T-D)/10;
步骤3:根据步骤1和步骤2的计算结果,得到待获取视频的视频切片标识列表为:视频文件中的IDn,IDn+1,…,IDn+N-1。N为视频文件包含的所有视频切片的个数。
步骤4:从云服务器中获取上述视频切片标识对应的视频切片。
在视频文件未存储完成时,也可以从云服务器中获取上述视频文件已存储的视频切片,使用户终端更快、更实时地获取到摄像机采集的视频。
图6为本申请实施例提供的数据获取系统的一种结构示意图。系统包括:用户终端601和下载服务器602;
用户终端601,用于向下载服务器602发送视频数据获取请求,该视频数据获取请求携带待获取视频的时间信息,接收下载服务器602发送的待获取视频。
下载服务器602,用于接收用户终端601发送的携带待获取视频的时间信息的视频数据获取请求,根据该时间信息,确定待获取视频包含的视频切片的视频切片标识,向云服务器发送携带该视频切片标识的视频切片获取请求,接收云服务器根据视频切片标识确定的视频切片,作为待获取视频,将待获取视频发送至用户终端601。其中,一个视频切片为:当电子设备获取的实时采集的视频数据的长度达到预设切片长度时将所获取的视频数据作为的视频切片;视频切片为电子设备发送至云服务器的视频切片。
本实施例中,下载服务器可以根据时间信息确定待获取视频所在的视频文件。该时间信息可以为时间点信息,也可以为时间段信息。当时间信息为时间点信息时,可以将该时间点作为待获取视频的开始时刻,将接收视频数据获取请求时的时刻作为待获取视频的结束时刻。
可见,在本实施例中,下载服务器可以根据视频数据获取请求携带的待获取视频的时间信息,确定待获取视频包含的视频切片的视频切片标识,向云服务器发送携带视频切片标识的视频切片获取请求,接收云服务器根据视频切片标识确定的视频切片。在视频文件存储完成之前,下载服务器即可以从云服务器中下载已存储的视频切片,无需等待视频文件最终形成并存储完成,从而使用户更快地、更实时地获取到存储的视频数据。因此,本实施例能够提高视频数据获取的实时性,提高用户体验。
在本申请的另一实施例中,上述时间信息可以包括待获取视频的开始时刻和结束时刻,图6所示实施例中的下载服务器602,具体可以用于根据该时间信息,确定待获取视频所在的视频文件,将视频文件的处于上述开始时刻和结束时刻之间的视频切片标识,确定为待获取视频包含的视频切片的视频切片标识。
根据该时间信息,确定待获取视频所在的视频文件,具体可以为,根据上述时间信息以及存储的各个视频文件的时间信息,确定待获取视频所在的视频文件。其中,上述时间信息包括待获取视频的开始时刻和结束时刻,各个视频文件的时间信息包括各个视频文件的开始时刻和结束时刻。本步骤具体可以为,将存储的时间信息中包含上述时间信息的视频文件,确定为待获取视频所在的视频文件。
本实施例中,视频文件可以为当前未存储完成的视频文件,也可以为已存储完成的视频文件。
具体的,当上述视频文件不存在对应的视频文件元数据时,下载服务器602可以从记录的所述视频文件包含的视频切片标识中确定处于上述开始时刻和结束时刻之间的视频切片标识,作为所述待获取视频包含的视频切片的视频切片标识。
当上述视频文件存在对应的视频文件元数据时,下载服务器602可以从该视频文件元数据中确定处于上述开始时刻和结束时刻之间的视频切片标识,作为待获取视频包含的视频切片的视频切片标识。
可见,本实施例中下载服务器可以根据待获取视频的开始时刻和结束时刻确定待获取视频所在的视频文件,根据该视频文件的处于开始时刻和结束时刻之间的视频切片标识,确定待获取视频的视频切片标识,无需将该视频文件的所有视频切片均下载下来,因此能够更准确地确定用户需要的待获取视频。即便是视频文件还未存储完成,也能够从已记录的该视频文件的视频切片标识中确定待获取视频的视频切片标识。
在本申请的另一实施例中,图6所示实施例中的下载服务器602,具体可以从管理服务器中获取上述视频切片标识;和/或,下载服务器602可以从管理服务器中获取上述视频文件元数据。
在本实施例中,视频切片标识和/或视频文件元数据可以存储在管理服务器中。这样,无需在下载服务器中存储上述数据,能够减少下载服务器的数据处理量和数据存储量。
在本申请的另一实施例中,在图6所示实施例中,云服务器可以为:预设的与实时采集视频数据的图像采集设备的特征信息对应的云服务器。
其中,特征信息可以包括图像采集设备ID、图像采集设备所使用的网络运营商、图像采集设备所在的地理位置等。
在本实施例中,用户终端可以与采集视频数据的摄像机进行关联,同时用户终端与下载服务器进行关联。当用户终端需要获取该摄像机采集的视频数据时,向关联的下载服务器发送视频数据获取请求。从与实时采集视频数据的图像采集设备的特征信息对应的云服务器中获取视频切片,能够更准确地获取视频数据。
图7为本申请实施例提供的摄像机的一种结构示意图。该实施例与图1所示方法实施例相对应。该摄像机可以包括:图像采集器701、处理器702和存储器703;
其中,图像采集器701,用于实时采集视频数据,并将实时采集的视频数据发送至处理器702;
处理器702,用于接收图像采集器701实时采集的视频数据,当所获取的视频数据的长度达到预设切片长度时,将所获取的视频数据作为一个视频切片发送至云服务器,生成所述视频切片的视频切片标识。
具体的,存储器703可以用于存储接收的视频数据等。
在本申请的另一实施例中,图7所示实施例中的处理器702,还可以用于在生成所述视频切片的视频切片标识之后,将所述视频切片标识记录在所述存储器中,当所述视频切片为视频文件的最后一个视频切片时,根据记录的视频切片标识,生成视频文件元数据,将所述视频文件元数据存储在所述存储器中。
在本申请的另一实施例中,图7所示实施例中的处理器702,还可以用于在生成所述视频切片标识之后,将所述视频切片标识发送至管理服务器,以使管理服务器记录所述视频切片标识和视频文件元数据,其中,所述视频文件元数据为:所述管理服务器在所述视频切片为视频文件的最后一个视频切片时根据记录的视频切片标识生成的视频文件元数据。
在本申请的另一实施例中,图7所示实施例中,云服务器为:预设的与所述摄像机的特征信息对应的云服务器。
在本申请的另一实施例中,图7所示实施例中,云服务器包括不同网络运营商的云服务器。
由于上述摄像机实施例是基于方法实施例得到的,与该方法具有相同的技术效果,因此摄像机实施例的技术效果在此不再赘述。对于摄像机实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。
图8为本申请实施例提供的下载服务器的一种结构示意图。该实施例与图4所示方法实施例相对应。该下载服务器可以包括:处理器801和存储器802。
其中,处理器801,用于接收视频数据获取请求,根据所述视频数据获取请求携带的待获取视频的时间信息,确定所述待获取视频包含的视频切片的视频切片标识,向云服务器发送携带所述视频切片标识的视频切片获取请求,接收所述云服务器根据所述视频切片标识确定的视频切片,作为所述待获取视频;其中,一个视频切片为:当电子设备获取的实时采集的视频数据的长度达到预设切片长度时将所获取的视频数据作为的视频切片;视频切片为所述电子设备发送至所述云服务器的视频切片;
存储器802,用于存储接收的视频切片。存储器802还可以用于存储视频数据获取请求和视频切片获取请求等。
在本申请的另一实施例中,图8所示实施例中,时间信息包括所述待获取视频的开始时刻和结束时刻;处理器802,具体可以用于根据所述时间信息,确定所述待获取视频所在的视频文件,将所述视频文件的处于所述开始时刻和结束时刻之间的视频切片标识,确定为所述待获取视频包含的视频切片的视频切片标识。
在本申请的另一实施例中,图8所示实施例中的处理器802,具体可以用于当所述视频文件不存在对应的视频文件元数据时,从记录的所述视频文件包含的视频切片标识中确定处于所述开始时刻和结束时刻之间的视频切片标识,作为所述待获取视频包含的视频切片的视频切片标识;当所述视频文件存在对应的视频文件元数据时,从所述视频文件元数据中确定处于所述开始时刻和结束时刻之间的视频切片标识,作为所述待获取视频包含的视频切片的视频切片标识。
在本申请的另一实施例中,图8所示实施例中,所述视频切片标识是从管理服务器中获取;和/或,所述视频文件元数据是从管理服务器中获取。
在本申请的另一实施例中,图8所示实施例中的处理器,具体用于在接收到上述视频切片之后,将上述视频切片发送至用户终端。
由于上述服务器实施例是基于方法实施例得到的,与该方法具有相同的技术效果,因此服务器实施例的技术效果在此不再赘述。对于服务器实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。
在上述摄像机实施例和服务器实施例中,存储器可以包括随机存取存储器(Random Access Memory,RAM),也可以包括非易失性存储器(Non-Volatile Memory,NVM),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital SignalProcessing,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
本申请实施例还提供一种计算机可读存储介质,该计算机可读存储介质内存储有计算机程序,该计算机程序被处理器执行时实现本申请实施例提供的数据存储方法。该数据存储方法包括:
获取实时采集的视频数据;
当所获取的视频数据的长度达到预设切片长度时,将所获取的视频数据作为一个视频切片发送至云服务器,以使所述云服务器存储所述视频切片;
生成所述视频切片的视频切片标识。
由上述内容可知,本实施例中,当实时采集的视频数据未形成视频文件时,能够以视频切片的形式存储至云服务器,提高视频数据存储的实时性。这样,在视频文件存储完成之前,即可以根据生成的视频切片标识请求获取已经存储的视频切片,无需等待视频文件最终形成,从而使用户更快地获取到存储的视频数据。因此,本实施例能够提高视频数据存储的实时性,提高用户体验。
本申请实施例还提供一种计算机可读存储介质,该计算机可读存储介质内存储有计算机程序,该计算机程序被处理器执行时实现本申请实施例提供的数据获取方法。该数据获取方法包括:
接收视频数据获取请求,所述视频数据获取请求携带待获取视频的时间信息;
根据所述时间信息,确定所述待获取视频包含的视频切片的视频切片标识;其中,一个视频切片为:当电子设备获取的实时采集的视频数据的长度达到预设切片长度时将所获取的视频数据作为的视频切片;视频切片为所述电子设备发送至云服务器的视频切片;
向所述云服务器发送视频切片获取请求,所述视频切片获取请求携带所述视频切片标识;
接收所述云服务器根据所述视频切片标识确定的视频切片,作为所述待获取视频。
可见,本实施例可以根据视频数据获取请求携带的时间信息,确定待获取视频包含的视频切片的视频切片标识,向云服务器发送携带视频切片标识的视频切片获取请求,接收云服务器根据视频切片标识确定的视频切片。在视频文件存储完成之前,即可以从云服务器中下载已存储的视频切片,无需等待视频文件最终形成并存储完成,从而使用户更快地、更实时地获取到存储的视频数据。因此,本实施例能够提高视频数据获取的实时性,提高用户体验。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本申请的较佳实施例而已,并非用于限定本申请的保护范围。凡在本申请的精神和原则之内所做的任何修改、等同替换、改进等,均包含在本申请的保护范围内。
Claims (26)
1.一种数据存储方法,其特征在于,所述方法包括:
获取实时采集的视频数据;
当所获取的视频数据的长度达到预设切片长度时,将所获取的视频数据作为一个视频切片发送至云服务器,以使所述云服务器存储所述视频切片;
生成所述视频切片的视频切片标识。
2.根据权利要求1所述的方法,其特征在于,在生成所述视频切片的视频切片标识之后,所述方法还包括:
记录所述视频切片标识;
当所述视频切片为视频文件的最后一个视频切片时,根据记录的视频切片标识,生成视频文件元数据,存储所述视频文件元数据。
3.根据权利要求1所述的方法,其特征在于,在生成所述视频切片标识之后,包括:
将所述视频切片标识发送至管理服务器,以使管理服务器记录所述视频切片标识和视频文件元数据,其中,所述视频文件元数据为:所述管理服务器在所述视频切片为视频文件的最后一个视频切片时根据记录的视频切片标识生成的视频文件元数据。
4.根据权利要求1所述的方法,其特征在于,所述云服务器为:预设的与实时采集视频数据的图像采集设备的特征信息对应的云服务器。
5.根据权利要求1所述的方法,其特征在于,所述云服务器包括不同网络运营商的云服务器。
6.根据权利要求1~5任一项所述的方法,其特征在于,所述获取实时采集的视频数据的步骤,包括:
获取图像采集设备实时采集的视频数据。
7.一种数据获取方法,其特征在于,所述方法包括:
接收视频数据获取请求,所述视频数据获取请求携带待获取视频的时间信息;
根据所述时间信息,确定所述待获取视频包含的视频切片的视频切片标识;其中,一个视频切片为:当电子设备获取的实时采集的视频数据的长度达到预设切片长度时将所获取的视频数据作为的视频切片;视频切片为所述电子设备发送至云服务器的视频切片;
向所述云服务器发送视频切片获取请求,所述视频切片获取请求携带所述视频切片标识;
接收所述云服务器根据所述视频切片标识确定的视频切片,作为所述待获取视频。
8.根据权利要求7所述的方法,其特征在于,所述时间信息包括所述待获取视频的开始时刻和结束时刻;所述根据所述时间信息确定所述待获取视频包含的视频切片的视频切片标识的步骤,包括:
根据所述时间信息,确定所述待获取视频所在的视频文件;
将所述视频文件的处于所述开始时刻和结束时刻之间的视频切片标识,确定为所述待获取视频包含的视频切片的视频切片标识。
9.根据权利要求8所述的方法,其特征在于,所述将所述视频文件的处于所述开始时刻和结束时刻之间的视频切片标识,确定为所述待获取视频包含的视频切片的视频切片标识的步骤,包括:
当所述视频文件不存在对应的视频文件元数据时,从记录的所述视频文件包含的视频切片标识中确定处于所述开始时刻和结束时刻之间的视频切片标识,作为所述待获取视频包含的视频切片的视频切片标识;
当所述视频文件存在对应的视频文件元数据时,从所述视频文件元数据中确定处于所述开始时刻和结束时刻之间的视频切片标识,作为所述待获取视频包含的视频切片的视频切片标识。
10.根据权利要求9所述的方法,其特征在于,所述视频切片标识是从管理服务器中获取;和/或,所述视频文件元数据是从管理服务器中获取。
11.根据权利要求7~10任一项所述的方法,其特征在于,在接收到所述视频切片之后,所述方法还包括:
将所述视频切片发送至用户终端。
12.一种摄像机,其特征在于,包括:图像采集器、处理器和存储器;
其中,所述图像采集器,用于实时采集视频数据,并将实时采集的视频数据发送至所述处理器;
所述处理器,用于接收所述图像采集器实时采集的视频数据,当所获取的视频数据的长度达到预设切片长度时,将所获取的视频数据作为一个视频切片发送至云服务器,生成所述视频切片的视频切片标识。
13.根据权利要求12所述的摄像机,其特征在于,所述处理器,还用于在生成所述视频切片的视频切片标识之后,将所述视频切片标识记录在所述存储器中,当所述视频切片为视频文件的最后一个视频切片时,根据记录的视频切片标识,生成视频文件元数据,将所述视频文件元数据存储在所述存储器中。
14.根据权利要求12所述的摄像机,其特征在于,所述处理器,还用于在生成所述视频切片标识之后,将所述视频切片标识发送至管理服务器,以使管理服务器记录所述视频切片标识和视频文件元数据,其中,所述视频文件元数据为:所述管理服务器在所述视频切片为视频文件的最后一个视频切片时根据记录的视频切片标识生成的视频文件元数据。
15.根据权利要求12~14任一项所述的摄像机,其特征在于,所述云服务器为:预设的与所述摄像机的特征信息对应的云服务器。
16.根据权利要求12~14任一项所述的摄像机,其特征在于,所述云服务器包括不同网络运营商的云服务器。
17.一种下载服务器,其特征在于,包括:处理器和存储器;
其中,所述处理器,用于接收视频数据获取请求,根据所述视频数据获取请求携带的待获取视频的时间信息,确定所述待获取视频包含的视频切片的视频切片标识,向云服务器发送携带所述视频切片标识的视频切片获取请求,接收所述云服务器根据所述视频切片标识确定的视频切片,作为所述待获取视频;其中,一个视频切片为:当电子设备获取的实时采集的视频数据的长度达到预设切片长度时将所获取的视频数据作为的视频切片;视频切片为所述电子设备发送至所述云服务器的视频切片。
18.根据权利要求17所述的下载服务器,其特征在于,所述时间信息包括所述待获取视频的开始时刻和结束时刻;所述处理器,具体用于根据所述时间信息,确定所述待获取视频所在的视频文件,将所述视频文件的处于所述开始时刻和结束时刻之间的视频切片标识,确定为所述待获取视频包含的视频切片的视频切片标识。
19.根据权利要求18所述的下载服务器,其特征在于,所述处理器,具体用于当所述视频文件不存在对应的视频文件元数据时,从记录的所述视频文件包含的视频切片标识中确定处于所述开始时刻和结束时刻之间的视频切片标识,作为所述待获取视频包含的视频切片的视频切片标识;当所述视频文件存在对应的视频文件元数据时,从所述视频文件元数据中确定处于所述开始时刻和结束时刻之间的视频切片标识,作为所述待获取视频包含的视频切片的视频切片标识。
20.根据权利要求19所述的下载服务器,其特征在于,所述视频切片标识是从管理服务器中获取;和/或,所述视频文件元数据是从管理服务器中获取。
21.根据权利要求17~20任一项所述的下载服务器,其特征在于,所述处理器,具体用于在接收到所述视频切片之后,将所述视频切片发送至用户终端。
22.一种数据存储系统,其特征在于,包括:摄像机和切片服务器;
所述摄像机,用于实时采集视频数据,并将实时采集的视频数据发送至所述切片服务器;
所述切片服务器,用于接收所述摄像机实时采集的视频数据,当所接收的视频数据的长度达到预设切片长度时,将所接收的视频数据作为一个视频切片发送至云服务器,生成所述视频切片的视频切片标识。
23.根据权利要求22所述的系统,其特征在于,所述云服务器包括不同网络运营商的云服务器。
24.一种数据获取系统,其特征在于,包括:用户终端和下载服务器;
所述用户终端,用于向所述下载服务器发送视频数据获取请求,所述视频数据获取请求携带待获取视频的时间信息,接收所述下载服务器发送的待获取视频;
所述下载服务器,用于接收所述用户终端发送的携带待获取视频的时间信息的视频数据获取请求,根据所述时间信息,确定所述待获取视频包含的视频切片的视频切片标识,向云服务器发送携带所述视频切片标识的视频切片获取请求,接收所述云服务器根据所述视频切片标识确定的视频切片,作为所述待获取视频,将所述待获取视频发送至所述用户终端;其中,一个视频切片为:当电子设备获取的实时采集的视频数据的长度达到预设切片长度时将所获取的视频数据作为的视频切片;视频切片为所述电子设备发送至所述云服务器的视频切片。
25.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1-6任一所述的方法步骤。
26.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现权利要求7-11任一所述的方法步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711158564.8A CN109819265B (zh) | 2017-11-20 | 2017-11-20 | 数据存储、数据获取方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711158564.8A CN109819265B (zh) | 2017-11-20 | 2017-11-20 | 数据存储、数据获取方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109819265A true CN109819265A (zh) | 2019-05-28 |
CN109819265B CN109819265B (zh) | 2022-05-06 |
Family
ID=66599386
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711158564.8A Active CN109819265B (zh) | 2017-11-20 | 2017-11-20 | 数据存储、数据获取方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109819265B (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112637616A (zh) * | 2020-12-08 | 2021-04-09 | 网宿科技股份有限公司 | 一种对象存储方法、系统及服务器 |
CN113301391A (zh) * | 2020-06-10 | 2021-08-24 | 阿里巴巴集团控股有限公司 | 视频下载方法、装置、计算设备、介质和云端存储系统 |
CN113727144A (zh) * | 2021-09-02 | 2021-11-30 | 中国联合网络通信集团有限公司 | 基于混合云的高清直播系统及流媒体方法 |
CN113810778A (zh) * | 2021-10-21 | 2021-12-17 | 深圳Tcl新技术有限公司 | 监控视频处理方法、装置、存储介质及电子设备 |
CN113973217A (zh) * | 2021-11-02 | 2022-01-25 | 秒影工场(北京)科技有限公司 | 一种影像数据传输到云端的方法及装置 |
CN114817168A (zh) * | 2022-06-27 | 2022-07-29 | 苏州景昱医疗器械有限公司 | 数据存储方法、装置、系统及计算机可读存储介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2001075546A2 (en) * | 2000-04-04 | 2001-10-11 | Diva Systems Corporation | Server-centric search function in an interactive program guide |
CN102447893A (zh) * | 2010-09-30 | 2012-05-09 | 北京沃安科技有限公司 | 手机视频实时采集和发布的方法及系统 |
CN103533444A (zh) * | 2013-10-25 | 2014-01-22 | 乐视网信息技术(北京)股份有限公司 | 一种支持时移播放的方法及装置 |
CN104469433A (zh) * | 2013-09-13 | 2015-03-25 | 深圳市腾讯计算机系统有限公司 | 一种视频直播回看方法及装置 |
CN105120217A (zh) * | 2015-08-21 | 2015-12-02 | 上海小蚁科技有限公司 | 基于大数据分析和用户反馈的智能摄像机移动侦测报警系统及方法 |
CN105611429A (zh) * | 2016-02-04 | 2016-05-25 | 北京金山安全软件有限公司 | 一种视频文件的备份方法、装置及电子设备 |
CN106230971A (zh) * | 2016-08-29 | 2016-12-14 | 无锡华云数据技术服务有限公司 | 基于cdn的大文件分发方法 |
-
2017
- 2017-11-20 CN CN201711158564.8A patent/CN109819265B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2001075546A2 (en) * | 2000-04-04 | 2001-10-11 | Diva Systems Corporation | Server-centric search function in an interactive program guide |
CN102447893A (zh) * | 2010-09-30 | 2012-05-09 | 北京沃安科技有限公司 | 手机视频实时采集和发布的方法及系统 |
CN104469433A (zh) * | 2013-09-13 | 2015-03-25 | 深圳市腾讯计算机系统有限公司 | 一种视频直播回看方法及装置 |
CN103533444A (zh) * | 2013-10-25 | 2014-01-22 | 乐视网信息技术(北京)股份有限公司 | 一种支持时移播放的方法及装置 |
CN105120217A (zh) * | 2015-08-21 | 2015-12-02 | 上海小蚁科技有限公司 | 基于大数据分析和用户反馈的智能摄像机移动侦测报警系统及方法 |
CN105611429A (zh) * | 2016-02-04 | 2016-05-25 | 北京金山安全软件有限公司 | 一种视频文件的备份方法、装置及电子设备 |
CN106230971A (zh) * | 2016-08-29 | 2016-12-14 | 无锡华云数据技术服务有限公司 | 基于cdn的大文件分发方法 |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113301391A (zh) * | 2020-06-10 | 2021-08-24 | 阿里巴巴集团控股有限公司 | 视频下载方法、装置、计算设备、介质和云端存储系统 |
CN112637616A (zh) * | 2020-12-08 | 2021-04-09 | 网宿科技股份有限公司 | 一种对象存储方法、系统及服务器 |
CN112637616B (zh) * | 2020-12-08 | 2024-02-23 | 网宿科技股份有限公司 | 一种对象存储方法、系统及服务器 |
CN113727144A (zh) * | 2021-09-02 | 2021-11-30 | 中国联合网络通信集团有限公司 | 基于混合云的高清直播系统及流媒体方法 |
CN113810778A (zh) * | 2021-10-21 | 2021-12-17 | 深圳Tcl新技术有限公司 | 监控视频处理方法、装置、存储介质及电子设备 |
CN113973217A (zh) * | 2021-11-02 | 2022-01-25 | 秒影工场(北京)科技有限公司 | 一种影像数据传输到云端的方法及装置 |
CN113973217B (zh) * | 2021-11-02 | 2023-09-22 | 秒影工场(北京)科技有限公司 | 一种影像数据传输到云端的方法及装置 |
CN114817168A (zh) * | 2022-06-27 | 2022-07-29 | 苏州景昱医疗器械有限公司 | 数据存储方法、装置、系统及计算机可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN109819265B (zh) | 2022-05-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109819265A (zh) | 数据存储、数据获取方法及系统 | |
CN102340625B (zh) | 事件启动的视频捕获方法及捕获事件启动的视频的摄像机 | |
CN1331076C (zh) | 实时搜索引擎 | |
CN107231581B (zh) | 用于视频播放的方法、系统及流媒体播放控制服务器 | |
CN102843442B (zh) | 用于配置联网的照相机的方法 | |
CN101442647B (zh) | 视频监控系统中录像回放定位的控制方法以及存储服务器 | |
US20030187868A1 (en) | Data acquisition system | |
US20170018290A1 (en) | System and Method for Event Data Collection and Video Alignment | |
CN104503864A (zh) | 一种基于局域网的文件备份方法和装置 | |
JP2014501956A (ja) | 分散コンピューティング環境におけるデータの同期 | |
CN108093016B (zh) | 一种图片存储方法、装置及视频监控系统 | |
CN110300339B (zh) | 一种直播多媒体回播方法、装置及系统 | |
US11647217B2 (en) | Transmission device, communication system, transmission method, and computer program product | |
CN114257828B (zh) | 直播审核内容处理方法及系统 | |
US20230188585A1 (en) | Content player performance detection | |
CN105635318B (zh) | 图像获取方法和系统 | |
CN103778184A (zh) | 一种智能交通海量卡口通行数据传输系统 | |
CN113190700B (zh) | 用于房产交易的人脸抓拍、筛选和存储的方法及系统 | |
CN108961098A (zh) | 车辆监管方法、装置、系统及计算机可读存储介质 | |
CN106059718B (zh) | 一种数据重传方法及装置 | |
CN109996031B (zh) | 监控系统及监控方法 | |
CN108462897B (zh) | 一种网络故障的数据收集方法和装置 | |
CN116132625A (zh) | 交易流程的监管方法和装置 | |
CN106257461B (zh) | 数据存储方法及装置 | |
EP2359535B1 (fr) | Procédé de mesure des performances d'un réseau ip et système associé |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information | ||
CB02 | Change of applicant information |
Address after: 310051 Room 301, building B, building 2, No. 399, Danfeng Road, Binjiang District, Hangzhou City, Zhejiang Province Applicant after: Hangzhou fluorite Network Co.,Ltd. Address before: 7 / F, building 1, No. 700, Dongliu Road, Changhe street, Binjiang District, Hangzhou City, Zhejiang Province 310000 Applicant before: HANGZHOU EZVIZ NETWORK Co.,Ltd. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |