技术特征:
1.一种流媒体数据缓存方法,其特征在于,包括:响应于至少一个监控场景触发的缓存请求,根据每个缓存请求获取对应的流媒体数据;按照设定缓存时长将获取的每路流媒体数据缓存到不同的缓存队列中。2.根据权利要求1所述的流媒体数据缓存方法,其特征在于,在按照设定缓存时长将获取的每路流媒体数据缓存到不同的缓存队列中之前,所述方法还包括:选择获取的所述每路流媒体数据对应的媒体编码格式;按照选择的所述媒体编码格式分别对获取的所述每路流媒体数据进行编码,得到编码后的每路流媒体数据;所述按照设定缓存时长将获取的每路流媒体数据缓存到不同的缓存队列中,包括:按照设定缓存时长将编码后的所述每路流媒体数据缓存到不同的缓存队列中。3.根据权利要求1所述的流媒体数据缓存方法,其特征在于,在响应于至少一个监控场景触发的缓存请求之后,所述方法还包括:在存在与所述至少一个监控场景对应的缓存队列的情况下,执行所述根据每个缓存请求获取对应的流媒体数据的步骤;或者在不存在与所述至少一个监控场景对应的缓存队列的情况下,创建与所述至少一个监控场景对应的缓存队列,执行所述根据每个缓存请求获取对应的流媒体数据的步骤。4.根据权利要求1至3任一项所述的流媒体数据缓存方法,其特征在于,所述方法还包括:在缓存的所述流媒体数据的时间长度超过所述设定缓存时长的情况下,移除所述缓存队列中的头部数据,继续缓存所述流体数据到所述缓存队列的尾部。5.根据权利要求4所述的流媒体数据缓存方法,其特征在于,按照下述步骤确定缓存的流媒体数据的时间长度:确定开始缓存所述媒体流数据的时间戳到结束缓存所述媒体流数据的时间戳之差为缓存所述媒体数据流的时间长度。6.一种流媒体数据缓存方法,其特征在于,包括:检测到获取流媒体数据的请求,所述请求包括:请求缓存队列中流媒体数据的请求开始时间和请求结束时间;根据所述流媒体数据的请求开始时间和请求结束时间,确定所述缓存队列中待获取的流媒体数据;获取所述缓存队列中待获取的流媒体数据。7.根据权利要求6所述的流媒体数据缓存方法,其特征在于,所述根据所述流媒体数据的请求开始时间和请求结束时间,确定所述缓存队列中待获取的流媒体数据,包括:在所述流媒体数据的请求开始时间和请求结束时间为有效时间的情况下,将所述流媒体数据的请求开始时间和请求结束时间与所述缓存队列中流媒体数据的每帧数据的时间戳从缓存队列的头部依次进行匹配;确定匹配成功的对应时间段内的流媒体数据为待获取的流媒体数据。8.根据权利要求6或7所述的流媒体数据缓存方法,其特征在于,获取所述缓存队列中待获取的流媒体数据包括:
从所述缓存队列的头部开始获取未读取的流媒体数据;在所述未读取的流媒体数据的所述请求结束时间大于或等于所获取流媒体数据的时间戳,且所获取流媒体数据的时间戳大于或等于所述未读取的流媒体数据的请求开始时间的情况下,存储获取的所述流媒体数据;在所述缓存队列中最后一帧数据的时间戳小于所述未读取的流媒体数据的请求结束时间的情况下,执行所述从所述缓存队列的头部开始获取未读取的流媒体数据的步骤;在所述未读取的流媒体数据的所述请求结束时间小于所获取流媒体数据的时间戳,且所获取流媒体数据的时间戳小于所述未读取的流媒体数据的请求开始时间,或所述所述缓存队列中最后一帧数据的时间戳大于或等于所述未读取的流媒体数据的请求结束时间的情况下,结束获取流媒体数据。9.根据权利要求6或7所述的流媒体数据缓存方法,其特征在于,当检测到获取流媒体数据的请求为多个请求时,所述方法还包括:在所述多个请求中的请求开始时间或请求结束时间存在交错时间段覆盖的情况下,更新存在交错时间段覆盖的请求中的请求开始时间或请求结束时间,以使更新后的所述请求开始时间或请求结束时间包括更新前的所述请求开始时间或请求结束时间;将更新后的所述多个请求合并为一个请求。10.一种流媒体数据缓存装置,其特征在于,包括:获取模块,用于响应于至少一个监控场景触发的缓存请求,根据每个缓存请求获取对应的流媒体数据;第一缓存模块,用于按照设定缓存时长将获取的每路流媒体数据缓存到不同的缓存队列中。11.一种流媒体数据缓存装置,其特征在于,包括:检测模块,用于检测到获取流媒体数据的请求,所述请求包括:请求缓存队列中流媒体数据的请求开始时间和请求结束时间;确定模块,用于根据所述流媒体数据的请求开始时间和请求结束时间确定所述缓存队列中待获取的流媒体数据;获取模块,用于获取所述缓存队列中待获取的的流媒体数据。12.一种电子设备,其特征在于,包括:处理器;用于存储所述处理器可执行指令的存储器;其中,所述处理器被配置为执行所述指令,以实现如权利要求1至9中任一项所述的流媒体数据缓存方法。13.一种计算机可读存储介质,其特征在于,当所述计算机可读存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行如权利要求1至9中任一项所述的流媒体数据缓存方法。14.一种计算机程序产品,包括计算机程序或指令,其特征在于,所述计算机程序或指令被处理器执行时实现如权利要求1至9任一项所述的流媒体数据缓存方法。
技术总结
本发明实施例提供一种流媒体数据的缓存方法,装置、电子设备、计算机可读存储介质及计算机程序产品,所述方法包括:响应于至少一个监控场景触发的缓存请求,根据每个缓存请求获取对应的流媒体数据;按照设定缓存时长将获取的每路流媒体数据缓存到不同的缓存队列中。本发明实施例中,在检测到各个监控场景触发的缓存请求的情况下,记录各个监控场景下的流媒体数据,并将记录的流媒体数据按照设定缓存时长缓存到对应的缓存队列中,实现了对突发异常现场的前后时间内的音视频数据按照设定缓存时长进行记录保存,不但节省了内存资源,降低缓存成本,降低了异常场景各方的资源消耗,而且还提高了监控异常场景下数据存储的灵活性。还提高了监控异常场景下数据存储的灵活性。还提高了监控异常场景下数据存储的灵活性。
技术研发人员:冯剑
受保护的技术使用者:成都中科创达软件有限公司
技术研发日:2022.07.14
技术公布日:2022/11/15