基于ONVIF的视频源组同步回放方法及装置与流程

文档序号:12132262阅读:838来源:国知局
基于ONVIF的视频源组同步回放方法及装置与流程
本申请涉及视频监控领域,尤其涉及一种基于ONVIF的视频源组同步回放方法及装置。
背景技术
:视频监控领域,NVS(NetworkVideoStorage,视频存储服务器)是接入多个视频源(即媒体流采集设备,例如摄像机)的存储设备,视频源采集的媒体流可为视频、音频和元数据,其中视频包括高分辨率数据和低分辨率数据,为实现高效查询与回放,通常会将同一视频源采集的媒体流单独存储在一个Recording(即用于存放媒体流的存储容器)中。目前,ONVIF(OpenNetworkVideoInterfaceForum,开放型网络视频接口论坛)提供了针对存储在同一存储容器中的媒体流进行同步回放的操作方法,其为监控系统的整合带来了极大的便利,方便不同厂商的监控设备进行网络监控系统的建设。但ONVIF只提供了由NVC(NetworkVideoClient,视频客户端)从NVS的单个存储容器中获取媒体流进行同步回放的建立和控制操作。具体地,ONVIF中为各视频源采集的各媒体流分配不同的TrackToken(即媒体流标识),可将这些不同视频源的各媒体流存储在同一个存储容器中。在需要进行组回放时,通过GetReplayUri接口(即回放标识获取接口)获取一个以存储容器为单位的组回放URI(UniformResourceIdentifier,统一资源标识),即组回放标识,基于该组回放标识和ONVIF基于SDP(SessionDescriptionProtocol,会话描述协议)格式的表示描述的扩展可以完成存储在同一存储容器中的视频源组同步回放功能。但如果需要同步回放的视频源不在同一个存储容器中,则需要对视频源逐个建立与控制。而在视频监控领域,录像信息是事后取证的核心功能,如果在事后取证时进行组同步回放的视频源都不在同一个存储容器中,就需要对视频源逐个建立和控制,而组同步回放时各媒体流的回放时间一致性要求较高,难以达到要求。目前,针对多个视频源的组同步回放,存在下述两种方案。第一种方案,在录像之前,预测后续需要组同步回放的视频源组,并将这些视频源存储到同一个存储容器中,以实现视频源组的同步回放。而事后取证会根据实际取证情况来灵活组合各视频源,因此事先规划视频源组存在不灵活,易用性差的缺点。第二种方案,将同一NVS所接入的视频源都存储在同一个存储容器中,并为每一个视频源采集的各媒体流分配一个唯一的媒体流标识,参见图1。每次进行回放前,先用ONVIF的GetRecordingInformation接口(即存储容器信息获取接口)查询该NVS的所有视频源以及对应的媒体流的媒体流标识,记录所需回放的视频源的媒体流标识;再用GetReplayUri接口查询到该存储容器对应的组回放标识;接着,利用所述组回放标识通过RTSP(RealTimeStreamingProtocol,实时流传输协议)DESCRIBE消息对该NVS的录像信息进行一次检索,从响应消息中的媒体流标识中过滤出需要回放的媒体流所对应的媒体流标识;最后,利用所述媒体流标识和组回放标识,通过RTSP协议进行组同步回放。但对于NVS来说,接入的视频源个数会比较多,少则几十个,多则上万个,如果将所有采集到的媒体流都存储在同一个存储容器中,在组同步回放处理的过程中,消息会非常庞大,这样不仅浪费带宽,而且在解析消息时非常耗费时间和性能,效率较为低下。技术实现要素:有鉴于此,本申请提供一种基于ONVIF的视频源组同步回放方法及装置,以解决现有技术中存在的视频源组同步回放操作不灵活、效率低下的问题。具体地,本申请是通过如下技术方案实现的:根据本申请的第一方面,提供一种基于ONVIF的视频源组同步回放方法,应用于视频客户端,所述方法包括:发送RTSPDESCRIBE请求至视频存储服务器,其中所述RTSPDESCRIBE请求携带有组回放标识,其中所述组回放标识由所述视频存储服务器针对所述视频客户端发送的携带有各存储容器对应的存储容器令牌的请求消息所生成,或者,所述RTSPDESCRIBE请求携带有主视频源对应的存储容器的回放标识以及组同步回放请求标题域,其中所述组同步回放请求标题域包含各存储容器对应的存储容器令牌,所述主视频源为待组同步回放的多个视频源中的一个;接收所述视频存储服务器针对所述RTSPDESCRIBE请求返回的包含表示描述的响应消息,当所述RTSPDESCRIBE请求携带有组回放标识时,所述表示描述包括所述各存储容器对应的媒体流标识,当所述RTSPDESCRIBE请求携带有主视频源对应的存储容器的回放标识以及组同步回放请求标题域时,所述表示描述包括所述各存储容器对应的媒体流标识和所述视频存储服务器针对所述RTSPDESCRIBE请求生成的组回放标识;根据各存储容器对应的媒体流标识,依次发送RTSPSETUP请求至视频存储服务器,所述RTSPSETUP请求携带有各存储容器对应的媒体流标识,并在发送所述第一个RTSPSETUP请求之后的RTSPSETUP请求中携带所述视频存储服务器针对所述第一个RTSPSETUP请求所生成的会话号;在RTSPSETUP成功后,根据所述会话号和组回放标识发送RTSPPLAY请求至所述视频存储服务器,进行视频源组同步回放和控制。可选地,所述各存储容器对应的媒体流标识与所述组回放标识相关联。根据本申请的第二方面,提供一种基于ONVIF的视频源组同步回放方法,应用于视频存储服务器,所述方法包括:接收所述视频客户端发送的RTSPDESCRIBE请求,所述RTSPDESCRIBE请求携带有组回放标识,其中所述组回放标识由所述视频存储服务器针对所述视频客户端发送的携带有各存储容器对应的存储容器令牌的请求消息所述生成;或者,所述RTSPDESCRIBE请求携带有主视频源对应的存储容器的回放标识以及组同步回放请求标题域,其中所述组同步回放请求标题域包含各存储容器对应的存储容器令牌,所述主视频源为待组同步回放的多个视频源中的一个;根据所述RTSPDESCRIBE请求发送包含表示描述的响应消息至所述视频客户端,当所述RTSPDESCRIBE请求携带有组回放标识时,所述表示描述包括所述各存储容器对应的各媒体流标识,当所述RTSPDESCRIBE请求携带有主视频源对应的存储容器的回放标识以及组同步回放请求标题域时,所述表示描述包括所述各存储容器对应的媒体流标识和所述视频存储服务器针对所述RTSPDESCRIBE请求生成的组回放标识;接收所述视频客户端根据各存储容器对应的媒体流标识依次发送的携带有各存储容器对应的媒体流标识的RTSPSETUP请求,并针对所述视频客户端发送的第一个RTSPSETUP请求生成一会话号返回至所述视频客户端,由所述视频客户端在发送所述第一个RTSPSETUP请求之后的RTSPSETUP请求中携带所述会话号;在RTSPSETUP成功后,接收所述视频客户端根据会话号和组回放标识发送的RTSPPLAY请求,实现所述视频客户端的视频源组同步回放和控制。可选地,所述各存储容器对应的媒体流标识与所述组回放标识相关联。可选地,还包括:当所述视频存储服务器生成所述组回放标识时,该视频存储服务器则将所述组回放标识、各存储容器令牌以及各存储容器对应的媒体流标识的关联关系记录于该视频存储器的内存块中;当所述视频存储服务器针对所述视频客户端发送的第一个RTSPSETUP请求生成所述会话号时,该视频存储服务器则从所述第一个RTSPSETUP请求携带的存储容器对应的媒体流标识中解析出组回放标识;所述视频存储服务器根据所解析出的组回放标识定位至所述内存块;保存所述会话号、组回放标识、各存储容器令牌以及各存储容器的媒体流标识的关联关系至该视频存储服务器的内存块中。可选地,还包括:当接收自所述视频客户端的RTSPTEARDOWN请求时,所述视频存储服务器则根据所述会话号清除所述内存块;和/或,所述内存块设有定时器,当所述RTSPDESCRIBE请求携带有组回放标识时,所述定时器用于记录所述视频存储服务器接收到携带有各存储容器令牌的请求消息至所述视频存储服务器接收到RTSPSETUP请求之间的时间,或者,当所述RTSPDESCRIBE请求携带有主视频源对应的存储容器的回放标识以及组同步回放请求标题域时,所述定时器用于记录所述视频存储服务器接收到RTSPDESCRIBE请求至所述视频存储服务器接收到RTSPSETUP请求之间的时间;当所述定时器的记录时间超出预设时间时,该视频存储服务器则清除所述内存块。根据本申请的第三方面,提供一种基于ONVIF的视频源组同步回放装置,应用于视频客户端,所述装置包括:第一发送模块,发送RTSPDESCRIBE请求至视频存储服务器,其中所述RTSPDESCRIBE请求携带有组回放标识,其中所述组回放标识由所述视频存储服务器针对所述第一发送模块发送的携带有各存储容器对应的存储容器令牌的请求消息所生成,或者,所述RTSPDESCRIBE请求携带有主视频源对应的存储容器的回放标识以及组同步回放请求标题域,其中所述组同步回放请求标题域包含各存储容器对应的存储容器令牌,所述主视频源为待组同步回放的多个视频源中的一个;第二接收模块,接收所述视频存储服务器针对所述RTSPDESCRIBE请求返回的包含表示描述的响应消息,当所述RTSPDESCRIBE请求携带有组回放标识时,所述表示描述包括所述各存储容器对应的媒体流标识,当所述RTSPDESCRIBE请求携带有主视频源对应的存储容器的回放标识以及组同步回放请求标题域时,所述表示描述包括所述各存储容器对应的媒体流标识和所述视频存储服务器针对所述RTSPDESCRIBE请求生成的组回放标识;建立模块,根据各存储容器对应的媒体流标识,依次发送RTSPSETUP请求至视频存储服务器,所述RTSPSETUP请求携带有各存储容器对应的媒体流标识,并在发送所述第一个RTSPSETUP请求之后的RTSPSETUP请求中携带所述视频存储服务器针对所述第一个RTSPSETUP请求所生成的会话号;回放模块,在RTSPSETUP成功后,根据所述会话号和组回放标识发送RTSPPLAY请求至所述视频存储服务器,进行视频源组同步回放和控制。可选地,所述各存储容器对应的媒体流标识与所述组回放标识相关联。根据本申请的第四方面,提供一种基于ONVIF的视频源组同步回放装置,应用于视频存储服务器,其特征在于,所述装置包括:第一接收模块,接收所述视频客户端发送的RTSPDESCRIBE请求,所述RTSPDESCRIBE请求携带有组回放标识,其中所述组回放标识由视频存储服务器的组回放标识生成模块针对所述视频客户端发送的携带有各存储容器对应的存储容器令牌的请求消息所述生成;或者,所述RTSPDESCRIBE请求携带有主视频源对应的存储容器的回放标识以及组同步回放请求标题域,其中所述组同步回放请求标题域包含各存储容器对应的存储容器令牌,所述主视频源为待组同步回放的多个视频源中的一个;第二发送模块,根据所述RTSPDESCRIBE请求发送包含表示描述的响应消息至所述视频客户端,当所述RTSPDESCRIBE请求携带有组回放标识时,所述表示描述包括所述各存储容器对应的各媒体流标识,当所述RTSPDESCRIBE请求携带有主视频源对应的存储容器的回放标识以及组同步回放请求标题域时,所述表示描述包括所述各存储容器对应的媒体流标识和视频存储服务器的组回放标识生成模块针对所述RTSPDESCRIBE请求生成的组回放标识;建立确认模块,接收所述视频客户端根据各存储容器对应的媒体流标识依次发送的携带有各存储容器对应的媒体流标识的RTSPSETUP请求,并针对所述视频客户端发送的第一个RTSPSETUP请求生成一会话号返回至所述视频客户端,由所述视频客户端在发送所述第一个RTSPSETUP请求之后的RTSPSETUP请求中携带所述会话号;回放确认模块,在RTSPSETUP成功后,接收所述视频客户端根据会话号和组回放标识发送的RTSPPLAY请求,实现所述视频客户端的视频源组同步回放和控制。可选地,所述各存储容器对应的媒体流标识与所述组回放标识相关联。可选地,还包括:记录模块,当所述组回放标识生成模块生成所述组回放标识时,则将所述组回放标识、各存储容器令牌以及各存储容器对应的媒体流标识的关联关系记录于该视频存储器的内存块中;解析模块,当会话生成模块针对所述视频客户端发送的第一个RTSPSETUP请求生成所述会话号时,则从所述第一个RTSPSETUP请求携带的存储容器对应的媒体流标识中解析出组回放标识;定位模块,根据所解析出的组回放标识定位至所述内存块;所述记录模块保存所述会话号、组回放标识、各存储容器令牌以及各存储容器对应的媒体流标识的关联关系至所述内存块中。可选地,还包括内存清除模块,当所述第一接收模块接收自所述视频客户端的RTSPTEARDOWN请求时,所述内存清除模块则根据所述会话号清除所述内存块;和/或,所述内存块设有定时器,当所述RTSPDESCRIBE请求携带有组回放标识时,所述定时器用于记录所述视频存储服务器接收到携带有各存储容器令牌的请求消息至所述视频存储服务器接收到RTSPSETUP请求之间的时间,或者,当所述RTSPDESCRIBE请求携带有主视频源对应的存储容器的回放标识以及组同步回放请求标题域时,所述定时器用于记录所述视频存储服务器接收到RTSPDESCRIBE请求至所述视频存储服务器接收到RTSPSETUP请求之间的时间;当所述定时器的记录时间超出预设时间时,所述内存清除模块则清除所述内存块。本申请的有益效果:通过扩展ONVIF或RTSP协议获取组回放标识,可以任意组合视频源,且只针对组同步回放内的视频源进行检索和回放建立、控制等操作,达到高效且灵活地实现基于ONVIF协议不同视频源的组同步回放和控制功能。并且,通过表示描述,体现组内视频源和媒体流之间的关联关系,便于视频客户端根据实际需求进行显示位置的选择,达到较好的视频呈现效果。应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。附图说明此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。图1是现有技术中ONVIF协议的基于ONVIF的视频源组同步回放方法的结构示意图;图2是本申请提供的一种基于ONVIF的视频源组同步回放方法流程图,其揭示了视频客户端执行视频源组同步回放方法的步骤;图3是本申请提供的一种基于ONVIF的视频源组同步回放方法流程图,其揭示了视频存储服务器执行视频源组同步回放方法的步骤;图4是本申请提供的一具体实现基于ONVIF的视频源组同步回放方法的结构示意图;图5是本申请提供的一种基于ONVIF的视频源组同步回放装置的结构示意图,其揭示了视频客户端的视频源组同步回放装置的结构;图6是本申请提供的一种基于ONVIF的视频源组同步回放装置的结构示意图,其揭示了视频存储服务器的视频源组同步回放装置的结构。具体实施方式这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。在不冲突的情况下,下述的实施例及实施例中的特征可以相互组合。目前,多个视频源进行组同步回放时,需要保证各媒体流播放时间的一致性。并且,由于各摄像机按照一定的方式布局,有些全景画面由多个摄像机所拍摄的图像组合形成,组同步回放时,各摄像机所对应的视频源播放位置由视频客户端指定。在建立媒体流时,视频客户端需要区分各视频源进而指定显示位置。另外,为满足事后取证的灵活多变需求,组同步回放的视频源可根据需要灵活组合。请结合图2和图3,本申请第一实施例提供的一种基于ONVIF的视频源组同步回放方法,用于视频客户端从视频存储服务器中获取组回放视频源。其中,RTSPDESCRIBE(即描述)、RTSPPLAY(即播放和控制)、RTSPPAUSE(即暂停播放)和RTSPTEARDOWN(即关闭连接)均为RTSP协议的关键字。参见图2,所述基于ONVIF的视频源组同步回放方法在所述视频客户端中的执行过程包括:S101:发送RTSPDESCRIBE请求至视频存储服务器。在一具体实施例中,所述RTSPDESCRIBE请求携带有组回放标识,所述组回放标识由所述视频存储服务器针对所述视频客户端发送的携带有各存储容器对应的存储容器令牌(即RecordingToken)的请求消息所生成。具体地,ONVIF新增根据多个存储容器令牌来查询组回放标识的接口,以从视频存储服务器中获取组回放标识的信息,参见表1。表1扩展ONVIF协议,在调用GetGroupReplayUriResquest接口时将所输入的存储容器令牌的数量设为unbounded,即不受限制的。本实施例中,根据多个存储容器的存储容器令牌,例如recordingtoken001、recordingtoken002等查询ONVIF的组回放标识获取接口。具体地,视频客户端发送的携带有各存储容器令牌的请求消息至所述视频存储服务器。所述视频存储服务器在接收到视频客户端发送的携带有各存储容器令牌的请求消息后,会针对该请求消息生成组回放标识,并将该生成的组回放标识设置在响应消息中返回至所述视频客户端。在视频客户端接收自视频存储服务器的响应消息后,会从所述响应消息中解析出组回放标识,并发送携带所述组回放标识的RTSPDESCRIBE请求至视频存储服务器,以获得所述组回放标识(例如rtsp://192.168.0.1/grouptoken001)所对应的存储容器令牌(例如recordingtoken001、recordingtoken002等)下的各媒体流标识(audioURI、videoURI等)。另外,视频客户端还能够获取所述组回放标识所对应的存储容器令牌下的各媒体流的媒体流类型。其中,媒体流类型包括音频、视频和元数据等。音频标识、视频标识可分别标记为audioURI、videoURI。在另一具体实施例中,所述RTSPDESCRIBE请求携带有主视频源对应的存储容器的回放标识以及组同步回放请求标题域,其中所述组同步回放请求标题域包含组同步回放所对应的各存储容器令牌,所述主视频源为待组同步回放的多个视频源中的一个。具体地,从待组同步回放的多个视频源中任意选择一个作为本次组同步回放的主视频源,并获取该主视频源对应的存储容器的回放标识。其中,获取所述主视频源对应的存储容器的回放标识的方式为:视频客户端调用ONVIF协议的获取回放标识(GetReplayUri)接口,从视频存储服务器中获取主视频源对应的存储容器的回放标识(例如,rtsp://192.168.0.1/),或者将主视频源对应的存储容器的回放标识设置为预设格式,例如,rstp://host:port/。接着,在RTSPDESCRIBE请求中增加组同步回放请求标题域,即扩展RTSP协议。例如:X-Onvif-Group:<RecordingReference>,<RecordingReference>,……视频客户端向视频存储客户端发送携带有主视频源对应的存储容器的回放标识和组同步回放请求标题域的RTSPDESCRIBE请求,并在表示描述的响应消中扩展a类型,增加x-onvif-recording属性,用以区分各视频源对应的存储容器,该属性的值为存储容器令牌(RecordingToken),类型为存储容器参考值类型(RecordingReference)。例如:a=a:x-onvif-recording:<RecordingReference>。视频、音频和元数据的区分是通过ONVIF扩展的a=x-onvif-track属性(即媒体流标识)来实现的。而用于呈现表示描述具体内容的协议可根据需要设置,例如,将表示描述以SDP协议呈现。S102:接收所述视频存储服务器针对所述RTSPDESCRIBE请求返回的包含表示描述的响应消息。其中,当所述RTSPDESCRIBE请求携带有组回放标识时,所述表示描述包括所述各存储容器对应的媒体流标识。当所述RTSPDESCRIBE请求携带有主视频源对应的存储容器的回放标识以及组同步回放请求标题域时,所述表示描述包括所述各存储容器对应的媒体流标识和所述视频存储服务器针对所述RTSPDESCRIBE请求生成的组回放标识。所述各存储容器对应的媒体流标识与所述组回放标识相关联。例如,由该组同步回放标识为前缀生成关联视频源下各类型媒体流的媒体流标识。在步骤S102中,当视频存储服务器所接收到的RTSPDESCRIBE请求中携带有组回放标识时,视频存储服务器会根据组回放标识找到相关联的各存储容器下的音频、视频或元数据的媒体流标识信息,其中,所述媒体流信息包括媒体流类型以及该媒体流类型所对应的媒体流标识。参见表2,揭示了一具体实施例中的组回放标识与对应存储容器下的各媒体流标识的关系。表2组回放标识存储容器令牌媒体流标识rtsp://192.168.0.1/grouptoken001recordingtoken001audioURIrtsp://192.168.0.1/grouptoken001recordingtoken001videoURIrtsp://192.168.0.1/grouptoken001recordingtoken002audioURIrtsp://192.168.0.1/grouptoken001recordingtoken002videoURI表2中,组回放标识为rtsp://192.168.0.1/grouptoken001的各视频源分别存储在存储容器令牌为recordingtoken001和recordingtoken002的存储容器中,存储容器令牌为recordingtoken001的存储容器中存储有媒体流标识为audioURI的音频数据和媒体流标识为videoURI的视频数据,存储容器令牌为recordingtoken002的存储容器中存储有媒体流标识为audioURI的音频数据和媒体流标识为videoURI的视频数据。当视频存储服务器所接收到的RTSPDESCRIBE请求中携带有组同步回放标题域时,视频存储服务器判断出本次回放为多视频源的同步回放,然后生成一个组回放标识(例如:rtsp://192.168.0.1/grouptoken001),同时生成一内存块,并将所述组回放标识和各存储容器令牌的关联关系保存至所述内存块中,再生成相应的包含表示描述的响应消息返回至视频客户端。S103:根据各存储容器对应的媒体流标识,依次发送RTSPSETUP请求至视频存储服务器,所述RTSPSETUP请求携带有各存储容器对应的媒体流标识,并在发送所述第一个RTSPSETUP请求之后的RTSPSETUP请求中携带所述视频存储服务器针对所述第一个RTSPSETUP请求所生成的会话号。其中,所述会话号由所述视频存储服务器针对所述视频客户端所发送的第一个所述携带有各存储容器对应的媒体流标识的RTSPSETUP请求所生成。例如,当视频客户端按照表2的排列顺序依次发送RTSPSETUP请求至视频存储服务器时,当视频存储服务器接收到携带有recordingtoken001对应的audioURI的RTSPSETUP请求时,会针对该携带有recordingtoken001对应的audioURI的RTSPSETUP请求生成一会话号,并发送至所述视频客户端。并在视频客户端发送携带有recordingtoken001对应的videoURI、recordingtoken002对应的audioURI和recording002对应的videoURI的RTSPSETUP请求至视频存储服务器时,每次发送的RTSPSETUP请求不仅携带有各存储容器对应的媒体流标识,还携带所述会话号,从而将recordingtoken001/videoURI、recordingtoken002/audioURI和recordingtoken002/videoURI的媒体流与recordingtoken001/audioURI关联在一起。S104:在RTSPSETUP成功后,根据所述会话号和组回放标识发送RTSPPLAY请求至所述视频存储服务器,进行视频源组同步回放和控制。其中,RTSPPLAY请求携带有组回放标识和步骤103中的会话号,视频存储服务器在接收到该携带有组回放标识和会话号的RTSPPLAY请求后,将所述组回放标识所对应的各存储容器下的媒体流发送至视频客户端,实现组同步回放和控制。视频客户端还可根据会话号和组回放标识,发送RTSPPAUSE或者RTSPTEARDOWN等操作至视频存储客户端,实现不同视频源的组同步回放相关控制功能。具体地,视频客户端发送携带有会话号和组回放标识的RTSPPAUSE请求,实现组同步回放的暂停。视频客户端发送携带有会话号和组回放标识的RTSPTEARDOWN请求,实现组同步回放的关闭连接。参见图3,对应于所述视频客户端中所执行的基于ONVIF的视频源组同步回放方法步骤,所述基于ONVIF的视频源组同步回放方法在所述视频存储服务器中的执行过程包括:S201:接收所述视频客户端发送的RTSPDESCRIBE请求。在一具体实施例中,所述RTSPDESCRIBE请求携带有组回放标识,其中所述组回放标识由所述视频存储服务器针对所述视频客户端发送的携带有各存储容器对应的存储容器令牌的请求消息所述生成。视频存储服务器在接收到视频客户端发送的请求消息后,会根据所述请求消息中的各存储容器令牌生成同一个组回放标识,例如rtsp://192.168.0.1/grouptoken001,并将该组回放标识放置在响应消息中返回至所述视频客户端。所述视频存储服务器生成所述组回放标识时还生成一内存块,并将组回放标识、各存储容器令牌、以及各存储容器对应的媒体流标识的关联关系存储在该内存块中。例如,可以以表格的方式将组回放标识和各存储容器令牌以及各存储容器对应的媒体流标识的关联关系保存,参见上述表2。在另一具体实施例中,所述RTSPDESCRIBE请求携带有主视频源对应的存储容器的回放标识以及组同步回放请求标题域,其中所述组同步回放请求标题域包含组同步回放所对应的各存储容器令牌,所述主视频源为待组同步回放的多个视频源中的一个。S202:根据所述RTSPDESCRIBE请求发送包含表示描述的响应消息至所述视频客户端。其中,当所述RTSPDESCRIBE请求携带有组回放标识时,所述表示描述包括所述各存储容器对应的各媒体流标识;当所述RTSPDESCRIBE请求携带有主视频源对应的存储容器的回放标识以及组同步回放请求标题域时,所述表示描述包括所述各存储容器对应的媒体流标识以及所述视频存储服务器针对所述RTSPDESCRIBE请求生成的组回放标识。当视频存储服务器接收到携带有组同步回放请求标题域的RTSPDESCRIBE请求后,判断出本次回放为多视频源的同步回放,然后生成一个组回放标识(例如:rtsp://192.168.0.1/grouptoken001)。组回放标识与对应存储容器下的各媒体流标识的关系可参见上述表2。S203:接收所述视频客户端根据各存储容器对应的媒体流标识依次发送的携带有各存储容器对应的媒体流标识的RTSPSETUP请求,并针对所述视频客户端发送的第一个RTSPSETUP请求生成一会话号返回至所述视频客户端,由所述视频客户端在发送所述第一个RTSPSETUP请求之后的RTSPSETUP请求中携带所述会话号。所述各存储容器对应的媒体流标识与所述组回放标识相关联。当所述视频存储服务器生成所述组回放标识时,该视频存储服务器则将所述组回放标识和、各存储容器令牌以及各存储容器对应的媒体流标识的关联关系记录于该视频存储器的内存块中;当所述视频存储服务器针对所述视频客户端发送的第一个RTSPSETUP请求生成所述会话号时,该视频存储服务器则从所述第一个RTSPSETUP请求携带的存储容器对应的媒体流标识中解析出组回放标识;所述视频存储服务器根据所解析出的组回放标识定位至所述内存块;保存所述会话号、组回放标识、各存储容器令牌以及各存储容器对应的媒体流标识的关联关系至该视频存储服务器的内存块中,参见表3。表3组回放标识存储容器令牌媒体流标识会话号rtsp://192.168.0.1/grouptoken001recordingtoken001audioURI123456789rtsp://192.168.0.1/grouptoken001recordingtoken001videoURI123456789rtsp://192.168.0.1/grouptoken001recordingtoken002audioURI123456789rtsp://192.168.0.1/grouptoken001recordingtoken002videoURI123456789本实施例中,所述视频存储服务器的内存块设有定时器。当所述RTSPDESCRIBE请求携带有组回放标识时,所述定时器用于记录所述视频存储服务器接收到携带有各存储容器令牌的请求消息至所述视频存储服务器接收到RTSPSETUP请求之间的时间。当所述RTSPDESCRIBE请求携带有主视频源对应的存储容器的回放标识以及组同步回放请求标题域时,所述定时器用于记录所述视频存储服务器接收到RTSPDESCRIBE请求至所述视频存储服务器接收到RTSPSETUP请求之间的时间。当所述定时器的记录时间超出预设时间时,视频存储服务器则清除所述内存块。其中,所述预设时间可根据实际情况设定,例如,将预设时间设置为5秒。所述定时器用于记录时间超出5秒时,视频存储服务器则对所述内存块进行清除操作。当所述视频存储服务器生成所述会话号时,该视频存储服务器会定位至所述内存块并关闭所述定时器,以实现所述内存块与所述会话号的关联。具体地,在视频存储服务器生成会话号后,会从所述第一个媒体流标识中解析出组回放标识,并定位至所述存储组回放标识、各存储容器令牌和各存储容器对应的媒体流标识的关联关系的内存块,并将所述内存块的定时器关闭,从而将该内存块与该会话号关联。另外,所述视频存储服务器接收自所述视频客户端的RTSPTEARDOWN请求时,所述视频存储服务器会根据所述会话号清除所述内存块。S206:在RTSPSETUP成功后,接收所述视频客户端根据会话号和组回放标识发送的RTSPPLAY请求,实现所述视频客户端的视频源组同步回放。在上述多个视频源(即原组同步回放视频源)实现组同步回放后,如果还需要新增其他视频源的媒体流,只需要由视频客户端依照RTSP协议,向视频存储服务器发起携带有所述会话号以及该新增的其他视频源的存储容器对应的媒体流标识的RTSPSETUP请求,即可将该新增的其他视频源的媒体流加入原组同步回放的多个视频源中,实现该新增的其他视频源与原组同步回放视频源的同步回放与控制,灵活性强。在可行的实现方式中,参见图4,需要进行组回放的多个视频源分别存储在存储容器令牌为recordingtoken001和recordingtoken002两个存储容器中,这两个存储容器均由视频存储服务器管理,且这两个存储容器中分别包括媒体流标识为audioURI的音频数据和媒体流标识为videoURI的视频数据。视频客户端根据recordingtoken001和recordingtoken002这两个存储容器令牌来调用ONVIF新增的根据多个存储容器令牌来查询组同步回放标识的接口,具体地,视频客户端发送的携带有recordingtoken001和recordingtoken002的请求消息至所述视频存储服务器,以从视频存储服务器获取存储容器令牌为recordingtoken001和recordingtoken002这两个存储容器存储的多个视频源的组回放标识rtsp://192.168.0.1/grouptoken001。所述视频存储服务器在接收到视频客户端发送的携带有recordingtoken001和recordingtoken002的请求消息后,会针对该请求消息生成组回放标识rtsp://192.168.0.1/grouptoken001,并将该生成的组回放标识rtsp://192.168.0.1/grouptoken001设置在响应消息中返回至所述视频客户端。在视频客户端接收自视频存储服务器的响应消息后,会从所述响应消息中解析出组回放标识rtsp://192.168.0.1/grouptoken001,并发送携带所述组回放标识rtsp://192.168.0.1/grouptoken001的RTSPDESCRIBE请求至视频存储服务器,所述视频存储服务器针对所述RTSPDESCRIBE请求返回含有表示描述(表示描述的内容以SDP协议呈现,即将表示描述组装在SDP协议中)的响应消息至视频客户端,所述表示描述包括各存储容器(存储容器令牌分别为recordingtoken001和recordingtoken002)所对应的媒体流标识audioURI、videoURI。接着,视频客户端根据各存储容器对应的媒体流标识,依次发送携带有各存储容器对应的媒体流标识的RTSPSETUP请求至视频存储服务器,所述视频存储服务器针对所述视频客户端所发送的第一个所述携带有各存储容器对应的媒体流标识(例如recordingtoken001对应的audioURI)的RTSPSETUP请求生成一个会话号SessionID(例如SessionID=123456789),并在接下来发送至视频存储服务器的RTSPSETUP请求中携带所述会话号。在视频客户端和视频存储服务器进行RTSPSETUP成功后,视频客户端会根据组回放标识rtsp://192.168.0.1/grouptoken001和相同的会话号SessionID发送RTSPPALY、RTSPPAUSE或RTSPTEARDOWN等请求至视频存储服务器,以实现不同视频源的组同步回放和组同步回放和控制等功能。如图5所示,为本申请提供的基于ONVIF的视频源组同步回放装置的结构示意图,与上述应用于视频客户端中的基于ONVIF的视频源组同步回放方法相对应,可参照上述应用于视频客户端中的基于ONVIF的视频源组同步回放方法的实施例来理解或解释该基于ONVIF的视频源组同步回放装置的内容。参见图5,本实施例提供的一种基于ONVIF的视频源组同步回放装置,应用于视频客户端,所述装置包括:第一发送模块101,发送RTSPDESCRIBE请求至视频存储服务器。可选地,所述RTSPDESCRIBE请求携带有组回放标识,其中所述组回放标识由所述视频存储服务器针对所述视频客户端发送的携带有各存储容器对应的存储容器令牌的请求消息所生成。可选地,所述RTSPDESCRIBE请求携带有主视频源对应的存储容器的回放标识以及组同步回放请求标题域,其中所述组同步回放请求标题域包含组同步回放所对应的各存储容器令牌,所述主视频源为待组同步回放的多个视频源中的一个。第二接收模块102,接收所述视频存储服务器针对所述RTSPDESCRIBE请求返回的含有表示描述的响应消息。其中,当所述RTSPDESCRIBE请求携带有组回放标识时,所述表示描述包括所述各存储容器对应的媒体流标识。当所述RTSPDESCRIBE请求携带有主视频源的标识以及组同步回放请求标题域时,所述表示描述包括所述各存储容器对应的媒体流标识和所述视频存储服务器针对所述RTSPDESCRIBE请求生成的组回放标识。其中,所述各存储容器对应的媒体流标识与所述组回放标识相关联。建立模块103,根据各存储容器对应的媒体流标识,依次发送RTSPSETUP请求至视频存储服务器,所述RTSPSETUP请求携带有各存储容器对应的媒体流标识,并在发送所述第一个RTSPSETUP请求之后的RTSPSETUP请求中携带所述视频存储服务器针对所述第一个RTSPSETUP请求所生成的会话号。回放模块104,在RTSPSETUP成功后,根据所述会话号和组回放标识发送RTSPPLAY请求至所述视频存储服务器,进行视频源组同步回放和控制。如图6所示,为本申请提供的基于ONVIF的视频源组同步回放装置的结构示意图,与上述应用于视频存储服务器中的基于ONVIF的视频源组同步回放方法相对应,可参照上述应用于视频存储服务器中的基于ONVIF的视频源组同步回放方法的实施例来理解或解释该基于ONVIF的视频源组同步回放装置的内容。本实施例提供的一种基于ONVIF的视频源组同步回放装置,应用于视频存储服务器,所述装置包括:第一接收模块201,接收所述视频客户端发送的RTSPDESCRIBE请求。可选地,所述RTSPDESCRIBE请求携带有组回放标识,其中所述组回放标识由所述视频存储服务器的组回放标识生成模块(图中未显示)针对所述视频客户端发送的携带有各存储容器令牌的请求消息所述生成。可选地,所述RTSPDESCRIBE请求携带有主视频源对应的存储容器的回放标识以及组同步回放请求标题域,其中所述组同步回放请求标题域包含组同步回放所对应的各存储容器对应的存储容器令牌,所述主视频源为待组同步回放的多个视频源中的一个。第二发送模块202,根据所述RTSPDESCRIBE请求发送含有表示描述的响应消息至所述视频客户端。当所述RTSPDESCRIBE请求携带有组回放标识时,所述表示描述包括所述各存储容器对应的媒体流标识;当所述RTSPDESCRIBE请求携带有主视频源的标识以及组同步回放请求标题域时,所述表示描述包括所述各存储容器对应的媒体流标识和所述视频存储服务器针的组回放标识生成模块对所述RTSPDESCRIBE请求生成的组回放标识。其中,所述各存储容器对应的媒体流标识与所述组回放标识相关联。建立确认模块203,接收所述视频客户端根据各存储容器对应的媒体流标识依次发送的携带有各存储容器对应的媒体流标识的RTSPSETUP请求,并针对所述视频客户端发送的第一个RTSPSETUP请求生成一会话号返回至所述视频客户端,由所述视频客户端在发送所述第一个RTSPSETUP请求之后的RTSPSETUP请求中携带所述会话号。回放确认模块204,在RTSPSETUP成功后,接收所述视频客户端根据会话号和组回放标识发送的RTSPPLAY请求,实现所述视频客户端的视频源组同步回放和控制。进一步地,在所述视频存储服务器中,基于ONVIF的视频源组同步回放装置还包括记录模块(图中未显示)、解析模块(图中未显示)和定位模块(图中未显示)。其中,当所述组回放标识生成模块生成所述组回放标识时,所述记录模块则将所述组回放标识、各存储容器令牌以及各存储容器对应的媒体流标识的关联关系记录于该视频存储器的内存块中;当会话生成模块针对所述视频客户端发送的第一个RTSPSETUP请求生成所述会话号时,解析模块则从所述第一个RTSPSETUP请求携带的存储容器对应的媒体流标识中解析出组回放标识;定位模块用于根据所解析出的组回放标识定位至所述内存块;所述记录模块保存所述会话号、组回放标识、各存储容器令牌以及各存储容器对应的媒体流标识的关联关系至所述内存块中。进一步地,在所述视频存储服务器中,基于ONVIF的视频源组同步回放装置还包括内存清除模块(图中未显示)。当接收自所述视频客户端的RTSPTEARDOWN请求时,所述内存清除模块则根据所述会话号清除所述内存块。和/或,所述内存块设有定时器。当所述RTSPDESCRIBE请求携带有组回放标识时,所述定时器用于记录所述视频存储服务器接收到携带有各存储容器令牌的请求消息至所述视频存储服务器接收到RTSPSETUP请求之间的时间,或者,当所述RTSPDESCRIBE请求携带有主视频源对应的存储容器的回放标识以及组同步回放请求标题域时,所述定时器用于记录所述视频存储服务器接收到RTSPDESCRIBE请求至所述视频存储服务器接收到RTSPSETUP请求之间的时间。当所述定时器的记录时间超出预设时间时,所述内存清除模块则清除所述内存块。综述所述,本申请通过扩展ONVIF或RTSP协议获取组回放标识,可以任意组合视频源,且只针对组同步回放内的视频源进行检索和回放建立、控制等操作,达到高效且灵活地实现基于ONVIF协议不同视频源的组同步回放功能。以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1