CN107851112A - 用于从摄像机安全传输信号的系统和方法 - Google Patents

用于从摄像机安全传输信号的系统和方法 Download PDF

Info

Publication number
CN107851112A
CN107851112A CN201680040054.8A CN201680040054A CN107851112A CN 107851112 A CN107851112 A CN 107851112A CN 201680040054 A CN201680040054 A CN 201680040054A CN 107851112 A CN107851112 A CN 107851112A
Authority
CN
China
Prior art keywords
file
network node
video
discrete segments
fragment
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.)
Pending
Application number
CN201680040054.8A
Other languages
English (en)
Inventor
M·B·威尔辛斯凯
D·扬诺夫斯基
T·纳默拉德泽
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Cloud Poly Co
Original Assignee
Cloud Poly Co
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Cloud Poly Co filed Critical Cloud Poly Co
Publication of CN107851112A publication Critical patent/CN107851112A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/70Information retrieval; Database structures therefor; File system structures therefor of video data
    • G06F16/71Indexing; Data structures therefor; Storage structures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/235Processing of additional data, e.g. scrambling of additional data or processing content descriptors
    • H04N21/2353Processing of additional data, e.g. scrambling of additional data or processing content descriptors specifically adapted to content descriptors, e.g. coding, compressing or processing of metadata
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/182Distributed file systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/70Information retrieval; Database structures therefor; File system structures therefor of video data
    • G06F16/78Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/7867Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using information manually generated, e.g. tags, keywords, comments, title and artist information, manually generated time, location and usage information, user ratings
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6209Protecting access to data via a platform, e.g. using keys or access control rules to a single file or object, e.g. in a secure envelope, encrypted and accessed using a key, or with access control rules appended to the object itself
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • H04N21/234318Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements by decomposing into objects, e.g. MPEG-4 objects
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • H04N21/23608Remultiplexing multiplex streams, e.g. involving modifying time stamps or remapping the packet identifiers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/18Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/18Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast
    • H04N7/181Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast for receiving images from a plurality of remote sources
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2107File encryption
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/37Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
    • H03M13/3761Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35 using code combining, i.e. using combining of codeword portions which may have been transmitted separately, e.g. Digital Fountain codes, Raptor codes or Luby Transform [LT] codes

Abstract

根据本文的发明,一种用于从摄像机安全传输信号的方法包括以下步骤:将来自摄像机内部的处理单元的输出视频信号分离成离散片段;以及将这些离散片段在多个传输流中分散到多个存储节点,其中没有传输流具有用于重构媒体文件的足够数据。在优选实施例中,多个存储节点位于不同的地理位置。优选地,存在离散片段的纠错编码。

Description

用于从摄像机安全传输信号的系统和方法
技术领域
本公开的主题总体上涉及IP摄像机,并且更具体地,涉及用于视频信号的安全数据存储和传输的IP摄像机系统。
背景技术
IP(互联网协议)安全摄像机通常用于连续播放通过网络使用摄像机拍摄的视频文件。与模拟数字录像机(DVR)一起使用的模拟摄像机也可以配置为也通过网络传送相同的结果并广播视频文件。
存在与IP摄像机相关联的各种优点和缺点。类似地,与IP摄像机相比,基于模拟的摄像机系统也具有优点和缺点。无论摄像机的形状、风格或尺寸如何,内部结构都是一样的,但使用的组件略有不同。这里进一步描述不同类型的摄像机的内部工作的变化。
如本领域技术人员将会理解的,模拟安全摄像机105通常由四个主要组件组成;如图1所示,安装在其支架115上的透镜110、图像传感器120和DSP(数字信号处理器)125。最常见的图像传感器类型是CMOS(互补金属氧化物半导体)和CCD(电荷耦合器件)。CCD传感器具有均匀的输出,并且因此一般具有较低噪声的较好的图像质量。另一方面,使用CMOS传感器,均匀性要低得多,导致较低的图像质量,并且图像倾向于较高的噪声。CCD传感器对光线更敏感并且CMOS传感器需要更多光线以产生低噪声图像。本领域技术人员将理解CCD和CMOS摄像机的架构。
IP摄像机技术一般使用CCD或CMOS传感器。CMOS传感器往往比CCD便宜一点,这就是为什么市场上大多数IP摄像机目前是CMOS。IP摄像机制造商正在使用与手机制造商使用的相同的CMOS图像传感器。由于手机行业对CMOS图像传感器的高度使用,CMOS的成本已经变得不昂贵。
DSP(数字信号处理器)是大多数摄像机的“大脑”。其接收来自图像传感器的原始模拟图像数据并将其转换为数字信号。DSP允许摄像机的高级功能,如数字降噪和宽动态范围。如果摄像机包括DSP,并配置为通过模拟传输介质发送信号,则因此将图像转换回模拟信号以传输,例如通过同轴电缆传输。例如,图1示出了包括BNC模拟视频输出连接125的模拟摄像机。该过程的缺点是图像质量恶化。每次数据被编码或解码时,一些数据位将丢失,导致图像清晰度降低。在实际应用中,DSP不是必须从摄像头获取视频输出,相反,有时候只是用于在夜间、彩色和其它普通行业要求方面提高视频图像质量。
摄像机内部的组件越多,摄像机变得越昂贵。市场上有很多模拟摄像机价格低廉。这些摄像机经常使用没有任何DSP的CMOS图像传感器。
进一步,IP安全摄像机背后的技术可以不同于传统的计算机网络摄像头,这些网络摄像头也经常用于捕获视频以通过IP网络传输。计算机网络摄像头通常只包含图像传感器,其捕获原始视频文件并通过USB电缆传输数据。进一步,网络摄像头通常需要在计算机(并且不是摄像机)上运行的软件应用,该软件应用利用计算机处理器将模拟视频信号编码为数字格式。另一方面,IP摄像机通常具有其自己的CPU(中央处理单元)和实现数字编码、解码、处理算法等所需的组件。
图2是示出IP摄像机200的示例性配置的高级图。摄像机的模拟组件205被虚线包围,并且提供其余组件以便于IP摄像机的IP连接以及通过IP网络连接240捕获的图像的传输。IP安全摄像机通常连接到网络服务器。换句话说,其具有独立于计算机的流化视频的容量。这就是为什么类似于计算机,存储器组件(例如,存储器/存储装置225和闪存230)和CPU220存在于IP摄像机内以处理视频压缩、主机网络服务器固件、去隔行预处理、噪声过滤等,如本领域技术人员所理解的那样。
通常,IP摄像机不能直接连接到数字录像机进行监视录像;相反,其通过路由器连接在局域网或广域网上。例如,图3示出了包括由网络315连接的多个IP摄像机300的本地网络的常规配置,该网络315还包括连接到其上的路由器310。如图3所示,计算机或独立的NVR(网络录像机)315也连接在相同的网络315上,并且可以配置为通过网络拾取视频流传输,并使用该数字流将其数字地记录在硬盘(未显示)上。
返回到图2,视频音频编解码器210拍摄由摄像机捕获的视频数据文件,并使用特定类型的压缩算法对其进行数字压缩。某些IP摄像机具有多种流传输的功能,其中视频编解码器同时将每个数据文件输入压缩为多个视频文件,例如H.264、MPEG4或MJPEG。
相比之下,在模拟摄像机(例如,图1的模拟摄像机100)中,DSP通常可以将模拟信号编码为数字信号而不压缩视频文件。最终,在图2的示例性IP摄像机配置中,数字视频通过网络流传输,在计算机上处理,并数字地存储。基本上,视频保持数字化,并且没有不必要的转换,产生卓越的图像质量。
IP摄像机是包含许多有益特征的智能设备。它们压缩视频图像,以尽量减少网络上的视频流传输。IP摄像机使用帧速率控制技术,该技术以特定帧速率发送图像,以便仅发送必要的帧,而模拟摄像机通过模拟电缆对视频数据进行流传输。使用IP摄像机的不利之处在于网络带宽可能限制摄像机的数量,该摄像机可以在网络上而不会使其过载。
IP安全摄像机存在的原因是因为模拟技术世界在缩小。尽管在安全监控行业中模拟摄像机仍然卖得更好,但IP摄像机的受欢迎程度在提高。迄今为止,IP安全摄像机的价格与模拟摄像机的相比使得模拟摄像机领先。随着IP高清摄像机价格在过去2年内急剧下降,这种趋势已经开始转变。IP安全摄像机优于模拟摄像机;它们提供更好的视频质量,可以利用现有的LAN区域网络,并且具有远高于模拟摄像机的容量。
不管是使用模拟安全摄像机还是IP摄像机,由摄像机通过数字通信网络捕获的流传输图像数据(例如,以使用IP协议的数字化格式)具有许多缺点。尤其是,即使在加密的情况下,传输数据的IP网络连接也容易出现安全漏洞。这可能是一点弱点。另外,更高分辨率的视频传输需要更高的带宽,并且网络中的典型实现通常具有较差的带宽利用。视频数据存储在远程存储系统(例如基于云的存储)时,这些限制尤其明显。
云存储解决方案也非常容易受到企业客户端与其云存储系统之间互联网通信中断造成的“中断”的威胁。如果服务器位置受到影响,基于将视频文件存储在一个服务器位置的云存储解决方案也会使灾难恢复成为潜在的隐患。如果复制和备份也在相同的物理服务器位置中处理,故障和灾难恢复的问题可能会给企业带来巨大的数据丢失的真正危险。
目前的技术云存储解决方案通常需要复制和备份的存储开销,以确保存储的数据的安全性。大量需要的数据冗余增加成本的巨大开销,以维持云中的存储容量。对这种冗余的需求不仅增加了成本,而且也给数据安全带来了新的问题。另外,所有这些冗余还会随着云服务器在所有服务器数据交易中不断使用复制而带来性能下降。
随着因特网连接在其处理高吞吐量数据的能力上已经得到改善,更多的安全视频被远程存储,并且视频流传输已经成为提供对远程存储的视频内容的访问的非常流行的方式。云存储在许多视频存储和视频访问方案中扮演着重要的角色。通常,媒体内容驻留在公司的网络服务器上。当用户请求时,媒体内容通过互联网在由客户端及时接收以显示视频文件的下一段的连续数据段的稳定流中流传输,导致为用户似乎无缝回放音频或视频。
当前的视频流传输技术将整个媒体文件的完整副本存储在客户端连接到的网络或媒体服务器上以接收数据流。传输过程中的数据丢失很容易中断传输过程,并停止在客户端计算机上的视频输出。为了避免这样的问题,现有领域技术通常会将相同的视频文件放置在全球多个服务器节点和多个数据中心上(无论是公用的还是私用的),因此用户可以连接到它们附近的服务器节点。虽然这对确保面对连接问题导致的数据包丢失所需的稳定数据传输速率是必要的,但在全球许多服务器上部署相同文件的多个副本给视频托管提供商带来了重大负担。
本公开的主题涉及减轻和/或克服上述问题中的一个或多个,并促进更快和更安全的视频数据存储和传输方法,并且更具体地,涉及提供使用配置成将视频文件存储在远程存储位置的IP摄像机的更安全的数据存储和传输方法。
发明内容
通常,本说明书中描述的主题的一个创新方面可以体现在一种用于安全传输来自IP摄像机的信号的方法。该方法包括使用摄像机的一个或多个处理器将从摄像机内部的处理单元接收的输出视频信号分离成离散片段的步骤。该方法还包括使用摄像机的一个或多个处理器和通信网络接口将所述离散片段使用多个传输流分散在多个分布式存储网络节点之间的步骤。另外,传输流在通信网络上传输。另外,没有传输流具有用于重建所述输出视频信号的足够数据。
本说明书中描述的主题的另一个创新方面可以体现在一种配置成通过IP通信网络安全地传输信号的IP摄像机。该摄像机包括成像组件,该成像组件包括透镜、配置为捕获视频影像的图像传感器以及配置为从捕获的影像生成输出视频信号的一个或多个信号处理单元。该摄像机还包括具有存储在其中的机器可读指令形式的客户端应用的非暂时性存储器。另外,该摄像机包括配置为将IP摄像机连接到通信网络的网络接口。另外,摄像机包括耦合到成像组件和网络接口的一个或多个处理器。一个或多个处理器执行客户端软件应用,并配置为从成像组件接收输出视频信号,并将输出视频信号分离为离散片段。一个或多个处理器还配置为使用网络接口在多个分布式存储网络节点之间使用多个传输流分散所述离散片段。特别地,传输流在通信网络上传输,并且其中没有传输流具有用于重建所述输出视频信号的足够数据。
在本说明书中描述的主题的一个或多个实施例的细节在附图和下面的描述中阐述。主题的其它特征、方面和优点将从描述、附图和权利要求变得显而易见。
附图说明
图1是示例性模拟安全摄像机的示意图;
图2是示出IP摄像机200的示例性配置的高级图;
图3是包括多个IP安全摄像机的示例性安全摄像机系统;
图4A是示出根据示例性实施例的示例性IP摄像机系统的高级图;
图4B是示出根据示例性实施例的图4A的示例性IP摄像机系统的高级图;
图5是示出根据示例性实施例的使用IP摄像机来安全传输和存储视频信号的过程的流程图;
图6A是根据示例性实施例的示例性IP摄像机和存储系统的层的示意图。
图6B是示出根据示例性实施例的视频文件处理的各个阶段的图;
图7A是根据示例性实施例的文件处理的第一部分的图;
图7B是根据示例性实施例的文件切片的纠删编码以产生用于分散的切片碎片的图;
图7C是示出根据示例性实施例的文件上传至数据存储节点的过程的详细图;
图8是概述根据示例性实施例在文件处理期间进行的各个步骤的图表;
图9是示出根据示例性实施例的使用多个通信信道连接到存储网络的示例性IP摄像机的高级图;
图10是示出通过通信网络连接到存储网络的传统IP摄像机系统的高级图;
图11是示出根据示例性实施例的连接到存储网络的示例性IP摄像机的高级图;
图12是示出根据示例性实施例的在上传和下载过程中存储网络节点和IP摄像机视频文件的离散片段的动态传送的高级图;和
图13是根据示例性实施例在从数据存储到客户端的数据的下载过程期间进行的各个详细步骤的图表。
具体实施方式
本文公开了网络连接的安全摄像机系统(被称为IP摄像机系统)以及用于处理来自摄像机系统的视频信号的安全传输和存储的相关方法。具体而言,公开的IP摄像机实现了包括以下步骤的方法:将每个视频数据文件分解成离散片段,然后将其存储在多个分散的网络存储节点上。根据一个方面,使用对象存储技术将由IP摄像机捕获的视频信号拆分为文件切片碎片。公开的IP摄像机系统也将离散片段分散在多个传输流中,并将离散片段发送到多个存储节点。在优选实施例中,多个存储节点是分布的,例如,它们位于不同的地理位置。
在一些实施方式中,在分散到一系列云服务器之前,对产生的文件切片碎片加密,并且使用纠删编码对其进行优化以进行纠错。而且,在一些实施方式中,可以优化IP摄像机传输视频文件所使用的带宽。该分散方法创建了“虚拟硬盘”设备,其中视频文件不是存储在单个的物理设备中,而是分布在云中的一系列物理设备中,其中每个物理设备只包含文件的加密“碎片”。这些特征还使得可以使在系统中使用的摄像机的数量最大化,而不会使可用的网络连接(例如,IP网络和相关联的通信网络)过载。因此,更有效地利用带宽。进一步,也可以优化传输流。另外,在一些优选实施例中,可以同时使用多个传输线或者在发生故障的情况下提供冗余。而且,在一些实施方式中,可以选择用于在云中的数据存储的服务器以针对数据吞吐量的速度以及数据安全性和可靠性进行优化。
为了检索,加密和分散的文件切片碎片可以由客户端计算设备检索并重建到原始文件中。为了移动、删除、读取或编辑视频文件而访问文件是通过实时快速重组文件碎片来完成的。该途径在数据传输和访问的速度、数据安全性和数据可用性方面提供了许多改进。其还可以利用现有的硬件和软件架构,并在存储技术领域提供大幅的成本降低。
虽然数据的分散存储,特别是在云服务器上的摄像机视频数据的编码和存储是一个特别有用的应用,但是相同的技术适用于其中视频数据可以存储在多个存储设备上的配置,该多个存储设备可由任何可能的通信技术(例如LAN或WAN)连接。当使用信息技术(IT)数据中心的设备来实时,公开的技术的速度和安全性益处可以保留,其中最终存储设备是多个物理硬盘或多个虚拟硬盘。多个存储设备也可以分散在网络空间中的多个个人用户间,文件存储在网络中可用的多个物理或虚拟硬盘上。在每种情况下,数据传输的速度和存储在系统中的数据的安全性都大大提高。
公开的主题的用途包括在没有服务器端处理的情况下上传和访问文件的主存储需求。根据公开的实施例,其包括存储由IP摄像机捕获的视频内容,使得视频数据可以有效通过因特网访问。
图4A是示出根据一个或多个公开的实施例的用于视频信号的安全传输和存储的示例性网络/IP摄像机400(例如,IP摄像机)的基本结构的高级图。应该认识到术语IP摄像机是指配置为连接到数据网络(例如LAN或其它IP网络)以便通过网络传输视频数据的各种类型的摄像机系统。如图4A所示,示例性IP摄像机400可以包括配置为捕获模拟视频影像的由虚线包围的模拟摄像机组件405。提供摄像机400的其余组件以将捕获的视频图像处理成视频数据文件,并且还促进摄像机的IP连接,从而如本文进一步描述的通过IP网络连接实现视频数据文件的传输。如图4A所示,摄像机可以包括存储器组件(例如,非暂时性计算机可读存储器/存储装置425和闪存430)和CPU 420。如本领域技术人员将理解的,CPU可以包括一个或多个处理器,其配置为通过执行一个或多个软件模块形式的指令来执行各种操作。这些操作可以包括视频压缩、去隔行预处理、噪声过滤、托管网络服务器固件等。根据公开的实施例,CPU还可以执行配置CPU来处理、编码和传输由摄像机通过一个或多个通信网络(未示出)捕获的视频文件以存储在分布式存储节点网络(SNN)450中的客户端应用,如本文进一步描述的。通信网络的示例包括局域网(“LAN”)和广域网(“WAN”),网间(例如因特网)和对等网络(例如,自组对等网络)。
SNN450可以包括可以由商业云资源提供者操作的各种云存储中心。SNN中的存储节点的数量和标识可以由CPU任选地选择,以通过从IP摄像机的位置选择具有最佳平均延迟和可用性的存储节点来优化存储配置的延迟和安全性。
摄像机400的示例性特征和功能在本文中继续参考图4A中描绘的各种系统组件进一步描述。图5示出了根据一个或多个公开的实施例的使用IP摄像机来安全传输和存储视频信号的示例过程。
该过程从步骤505开始,其中,摄像机捕获图像流,并且将流(即,视频)处理成一个或多个视频数据文件,其在本文也称为视频信号。如上所述,视频处理可以包括由视频/音频编解码器410和CPU420以及其它这样的硬件和/或软件模块处理图像以进行压缩、编码并且以其它方式将影像转换为一个或多个数字化的视频文件。每个视频数据文件可以表示由摄像机捕获的流传输视频信号段,并且可以至少临时地(例如,作为视频文件)本地存储在存储器425中。每个单独的视频文件的大小可以根据与每个视频段的规定的时间长度和每个视频段的规定的文件大小中的一个或多个相关的实现方式和规定的设置而变化。这样的设置可以是用户定义的,例如,在初始IP摄像机设置/配置步骤期间,由用户使用用户界面进行。另外或者可替代地,这些和其它设置可以设置为默认设置,或者可以由IP摄像机CPU基于系统的操作和系统或网络约束(例如,带宽、本地和网络存储可用性等)动态地调整。因此,在一些实施方式中,如本文进一步描述的,小视频文件(例如,具有有限时间持续时间或文件大小的文件)可以被近似实时地顺序地捕获、处理并传输到分布式存储器中。结果,也可以向用户提供从分布式存储网络接近实时地访问视频文件。还可以理解的是,附加地或替代地,可以以类似的方式逐渐地捕获、处理更大或更长的视频段并存储到分布式存储系统。
然后在步骤510,将一个或多个视频文件分离成离散片段。离散片段在本文中也称为“文件切片碎片”,或者更一般地称为“碎片”。应该理解,视频信号可以包括来自摄像机内的一个或多个信号处理组件的多个信号。因此,每个单独的信号可以分成离散片段。另外或者可替换地,多个视频信号可以组合并分割成片段。将信号分割成离散片段可以进一步包括数字化视频信号。
根据一个或多个示例性实施例,通过执行客户端应用配置的CPU 420采用视频信号并使用对象存储技术在一个或多个阶段将其拆分为文件切片碎片。通常,基于对象的存储是一种将数据作为对象来管理的存储架构。每个对象通常包含数据本身、可变数量的元数据以及全局唯一标识符。
更具体地说,关于图6A来进一步描述在步骤510由配置的CPU执行的示例性功能。图6A是示出在系统的IP摄像机400侧操作的逻辑组件或模块的示例性配置的框图,IP摄像机400与整个系统的SNN 450侧通信。如所示出的,IP摄像机的逻辑组件可以包括例如客户端应用605、客户端侧处理器(CSP)610和前端数据处理器(FEDP)620。描述为由CSP和FEDP执行的操作可以使用CPU来实现,CPU通过执行客户端应用605来执行CSP和FEDP操作而配置,如本文进一步描述的。
作为第一步,CSP可以将视频文件分割成多个切片,每个切片具有给定的大小。切片的数量和大小可以基于客户端应用可以定义的规定的参数以及根据特定的实现方式来改变。切片的数量和大小可以通过由客户端应用定义的参数来改变。每个切片可以用客户端密钥加密,并分配唯一的标识符。CSP还可以生成元数据文件,其映射切片以允许其重组为原始完整的视频文件。该元数据文件可以存储在客户端的数据中心,并且也可以加密并复制到SNN的一个或多个节点中。在一个示例性实施例中,CSP然后可以将切片的文件发送到下一层、前端数据处理器(FEDP),以进行进一步处理。
在示例性实施例中,CPU的FEDP模块还可以对切片执行进一步的处理。例如,FEDP可以采用由CSP提供的切片文件并进一步处理每个切片。该处理可以进一步包括将每个切片分割成一系列文件切片碎片。此外,还可以使用“纠删编码”来优化文件切片碎片以纠错。执行纠删编码以提供纠错,例如,在传输过程中丢失一些数据的情况下。如将在本文进一步描述的,纠删编码将增加每个文件切片碎片的大小以提供纠错。FEDP还可以使用其自己的加密密钥来加密文件切片碎片。
优选地,FEDP可以创建元数据文件或添加到现有的元数据文件。优选地生成为元数据文件以将所有文件切片碎片映射回其原始切片。另外,可以生成元数据文件以包括使用哪个存储节点网络(SNN)服务器来存储哪些文件切片碎片的记录。碎片和切片映射信息可以存储在客户端的数据中心或其它客户端计算设备上,并且也可以加密并复制到SNN中。例如,映射信息可以分发给监视或以其它方式访问来自IP摄像机的视频馈送的安全办公室和其它位置。在一些实施方式中,这种加密和优化以及纠错优选地在分散到一系列存储节点之前发生,如本文进一步描述的。尽管用于将视频信号分离成离散片段的步骤已经被描述为由CPU的FEDP和CSP组件实现的两阶段处理,但是可以理解的是,这些步骤可以以任意数量的阶段来执行,并且可以通过一个或多个计算组件来执行。
在一些实施方式中,由IP摄像机在步骤510实现的分离和映射过程还可以包括用于选择分布式存储节点的步骤。更具体地,配置的CPU 420可以确定SNN 450中的哪些节点将用来存储一个或多个文件切片碎片。在一些实施方式中,可以选择用于数据存储的节点以针对数据吞吐量的速度以及数据安全性和可靠性进行优化。此外,在一些实施方式中,节点可以由CPU在操作期间动态地选择,作为在设置期间定义的规定的参数的函数,或者前述的组合。
图6B进一步示出了根据示例性实施例的上述在将文件上传到SNN期间的文件处理的各个阶段。图7A和7B分别示出了在文件从客户端侧设备(例如IP摄像机)到SNN的上传过程期间的两个基本处理阶段。具体而言,附图示出了在CSP将文件处理成文件切片,并且在FEDP处理文件切片以创建用于分散到SNN的文件切片碎片。图7C是以逐步方式的上传过程的另一个图示,示出了一些中间步骤。另外,图8是进一步描述根据示例性实施例的可以包括在由IP摄像机执行的文件上传过程中的详细步骤的图表。
如上所述,可以由IP摄像机的CPU执行将视频文件分成文件切片碎片和纠删编码的步骤。此外或可替换地,某些用于将文件切片分成更小碎片的步骤和/或用于纠删编码的步骤可以由一个或多个文件服务器的中间层来实现,该文件服务器配置为例如但不限于对文件切片进行纠删编码。
返回图5,在步骤515,IP摄像机400将文件切片碎片的分组发送到其指定的SNN服务器。另外,还可以将已经创建的一个或多个元数据文件的副本或其一部分传输到用于访问视频文件的每个SNN服务器和/或其它客户端计算系统。这有效地在可以在云上的存储服务器中创建虚拟的“数据设备”。
更具体地,摄像机可以配置为将多个传输流中的离散片段传输到多个分布式存储节点。例如,已经分解成离散片段的视频文件可以同时以多个流传输到全球的多个存储节点。如下面解释的,多个数据流使利用最大化并确保安全性。
如图4A和图4B所示,CPU 420可以配置成使用网络接口435将多个数据流440发送到SNN 450中的多个目的地节点。在一些实施方式中,每个传输流被引导到SNN中的相应的节点。
例如,图9是示出将IP摄像机与分布在世界各地的SSN的各个节点通信连接的多个通信流的高级图。可以理解的是,可以在一个或多个相应的通信网络(例如互联网)上建立这样的信道。
在一些实施方式中,一个或多个离散片段可以在单个流中传输。类似地,多个离散片段可以分布在多个流中。而且,可以同时或根据其它传输顺序传输多个流。
因此,可以进一步理解,IP摄像机可以使用各种不同的可能的通信协议通过通信信道和网络与SSN进行通信,该通信协议包括但不限于因特网通信协议(例如,传输控制协议(TCP)、用户数据报协议(UDP)、因特网控制消息协议(ICMP)、超文本传输协议(HTTP/HTTPS)、文件传输协议(FTP)等)和其它高级计算机通信协议。
进一步,在优选的实施方式中,为了增强安全性,生成并分散离散片段,使得没有传输流包括用于重建原始媒体文件的足够数据。
如上所述,关于视频文件作为离散片段并使用多个数据流的传输,多个数据流使得公开的系统尤其能够使利用最大化。图10描述了一个传统的系统。如所示,来自IP摄像机的传出通信线路定义了当从IP摄像机及其驻留的网络传输文件时可用的最大带宽。另外,使用存储网络节点建立的数据传输流定义了每秒可以移动的数据量。在大多数情况下,从本地IP网络到特定存储网络节点的单个数据连接的最大带宽显著低于IP摄像机可用的整个通信线路的带宽。结果,在将视频传输到单个节点时,只能使用可用带宽的一小部分。目前的IP摄像机技术不能很好地提高视频传输速度。
如图11所示,根据公开的实施例配置的IP摄像机和存储系统实现了数据的高速动态传送。更具体地,存储分布在N个节点上,其中可以包括公用和私用云位置。通过并行传输流将数据传输到多个存储网络节点来实现增加的上传(以及访问存储的数据时的下载速度)。并行流最大化带宽利用。更具体地,通过建立将IP摄像机连接到多个存储网络节点的多个传输流,IP摄像机可以利用的整体带宽不受任何单独的传输流的带宽的限制(例如,如图10中所示,其描绘了用于将视频文件传输到存储器的单个流)。IP摄像机可以配置为定义单个传输流的数量,并且还选择接收方存储网络节点,以利用通信通道内可用的带宽。因此,带宽被更有效地利用。作为实际的好处,改善的带宽利用使得可以最大化在系统中使用的摄像机的数量而不会使IP网络过载。更具体地,因为根据公开的实施例配置的IP摄像机更有效地将视频数据分散到远程存储器,所以更多的IP摄像机可以存在于单个网络上并且有效地上传相应的视频文件而不超过IP网络连接的可用带宽。可以理解的是,可以在给定IP网络上实现的IP摄像机的实际数量将根据捕获的视频数据的参数(即,文件大小)以及IP网络的带宽限制而变化。
也如上所述,通过利用具有多个分布式节点的多个数据流,公开的实施例促进更安全和容错的系统。图12是示出存储网络节点以及在上传(图12的左侧)和下载过程(图12的右侧)期间的IP摄像机视频文件的离散片段的动态传送的高级图。如图12所示,在下载过程中某些节点的故障(在图10中用“X”标识)不会影响从其余节点传输的离散片段。此外,纠错的使用允许多节点故障而不丢失关键数据。由于加密的片段/碎片,进一步保证了传输的安全性。相应地,可以理解的是,通过使用多个数据流,公开的实施例可以最大化利用并确保安全性和冗余。
系统中使用的多个上传和下载节点将加速上传和下载。吞吐速度的进一步增加可以通过优化IP摄像机400和SNN的节点之间的延迟,换句话说,选择具有可用的最佳当前延迟的SNN。如果一个特定的服务器路径遭受高延迟,那么使用多个节点也降低所看到的整体性能。
在一些实施方式中,可以动态地管理离散的数据片段以便实时优化递送路线。具体地说,如图12所示,通过执行客户端应用配置的CPU 220可以配置为通过将离散片段排列成队列1210来分配由一个或多个SNN节点存储的离散数据片段。每个数据队列可以被指定用于通过网络接口235传输到相应的存储网络节点。如上所述,CPU可以根据各种操作参数和规定的设置动态地选择存储网络节点以存储离散片段。类似地,CPU也可以配置为动态分配和重新分配离散片段以存储在一个或多个存储网络节点中。更具体地,将离散片段分配给特定队列(即,分配给特定节点)可以基于以下各项中的一个或多个:特定存储网络节点的延迟量度、已经由特点节点存储的或在特定队列中等待传输的文件切片碎片的量、特定节点的地理位置、特定节点的可用性以及存储离散片段所需的规定冗余度。另外,基于当前的节点吞吐量条件,也可以优化将数据分散到数据存储节点。例如,可以选择具有最佳连接性的节点来存储更大量的数据,从而在分散过程期间优化可用于数据传输的最大速度的存储节点。可以通知数据分散过程的附加参数还可以包括通信信道的可用带宽、各个节点的单独通信流的吞吐量、其它通信信道的可用性以及队列中的任何反向日志。可以理解的是,基于通常恒定的参数(例如,SNN位置、位置偏好、冗余设置、历史吞吐量/延迟量度等)或者在操作期间变化的参数(例如,当前节点可用性、延迟、吞吐量等),可以由CPU执行数据分散(例如,排队和路由)的管理。这些参数可以由CPU在运行期间定期和/或近实时地测量。因此,CPU可以配置为根据前述参数的动态测量和针对特定应用的规定目标/设置动态地调整数据的分布。
在一些实施方式中,如果特定的视频文件是高需求的,则可以采取两种主要方法来满足需求。首先,可以采用大量的碎片存储节点来分散纠删编码的数据碎片。如果需求主要来自一个地理区域,则可以选择节点以便为了该区域中的IP摄像机和/或访问该区域中存储的数据的客户端以最佳数据吞吐率进行分散。其次,可以为纠删编码步骤选择更高级别的冗余。例如,替代30%的冗余,更高级别的冗余将有助于确保负载下的更好的可用性。这两个步骤可以动态执行,以满足实时发生的特定需求和负载需求。另外,可以挑出某些片段或碎片以获得更高级别的冗余以提高可用性。具体而言,媒体文件的第一段可以被赋予最高级别的冗余以满足增加的需求的需要。
上面描述的数据存储技术可以设计为在整个过程中使用虚拟服务器。例如,可以使用3个并行的虚拟服务器来代替一个真实的硬件服务器来提高性能,并保证硬件的独立性。
在一些实施方式中,可以在IP摄像机和存储网络节点之间建立多个单独的通信信道(例如,物理网络连接)。这些额外的通信信道可以被建立为备用线路和/或提供一个或多个数据流和任何相关信息的冗余传输。如图4B所示,传输多个数据流440可以包括使用网络接口435建立网络接口和各个目的地节点之间的多个数据通信信道/线路445(即,信道445a、445b和445c)。相应地,如所示,每个数据通信信道可以分别用于传输多个数据流440a、440b和440c。可以理解,可以使用各种方案来管理数据元素到存储节点的传输。例如,在特定通信信道发生故障的情况下,原始定义为通过通信信道445a作为传输流440a发送到SNN的离散片段的传输可以通过替代通信信道(例如信道445b)作为传输流440b分散。作为进一步的示例,可以基于系统和实施方式要求将离散片段跨多个不同的通信信道传输以用于冗余。另外或可替换地,离散片段的传输也可以分布在不同的通信信道上。还应该理解,用于优化跨多个传输流的数据传输(例如,基于各种系统组件的测量参数(例如,吞吐量、延迟等)的节点选择、数据路由和分散等)可以类似地由IP摄像机来实现,以使用多个通信信道来优化离散数据片段的传输。
一旦碎片在步骤515被上传,则SNN服务器现在将托管处理的文件切片碎片,例如,在通常可用的云托管服务器的云中,等待接收将来的文件下载请求。这将创建“虚拟硬盘驱动器”设备,其中文件不是存储在单个物理设备中,而是分布在一系列包含文件“碎片”的物理设备中,该碎片被加密。
在步骤520,文件可以由客户端计算设备检索。下载先前上传到SNN的文件的过程通常涉及在上传过程中使用的步骤的逆转。为了移动、删除、读取或编辑文件而访问视频文件是通过实时快速重组文件碎片来实现的。该方法在数据传输和访问速度、数据安全性和数据可用性方面提供了许多改进。
如上所述,在一个示例性实施方式中,来自IP安全摄像机的视频文件可以在两步过程中被分解成小文件切片碎片。第一步将整个文件(可以压缩或不压缩)分解成一系列的文件切片。这些文件切片可以被加密,并且创建映射如何将切片组装成原始文件的元数据文件。第二步是取每个文件切片并将其分解成更小的数据碎片,根据前述技术对该数据碎片进行纠删编码,以使原始数据不可识别。
此外,如上面注意到的,可以向配置为访问SNN系统的客户端计算设备460提供一个或多个元数据文件,其可以包括识别文件切片碎片的信息,并且将所有文件切片碎片映射回其原始切片。此外,元数据文件还可以提供将切片映射回原始视频文件的信息。进一步,映射信息可以包括使用哪个存储节点网络(SNN)服务器来存储哪些文件切片碎片的记录。由于每个切片可以用一个或多个加密密钥加密,所以客户端设备也可以配备有用于碎片或切片的解密的相应密钥以及纠删编码协议以执行纠错。
相应地,使用映射和对应的标识符,客户端计算设备可以从相应的分布式SNN节点检索离散的数据片段。而且,使用包括映射和相关联的标识符的元数据,可以解码和重组检索的数据片段。因此,客户端计算设备可以用于播放、访问或以其它方式处理重组的安全视频文件。
更具体地,在一些实施方式中,检索跨许多SNN存储的切片碎片,并使用映射切片碎片如何重组为切片的第二元数据文件将切片碎片重组为切片。这由客户端计算设备完成,其也可以包括可操作的FEDP组件和CSP组件。这样组装的文件切片然后可以由CSP使用映射切片如何重组为整个文件的第一元数据文件重组成完整的视频文件,以经由使用客户端计算装置输出。第二元数据文件可以冗余地存储在用于存储文件的每个SNN上,并且第一元数据文件也可以存储在客户端的本地数据中心和每个SNN上。图13是进一步描述根据示例性实施例的可以在使用客户端计算设备的文件下载过程中执行的详细步骤的图表。
公开的用于处理IP摄像机视频和视频文件的分布式存储的技术与现有系统相比具有许多优点。其中有以下优点:
A.数据传输速率
与现有的云存储技术相比,公开的实施例在典型的互联网通信条件下允许数据传输速度的大量改进。已经演示了高达300mbps的速度。该速度的提高源于几个因素。
当重新构建文件时,其附带的“片段”被并行地从/向多个服务器传输,导致大量的吞吐量改进。这可以被比喻为今天使用的一些流行的下载加速器技术,其也开放了多个通道来下载文件片段,从而大大提高了下载速度。可能在到云服务器中的一个的传输连接中的一个中发生的延迟瓶颈没有阻止更快的传输到在正常延迟条件下运行的其它服务器。
分布式存储带来的数据安全性和可靠性的内在改进消除了通过复制来持续镜像数据读取/写入的需要,从而进一步提高了吞吐量的速度。
在一些实施方式中,数据的最资源密集型处理可以发生在云中的一个或多个非常高性能的服务器上的服务器侧,其针对云服务器存储站点和客户端站点的速度和连接性进行优化。具体地,在某些实施例中的纠删编码可以在服务器侧执行,例如在多个数据处理服务器上执行。这些服务器可以被选择为具有高处理性能,因为纠删编码过程通常是中央处理单元(CPU)密集型任务。与在IP摄像机侧完成的纠删编码相比,这导致了改进的性能,其可能缺乏有效执行纠删编码的硬件和软件基础设施,或者在单个设备上。将这样的处理移动到优化的服务器组中,降低客户端侧的负载和性能要求。
B.数据安全性
公开的“虚拟设备”存储在数据安全性方面比之前的设计提供了显着的改进。通过将每个媒体文件分解成许多文件切片碎片并将文件切片分散在许多云存储位置上,优选在地理上分散的位置,黑客可能发现将文件重组成其原始形式是非常困难的。另外,在某些实施例中,文件切片碎片被全部加密,增加了另一层数据安全性以混淆可能的黑客。一个成功的入侵云存储位置不会给黑客重组整个媒体文件的能力。与以前的设计相比,这是数据安全性的重大改进。
在某些实施例中,用于文件切片碎片的处理和存储的服务器可以由多个客户端共享,而黑客无法从数据切片中识别它们可能属于哪个客户端。这使得黑客更加难以破坏使用该技术存储的文件数据的安全性。文件切片碎片可以随机分散到不同的云存储服务器上,进一步提高了数据存储的安全性。在某些实施例中,客户端并不确切知道所有文件切片碎片已经直接分散到的位置。而且,没有一个地方存储了所有的密钥来重组文件切片碎片和/或解密文件切片碎片。最后,作为数据安全性的额外增强,可以使用元数据存储的二维模型,其中重建数据所需的元数据存储在客户端侧和远程云存储服务器上。
公开的速度和安全性的提高以及可用存储资源的更大利用使得使用当今的通信协议和技术能够实现更高的视频数据传输速率。
C.数据可用性
与现有技术的存储技术相比,公开的“虚拟设备”存储装置还提供了数据可用性的改进。通过将文件分割成多个存储在多个不同的云服务器上的文件切片碎片,客户端位置和物理云位置中的一个之间的通信问题可以通过与其它数据位置的正常通信和其它数据位置的低延迟来补偿。将文件碎片分散到多个位置中的整体效果是使整个系统免受由于站点中的一个的通信中断而造成的中断。
使用许多存储节点来存储文件切片碎片大大增加了客户端数据存储中的可用的安全性。黑客的找到必要的信息以在大量的SNN中挖掘所有分散的切片碎片并将它们重组成可用的文件的任务是非常艰巨的。
使用纠删编码来分散切片碎片通过其固有的错误检查/校正增加了额外的可靠性层,其固有的错误检查/校正允许系统免除多个数据复制的需要,而具有其固有的性能问题和安全性风险。
优选地,中间服务器处理节点全部由高性能处理器组成并且具有较低的延迟。这导致对用于数据传输的客户端的高可用性。
优选地,可以响应于每个客户端请求动态地选择中间服务器处理节点,以最小化请求其服务的客户端的延迟。客户端还可以从要用来存储文件切片碎片的云存储服务器列表中进行选择,并且可以基于其地理位置和这些服务器的可用性来优化该列表。这进一步将每个客户端在每个传输请求时的数据可用性最大化。
D.数据可靠性
公开的“虚拟设备”存储在云数据存储系统的可靠性方面也相对于现有技术提供了改进。将每个文件分离成文件切片碎片意味着硬件或软件故障,或者物理云存储位置中的一个处的错误不会阻止对文件的访问,如果整个文件存储在一个物理位置,如在某些先前存在的系统中,则可能如此。
此外,使用本文讨论的纠删编码技术确保了系统中的高质量纠错能力,增强了数据安全性以及可靠性。使用使原始数据无法识别的纠删编码和具有冗余数据的多个节点增加了强大和安全的纠错技术。丢包问题不再是相关的考虑因素。公开的技术消除了在整个服务区域的多个服务器上对原始视频文件的完全冗余副本的需要。纠删编码为数据收集添加了预定义级别的冗余,同时创建一系列文件切片碎片,然后将其分散到一系列文件碎片存储节点。在该过程中使用的纠删编码需要30%或更高的最佳冗余。如果媒体文件经常被访问,则系统可以增加特定切片的文件对象冗余。
E.使用现有的云基础设施资源
公开的主题的要素可以利用现有的云服务器基础设施,具有公用和私用资源。当前的云提供者可以利用其现有的硬件和软件基础结构来设置,以用于公开的方法。由本文公开的技术提供的大多数增强因此可以以最少的投资可用,因为当前现有的云资源可以被使用而无需修改或者以最小的修改来使用。
进一步,用于处理和存储文件切片碎片的服务器可以被多个客户端共享,而黑客无法从切片中识别出其属于哪个客户端。这使得黑客更加难以破坏使用该技术存储的媒体文件数据的安全性。
F.降低存储基础设施成本
与现有的云存储技术解决方案相比,某些实施例需要少得多的冗余。如上所述,以前的存储系统可能需要高达500%的专门用于镜像和复制的附加存储。由于其较高的固有可靠性,本文公开的实施例可以在原始文件尺寸上仅以30%的冗余成功地操作。即使只有30%的冗余,也可以实现比现有系统更高的可靠性。减少的高度冗余的必要性可以降低云存储容量的成本。
总而言之,在示例性实施例中,本文公开的IP摄像机视频处理/编码和分布式存储技术实现了以下基本任务:
1)将IP摄像机视频文件分割成片段或文件切片,其还可以进一步分解为被纠删编码以提供不可识别片段的文件碎片。
2)创建描述文件如何拆分以允许在客户端计算机重组数据的文件切片的映射。该映射存储在元数据文件中。
3)对文件切片的可选加密以获得额外的数据安全性。
4)文件切片的可选压缩,以减少数据存储的大小,并提高传输速度。
5)文件切片的纠删编码以增强纠错和数据恢复。通过纠删编码过程将切片分割成文件切片碎片。
6)创建将其重组成文件切片所需的文件切片碎片的映射。该映射存储在第二元数据文件中。
7)对文件切片碎片进行可选加密以获得额外的数据安全性。
8)文件切片碎片的可选压缩,以减少存储空间要求,并提高传输速度。
9)在客户端设备上解码文件切片碎片,并重组成文件切片,并且然后整合到整个视频文件中,以在客户端媒体播放器(或浏览器)上播放。注意,碎片必须以正确的顺序组装成切片,并且切片必须按照正确的顺序组装成整个文件。客户端软件使用两个元数据文件提供的映射信息以在这两个阶段重组视频文件。
该技术的基本结构可以通过由以下操作元素实施来实现:
1.IP摄像机的CSP(参见图6A)将视频文件切片成文件切片,可选地对切片进行加密,并且生成具有如何将切片重组成原始媒体文件的映射的元数据文件。元数据文件还维护按正确顺序组装切片所需的每个文件切片的顺序的信息。
2.IP摄像机的FEDP(参见图6A)使用产生不可识别片段的纠删编码将每个文件切片分成文件切片碎片。在示例性实施例中,纠删编码增加了30%的数据冗余。第二元数据文件映射文件切片碎片如何重组成文件切片。第二元数据文件还在客户端设备上播放碎片期间维护关于以正确顺序组装碎片所需的每个碎片的顺序的信息。
3.SNN是用来分散数据碎片的各种存储节点。存储节点不一定是云中的所有服务器。节点可以是数据中心、计算机中的硬盘、移动设备或能够数据存储的其它多媒体设备。可以选择这些存储节点的数量和身份以优化具有节点的存储配置的延迟和安全性,该节点具有最低平均延迟和最佳可用性。
4.可以实现用于访问和重建视频内容文件的终端用户客户端解码器(ECD)。该第四层向媒体主机实体发起访问视频文件的请求,并且然后接收从在存储期间生成的两个元数据文件导出的映射文件,在这之上允许ECD检索和组装文件切片碎片分成切片,并且将切片分成原始视频文件,用于视频文件的回放或存储。很明显,视频文件应按照播放媒体内容的需求所需的正确顺序来组装。
尽管本说明书包含许多具体的实施方式细节,但是这些不应该被解释为对任何发明或者可以要求保护的范围的限制,而是作为特定于具体发明的特定实施例的特征的描述。在本说明书中在单独实施例的上下文中描述的某些特征也可以在单个实施例中组合实现。相反,在单个实施例的上下文中描述的各种特征也可以在多个实施例中单独地或以任何合适的子组合来实现。此外,虽然特征可以在上面描述为以某些组合起作用并且甚至最初要求如此,但是来自所要求保护的组合的一个或多个特征可以在一些情况下从组合中删除,并且所要求保护的组合可以针对子组合或子组合的变体。
类似地,尽管在附图中以特定的顺序描述了操作,但是这不应该被理解为要求以所示出的特定顺序或按顺序执行这样的操作,或者执行的所有示出的操作以实现期望的结果。在某些情况下,多任务和并行处理可能是有利的。此外,上述实施例中的各种系统组件的分离不应当理解为在所有实施例中都需要这种分离,并且应该理解,描述的程序组件和系统可以通常集成在单个软件产品中,或者打包成多个软件产品。
因此,已经描述了主题的特定实施例。其它实施例在以下权利要求的范围内。在一些情况下,权利要求中列举的动作可以以不同的顺序执行并且仍然实现期望的结果。另外,附图中描绘的过程不一定需要示出的特定顺序或按顺序,以实现期望的结果。在某些实施方式中,多任务和并行处理可以是有利的。

Claims (25)

1.一种用于从IP摄像机安全传输信号的方法,所述方法包括以下步骤:
使用所述摄像机的一个或多个处理器将从所述摄像机内的处理单元接收的输出视频信号分离成离散片段;和
使用所述摄像机的所述一个或多个处理器和通信网络接口,使用多个传输流,在多个分布式存储网络节点中分散所述离散片段,其中所述传输流通过通信网络传输,并且其中没有传输流具有用于重建所述输出视频信号的足够数据。
2.根据权利要求1所述的方法,其中,分离进一步包括:
生成用于从所述离散片段重组所述输出视频信号的元数据;和
将所述离散片段传输到多个存储网络节点,从所述多个存储网络节点能够使用所述元数据检索所述离散片段,并且所述离散片段能够重组成所述输出视频信号。
3.根据权利要求2所述的方法,其中,所述元数据将每个所述离散片段映射到所述多个分布式存储网络节点中的相应的存储网络节点。
4.根据权利要求2所述的方法,其中,所述分散步骤包括:
将所述元数据的至少一部分传输到所述存储网络节点中的一个或多个;和
将所述元数据的至少一部分传输到用户计算设备,所述用户计算设备配置为访问所述离散片段并将所述离散片段重组为所述输出视频信号。
5.根据权利要求2所述的方法,其中,所述分离步骤包括:
使用对象存储技术将所述输出视频信号分解为文件切片碎片;
其中,生成的元数据包括使得处理器能够从相应的存储网络节点检索多个所述文件切片碎片并且将检索的文件切片碎片重组成所述输出视频信号的信息。
6.根据权利要求5所述的方法,进一步包括:使用纠删编码算法对所述文件切片碎片进行编码,其中编码的文件切片碎片被优化用于纠错,并且所述输出视频信号从所述文件切片碎片不能识别。
7.根据权利要求5所述的方法,进一步包括:用所述元数据的至少一部分对分散到所述多个分布式存储网络节点的所述文件切片碎片进行编码。
8.根据权利要求1所述的方法,其中,所述分离步骤包括:
将所述输出视频信号分离成多个文件切片;
将所述多个文件切片分离成所述文件切片碎片;和
为每个所述文件切片和每个所述文件切片碎片分配唯一的标识符;
生成用于从所述文件切片碎片重组所述文件切片以及用于从所述文件切片重组所述输出视频信号的元数据;和
使用至少一个处理器在所述多个存储网络节点中的至少一个上存储所述元数据的一个或多个部分。
9.根据权利要求8所述的方法,其中,将所述切片分离成文件切片碎片包括对所述文件切片进行加密和纠删编码以生成多个不能识别的文件切片碎片。
10.根据权利要求1所述的方法,其中,所述离散片段在所述多个传输流上并行地分散到所述多个分布式存储网络节点。
11.根据权利要求1所述的方法,进一步包括:
利用所述处理器从多个可用存储网络节点选择所述多个存储网络节点;和
在所述通信网络上用每个选择的存储网络节点建立一个或多个传输流。
12.根据权利要求11所述的方法,其中,所述多个存储网络节点位于不同的地理位置,并且包括公用云存储网络节点和私用云存储网络节点。
13.根据权利要求11所述的方法,其中,基于以下一项或多项来选择特定存储网络节点:
所述特定存储网络节点的吞吐量量度,
所述特定存储网络节点的当前延迟量度,
已经选择用于存储在所述特定存储网络节点上的文件切片碎片的量,
所述特定存储网络节点的位置,
所述特定存储网络节点的可用性,以及
存储所述文件切片碎片所需的规定冗余等级。
14.根据权利要求1所述的用于安全传输的方法,其中,所述多个传输流中的多个用于同时传输多个所述离散片段。
15.根据权利要求14所述的方法,其中,每个所述传输流用于将所述离散片段中的一个或多个发送到相应的存储网络节点。
16.根据权利要求14所述的方法,其中,根据以下一项或多项限定用于传输的传输流的数量:
存储网络节点的数量,
通信网络连接的带宽,
所述多个传输流中的每一个的带宽,和
存储所述文件切片碎片所需的规定冗余等级。
17.根据权利要求1所述的用于安全传输的方法,其中,所述多个传输流中的多个被保留用于在故障的情况通过另一传输流传输所述离散片段中的一个或多个。
18.一种IP摄像机,其配置为通过IP通信网络安全地传输信号,所述摄像机包括:
成像组件,所述成像组件包括透镜、配置为捕获视频影像的图像传感器以及配置为从捕获的影像生成输出视频信号的一个或多个信号处理单元;
非暂时性存储器,所述非暂时性存储器具有存储在其中的机器可读指令形式的客户端应用;
网络接口,所述网络接口配置为将所述IP摄像机连接到通信网络;和
耦接到所述成像组件和所述网络接口的一个或多个处理器,其中所述一个或多个处理器执行所述客户端软件应用并且配置为:
接收来自所述成像组件的输出视频信号并将所述输出视频信号分离成离散片段,以及
使用所述网络接口,使用多个传输流,将所述离散片段分散到多个分布式存储网络节点中,其中所述传输流在所述通信网络上传输,
并且其中没有传输流具有用于重建所述输出视频信号的足够数据。
19.根据权利要求18所述的系统,其中,所述一个或多个处理器进一步配置为:
生成用于从所述离散片段重组所述输出视频信号的元数据;和
将所述离散片段传输到所述多个存储网络节点,从所述多个存储网络节点能够使用所述元数据检索所述离散片段,并且所述离散片段能够重组成所述输出视频信号。
20.根据权利要求19所述的系统,其中,所述元数据将每个所述离散片段映射到所述多个分布式存储网络节点中的相应的存储网络节点。
21.根据权利要求20所述的系统,其中,所述处理器进一步配置为:
将所述元数据的至少一部分传输到所述存储网络节点中的一个或多个;和
将所述元数据的至少一部分传输到用户计算设备,所述用户计算设备配置为访问所述离散片段并将所述离散片段重组为所述输出视频信号,并且其中所述元数据使所述用户计算设备能够从相应的存储网络节点检索多个所述文件切片碎片并将检索的文件切片碎片重组成所述输出视频信号。
22.根据权利要求19所述的系统,其中,所述一个或多个处理器配置为通过使用对象存储技术将所述输出视频信号分解成文件切片碎片来执行所述分离。
23.根据权利要求22所述的系统,其中,所述一个或多个处理器进一步配置为使用纠删编码算法来编码所述文件切片碎片,并且其中编码的文件切片碎片被优化以用于纠错并且所述输出视频信号从所述文件切片碎片不能识别。
24.根据权利要求22所述的系统,其中,所述一个或多个处理器进一步配置为用所述元数据的至少一部分来编码分散到所述多个分布式存储网络节点的所述文件切片碎片。
25.根据权利要求22所述的系统,其中,所述一个或多个处理器进一步配置为:
从多个可用存储网络节点选择所述多个存储网络节点;和
利用所述网络接口,在所述通信网络上利用每个选择的存储网络节点建立一个或多个传输流。
CN201680040054.8A 2015-07-08 2016-07-07 用于从摄像机安全传输信号的系统和方法 Pending CN107851112A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201562189769P 2015-07-08 2015-07-08
US62/189,769 2015-07-08
PCT/US2016/041349 WO2017007945A1 (en) 2015-07-08 2016-07-07 System and method for secure transmission of signals from a camera

Publications (1)

Publication Number Publication Date
CN107851112A true CN107851112A (zh) 2018-03-27

Family

ID=57685944

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201680040054.8A Pending CN107851112A (zh) 2015-07-08 2016-07-07 用于从摄像机安全传输信号的系统和方法

Country Status (9)

Country Link
US (1) US20180218073A1 (zh)
EP (1) EP3320456A4 (zh)
JP (1) JP2018525866A (zh)
KR (1) KR20180052603A (zh)
CN (1) CN107851112A (zh)
AU (1) AU2016290088A1 (zh)
CA (1) CA2989334A1 (zh)
IL (1) IL255296A0 (zh)
WO (1) WO2017007945A1 (zh)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10931402B2 (en) 2016-03-15 2021-02-23 Cloud Storage, Inc. Distributed storage system data management and security
RU2632473C1 (ru) * 2016-09-30 2017-10-05 ООО "Ай Ти Ви групп" Способ обмена данными между ip видеокамерой и сервером (варианты)
US11042661B2 (en) 2018-06-08 2021-06-22 Weka.IO Ltd. Encryption for a distributed filesystem
MX2021009011A (es) 2019-01-29 2021-11-12 Cloud Storage Inc Método de reparación de nodos de codificación y almacenamiento para códigos de regeneración de almacenamiento mínimo para sistemas de almacenamiento distribuido.
US11698733B2 (en) 2019-01-30 2023-07-11 Practechal Solutions, Inc. Method and system for data transmission
US10992960B2 (en) * 2019-02-06 2021-04-27 Jared Michael Cohn Accelerated video exportation to multiple destinations
US11223667B2 (en) 2019-04-30 2022-01-11 Phantom Auto Inc. Low latency wireless communication system for teleoperated vehicle environments
CN113994626B (zh) * 2019-05-22 2023-01-17 妙泰公司 具有增强的安全性、弹性和控制的分布式数据存储方法及系统
US11223556B2 (en) * 2019-06-04 2022-01-11 Phantom Auto Inc. Platform for redundant wireless communications optimization
WO2021175144A1 (zh) * 2020-03-02 2021-09-10 加特兰微电子科技(上海)有限公司 自动增益控制方法、传感器及无线电器件

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020133491A1 (en) * 2000-10-26 2002-09-19 Prismedia Networks, Inc. Method and system for managing distributed content and related metadata
US20070005795A1 (en) * 1999-10-22 2007-01-04 Activesky, Inc. Object oriented video system
CN1921577A (zh) * 2006-07-21 2007-02-28 南京航空航天大学 基于嵌入式ip存储技术的高性能分布式并行vod系统
CN1971562A (zh) * 2006-11-29 2007-05-30 华中科技大学 面向对象存储系统中的对象分布方法
CN101605148A (zh) * 2009-05-21 2009-12-16 何吴迪 云存储的并行系统的架构方法
US20110161666A1 (en) * 2009-12-29 2011-06-30 Cleversafe, Inc. Digital content retrieval utilizing dispersed storage
US20120060072A1 (en) * 2010-09-08 2012-03-08 Microsoft Corporation Erasure coding immutable data
US20130276040A1 (en) * 2006-09-01 2013-10-17 Vudu, Inc. Streaming video using erasure encoding

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100293580A1 (en) * 2009-05-12 2010-11-18 Latchman David P Realtime video network
JP5397014B2 (ja) * 2009-05-21 2014-01-22 ソニー株式会社 監視システム、撮像装置、解析装置及び監視方法
US8830327B2 (en) * 2010-05-13 2014-09-09 Honeywell International Inc. Surveillance system with direct database server storage
US20120011200A1 (en) * 2010-07-06 2012-01-12 Roxbeam Media Network Corporation Method and apparatus for data storage in a peer-to-peer network
CN102726042B (zh) * 2010-09-02 2016-04-27 英特赛尔美国有限公司 视频处理系统和视频解码系统
US20130041808A1 (en) * 2011-08-10 2013-02-14 Nathalie Pham Distributed media access
EP2660723A1 (en) * 2012-05-03 2013-11-06 Thomson Licensing Method of data storing and maintenance in a distributed data storage system and corresponding device

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070005795A1 (en) * 1999-10-22 2007-01-04 Activesky, Inc. Object oriented video system
US20020133491A1 (en) * 2000-10-26 2002-09-19 Prismedia Networks, Inc. Method and system for managing distributed content and related metadata
CN1921577A (zh) * 2006-07-21 2007-02-28 南京航空航天大学 基于嵌入式ip存储技术的高性能分布式并行vod系统
US20130276040A1 (en) * 2006-09-01 2013-10-17 Vudu, Inc. Streaming video using erasure encoding
CN1971562A (zh) * 2006-11-29 2007-05-30 华中科技大学 面向对象存储系统中的对象分布方法
CN101605148A (zh) * 2009-05-21 2009-12-16 何吴迪 云存储的并行系统的架构方法
US20110161666A1 (en) * 2009-12-29 2011-06-30 Cleversafe, Inc. Digital content retrieval utilizing dispersed storage
US20120060072A1 (en) * 2010-09-08 2012-03-08 Microsoft Corporation Erasure coding immutable data

Also Published As

Publication number Publication date
WO2017007945A1 (en) 2017-01-12
EP3320456A1 (en) 2018-05-16
EP3320456A4 (en) 2018-07-18
AU2016290088A1 (en) 2017-11-23
US20180218073A1 (en) 2018-08-02
IL255296A0 (en) 2017-12-31
KR20180052603A (ko) 2018-05-18
JP2018525866A (ja) 2018-09-06
CA2989334A1 (en) 2017-01-12

Similar Documents

Publication Publication Date Title
CN107851112A (zh) 用于从摄像机安全传输信号的系统和方法
KR101896048B1 (ko) 분산된 보안 데이터 저장 및 스트리밍 매체 콘텐트의 전송
US7057535B2 (en) Methods for scaling encoded data without requiring knowledge of the encoding scheme
EP1678586B1 (en) A method and apparatus for ensuring the integrity of data
US9292897B2 (en) Watermarking of images
US20070038578A1 (en) Method and system for digital content distribution
JP2007526507A (ja) スケーラブルメディアを記述するデータを生成するための方法
JP2010504652A (ja) ビデオネットワークを管理する方法及びシステム
KR102128945B1 (ko) 엣지 클라우드 기반 영상 전송 시스템
WO2021072878A1 (zh) 基于rtmp的音视频数据加解密方法、装置及可读存储介质
US20230081384A1 (en) Accelerated video exportation to multiple destinations
JP2007534230A (ja) プログレッシブ暗号化されたスケーラブルデータ列をスケーリングするための方法
Figueira et al. Stegozoa: Enhancing webrtc covert channels with video steganography for internet censorship circumvention
CA2904959A1 (en) Communication devices, communication data generation method, and communication data processing method
JP6919904B2 (ja) ネットワーク環境におけるデータ処理を改善するシステムおよび方法
US10511648B1 (en) Method and system for reconstructing media streams
Robert et al. Adjusting bit-stream video watermarking systems to cope with HTTP adaptive streaming transmission
KR102440794B1 (ko) Pod 기반의 영상 컨텐츠 전송 방법 및 장치
KR102414301B1 (ko) Pod 기반의 영상 관제 시스템 및 pod 기반의 영상 처리 방법
KR102411973B1 (ko) 네트워크 환경에서 데이터 처리를 향상시키는 시스템 및 방법
US20220417313A1 (en) Digital media data management system comprising software-defined data storage and an adaptive bitrate media streaming protocol
Callens Cloud-based video stabilization processing in real-time

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
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20180327

WD01 Invention patent application deemed withdrawn after publication