CN110430480B - 一种流媒体云存储同步的***和方法 - Google Patents
一种流媒体云存储同步的***和方法 Download PDFInfo
- Publication number
- CN110430480B CN110430480B CN201910733225.0A CN201910733225A CN110430480B CN 110430480 B CN110430480 B CN 110430480B CN 201910733225 A CN201910733225 A CN 201910733225A CN 110430480 B CN110430480 B CN 110430480B
- Authority
- CN
- China
- Prior art keywords
- media
- cloud storage
- data
- module
- media stream
- 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.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/21—Server components or server architectures
- H04N21/218—Source of audio or video content, e.g. local disk arrays
- H04N21/2187—Live feed
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/27—Server based end-user applications
- H04N21/274—Storing end-user multimedia data in response to end-user request, e.g. network recorder
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/4302—Content synchronisation processes, e.g. decoder synchronisation
- H04N21/4307—Synchronising the rendering of multiple content streams or additional data on devices, e.g. synchronisation of audio on a mobile phone with the video output on the TV screen
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/433—Content storage operation, e.g. storage operation in response to a pause request, caching operations
- H04N21/4334—Recording operations
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/47—End-user applications
- H04N21/472—End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
- H04N21/47202—End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content for requesting content on demand, e.g. video on demand
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/83—Generation or processing of protective or descriptive data associated with content; Content structuring
- H04N21/845—Structuring of content, e.g. decomposing content into time segments
- H04N21/8456—Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Databases & Information Systems (AREA)
- Human Computer Interaction (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
本发明公开了一种流媒体云存储同步的***,包括网络摄像机、媒体服务器、云存储服务器,所述网络摄像机、媒体服务器、云存储服务器通过IP网络互联以及一种流媒体云存储同步***的网络摄像机批量索引补传的方法,一种流媒体云存储同步***的针对云存储同步功能的点播方法和一种流媒体云存储同步***的云存储缺失数据同步的方法。本发明通过对流媒体的分片、分组和标记的预处理,使得在终端进行点播、检索操作更加的精准快速,在网络不稳定的情况下通过最后收到的分组的时间点或最后分组在设备端的存储位置信息,以终端位置为起始条件,进行断点续传,并可实现在点播的同时,进行流媒体数据的更新同步。
Description
技术领域
本发明属于流媒体技术领域,尤其是涉及一种流媒体云存储同步的***和方法。
背景技术
随着网络摄像机的流行,人们对录像数据的可靠性保存要求越来越高,目前大部分网络摄像机支持在摄像机的SD卡中和本地的NVR设备上保存录像;但由于本地的摄像机设备及NVR设备容易损坏或容易遭到破坏,而云存储服务器一般具有高性能,高可靠性特点,且方便实现录像的朋友圈共享,所以人们对录像在云上保存的需求在不断增加。但录像在云存储上保存,需要使用公网,而网络带宽,网络稳定性,网络中断就成为数据上云的最严峻的挑战。目前业界常见的云存储***没有数据同步能力,导致云存储数据在网络状态不佳时,往往数据不完整。市场迫切需要一种对网络状态有很强适应能力的且同时支持云存储数据同步能力的***。
发明内容
本发明为了克服现有技术的不足,提供一种流媒体云存储同步的***和方法,解决因网络状态不佳,传输数据不完整的问题。
为了实现上述目的,本发明采用以下技术方案:一种流媒体云存储同步的***,其特征在于,其包括网络摄像机、媒体服务器、云存储服务器,所述网络摄像机、媒体服务器、云存储服务器通过IP网络互联;
所述网络摄像机用于产生流媒体数据,并将流媒体数据上传至媒体服务器;
所述媒体服务器用于接收网络摄像机上传的流媒体数据,对要求保存到云存储的媒体数据进行筛选并转存至云存储服务器;对客户端的播放请求进行处理;
其中,所述网络摄像机包括媒体流采样模块、媒体流本地存储模块、媒体流云存储管理模块、媒体流点播模块和/或媒体流直播模块以及分别与媒体流采样模块、媒体流本地存储模块、媒体流云存储管理模块、媒体流点播模块和/或媒体流直播模块相连的网络摄像机中央控制器;
所述媒体服务器包括云存储媒体通道管理模块、云存储媒体流存储管理模块、云存储点播模块以及分别与云存储媒体通道管理模块、云存储媒体流存储管理模块、云存储点播模块的媒体服务器中央控制器;
所述云存储服务器用于提供流媒体数据的存取以及检索服务。
所述媒体流采样模块用于:
采集媒体流;
将媒体流进行分片和分组处理;
分别设置特征标记并进行编号;
最后将分片发送到媒体流直播模块及媒体流本地存储模块;
所述特征标记为移动侦测标记、云录像标记在内的标记。
所述媒体流直播模块用于接收媒体流采用模块的输入,并根据媒体流直播条件或媒体流云存储管理模块的连接控制要求,按既定的策略将媒体流实时上传到媒体服务器或播放客户端;
所述既定的策略为:
用户点播云存储录像片段的缺失数据优先;
新缺失数据优先。
所述媒体流直播模块还用于当直播流通过媒体服务器时,云存储的媒体通道可以和直播媒体通道并用一个通道。
所述媒体流本地存储模块:用于本地存储介质的管理;还用于将实时媒体流数据写入本地存储或检索、提取已存入的媒体数据;在存储时,媒体流数据被组织成分组索引与分组数据两部分后,分别存;索引部分可用于根据时间,分组标记信息进行检索提取;特别是索引中的云录像标记,可作为云存储同步的数据的检索依据;
所述媒体流点播模块:用于点播的媒体通道的创建,删除的管理工作;还用于根据点播的条件,从媒体流本地存储模块中检索符合条件的媒体数据,并把媒体数据通过点播媒体通道发给客户端或经由媒体服务器转发;媒体服务器也可以利用点播模块同步云存储上缺失的媒体数据;
所述媒体流云存储管理模块:用于与媒体服务器的连接管理、配置管理;云存储录像标记的生成策略;以及云存储缺失数据索引信息的批量同步功能。
所述云存储媒体通道管理模块:用于管理云存储媒体通道,以既定的策略实现云存储媒体通道与媒体服务器的直播通道的数据共享与分流;还用于将云存储相关的媒体流转发给云存储媒体流存储管理模块;
所述既定的策略为:
用户点播云存储录像片段的缺失数据优先;
新缺失数据优先。
所述云存储媒体流存储管理模块:用于云存储媒体流分片的接收整序及分组的完整性校验工作;还用于将媒体流按索引和数据两部分,分别写入云存储服务器;还用于发起云存储缺失数据的同步重传管理工作;
所述云存储点播模块:用于云存储录像的点播回放;还用于当点播的数据只有索引信息,其对应数据还未同步至云存储时,向所对应的网络摄像机设备发起缺失数据点播请求。
一种流媒体云存储同步***的网络摄像机批量索引补传的方法:
周期性的尝试与媒体服务器进行连接;
连接成功后,向媒体服务器,发云存储批量索引补传请求,并附上当前存储介质的格式化ID参数,云存储同步状态进入到索引批量补传阶段;
收到媒体服务器的关于云存储的中断位置信息和/或最后收到分组的时间点和/或最后分组的在设备端的存储位置信息;以中断位置信息和/或最后收到分组的时间点和/或最后分组的在设备端的存储位置信息为起始条件,向本地存储模块请求获取所有有云录像标记的分组索引信息,若分组索引条目如果数据巨大,则分批获取;
将获取的分组索引列表,压缩打包后,发给媒体服务器,媒体服务器收到报文后,回应一个确认报文;
分批依次发送分组索引列表,直到所有分组索引都发送完毕,进入到实时同步阶段;
媒体流直播模块进行实时上传直播媒体流数据,本地存储模块的将直播媒体流分组的存储索引信息通过信令通道上传。
一种流媒体云存储同步***的针对云存储同步功能的点播方法:
收到点播请求,检查请求参数,发现是云存储同步点播请求,提取格式化编号及分组位置信息信息,记录在点播请求控制块结构中。判断格式化编号是否与本地存储介质的格式化编号一致。如果不一致,则请求的数据已经失效,则返回错误;如果一致,则根据分组的位置信息,取到分组的索引信息;如果获取失败,说明分组数据已经被覆盖,返回失败,如果获取成功,根据索引信息,读取分片数据,并通过云存储点播媒体通道上传每个分片头信息都填入分片编号,分组编号及分组位置信息,通过分组统计信息,服务器进行数据完整性校验;如果媒体通道不支持附带信息,则通过媒体信令通道上传;
读取缩略图分片数据,并通过云存储点播媒体通道上传;上传时填入分片编号,分组位置信息,打上缩略图标记位,供媒体服务器识别此特殊分片;
直到所有请求的分组都上传完毕,关闭点播媒体通道。
一种述流媒体云存储同步***的云存储缺失数据同步的方法:
用户发出云存储点播请求,并将点播请求发送给媒体服务器;
媒体服务器在云存储服务器中查找确实数据的索引,按一定优先级排序策略向网络摄像机发起云存储点播请求,进行缺失数据的同步;
所述缺失数据的优先级排序策略为:
用户点播云存储录像片段的缺失数据优先;
新缺失数据优先;
网略摄像机收到云存储同步点播请求,给媒体服务器返回发送点播播放地址信息;
媒体服务器连接播放地址,建立播放媒体通道,进行点播播放,同时,从播放流中提出每个分组的索引信息并重组分组数据;
匹配确实数据的索引,将数据写入云存储服务器,完成缺失数据的更新同步工作。
本发明的有益效果在于:
本发明通过对流媒体的分片,分组和标记的预处理,不但使得直播,本地录像存储,云存储的控制相互独立,而且可以共享一份数据源,减少了数据的传输冗余;通过将数据分为索引与数据本身两部分,云存储同步时,先同步索引,后同步数据,保证了客户端云存储访问时,数据检索的快速性和完整性;按需点播方式的云存储数据同步方法,即保证随时可断点续传和最大限度的平滑网络带宽,而且能在客户端播放云存储视频时,作到实时高优先的同步紧急缺失的数据。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例的***组网图;
图2为本发明实施例的模块关系图;
图3为本发明实施例的一个实时媒体流分组的分片组成序列示意图;
图4为本发明实施例的云存储缺失数据同步的流程示意图;
图5为本发明实施例的云存储批量索引补传的流程示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本发明部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有付出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图1所示,一种流媒体云存储同步的***,其特征在于,其包括网络摄像机、媒体服务器、云存储服务器,所述网络摄像机、媒体服务器、云存储服务器通过IP网络互联;
网络摄像机用于产生流媒体数据,并将流媒体数据上传至媒体服务器;
媒体服务器用于接收网络摄像机上传的流媒体数据,对要求保存到云存储的媒体数据进行筛选并转存至云存储服务器;对客户端的播放请求进行处理;
实施例1:如图2所示,网络摄像机包括媒体流采样模块、媒体流本地存储模块、媒体流云存储管理模块、媒体流点播模块、媒体流直播模块以及分别与媒体流采样模块、媒体流本地存储模块、媒体流云存储管理模块、媒体流点播模块、媒体流直播模块相连的网络摄像机中央控制器;
媒体服务器包括云存储媒体通道管理模块、云存储媒体流存储管理模块、云存储点播模块以及分别与云存储媒体通道管理模块、云存储媒体流存储管理模块、云存储点播模块的媒体服务器中央控制器;
云存储服务器用于提供流媒体数据的存取以及检索服务。
实施例2:网络摄像机包括媒体流采样模块、媒体流本地存储模块、媒体流云存储管理模块、媒体流点播模块以及分别与媒体流采样模块、媒体流本地存储模块、媒体流云存储管理模块、媒体流点播模块相连的网络摄像机中央控制器;
媒体服务器包括云存储媒体通道管理模块、云存储媒体流存储管理模块、云存储点播模块以及分别与云存储媒体通道管理模块、云存储媒体流存储管理模块、云存储点播模块的媒体服务器中央控制器;
云存储服务器用于提供流媒体数据的存取以及检索服务。
实施例3:网络摄像机包括媒体流采样模块、媒体流本地存储模块、媒体流云存储管理模块、媒体流直播模块以及分别与媒体流采样模块、媒体流本地存储模块、媒体流云存储管理模块、媒体流直播模块相连的网络摄像机中央控制器;
媒体服务器包括云存储媒体通道管理模块、云存储媒体流存储管理模块、云存储点播模块以及分别与云存储媒体通道管理模块、云存储媒体流存储管理模块、云存储点播模块的媒体服务器中央控制器;
云存储服务器用于提供流媒体数据的存取以及检索服务。
这里的检索服务为用户通过特征标记或名词信息等信息,在云存储服务器上进行检索的服务。此为本领域技术人员的惯用技术手段,这里不作具体说明。
实施例4:媒体流采样模块用于
采集媒体流;
将媒体流进行分片和分组处理;
分别上设置特征标记(移动侦测标记、云录像标记在内的标记等)并进行编号;
最后将分片发送到媒体流直播模块及媒体流本地存储模块。
如图3,在网络摄像机的媒体流采样模块中,媒体流数据被分片和分组,并且进行了编号。分片作为媒体流数据的基本传输单元,如一个视频I帧,P帧或音频帧;分组是一组分片的集合,划分在一个分组的分片都有相同的分组编号。不同分组有不同的编号。一个分组由I帧分片开始的,然后是与其相关的P帧分片序列,以及这个分组时间段内的所有音频分片组成。分组是本地存储或云存储的基本单位,媒体流存储的描述信息即索引信息就是基于分组进行描述的。
媒体流分片添加分片头部信息在原分片数据之前。分片头部包括以下信息:分片类型,分片时戳,分片所属分组编号,分片编号,分片标志,分片所在码流通道等;各模块依据分片头进行媒体流数据转发,发布及存储判断等操作。
分片标志,由多个标记位组成;其中有一个云录像标记位,用于标记此分片是否允许上传云存储,其它类似的标记位还有移动侦测标记,人脸检测标记等等也各占一个位。云录像标记位的产生来源是媒体流云存储管理模块。云录像标记位在媒体流存入本地存储时,必须一起存入,不能缺失。它将作为检索本地存储有关云存储相关的数据的依据。
实施例5:媒体流直播模块用于接收媒体流采用模块的输入,并根据媒体流直播条件或媒体流云存储管理模块的连接控制要求,按既定的策略(用户点播云存储录像片段的缺失数据优先;新缺失数据优先)
将媒体流实时上传到媒体服务器或播放客户端;
媒体流直播模块还用于当直播流通过媒体服务器时,云存储的媒体通道可以和直播媒体通道并用一个通道。
在网络摄像机的媒体流直播模块中,每收到媒体分片,都需要遍历所有直播媒体流的媒体通道,然后将分片一一写入。其中,如果云存储的媒体通道已经建立且分片有云录像标志位,则分片也会被写入到云存储的媒体通道中。
在网络摄像机的媒体流直播模块中,如果分片属于高清码流通道,则同分组的所有分片发送完毕时,会主动生成一个低清缩略图作为此分组的浏览缩略图,此缩略图会被编码成一个视频分片并打上缩略图标记位,***在此分组媒体流的末端,并由媒体服务器识别。缩略图分片的***位置,也可以在此分组媒体流的开始位置或中间任意位置,若是这种位置,则应该在收到此分组的I帧分片时,就应该产生缩略图。缩略图的产生办法可以从低清码流通道中提取,或在此分组I帧产生后,立刻生成一个低分辨率快照图片。缩略图在网络摄像头上产生并发送到云存储,可以省略媒体服务器通过高清媒体流转码成低清缩略图的过程,从而减轻媒体服务器的负担。
网络摄像机的媒体流直播模块,在每个云存储相关的媒体流分组数据传送完后,会生成关于此分组的统计信息。统计信息包括:分组数据总长度,分组视频分片数量及长度加和,分组中有云录像标记的分片数量及总长度加和,分组标志信息等,统计信息所属分组编号等。此分组统计信息会附在缩略图分片或下一个分片上(如果云存储不需要缩略图的话),通过媒体通道一起发送。如果媒体通道不支持统计数据的发送,也可通过媒体信令通道发送给媒体服务器。媒体服务器会根据此统计信息校验收到的分组数据的完整性。
网络摄像机的媒体流直播模块,对所有发往同一台媒体服务器的直播媒体通道及云存储通道进行数据复用。以保证在多路直播与云存储并存时,只需一份直播媒体流数据上传,从而大大降低对网络带宽的需求。其关键在于在媒体分片上设置云录像标记和直播录像标记。当媒体服务器的同时存在直播媒体通道和云存储通道时,网络摄像机统一将数据写入直播媒体通道(或云存储通道),媒体服务器通过标记位,进行多路分发处理。
实施例6:媒体流本地存储模块:用于本地存储介质的管理;还用于将实时媒体流数据写入本地存储或检索、提取已存入的媒体数据;在存储时,媒体流数据被组织成分组索引与分组数据两部分后,分别存;索引部分可用于根据时间,分组标记信息进行检索提取;特别是索引中的云录像标记,可作为云存储同步的数据的检索依据。
网络摄像机的媒体流本地存储模块,是以分组作为存储单元。根据分组统计信息生成分组索引信息;与分组数据分开保存在存储介质上。分组索引信息数据量小,用于快速检索。分组索引信息中,包括有分组数据位置信息,分组标志,分组录像的开始与结束时戳,分组长度,及其它分组统计信息。位置信息在本存储介质中有唯一编号信息。分组标志是由分片的标志进行或操作得到,其中必需含有云录像标记位。
网络摄像机的媒体流本地存储模块,在管理的存储介质在格式化存储介质时,会生成一个随机的格式化编号,保存在存储介质的某个固定位置。此格式化编号用于解决分组索引位置信息的只在一次格式化后有效的问题。
在网络摄像机的媒体流本地存储模块中,每次向存储介质写入一个分组完毕后,会判断此分组是否有云录像标记,如果有,则会将此分组的索引信息通过云存储信令通道发给媒体服务器。媒体服务器如果在收取直播流分组时,出现数据丢失时,可以先记录此分组的索引信息到云存储,随后通过点播方式,重传丢失的分组数据。上传的分组索引信息,应该包括格式化编号信息。以防在以后媒体服务器点播重传时,设备的媒体介质在已经被更换或重新格式化的情况下,获取到错误的数据。
在媒体流本地存储模块中,需要保存分组的浏览缩略图,并生成分片,***在分组数据的开头,或追加到结尾处。并在分组索引信息中记录缩略图的数据位置。
实施例7:媒体流点播模块:用于点播的媒体通道的创建,删除的管理工作;还用于根据点播的条件,从媒体流本地存储模块中检索符合条件的媒体数据,并把媒体数据通过点播媒体通道发给客户端或经由媒体服务器转发;媒体服务器也可以利用点播模块同步云存储上缺失的媒体数据。
媒体流点播模块中,提供了针对云存储同步功能的点播服务。
一种流媒体云存储同步***的针对云存储同步功能的点播方法,其步骤如下:
步骤1:收到点播请求,检查请求参数,发现是云存储同步点播请求,提取格式化编号及分组位置信息等信息,记录在点播请求控制块结构中。判断格式化编号是否与本地存储介质的格式化编号一致。如果不一致,则请求的数据已经失效,则返回错误;如果一致,则转步骤2
步骤2:根据分组的位置信息,取到分组的索引信息。如果获取失败,说明分组数据已经被覆盖,返回失败。如果获取成功,再根据索引信息,一一读取分片数据,并通过云存储点播媒体通道上传;上传时,每个分片头信息都填入分片编号,分组编号及分组位置信息。这些信息将帮助媒体服务器重组分组数据并与缺失的分组进行匹配。分组统计信息和完整的索引信息也会附在此分组的某个分片上一并上传,但建议附在关键帧分片上。通过分组统计信息,方便服务器进行数据完整性校验。如果媒体通道不支持附带信息,则可以通过媒体信令通道上传。
步骤3:读取缩略图分片数据,并通过云存储点播媒体通道上传;上传时不但填入分片编号,分组位置信息,还会打上缩略图标记位,供媒体服务器识别此特殊分片。
步骤4:重复步骤2-3;直到所有请求的分组都上传完毕,关闭点播媒体通道。
实施例8::媒体流云存储管理模块:用于与媒体服务器的连接管理、配置管理;云存储录像标记的生成策略;以及云存储缺失数据索引信息的批量同步功能。
网络摄像机的媒体流云存储管理模块,能够从网络中断的断点位置,补传本地云存储录像分组的所有索引信息。这些索引信息,将帮助媒体服务器进一步完成缺失数据的补传工作。包括一种流媒体云存储同步***的云存储缺失数据同步的方法。
如图4,一种流媒体云存储同步***的云存储缺失数据同步的方法,其步骤如下:
步骤1:周期性的尝试与媒体服务器进行连接。
步骤2:连接成功后,向媒体服务器,发云存储同步请求,并附上当前存储介质的格式化ID参数。此时云存储同步状态进入到索引断点续传阶段。
步骤3:收到媒体服务器的关于云存储的中断位置信息(中断位置信息或者是最后收到分组的时间点,或者是最后分组的在设备端的存储位置信息);然后以中断位置信息为起始条件,向本地存储模块请求获取所有有云录像标记的分组索引信息。此分组索引条目如果数据巨大,可能分批获取。
步骤4:将获取的分组索引列表,压缩打包后,发给媒体服务器,媒体服务器收到报文后,回应一个确认报文。
步骤5:分批依次发送分组索引列表,直到所有分组索引都发送完毕。进入到实时同步阶段。
进入到实时同步阶段后。媒体流直播模块就可以实时上传直播媒体流数据了,本地存储模块也开始不断的将直播媒体流分组的存储索引信息通过信令通道不断上传。
网络摄像机的媒体流云存储管理模块,能够根据用户的设置,切换全天录像上传云存储模式,或者由其它各种事件(如移动侦测事件)触发的一定时长的录像上云模式,这些模式或事件产生时最终控制一个云录像开关变量。然后云录像开关的开或关的值会通过媒体流采集模块设置到媒体分片的标记位上。
实施例9:云存储媒体通道管理模块:用于管理云存储媒体通道,以既定的策略(用户点播云存储录像片段的缺失数据优先;新缺失数据优先)实现云存储媒体通道与媒体服务器的直播通道的数据共享与分流;还用于将云存储相关的媒体流转发给云存储媒体流存储管理模块;
媒体服务器的云存储媒体通道管理模块,当接收到云录像媒体流分片时,它能根据分片附带的分组实时统计信息及分片编号信息,重组媒体流分组,并校验分组的完整性;
实施例10:云存储媒体流存储管理模块:用于云存储媒体流分片的接收整序及分组的完整性校验工作;还用于将媒体流按索引和数据两部分,分别写入云存储服务器;还用于发起云存储缺失数据的同步重传管理工作;
媒体服务器的云存储媒体流存储管理模块,当接收完媒体流分组数据时,如果数据不完整,它能通过分析分组统计信息了解数据的缺失程度,决策是否容忍其不完整性,一般情况下,如果只是丢失少量P帧分片或少量音频数据,可以认为数据基本完整;在确定数据缺失严重的情况下,它会丢弃此分组,并能根据通过信令通道到达的此分组的存储索引信息,标记云存储相应分组为缺失,并将此分组的存储索引信息存入云存储服务器索引区,然后在随后的时间里发起数据同步补传请求。
媒体服务器的云存储媒体流存储管理模块,会将收到的媒体流分组数据进行索引信息与数据信息分开存储到云存储中。索引信息用于快速云存储录像检索。
媒体服务器的云存储媒体流存储管理模块,在云存储连接刚建立阶段,它能接收网络摄像机的云存储索引断点续传请求,并返回断点的时间点或断点的存储索引位置信息。当断点之后的批量索引数据到达时,它能将分组的索引信息标记为数据缺失状态,并保存在云存储服务器的索引区中。
媒体服务器的云存储媒体流存储管理模块,能接收网络摄像机的云存储数据同步请求,然后在云存储中查找缺失数据的索引,并按一定的优先级排序策略向网络摄像机发起云存储点播请求,分批的进行缺失数据的同步。缺失数据的优先级排序策略为:(1)用户点播云存储录像片段的缺失数据优先(2)新缺失数据优先、
实施例11:所述云存储点播模块:用于云存储录像的点播回放;还用于当点播的数据只有索引信息,其对应数据还未同步至云存储时,向所对应的网络摄像机设备发起缺失数据点播请求。
实施例12:
如图5,一种流媒体云存储同步***的网络摄像机批量索引补传的方法:
周期性的尝试与媒体服务器进行连接;
连接成功后,向媒体服务器,发云存储批量索引补传请求,并附上当前存储介质的格式化ID参数,云存储同步状态进入到索引批量补传阶段;
收到媒体服务器的关于云存储的中断位置信息(最后收到分组的时间点,最后分组的在设备端的存储位置信息);以中断位置信息(最后收到分组的时间点,最后分组的在设备端的存储位置信息)为起始条件,向本地存储模块请求获取所有有云录像标记的分组索引信息,若分组索引条目如果数据巨大,则分批获取;
将获取的分组索引列表,压缩打包后,发给媒体服务器,媒体服务器收到报文后,回应一个确认报文;
分批依次发送分组索引列表,直到所有分组索引都发送完毕,进入到实时同步阶段;
媒体流直播模块进行实时上传直播媒体流数据,本地存储模块的将直播媒体流分组的存储索引信息通过信令通道上传。
综上所述,本发明通过对流媒体的分片,分组和标记的预处理,不但使得直播,本地录像存储,云存储的控制相互独立,而且可以共享一份数据源,减少了数据的传输冗余;通过将数据分为索引与数据本身两部分,云存储同步时,先同步索引,后同步数据,保证了客户端云存储访问时,数据检索的快速性和完整性;按需点播方式的云存储数据同步方法,即保证随时可断点续传和最大限度的平滑网络带宽,而且能在客户端播放云存储视频时,作到实时高优先的同步紧急缺失的数据。
以上所述的实施方式,并不构成对该技术方案保护范围的限定。任何在上述实施方式的精神和原则之内所作的修改、等同替换和改进等,均应包含在该技术方案的保护范围之内。
Claims (8)
1.一种流媒体云存储同步的***,其特征在于,其包括网络摄像机、媒体服务器、云存储服务器,所述网络摄像机、媒体服务器、云存储服务器通过IP网络互联;
所述网络摄像机用于产生媒体流数据,并将流媒体数据上传至媒体服务器;
所述媒体服务器用于接收网络摄像机上传的流媒体数据,对要求保存到云存储的媒体流数据进行筛选并转存至云存储服务器;对客户端的播放请求进行处理;
其中,所述网络摄像机包括媒体流采样模块、媒体流本地存储模块、媒体流云存储管理模块、媒体流点播模块和/或媒体流直播模块以及分别与媒体流采样模块、媒体流本地存储模块、媒体流云存储管理模块、媒体流点播模块和/或媒体流直播模块相连的网络摄像机中央控制器;
所述媒体服务器包括云存储媒体通道管理模块、云存储媒体流存储管理模块、云存储点播模块以及分别与云存储媒体通道管理模块、云存储媒体流存储管理模块、云存储点播模块的媒体服务器中央控制器;
所述云存储服务器用于提供云存储中的流媒体数据存取以及检索服务;
所述媒体流采样模块用于:
采集媒体流;
将媒体流进行分片和分组处理,分组是一组分片的集合;
分别在分片上设置特征标记并进行编号;
将分片发送到媒体流直播模块及媒体流本地存储模块;
所述特征标记为云录像标记;所述云录像标记,用于标记此分片是否允许上传云存储。
2.如权利要求1一种流媒体云存储同步的***,其特征在于,所述媒体流直播模块用于接收媒体流采样模块的输入,并根据媒体流直播条件或媒体流云存储管理模块的连接控制要求,按既定的策略将媒体流实时上传到媒体服务器或播放客户端;
所述既定的策略为:
用户点播云存储录像片段的缺失数据优先;或
新缺失数据优先。
3.如权利要求1一种流媒体云存储同步的***,其特征在于,所述媒体流直播模块用于当直播流通过媒体服务器时,云存储的媒体通道可以和直播媒体通道并用一个通道。
4.如权利要求1一种流媒体云存储同步的***,其特征在于,所述媒体流本地存储模块:用于本地存储介质的管理;还用于将实时媒体流数据写入本地存储或检索、提取已存入的媒体数据;在存储时,媒体流数据被组织成分组索引与分组数据两部分后,分别存储;
和/或所述媒体流点播模块:用于点播的媒体通道的创建,删除的管理工作;还用于根据点播的条件,从媒体流本地存储模块中检索符合条件的媒体数据,并把媒体数据通过点播媒体通道发给客户端或经由媒体服务器转发;媒体服务器利用点播模块同步云存储上缺失的媒体数据;
和/或所述媒体流云存储管理模块:用于与媒体服务器的连接管理、配置管理;存储有云存储录像标记的生成策略;以及具有云存储缺失数据索引信息的批量同步功能。
5.如权利要求1一种流媒体云存储同步的***,其特征在于,所述云存储媒体通道管理模块:用于管理云存储媒体通道,以既定的策略实现云存储媒体通道与媒体服务器的直播通道的数据共享与分流;还用于将云存储相关的媒体流转发给云存储媒体流存储管理模块;
所述既定的策略为:
用户点播云存储录像片段的缺失数据优先;或
新缺失数据优先;
和/或所述云存储媒体流存储管理模块:用于云存储媒体流分片的接收整序及分组的完整性校验工作;还用于将媒体流按索引和数据两部分,分别写入云存储服务器;还用于发起云存储缺失数据的同步重传管理工作;
和/或所述云存储点播模块:用于云存储录像的点播回放;还用于当点播的数据只有索引信息,其对应数据还未同步至云存储时,向所对应的网络摄像机设备发起缺失数据点播请求。
6.如权利要求1至5任一项所述的一种流媒体云存储同步***的网络摄像机批量索引补传的方法:
周期性的尝试与媒体服务器进行连接;
连接成功后,向媒体服务器,发云存储批量索引补传请求,并附上当前存储介质的格式化ID参数,云存储同步状态进入到索引批量补传阶段;
收到媒体服务器的关于云存储的中断位置信息和/或最后收到分组的时间点和/或最后分组的在设备端的存储位置信息;以中断位置信息和/或最后收到分组的时间点和/或最后分组的在设备端的存储位置信息为起始条件,向本地存储模块请求获取所有有云录像标记的分组索引信息,将获取的分组索引列表,压缩打包后,发给媒体服务器,媒体服务器收到报文后,回应一个确认报文;
分批依次发送分组索引列表,直到所有分组索引都发送完毕,进入到实时同步阶段;
媒体流直播模块进行实时上传直播媒体流数据,本地存储模块的将直播媒体流分组的存储索引信息通过信令通道上传。
7.如权利要求1至5任一项所述的一种流媒体云存储同步***的针对云存储同步功能的点播方法:
收到点播请求,检查请求参数,发现是云存储同步点播请求,提取格式化编号及分组位置信息信息,记录在点播请求控制块结构中;
判断格式化编号是否与本地存储介质的格式化编号一致,如果不一致,则请求的数据已经失效,则返回错误;如果一致,则根据分组的位置信息,取到分组的索引信息;如果获取失败,说明分组数据已经被覆盖,返回失败,如果获取成功,根据索引信息,读取分片数据,并通过云存储点播媒体通道上传每个分片头信息都填入分片编号,分组编号及分组位置信息,通过分组统计信息,服务器进行数据完整性校验;如果媒体通道不支持附带信息,则通过媒体信令通道上传;
读取缩略图分片数据,并通过云存储点播媒体通道上传;上传时填入分片编号,分组位置信息,打上缩略图标记位,供媒体服务器识别此特殊分片;
直到所有请求的分组都上传完毕,关闭点播媒体通道。
8.如权利要求1至5任一项所述的一种述流媒体云存储同步***的云存储缺失数据同步的方法:
用户发出云存储点播请求,并将点播请求发送给媒体服务器;
媒体服务器在云存储服务器中查找确实数据的索引,按一定优先级排序策略向网络摄像机发起云存储点播请求,进行缺失数据的同步;
所述缺失数据的优先级排序策略为:用户点播云存储录像片段的缺失数据优先;新缺失数据优先;
网络摄像机收到云存储同步点播请求,给媒体服务器返回发送点播播放地址信息;
媒体服务器连接播放地址,建立播放媒体通道,进行点播播放,同时,从播放流中提出每个分组的索引信息并重组分组数据;
匹配确实数据的索引,将数据写入云存储服务器,完成缺失数据的更新同步工作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910733225.0A CN110430480B (zh) | 2019-08-09 | 2019-08-09 | 一种流媒体云存储同步的***和方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910733225.0A CN110430480B (zh) | 2019-08-09 | 2019-08-09 | 一种流媒体云存储同步的***和方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110430480A CN110430480A (zh) | 2019-11-08 |
CN110430480B true CN110430480B (zh) | 2022-02-18 |
Family
ID=68413504
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910733225.0A Active CN110430480B (zh) | 2019-08-09 | 2019-08-09 | 一种流媒体云存储同步的***和方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110430480B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111432151B (zh) * | 2020-01-20 | 2022-08-23 | 杭州海康威视数字技术股份有限公司 | 视频数据存储方法、装置、设备及存储介质 |
CN111629283B (zh) * | 2020-05-14 | 2023-04-07 | 武汉群宇科技有限公司 | 一种多流媒体网关服务***及方法 |
CN112118085B (zh) * | 2020-09-01 | 2023-03-03 | 中国电子科技集团公司第二十八研究所 | 一种短波信道下的可靠传输装置和方法 |
CN114157678A (zh) * | 2020-09-08 | 2022-03-08 | ***通信有限公司研究院 | 一种数据传输方法、终端设备及数据存储*** |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101754001A (zh) * | 2008-11-29 | 2010-06-23 | 华为技术有限公司 | 视频数据优先级确定方法、装置和*** |
CN103136242A (zh) * | 2011-11-28 | 2013-06-05 | 上海可鲁***软件有限公司 | 一种多源数据索引存储、读取方法及装置 |
CN105808589A (zh) * | 2014-12-31 | 2016-07-27 | 中国电信股份有限公司 | 文件处理的方法和装置 |
CN106060173A (zh) * | 2016-07-22 | 2016-10-26 | 恒业智能信息技术(深圳)有限公司 | 基于云存储的集群式摄像数据存储*** |
CN107404525A (zh) * | 2017-07-24 | 2017-11-28 | 郑州云海信息技术有限公司 | 视频数据存取方法、平台及*** |
CN107566321A (zh) * | 2016-06-30 | 2018-01-09 | 南京中兴新软件有限责任公司 | 文件的发送方法、装置及*** |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7962640B2 (en) * | 2007-06-29 | 2011-06-14 | The Chinese University Of Hong Kong | Systems and methods for universal real-time media transcoding |
US8896715B2 (en) * | 2010-02-11 | 2014-11-25 | Microsoft Corporation | Generic platform video image stabilization |
US8503539B2 (en) * | 2010-02-26 | 2013-08-06 | Bao Tran | High definition personal computer (PC) cam |
CN104469395B (zh) * | 2014-12-12 | 2017-11-07 | 华为技术有限公司 | 图像传输方法和装置 |
US9993729B2 (en) * | 2015-08-19 | 2018-06-12 | Sony Interactive Entertainment America Llc | User save data management in cloud gaming |
CN106301708A (zh) * | 2016-07-28 | 2017-01-04 | 乐视控股(北京)有限公司 | 一种信息发送失败时的处理方法及装置 |
-
2019
- 2019-08-09 CN CN201910733225.0A patent/CN110430480B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101754001A (zh) * | 2008-11-29 | 2010-06-23 | 华为技术有限公司 | 视频数据优先级确定方法、装置和*** |
CN103136242A (zh) * | 2011-11-28 | 2013-06-05 | 上海可鲁***软件有限公司 | 一种多源数据索引存储、读取方法及装置 |
CN105808589A (zh) * | 2014-12-31 | 2016-07-27 | 中国电信股份有限公司 | 文件处理的方法和装置 |
CN107566321A (zh) * | 2016-06-30 | 2018-01-09 | 南京中兴新软件有限责任公司 | 文件的发送方法、装置及*** |
CN106060173A (zh) * | 2016-07-22 | 2016-10-26 | 恒业智能信息技术(深圳)有限公司 | 基于云存储的集群式摄像数据存储*** |
CN107404525A (zh) * | 2017-07-24 | 2017-11-28 | 郑州云海信息技术有限公司 | 视频数据存取方法、平台及*** |
Also Published As
Publication number | Publication date |
---|---|
CN110430480A (zh) | 2019-11-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110430480B (zh) | 一种流媒体云存储同步的***和方法 | |
JP3793941B2 (ja) | 映像配送システムにおけるビデオサーバ装置およびその映像配送方法。 | |
CN110489484B (zh) | 数据同步方法、装置、可读存储介质及电子设备 | |
CN110519635B (zh) | 一种无线集群***的音视频媒体流合流方法及*** | |
RU2527210C1 (ru) | Способ и система для передачи данных от веб-сервера клиентским терминальным устройствам посредством локальной беспроводной коммуникационной сети | |
CN110545405B (zh) | 一种基于视联网的视频传输方法及*** | |
CN102550020A (zh) | 使用用于识别已丢失数据分组的校验和的重传的方法 | |
CN109634988B (zh) | 一种监控轮询方法和装置 | |
CN110300120A (zh) | 一种物理隔离条件下反向数据的分级同步方法和*** | |
CN111629283B (zh) | 一种多流媒体网关服务***及方法 | |
CN109756789B (zh) | 一种音视频数据包的丢包处理方法和*** | |
CN110381030B (zh) | 一种同步请求的处理方法及装置 | |
KR102035912B1 (ko) | Ip 네트워크를 이용하여 스트림 패킷 전송 시 패킷 손실 검출 및 복구 방법 및 장치 | |
WO2014075453A1 (zh) | 一种实时流媒体上传中的丢帧控制与续传方法及*** | |
CN111447392B (zh) | 数据传输方法、装置、服务器及计算机可读存储介质 | |
CN110381128B (zh) | 一种适用于流媒体文件的上传方法和云存储模型 | |
CN1937544A (zh) | Ip***听*** | |
CN109842821A (zh) | 一种视频数据传输的方法和装置 | |
CN109802992B (zh) | 一种资源变化日志读写的方法和装置 | |
CN112601052A (zh) | 一种应用于内部共享平台的视频资源整合*** | |
CN110012063B (zh) | 一种数据包的处理方法和*** | |
CN109587524B (zh) | 一种向互联网终端同步视联网资源的方法和装置 | |
CN109802990B (zh) | 一种减少数据冗余的资源日志读写方法和装置 | |
CN102438182A (zh) | 一种视频流分析方法及装置 | |
EP2106640B1 (en) | Method for packet-switching transmission of media data and device for processing media data |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |