(57)【要約】  本明細書に記載の本発明によれば、カメラからの信号を安全に伝送する方法が、カメラ内部にある処理ユニットからの出力ビデオ信号を別個の部分に分離するステップと、これらの別個の部分を複数の伝送ストリームの間で複数の記憶ノードに分散させるステップとを含み、どの伝送ストリームもメディアファイルを再構成するのに十分なデータを有しない。好ましい一実施形態では、複数の記憶ノードが、多様な地理的場所に位置決めされる。好ましくは、別個の部分の誤り訂正符号化が存在する。【選択図】図９
2018525866.tif 000002
【特許請求の範囲】
【請求項１】
ＩＰカメラからの信号の安全な伝送方法であって、
前記カメラの１つまたは複数のプロセッサを使用して、前記カメラの内部にある処理ユニットから受信した出力ビデオ信号を別個の部分に分離するステップと、
前記１つまたは複数のプロセッサ、および前記カメラの通信ネットワークインタフェースを使用して、前記別個の部分を複数の伝送ストリームを使用して複数の分散記憶ネットワークノードの間で分散させるステップであって、前記伝送ストリームが通信ネットワークを介して伝送され、どの伝送ストリームも前記出力ビデオ信号を再構成するのに十分なデータを有しないステップと
を備える方法。
【請求項２】
前記分離するステップが、
前記別個の部分から前記出力ビデオ信号を再組立するためのメタデータを生成するステップと、
前記複数の記憶ネットワークノードに前記別個の部分を伝送するステップであって、前記メタデータを使用して前記複数の記憶ネットワークノードから前記別個の部分を取り出し、前記出力ビデオ信号に再組立することができるステップと
をさらに備える、請求項１に記載の方法。
【請求項３】
前記メタデータが、前記複数の分散記憶ネットワークノードに含まれるそれぞれの記憶ネットワークノードに前記別個の部分の各々をマッピングする、請求項２に記載の方法。
【請求項４】
前記分散させるステップが、
前記記憶ネットワークノードの１つまたは複数に前記メタデータの少なくとも一部分を伝送するステップと、
前記別個の部分にアクセスし、かつ前記別個の部分を前記出力ビデオ信号に再組立するように構成されたユーザコンピューティング機器に前記メタデータの少なくとも一部分を伝送するステップと
を備える、請求項２に記載の方法。
【請求項５】
前記分離するステップが、
オブジェクト記憶技術を使用して前記出力ビデオ信号をファイルスライス断片に分解するステップ
を備え、プロセッサがそれぞれの記憶ネットワークノードから複数の前記ファイルスライス断片を取り出し、かつ前記取り出したファイルスライス断片を前記出力ビデオ信号に再組立することができるようになる情報を、生成されたメタデータが含む、
請求項２に記載の方法。
【請求項６】
イレージャー・コーディング（ｅｒａｓｕｒｅ  ｃｏｄｉｎｇ）・アルゴリズムを使用して前記ファイルスライス断片を符号化するステップをさらに備え、前記符号化したファイルスライス断片が誤り訂正のために最適化され、前記出力ビデオ信号が前記ファイルスライス断片から認識できない、請求項５に記載の方法。
【請求項７】
前記メタデータの少なくとも一部分を使って前記複数の分散記憶ネットワークノードに分散させられる前記ファイルスライス断片を符号化するステップをさらに備える、請求項５に記載の方法。
【請求項８】
前記分離するステップが、
前記出力ビデオ信号を複数のファイルスライスに分離するステップと、
前記複数のファイルスライスを前記ファイルスライス断片に分離するステップと、
前記ファイルスライスの各々に、および前記ファイルスライス断片の各々に、固有識別子を割り当てるステップと、
前記ファイルスライス断片から前記ファイルスライスを再組立するための、および前記ファイルスライスから前記出力ビデオ信号を再組立するためのメタデータを生成するステップと、
少なくとも１つのプロセッサを使用して、前記複数の記憶ネットワークノードの少なくとも１つに前記メタデータの１つまたは複数の一部分を記憶するステップと
を備える、請求項１に記載の方法。
【請求項９】
前記スライスを前記ファイルスライス断片に分離する前記ステップが、複数の認識できないファイルスライス断片を生成するために、前記ファイルスライスを暗号化し、イレージャーコーディングするステップを含む、請求項８に記載の方法。
【請求項１０】
前記別個の部分が、前記複数の伝送ストリームを介して前記複数の分散記憶ネットワークノードに並列に分散させられる、請求項１に記載の方法。
【請求項１１】
前記プロセッサを使って、複数の利用できる記憶ネットワークノードから前記複数の記憶ネットワークノードを選択するステップと、
前記通信ネットワークを介して、前記選択した記憶ネットワークノードの各々と１つまたは複数の伝送ストリームを確立するステップと
をさらに備える、請求項１に記載の方法。
【請求項１２】
前記複数の記憶ネットワークノードが多様な地理的場所に位置決めされ、パブリッククラウド記憶ネットワークノードとプライベートクラウド記憶ネットワークノードの両方を含む、請求項１１に記載の方法。
【請求項１３】
特定の記憶ネットワークノードが、
前記特定の記憶ネットワークノードのスループット尺度、
前記特定の記憶ネットワークノードの現在の待ち時間尺度、
前記特定の記憶ネットワークノードに記憶するためにすでに選択されたファイルスライス断片の量、
前記特定の記憶ネットワークノードの場所、
前記特定の記憶ネットワークノードの可用性、および
前記ファイルスライス断片を記憶するために必要な所定の冗長性レベル
のうち１つまたは複数に基づき選択される、請求項１１に記載の方法。
【請求項１４】
前記複数の伝送ストリームの複数が、複数の前記別個の部分を同時に伝送するために使用される、請求項１に記載の安全な伝送方法。
【請求項１５】
前記伝送ストリームの各々が、それぞれの記憶ネットワークノードに前記別個の部分の１つまたは複数を送信するために使用される、請求項１４に記載の方法。
【請求項１６】
伝送するために使用する伝送ストリームの数が、
記憶ネットワークノードの数、
前記通信ネットワーク接続の帯域幅、
前記複数の伝送ストリームの各々の帯域幅、および
前記ファイルスライス断片を記憶するために必要な所定の冗長性レベル
のうち１つまたは複数に従って規定される、請求項１４に記載の方法。
【請求項１７】
別の伝送ストリームにより前記別個の部分の１つまたは複数を伝送するために、前記複数の伝送ストリームの複数が、故障の場合に使用するために確保される、請求項１に記載の安全な伝送方法。
【請求項１８】
ＩＰ通信ネットワークを介して信号を安全に伝送するように構成されたＩＰカメラであって、
レンズ、ビデオ画像を取り込むように構成されたイメージセンサ、および前記取り込んだ画像から出力ビデオ信号を生成するように構成された１つまたは複数の信号処理ユニットを含む画像化構成要素と、
前記ＩＰカメラ内に記憶した機械可読命令の形でクライアントアプリケーションを有する非一時的メモリと、
通信ネットワークに前記ＩＰカメラを接続するように構成されたネットワークインタフェースと、
前記画像化構成要素および前記ネットワークインタフェースに結合した１つまたは複数のプロセッサとを備え、前記１つまたは複数のプロセッサが前記クライアント・ソフトウェア・アプリケーションを実行し、
前記画像化構成要素から前記出力ビデオ信号を受信し、前記出力ビデオ信号を別個の部分に分離し、
前記ネットワークインタフェースを使用して、前記別個の部分を複数の伝送ストリームを使用して複数の分散記憶ネットワークノードの間で分散させるように構成され、前記伝送ストリームが前記通信ネットワークを介して伝送され、どの伝送ストリームも前記出力ビデオ信号を再構成するのに十分なデータを有しない
ＩＰカメラ。
【請求項１９】
前記１つまたは複数のプロセッサが、
前記別個の部分から前記出力ビデオ信号を再組立するためのメタデータを生成し、
前記複数の記憶ネットワークノードに前記別個の部分を伝送し、前記メタデータを使用して前記複数の記憶ネットワークノードから前記別個の部分を取り出し、前記出力ビデオ信号に再組立する
ようにさらに構成された、請求項１８に記載のシステム。
【請求項２０】
前記メタデータが、前記別個の部分の各々を前記複数の分散記憶ネットワークノードに含まれるそれぞれの記憶ネットワークノードにマッピングする、請求項１９に記載のシステム。
【請求項２１】
前記プロセッサが、
前記記憶ネットワークノードの１つまたは複数に前記メタデータの少なくとも一部分を伝送し、
前記別個の部分にアクセスし、前記別個の部分を前記出力ビデオ信号に再組立するように構成されたユーザコンピューティング機器に前記メタデータの少なくとも一部分を伝送するようにさらに構成され、前記メタデータにより、前記ユーザコンピューティング機器が、それぞれの記憶ネットワークノードから複数の前記ファイルスライス断片を取り出し、かつ前記取り出したファイルスライス断片を前記出力ビデオ信号に再組立することができるようになる、
請求項２０に記載のシステム。
【請求項２２】
前記１つまたは複数のプロセッサが、オブジェクト記憶技術を使用して、前記出力ビデオ信号をファイルスライス断片に分解することにより前記分離を行うように構成された、請求項１９に記載のシステム。
【請求項２３】
前記１つまたは複数のプロセッサが、イレージャー・コーディング・アルゴリズムを使用して前記ファイルスライス断片を符号化するようにさらに構成され、前記符号化したファイルスライス断片が誤り訂正のために最適化され、前記出力ビデオ信号が前記ファイルスライス断片から認識できない、請求項２２に記載のシステム。
【請求項２４】
前記１つまたは複数のプロセッサが、前記メタデータの少なくとも一部分を使って前記複数の分散記憶ネットワークノードに分散させられる前記ファイルスライス断片を符号化するようにさらに構成された、請求項２２に記載のシステム。
【請求項２５】
前記１つまたは複数のプロセッサが、
複数の利用できる記憶ネットワークノードから前記複数の記憶ネットワークノードを選択し、
前記ネットワークインタフェースを使って、前記通信ネットワークを介して、前記選択した記憶ネットワークノードの各々と１つまたは複数の伝送ストリームを確立する
ようにさらに構成された、請求項２２に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示の主題は、一般にＩＰカメラに関し、より詳細にはビデオ信号のデータを安全に記憶および伝送するためのＩＰカメラシステムに関する。
【背景技術】
【０００２】
ＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）防犯カメラは通常、カメラを使用して取り込んだビデオファイルを、ネットワークを介して連続的にブロードキャストするように実装される。アナログ−デジタル・ビデオ・レコーダ（ａｎａｌｏｇ  ｔｏ  ｄｉｇｉｔａｌ  ｖｉｄｅｏ  ｒｅｃｏｒｄｅｒ、ＤＶＲ）と共に使用されるアナログカメラもまた、同一の結果を引き渡し、かつ同様にネットワークを介してビデオファイルをブロードキャストするように構成することができる。
【０００３】
ＩＰカメラに関連する利点および欠点がさまざまある。同様に、アナログに基づくカメラシステムにも、ＩＰカメラと比較して利点および欠点がある。カメラの形状、方式、またはサイズと無関係に、実質はまったく同じ内部であるが、使用する構成要素がわずかに異なる。異なるタイプのカメラの内部機構の変形形態について、本明細書でさらに記載する。
【０００４】
当業者が認識するように、アナログ防犯カメラ１００は多くの場合、図１に示すように、４つの主要構成要素、すなわち、レンズホルダ１１０にはめ込まれたレンズ１０５、イメージセンサ１１５、およびＤＳＰ（ｄｉｇｉｔａｌ  ｓｉｇｎａｌ  ｐｒｏｃｅｓｓｏｒ、デジタル・シグナル・プロセッサ）１２０から構成される。最も一般的なタイプのイメージセンサがＣＭＯＳ（ｃｏｍｐｌｅｍｅｎｔａｒｙ  ｍｅｔａｌ−ｏｘｉｄｅ−ｓｅｍｉｃｏｎｄｕｃｔｏｒ、相補型金属酸化膜半導体）およびＣＣＤ（ｃｈａｒｇｅ−ｃｏｕｐｌｅｄ  ｄｅｖｉｃｅ、電荷結合素子）である。ＣＣＤセンサは均質な出力を有し、したがって、一般に画質は低ノイズでより良好である。一方、ＣＭＯＳセンサについては、均質性がはるかに低く、より低い画質をもたらし、イメージのノイズがより大きくなる傾向がある。ＣＣＤセンサは、光に対してより感度がよく、ＣＭＯＳセンサは、低ノイズイメージを作成するために、より多くの光を必要とする。ＣＣＤカメラおよびＣＭＯＳカメラのアーキテクチャについては、当業者に理解されるであろう。
【０００５】
ＩＰカメラ技術は、一般にＣＣＤまたはＣＭＯＳのセンサを使用する。ＣＭＯＳセンサはＣＣＤセンサよりも少しだけ安価な傾向があり、これが、市場にある大部分のＩＰカメラが現在ＣＭＯＳである理由である。ＩＰカメラ製造業者は、携帯電話製造業者が使用するのと同一のＣＭＯＳイメージセンサを使用している。携帯電話業界でＣＭＯＳイメージセンサが多用されているために、ＣＭＯＳのコストが安価になった。
【０００６】
ＤＳＰ（デジタル・シグナル・プロセッサ）は、大部分のカメラの「頭脳」である。ＤＳＰは、イメージセンサからのアナログ・イメージ・データを未加工状態で取り出し、デジタル信号に変換する。ＤＳＰにより、デジタルノイズ低減および広ダイナミックレンジのような、カメラのための高度な特徴が可能になる。カメラがＤＳＰを含み、かつアナログ伝送媒体を介して信号を送信するように構成された場合、イメージが、たとえば同軸ケーブルを介して伝送するためにアナログに戻される。たとえば、図１は、ＢＮＣアナログビデオ出力接続１２５を含むアナログカメラを示す。この処理の不利な点は、画質が劣化することである。データを符号化する、または復号するたびに、いくつかのデータビットが失われ、イメージ鮮明性がより低くなる原因となる。実際には、ＤＳＰは、カメラからビデオ出力を得るために必要ではなく、むしろ、夜のビデオ画質を、色のビデオ画質を、および他の一般的な業界要件を向上させるためだけに使用される場合がある。
【０００７】
カメラの内部に多くの構成要素があるほど、それだけカメラが高価になる。市場には低価格のアナログカメラがたくさんある。これらのカメラは、ＣＭＯＳイメージセンサを使用している場合が多く、ＤＳＰはまったくない。
【０００８】
さらに、ＩＰ防犯カメラを支える技術が、同じくＩＰネットワークを介して伝送するためにビデオを取り込むために使用される場合が多い従来のコンピュータウェブカムと異なる可能性がある。コンピュータウェブカムは普通、未加工状態のビデオファイルを取り込み、かつＵＳＢケーブルを通してデータを伝送する画像センサだけを含む。さらに、ウェブカムは、コンピュータプロセッサを利用してアナログビデオ信号をデジタル形式に符号化する、コンピュータ（カメラではない）上で走らされるソフトウェアアプリケーションを必要とする場合が多い。一方、ＩＰカメラは、それ自身のＣＰＵ（ｃｅｎｔｒａｌ  ｐｒｏｃｅｓｓｉｎｇ  ｕｎｉｔ、中央処理装置）、およびデジタル符号化、デジタル復号、デジタル処理アルゴリズムなどを実装するために必要な構成要素を有する場合が多い。
【０００９】
図２は、ＩＰカメラ２００の代表的な構成を示す高レベルの略図である。カメラのアナログ構成要素２０５が破線で取り囲まれ、残りの構成要素が、ＩＰカメラのＩＰ接続性、およびＩＰネットワーク接続２４０を介して取り込んだ画像の伝送に役立つように提供される。ＩＰ防犯カメラは、多くの場合ウェブサーバに接続される。換言すれば、ＩＰ防犯カメラは、コンピュータと無関係にビデオをストリーミングする機能を有する。このために、当業者に理解されるように、コンピュータと同様に、メモリ構成要素（たとえば、メモリ／記憶領域２２５およびフラッシュメモリ２３０）およびＣＰＵ２２０が、ビデオ圧縮、ホスト・ウェブ・サーバ・ファームウェア、インターレース解除前処理、ノイズフィルタリングなどを取り扱うために、ＩＰカメラ内部に存在する。
【００１０】
多くの場合、ＩＰカメラは、監視記録のためにデジタル・ビデオ・レコーダに直接接続されているのではなく、むしろ、ルータを通してローカル・エリア・ネットワークまたは広域ネットワーク上で接続される。たとえば、図３は、同じくネットワーク３１５に接続されたルータ３０５を含むネットワーク３１５により接続された複数のＩＰカメラ３００を含むローカルネットワークの従来の構成を示す。図３に示すように、コンピュータまたはスタンドアロンのＮＶＲ（ｎｅｔｗｏｒｋ  ｖｉｄｅｏ  ｒｅｃｏｒｄｅｒ、ネットワーク・ビデオ・レコーダ）３１０もまた同一ネットワーク３１５に接続され、ネットワークを通してビデオストリーミングを受け取り、かつそのデジタルストリートを使用してハードドライブ（図示せず）上にビデオストリーミングをデジタル方式で記録するように構成することができる。
【００１１】
図２に戻ると、ビデオ・オーディオ・コーデック２１０が、カメラが取り込んだビデオ・データ・ファイルを取り出し、特有のタイプの圧縮アルゴリズムを使用してデジタル形式で圧縮する。一部のＩＰカメラが、複数のストリーミング能力を有し、この場合、ビデオコーデックが各データファイル入力をＨ．２６４、ＭＰＥＧ４、またはＭＪＰＥＧなどの複数のビデオファイルに同時に圧縮する。
【００１２】
比べると、アナログカメラ（たとえば、図１のアナログカメラ１００）では、多くの場合ＤＳＰが、ビデオファイルを圧縮することなく、アナログ信号をデジタル信号に符号化することができる。最終的に、図２の代表的なＩＰカメラ構成では、デジタルビデオがネットワークを通してストリーミングされ、コンピュータで処理され、デジタル形式で記憶される。基本的に、ビデオはデジタルのままであり、不要な変換がまったく行われず、優れた画質が得られる。
【００１３】
ＩＰカメラは、多くの有益な特徴を含むインテリジェント機器である。ＩＰカメラは、ビデオイメージを圧縮して、ネットワークを介したビデオストリーミングを最小にする。ＩＰカメラは、指定したフレームレートでイメージを送信するフレームレート制御技術を使用し、その結果、必要なフレームだけが送信され、その一方で、アナログカメラは、アナログケーブルを通してビデオデータをストリーミングする。ＩＰカメラを使用するマイナス面は、ネットワーク帯域幅により、ネットワークを過負荷にすることなくネットワーク上に存在することができるカメラの数が制限される可能性があることである。
【００１４】
ＩＰ防犯カメラが存在する理由は、アナログの技術領域が縮小しているためである。アナログカメラは、防犯監視業界で依然として比較的売れ行きがよいが、ＩＰカメラの人気がますます高まっている。アナログと比較してＩＰ防犯カメラの価格は、今までのところはアナログカメラのほうが有利な立場にあり続けてきた。この傾向は、ＩＰ高解像度カメラの価格がこの２年以内で急激に低下したので、変わり始めた。ＩＰ防犯カメラは、アナログカメラよりも優れており、よりよいビデオ品質を提供し、既存のＬＡＮエリアネットワークを利用することができ、アナログカメラよりもはるかに大きな能力を有することができる。
【００１５】
利用されているのがアナログ防犯カメラかＩＰカメラかにかかわらず、カメラが取り込んだイメージデータを（たとえば、ＩＰプロトコルを使用してデジタル化された形式で）デジタル通信ネットワークを介してストリーミングすることには、いくつかの欠点がある。詳細には、データが伝送されるＩＰネットワーク接続は、暗号化されたときでさえセキュリティ侵害に弱い。このＩＰネットワーク接続が単一の脆弱地点となる可能性がある。さらに、より高解像度のビデオを伝送するには、より高帯域幅を必要とし、ネットワークでの典型的な実装では、一般に帯域幅利用率が不十分である。これらの制限は、ビデオデータが遠隔記憶システムに、たとえばクラウドに基づく記憶領域に記憶される場合、特に明らかになる。
【００１６】
クラウド記憶ソリューションはまた、企業のクライアントとそのクラウド記憶システムの間でインターネット通信が途絶する結果生じる可能性がある「機能停止」に対して非常に弱い。１つのサーバの場所にビデオファイルを記憶することに基づくクラウド記憶ソリューションにより、同じくサーバの場所が危険にさらされた場合、障害回復が潜在的落とし穴になる。複製およびバックアップもまた同一の物理サーバの場所で取り扱われる場合、故障および障害からの復旧問題は、大量のデータ損失の危険性を実際に企業にもたらす可能性がある。
【００１７】
現在の技術のクラウド記憶ソリューションは、多くの場合、記憶したデータの安全性を確保するために、複製およびバックアップの記憶領域オーバーヘッドを必要とする。必要とされるデータ冗長性の量が大きいために、クラウド内の記憶容量を維持するためのコストに極めて大きなオーバーヘッドが追加される。そのような冗長性が必要であるために、コストが増大するだけでなく、データキュウリティに新しい問題が生じる。さらに、クラウドサーバがサーバ・データ・トランザクションすべてで絶えず複製を使用するので、この冗長性すべてに性能低下も伴う。
【００１８】
インターネット接続が高スループットのデータを取り扱う能力が改善されたので、より多くの防犯ビデオが遠隔に記憶され、ビデオストリーミングが、遠隔に記憶したビデオコンテンツにアクセスできる、非常に広く普及した方法になった。クラウド記憶は、多くのビデオ記憶方式およびビデオアクセス方式で重要な役割を果たしている。典型的には、メディアコンテンツが会社のウェブサーバ上に存在する。ユーザが要求したとき、メディアコンテンツが、ビデオファイルの次のセグメントを表示するために間に合うようにクライアントにより受信される、連続するデータ断片の定常ストリームの形でインターネットを介してストリーミングされ、その結果、ユーザに対してオーディオまたはビデオのシームレスな再生のように見えるものになる。
【００１９】
現在のビデオストリーミング技術は、クライアントがデータのストリームを受信するために接続するウェブサーバまたはメディアサーバ上にメディアファイル全体の完備したコピーを記憶する。伝送処理中のデータ損失が転送処理を容易に中断し、クライアントコンピュータ上のビデオの出力を停止させる可能性がある。このような問題を回避するために、従来技術は多くの場合、ユーザの近くにあるサーバノードにユーザが接続することができるように、ビデオファイルが公のものであれ私的なものであれ、同一のビデオファイルを複数のサーバノード、および世界中の複数のデータセンタ上に配置する。これは、接続性の問題によるデータパケット損失を考えると、必要とされる定常データ転送レートを保証するために必要であるが、同一ファイルの複数のコピーを世界中の場所にある多くのサーバに導入することは、ビデオをホスティングするプロバイダに大きな負担を負わせる。
【発明の概要】
【発明が解決しようとする課題】
【００２０】
本開示の主題は、上記に示す問題の１つまたは複数を軽減および／または克服すること、およびより高速でより安全なビデオデータの記憶および伝送の方法に役立つことを対象とし、より詳細には、遠隔記憶領域の場所にビデオファイルを記憶するように構成されたＩＰカメラを使用する、より安全なデータの記憶および伝送の方法を提供することを対象とする。
【課題を解決するための手段】
【００２１】
一般に、本明細書に記載する主題の革新的一様態が、ＩＰカメラからの信号を安全に伝送する方法の形で具体化することができる。方法は、カメラの１つまたは複数のプロセッサを使用して、前記カメラ内部の処理ユニットから受信した出力ビデオ信号を別個の部分に分離するステップを含む。方法はまた、カメラの１つまたは複数のプロセッサ、および通信ネットワークインタフェースを使用して、前記別個の部分を複数の伝送ストリームを使用して複数の分散記憶ネットワークノードの間で分散させるステップを含む。さらに、伝送ストリームが通信ネットワークを介して伝送される。さらに、どの伝送ストリームも、前記出力ビデオ信号を再構成するのに十分なデータを有しない。
【００２２】
本明細書に記載する主題の別の革新的一様態が、ＩＰ通信ネットワークを介して信号を安全に伝送するように構成されたＩＰカメラの形で具体化することができる。カメラは、レンズを含む画像化構成要素、ビデオ画像を取り込むように構成されたイメージセンサ、および取り込んだ画像から出力ビデオ信号を生成するように構成された１つまたは複数の信号処理ユニットを備える。カメラはまた、カメラ内に記憶した機械可読命令の形でクライアントアプリケーションを有する非一時的メモリを含む。さらに、カメラは、通信ネットワークにＩＰカメラを接続するように構成されたネットワークインタフェースを含む。さらに、カメラは、画像化構成要素およびネットワークインタフェースに結合した１つまたは複数のプロセッサを含む。１つまたは複数のプロセッサは、クライアント・ソフトウェア・アプリケーションを実行し、画像化構成要素から出力ビデオ信号を受信し、かつ別個の部分に分離するように構成される。１つまたは複数のプロセッサはまた、ネットワークインタフェースを使用して、前記別個の部分を複数の伝送ストリームを使用して分散記憶ネットワークノードの間で分散させるように構成される。詳細には、伝送ストリームは通信ネットワークを介して伝送され、そこでは、どの伝送ストリームも、前記出力ビデオ信号を再構成するのに十分なデータを有しない。
【００２３】
本明細書に記載する主題の１つまたは複数の実施形態の詳細が、添付図面および以下の説明に示されている。主題の他の特徴、様態、および有利な点が、本説明、図面、および特許請求の範囲から明らかになるであろう。
【図面の簡単な説明】
【００２４】
【図１】代表的なアナログ防犯カメラの概略図である。
【図２】ＩＰカメラ２００の代表的な構成を示す、高レベルの略図である。
【図３】複数のＩＰ防犯カメラを含む、代表的な防犯カメラシステムである。
【図４Ａ】代表的な一実施形態による代表的なＩＰカメラシステムを示す、高レベルの略図である。
【図４Ｂ】代表的な一実施形態による、図４Ａの代表的なＩＰカメラシステムを示す、高レベルの略図である。
【図５】代表的な一実施形態によるＩＰカメラを使用して、ビデオ信号を安全に伝送および記憶するための処理を示す流れ図である。
【図６Ａ】代表的な一実施形態による、代表的なＩＰカメラおよび記憶システムのレイヤの概略図である。
【図６Ｂ】代表的な一実施形態による、ビデオファイル処理のさまざまな段階を示す略図である。
【図７Ａ】代表的な一実施形態による、ファイル処理の第１のセクションを示す略図である。
【図７Ｂ】代表的な一実施形態による、分散のためにスライス断片を作り出すための、ファイルスライスのイレージャーコーディング（ｅｒａｓｕｒｅ  ｃｏｄｉｎｇ）の略図である。
【図７Ｃ】代表的な一実施形態による、データ記憶ノードにファイルをアップロード処理する詳細図である。
【図８】代表的な一実施形態による、ファイル処理中に行われるさまざまなステップの概要を述べる表である。
【図９】代表的な一実施形態による、複数の通信チャネルを使用して記憶ネットワークに接続された代表的なＩＰカメラを示す、高レベルの略図である。
【図１０】通信ネットワークを介して記憶ネットワークに接続された従来のＩＰカメラシステムを示す、高レベルの略図である。
【図１１】代表的な一実施形態による、記憶ネットワークに接続された代表的なＩＰカメラを示す、高レベルの略図である。
【図１２】代表的な一実施形態による、記憶ネットワークノード、およびアップロードおよびダウンロードの処理中にＩＰカメラのビデオファイルの別個の部分を動的に引き渡すことを示す高レベルの略図である。
【図１３】代表的な一実施形態による、データ記憶領域からクライアントにデータをダウンロード処理する間に行われるさまざまな詳細なステップの表である。
【発明を実施するための形態】
【００２５】
本明細書で開示するのは、ＩＰカメラシステムと呼ばれるネットワーク接続防犯カメラシステム、およびカメラシステムからのビデオ信号を処理し、安全に伝送および記憶するための関連する方法である。詳細には、開示するＩＰカメラは、各ビデオ・データ・ファイルを、その後、複数の分散したネットワーク化された記憶ノード上に記憶される別個の断片に切断するステップを含む方法を実装する。一様態によれば、ＩＰカメラが取り込んだビデオ信号は、オブジェクト記憶技術を使用してファイルスライス断片に分解される。開示するＩＰカメラシステムはまた、別個の部分を複数の伝送ストリームの間で分散させ、複数の記憶ノードに送信する。好ましい一実施形態では、複数の記憶ノードは分配され、たとえば、多様な地理的場所に位置決めされる。
【００２６】
いくつかの実装形態では、結果として得られるファイルスライス断片が、一連のクラウドサーバに分散させられる前に暗号化され、イレージャーコーディングを使用して誤り訂正のために最適化される。さらに、いくつかの実装形態では、ビデオファイルを転送するためにＩＰカメラが使用する帯域幅を最適化することができる。この分散させる手法により、ビデオファイルが単一の物理機器内に記憶されるのではなく、暗号化されたファイルの「断片」だけをそれぞれ収容できる、クラウド内の一連の物理機器の間で散在した「仮想ハードドライブ」機器が作成される。
【００２７】
これらの特徴はまた、利用できるネットワーク接続（たとえば、ＩＰネットワークおよび関連する通信ネットワーク）を過負荷にすることなく、システム内で使用するカメラの数を最大にすることができるようにする。したがって、帯域幅がより効果的に利用される。さらに、伝送ストリームもまた最適化することができる。さらに、いくつかの好ましい実施形態では、障害の場合に冗長性を提供するために、複数の伝送線路を同時に使用することができる。さらに、いくつかの実装形態では、クラウド内にデータを記憶するために使用するサーバを、データスループットの速度と、データのセキュリティおよび信頼性の両方のために最適化するように選択することができる。
【００２８】
取出しに関しては、暗号化され分散させられたファイルスライス断片を、クライアントコンピューティング機器により取り出し、元のファイルに再構築することができる。ビデオファイルを移動する、削除する、読み出す、または編集するためにファイルにアクセスすることは、ファイル断片をリアルタイムで迅速に再組立することにより成し遂げられる。この手法が、データの転送およびアクセスの速度、データセキュリティ、およびデータ可用性に数多くの改善をもたらす。この手法はまた、既存のハードウェアインフラストラクチャおよびソフトウェアインフラストラクチャを利用することができ、記憶技術の分野でかなりコスト低減する。
【００２９】
データを分散させる記憶は、詳細にはクラウドサーバ上でのカメラ・ビデオ・データの符号化および記憶は、１つの特に有用な適用例であるが、その一方で、同一の技術が、ＬＡＮまたはＷＡＮなどの任意の可能な通信技術により接続することができる複数の記憶装置上にビデオデータを記憶することができる構成に適用可能である。開示する技術の速度およびセキュリティの利点は、最終的な記憶装置が複数の物理ハードディスクおよび複数の仮想ハードディスクである情報技術（ｉｎｆｏｒｍａｔｉｏｎ  ｔｅｃｈｎｏｌｏｇｙ、ＩＴ）データセンタの機器を使用して実装されるときに残る可能性がある。また、複数の記憶装置をサイバースペース内の複数の個々のユーザにわたり散在させることができ、ファイルが、ネットワーク内で利用できる複数の物理ハードディスクまたは仮想ハードディスク上に記憶される。いずれの場合も、データ転送の速度、およびシステム内に記憶したデータのセキュリティが大いに向上する。
【００３０】
開示する主題の用途には、サーバ側の処理なしにファイルがアップロードおよびアクセスされる１次記憶のニーズが含まれる。開示する実施形態によれば、これは、インターネットを通してアクセスするためにビデオデータを利用可能にすることができるように、ＩＰカメラが取り込んだビデオコンテンツを記憶することを含む。
【００３１】
図４Ａは、開示する実施形態の１つまたは複数に従ってビデオ信号を安全に伝送および記憶するための代表的なネットワーク化された／ＩＰカメラ４００（たとえば、ＩＰカメラ）の基本構造を示す高レベルの略図である。用語ＩＰカメラは、ネットワークを介してビデオデータを伝送するために、ＬＡＮまたは他のＩＰネットワークなどのデータネットワークに接続されるように構成された、さまざまなタイプのカメラシステムを指すことを認識されたい。図４Ａに示すように、代表的なＩＰカメラ４００は、アナログビデオ画像を取り込むように構成された、破線が包含するアナログカメラ構成要素４０５を含むことができる。カメラ４００の残りの構成要素は、取り込んだビデオイメージを処理してビデオ・データ・ファイルにし、さらにカメラのＩＰ接続性に役立つように提供され、それにより、本明細書にさらに記載するように、ＩＰネットワーク接続を介してビデオ・データ・ファイルの伝送が可能になる。図４Ａに示すように、カメラは、メモリ構成要素（たとえば、非一時的コンピュータ可読メモリ／記憶装置４２５、およびフラッシュメモリ４３０）およびＣＰＵ４２０を含むことができる。当業者に理解されるように、ＣＰＵは、１つまたは複数のソフトウェアモジュールの形で命令を実行することによりさまざまな動作を行うように構成された１つまたは複数のプロセッサを含むことができる。これらの動作は、ビデオ圧縮、インターレース解除前処理、ノイズフィルタリング、ホスティング・ウェブ・サーバ・ファームウェアなどを含むことができる。開示する実施形態によれば、ＣＰＵはまた、本明細書にさらに記載されるように、分散記憶ノードシステム（ｓｔｏｒａｇｅ  ｎｏｄｅ  ｎｅｔｗｏｒｋ、ＳＮＮ）４５０に記憶するために、カメラが取り込んだビデオファイルを処理し、符号化し、１つまたは複数の通信ネットワーク（図示せず）を介して伝送するようにＣＰＵを構成するクライアントアプリケーションを実行することができる。通信ネットワークの例には、ローカル・エリア・ネットワーク（「ＬＡＮ」）および広域ネットワーク（「ＷＡＮ」）、ネットワーク間接続（たとえば、インターネット）、ならびにピア・ツー・ピア・ネットワーク（たとえば、アド・ホック・ピア・ツー・ピア・ネットワーク）が含まれる。
【００３２】
ＳＮＮ４５０は、商用クラウド資源プロバイダが運営することができるさまざまなクラウド記憶センタを含むことができる。ＳＮＮ内の記憶ノードの数および識別情報は、ＩＰカメラの場所からの最良の平均待ち時間および可用性を示す記憶ノードを選ぶことにより、記憶構成の待ち時間およびセキュリティを最適化するように、ＣＰＵにより任意選択で選択することができる。
【００３３】
図４Ａに描かれたさまざまなシステム構成要素を続けて参照して、カメラ４００の代表的な特徴および機能について、本明細書にさらに記載する。開示する実施形態の１つまたは複数に従って、ＩＰカメラを使用してビデオ信号を安全に伝送および記憶するための一例の処理が、図５に示されている。
【００３４】
処理は、ステップ５０５から開始され、ステップ５０５では、カメラがイメージのストリームを取り込み、ストリーム（すなわち、ビデオ）が、明細書ではビデオ信号とも呼ばれる１つまたは複数のビデオデータに処理される。上記のように、ビデオ処理は、画像を圧縮し、符号化し、他の方法で１つまたは複数のデジタル化されたビデオファイルに変換するために、ビデオ／オーディオコーデック４１０およびＣＰＵ４２０、ならびに他のそのようなハードウェアモジュールおよび／またはソフトウェアモジュールによりイメージを処理するステップを含む。各ビデオ・データ・ファイルは、カメラが取り込んだストリーミングビデオ信号のセグメントを表すことができ、少なくとも一時的に（たとえば、ビデオファイルとして）メモリ４２５にローカルに記憶することができる。個々のビデオファイルそれぞれのサイズは、実装に応じて、ならびに各ビデオセグメントの所定の時間長および各ビデオセグメントに関する所定のファイルサイズのうち１つまたは複数に関係がある所定の設定に応じて変わる可能性がある。そのような設定は、たとえば、ユーザにより、最初のＩＰカメラセットアップ／構成のステップの間にユーザインタフェースを使用してユーザが規定することができる。さらにまたは代わりに、これらおよび他の設定を、デフォルトとして設定することができる、またはシステムの動作、およびシステムまたはネットワークの制約条件（たとえば、帯域幅、ローカル記憶領域およびネットワーク記憶領域の可用性など）に基づき、ＩＰカメラのＣＰＵにより動的に調節することができる。それに応じて、いくつかの実装形態では、本明細書にさらに記載するように、小さなビデオファイル（たとえば、限られた継続時間またはファイルサイズを有するファイル）をほぼリアルタイムで順次取り込み、処理し、分散記憶領域に転送することができる。その結果、ユーザもまた、分散記憶ネットワークからビデオファイルにほぼリアルタイムでアクセスすることができる。さらにまたは代わりに、より大きい、すなわちより長いビデオセグメントを、類似のやり方で、増分で取り込み、処理し、分散記憶システムに記憶することができることもまた認識することができる。
【００３５】
次いで、ステップ５１０で、１つまたは複数のビデオファイルを別個の部分に分離する。別個の部分はまた、本明細書では「ファイルスライス断片」、またはより一般的に「断片」と呼ばれる。ビデオ信号は、カメラ内部の１つまたは複数の信号処理構成要素からの複数の信号を含むことができることを認識されたい。それに応じて、個々の信号をそれぞれ別個の部分に分割することができる。さらにまたは代わりに、複数のビデオ信号を組み合わせて、部分に分割することができる。信号を別個の部分に分割するステップは、ビデオ信号をデジタル化するステップをさらに含むことができる。
【００３６】
代表的な実施形態の１つまたは複数によれば、クライアントアプリケーションを実行することにより構成されるＣＰＵ４２０は、ビデオ信号を取り出し、オブジェクト記憶技術を使用して、１つまたは複数の段階でファイルスライス断片に分解する。一般に、オブジェクトに基づく記憶は、データをオブジェクトとして管理する記憶アーキテクチャである。各オブジェクトは、典型的にはデータ自体、可変量のメタデータ、および大域的固有識別子を含む。
【００３７】
より具体的には、ステップ５１０で構成されたＣＰＵにより行われる代表的な機能について、図６Ａに関連してさらに記載する。図６Ａは、全システムのＳＮＮ４５０側と通信状態にある、システムのＩＰカメラ４００側で動作している論理構成要素または論理モジュールの代表的な構成を示す構成図である。図示するように、ＩＰカメラの論理構成要素は、たとえば、クライアントアプリケーション６０２、クライアント側プロセッサ（ｃｌｉｅｎｔ  ｓｉｄｅ  ｐｒｏｃｅｓｓｏｒ、ＣＳＰ）６１０、およびフロント・エンド・データ・プロセッサ（ｆｒｏｎｔ  ｅｎｄ  ｄａｔａ  ｐｒｏｃｅｓｓｏｒ、ＦＥＤＰ）６２０を含むことができる。ＣＳＰおよびＦＥＤＰにより行われると記載した動作は、本明細書にさらに記載するように、クライアントアプリケーション６０２を実行することにより、ＣＳＰおよびＦＥＤＰの動作を行うように構成されたＣＰＵを使用して実装することができる。
【００３８】
第１のステップとして、ＣＳＰが、ビデオファイルをそれぞれ所与のサイズのいくつかのスライスに分割することができる。スライスの数およびサイズは、クライアントアプリケーションにより、および特定の実装に従って規定することができる所定のパラメータに基づき、変えることができる。スライスの数およびサイズは、クライアントアプリケーションにより規定されるパラメータによって変えることができる。各スライスは、クライアントの鍵を使って暗号化し、固有識別子を割り当てることができる。ＣＳＰはまた、スライスを元の完備したビデオファイルに再組立することができるようにするためにスライスをマッピングするメタデータファイルを作り出すことができる。このメタデータファイルは、クライアントのデータセンタに記憶することができ、さらに暗号化し、ＳＮＮの１つまたは複数のノードの中にコピーすることができる。代表的な一実施形態では、次いでＣＳＰは、さらに処理するために、スライスしたファイルを次のレイヤに、すなわちフロント・エンド・データ・プロセッサ（ＦＥＤＰ）に送り出すことができる。
【００３９】
代表的な一実施形態では、ＣＰＵのＦＥＤＰモジュールはまた、スライスに対する処理をさらに行うことができる。たとえば、ＦＥＤＰは、ＣＳＰが提供する、スライスされたファイルを取り出し、各スライスをさらに処理することができる。この処理は、各スライスを一連のファイルスライス断片に分けるステップを含むことができる。さらに、ファイルスライス断片はまた、「イレージャーコーディング」を使用して、誤り訂正のために最適化することができる。イレージャーコーディングは、たとえば、伝送過程の間に一部のデータが失われた場合に、誤り訂正を提供するために行われる。イレージャーコーディングは、本明細書にさらに記載するように、誤り訂正を提供するために、各ファイルスライス断片のサイズを増大させる。ＦＥＤＰはまた、自分自身の暗号化鍵を使用してファイルスライス断片を暗号化することができる。
【００４０】
好ましくは、ＦＥＤＰは、メタデータファイルを作成することができる、または既存のメタデータファイルに追加することができる。メタデータファイルは、好ましくは、ファイルスライス断片のすべてをその元のスライスに戻してマッピングするために生成される。さらに、メタデータファイルは、どの記憶ノードネットワーク（ＳＮＮ）サーバがどのファイルスライス断片を記憶するために使用されるかの記録を含むために生成することができる。断片およびスライスのマッピング情報は、クライアントのデータセンタ、または他のクライアント側コンピューティング機器で記憶することができ、さらに暗号化され、ＳＮＮの中にコピーされることができる。たとえば、マップ情報は、セキュリティ担当者に、およびＩＰカメラからのビデオ供給を監視する、または他の方法でそこにアクセスする他の場所に分布させることができる。いくつかの実装形態では、そのような暗号化および最適化、ならびに誤り訂正は、好ましくは、本明細書にさらに記載するように、一連の記憶ノードに分散させる前に行われる。ビデオ信号を別個の部分に分離するステップについて、ＣＰＵのＦＥＤＰおよびＣＳＰの構成要素により実装される２段階処理としてこれまで記載したが、ステップは、任意の数の段階で、１つまたは複数のコンピューティング構成要素により行うことができることを認識することができる。
【００４１】
いくつかの実装形態では、ステップ５１０でＩＰカメラにより実装される分離およびマッピングの処理はまた、分散記憶ノードを選択するためのステップを含むことができる。より具体的には、構成されたＣＰＵ４２０は、ファイルスライス断片の１つまたは複数を記憶するためにＳＮＮ４５０内のどのノードを使用すべきかを決定することができる。いくつかの実装形態では、データを記憶するために使用するノードを、データスループットの速度と、データのセキュリティおよび信頼性の両方のために最適化するように選択することができる。さらに、いくつかの実装形態では、ノードは、セットアップ中に規定される所定のパラメータの関数として、または前述の組合せとして、動作中にＣＰＵが動的に選択することができる。
【００４２】
図６Ｂは、代表的な一実施形態による、ファイルをＳＮＮにアップロードする間の、上記で説明した処理のさまざまな段階をさらに示す。図７Ａおよび図７Ｂはそれぞれ、クライアント側機器（たとえば、ＩＰカメラ）からＳＮＮにファイルをアップロードする処理中の、２つの基本処理段階を示す。詳細には、図７Ａおよび図７Ｂは、ＣＳＰでファイルをファイルスライスに処理するステップ、およびＳＮＮに分散させるためにＦＥＤＰでファイルスライスを処理してファイルスライス断片を作成するステップを示す。図７Ｃは段階的なやり方でアップロード処理する別の図であり、中間ステップの一部を示す。さらに、図８は、代表的な一実施形態による、ＩＰカメラにより行われるファイルアップロード処理に含むことができる詳細なステップをさらに記載する表である。
【００４３】
上記に記載するように、ビデオファイルをファイルスライス断片に分離するステップ、およびイレージャーコーディングは、ＩＰカメラのＣＰＵにより行うことができる。さらにまたは代わりに、ファイルスライスをより小さな断片に切断するある種のステップ、および／またはイレージャーコーディングのためのステップは、たとえば限定することなく、１つまたは複数のファイルスライスに対してイレージャーコーディングを行うように構成された１つまたは複数のファイルサーバからなる中間レイヤにより実装することができる。
【００４４】
図５に戻ると、ステップ５１５で、ＩＰカメラ４００が、ファイルスライス断片のグループをそれらの指定されたＳＮＮサーバに送信する。さらに、作成されたメタデータファイルの１つまたは複数のコピー、またはメタデータファイルの一部分のコピーを、各ＳＮＮサーバ、および／またはビデオファイルにアクセするために使用する他のクライアント・コンピューティング・システムにさらに伝送することができる。これにより、クラウド上に存在することができる記憶サーバ内に仮想「データ機器」が効果的に作成される。
【００４５】
より具体的には、複数の伝送ストリームの形で複数の分散記憶ノードに別個の部分を転送するようにカメラを構成することができる。たとえば、別個の部分に切断されたビデオファイルを複数のストリームの形で世界中の複数の記憶ノードに同時に転送することができる。以下に説明するように、複数のデータストリームが利用率を最大にし、セキュリティを確保する。
【００４６】
図４Ａおよび図４Ｂに示すように、ＣＰＵ４２０は、ネットワークインタフェース４３５を使用して、ＳＮＮ４５０内の複数の宛先ノードに複数のデータストリーム４４０を伝送するように構成することができる。いくつかの実装形態では、各伝送ストリームがＳＮＮ内のそれぞれのノードに向けられる。
【００４７】
たとえば、図９は、世界中に分布したＳＮＮの個々のノードとＩＰカメラを通信可能に接続する複数の通信ストリームを示す、高レベルの略図である。インターネットなどの１つまたは複数のそれぞれの通信ネットワークを介してそのようなチャネルを確立することができることを認識することができる。
【００４８】
いくつかの実装形態では、別個の部分の１つまたは複数を単一ストリームで伝送することができる。同様に、複数の別個の部分を複数のストリームにわたり散在させることができる。さらに、複数のストリームを同時に、または他の伝送順序に従って転送することができる。
【００４９】
それに応じて、ＩＰカメラは、限定することなく、インターネット通信プロトコル（たとえば、ＴＣＰ（Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ）、ＵＤＰ（Ｕｓｅｒ  Ｄａｔａｇｒａｍ  Ｐｒｏｔｏｃｏｌ）、ＩＣＭＰ（Ｉｎｔｅｒｎｅｔ  Ｃｏｎｔｒｏｌ  Ｍｅｓｓａｇｅ  Ｐｒｏｔｏｃｏｌ）、ＨＴＴＰ／ＨＴＴＰＳ（Ｈｙｐｅｒｔｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）、ＦＴＰ（Ｆｉｌｅ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）など）および他の高レベルコンピュータ通信プロトコルを含むさまざまな異なる可能な通信プロトコルを使用して、通信チャネルおよび通信ネットワークを介してＳＮＮと通信することができることをさらに認識することができる。
【００５０】
さらに、好ましい一実装形態では、セキュリティを向上させるために、どの伝送ストリームも元のメディアファイルを再構成するのに十分なデータを含まないように、別個の部分が生成され、分散させられる。
【００５１】
複数のデータストリームを使用してビデオファイルを別個の部分として伝送することに関しては、上記のように、複数のデータストリームにより、開示するシステムがとりわけ利用率を最大にすることが可能になる。図１０は従来のシステムを描く。図示するように、ＩＰカメラから出て行く通信回線が、ＩＰカメラ、およびＩＰカメラが存在するネットワークから、ファイルを転送するときに使用するために利用できる最大帯域幅を規定する。さらに、記憶ネットワークノードと確立したデータ転送ストリームが、毎秒移動することができるデータの量を規定する。ほとんどの場合、ローカルＩＰネットワークから特定の記憶ネットワークノードに至る個々のデータ接続の最大帯域幅は、ＩＰカメラが利用できる全通信回線の帯域幅よりもかなり狭い。その結果、単一ノードにビデオを伝送するときに、利用できる帯域幅の数分の１しか利用することができない。現在のＩＰカメラ技術は、ビデオ伝送速度を増大させるようにうまく機能しない。
【００５２】
図１１に示すように、開示する実施形態に従って構成されたＩＰカメラおよび記憶システムが、データを高速に動的に送り出すことができるようにする。より具体的には、記憶領域が、パブリッククラウドおよびプライベートクラウドの場所を含むことができるＮ個のノードにわたり分布する。並列伝送ストリームを通して複数の記憶ネットワークノードにデータを伝送することにより、アップロード（および記憶したデータにアクセスするときのダウンロード速度）を増大させることができる。並列ストリームが帯域幅利用率を最大にする。より具体的には、複数の記憶ネットワークノードにＩＰカメラを接続する複数の伝送ストリームを確立することにより、ＩＰカメラが利用することができる全帯域幅が、（たとえば、記憶領域にビデオファイルを伝送するために使用する単一ストリームを描く図１０に示すように）どの個々の伝送ストリームの帯域幅によっても制限されない。通信チャネルを通して利用できる帯域幅を利用するために、個々の伝送ストリームの数を規定し、かつさらに受信側の記憶ネットワークノードを選択するように、ＩＰカメラを構成することができる。したがって、帯域幅がより効果的に利用される。実用的利点として、帯域幅利用率を改善することにより、ＩＰネットワークを過負荷にすることなく、システム内で使用するカメラの数を最大にすることが可能になる。より具体的には、開示する実施形態に従って構成されたＩＰカメラは、遠隔記憶領域にビデオデータをより効率的に分散させるので、より多くのＩＰカメラが単一ネットワーク上に存在することができ、ＩＰネットワーク接続の利用できる帯域幅を超えることなく、それぞれのビデオファイルを効果的にアップロードすることができる。所与のＩＰネットワーク上に実装することができるＩＰカメラの実際の数は、取り込んだビデオデータのパラメータ（すなわち、ファイルサイズ）だけではなく、ＩＰネットワークの帯域幅制限にも応じて変わることを認識することができる。
【００５３】
また上記のように、複数の分散ノードを用いて複数のデータストリームを利用することにより、開示する実施形態は、より安全でフォールトトレラントなシステムに役立つ。図１２は、記憶ネットワークノード、およびアップロード処理（図１２の左側）およびダウンロード処理（図１２の右側）の間にＩＰカメラのビデオファイルの別個の部分を動的に引き渡すことを示す、高レベルの略図である。図１２に示すように、ダウンロード処理中に起きたある種のノードの障害（図１２に「Ｘ」で識別されている）が、残りのノードから別個の部分を転送するのに影響を及ぼさない。さらに、誤り訂正を使用することにより、非常に重要なデータを損失することなく複数のノード障害を許容する。部分／断片が暗号化されるために、搬送中にセキュリティがさらに確実なものになる。それに応じて、複数のデータストリームを使用することにより、開示する実施形態は、利用率を最大にし、かつセキュリティおよび冗長性を確保することができることを理解することができる。
【００５４】
システム内で使用する複数のアップロードノードおよびダウンロードノードが、アップロードとダウンロードの両方をスピードアップする。ＩＰカメラ４００とＳＮＮのノードとの間の待ち時間を最適化することにより、換言すれば、現在最良の、利用できる待ち時間を有するＳＮＮを選ぶことにより、スループット速度をさらに増大させることができる。また、複数のノードを使用することにより、１つの特定のサーバ経路が長い待ち時間により損なわれている場合、予見される余分にかかる全負荷が低下する。
【００５５】
いくつかの実装形態では、リアルタイムで引き渡す最適な経路を得るために、データの別個の部分を動的に管理することができる。詳細には、図１２に示すように、クライアントアプリケーションを実行することにより構成されるＣＰＵ２２０は、別個の部分をキュー１２１０に配列することにより、１つまたは複数のＳＮＮノードにより記憶するためにデータの別個の部分を割り当てるように構成することができる。データの各キューは、ネットワークインタフェース２３５によりそれぞれの記憶ネットワークノードに伝送するように指定することができる。上記のように、ＣＰＵは、さまざまな動作パラメータおよび所定の設定に従って別個の部分を記憶するために、記憶ネットワークノードを動的に選択することができる。同様に、ＣＰＵはまた、１つまたは複数の記憶ネットワークノードに記憶するために別個の部分を動的に割り当てる、および再び割り当てるように構成することができる。より具体的には、別個の部分を特定のキューに割り当てること（すなわち、特定のノードに割り当てること）は、特定の記憶ネットワークノードの待ち時間の大きさ、特定のノードがすでに記憶した、または特定のキューで伝送を待っているスライス断片の量、特定のノードの地理的場所、特定のノードの可用性、および別個の部分を記憶するために必要な所定の冗長性レベルのうち１つまたは複数に基づくことができる。さらに、データをデータ記憶ノードに分散させることはまた、ノードに関する現在のスループット条件に基づき最適化することができる。たとえば、より大量のデータを記憶するために、最良の接続性を有するノードを選ぶことができ、したがって、分散処理の間に最大のデータ転送速度を得るために、利用できる記憶ノードが最適化される。データ分散処理を特徴づけることができる追加パラメータはまた、通信チャネルの利用できる帯域幅、それぞれのノードとの個々の通信ストリームのスループット、他の通信チャネルの可用性、およびキュー内の任意のバックログを含むことができる。一般に変わらないパラメータ（たとえば、ＳＮＮの場所、場所の優先設定、冗長性設定、過去のスループット／待ち時間の指標など）、または動作中に変わるパラメータ（たとえば、現在のノードの可用性、待ち時間、スループットなど）に基づき、ＣＰＵによりデータ分散の管理（たとえば、キューイングおよびルーティング）を行うことができることを認識することができる。これらのパラメータは、動作中に周期的に、および／またはリアルタイムで、ＣＰＵにより計測することができる。それに応じて、ＣＰＵは、前述のパラメータの動的計測値、および特定のアプリケーションのための所定の目的／設定に応じて、データの引渡しを動的に調節するように構成することができる。
【００５６】
いくつかの実装形態では、特定のビデオファイルの要求が多い場合、その要求を満たすために取ることができる主な手法が２つある。第１に、イレージャーコーディングしたデータ断片を分散させるために、より多数の断片記憶ノードを利用することができる。要求が主に１つの地理的領域から生じる場合、その領域内のＩＰカメラ、および／またはその領域内に記憶したデータにアクセスするクライアントのために、最良のデータスループット率を有するノードを分散のために選ぶことができる。第２に、イレージャー・コーディング・ステップのために、より高いレベルの冗長性を選ぶことができる。たとえば、３０％の冗長性の代わりに、より高いレベルの冗長性が、負荷がかかっている状態でより高い可用性を確保する助けになる。これらの２つのステップは、リアルタイムで行われるときに、特有の要求および負荷要件を満たすために、動的に行うことができる。さらに、可用性を改善するために、より高いレベルの冗長性を得るために、ある種のスライスまたは断片を選び出すことができる。具体的には、増大する要求のニーズを満たすために、メディアファイルの第１の断片に最も高いレベルの冗長性を与えることができる。
【００５７】
上記に記載したデータ記憶技法は、仮想化されたサーバスループットを使用するように設計することができる。たとえば、性能を改善し、ハードウェアの独立性を保証するために、１つの実ハードウェアサーバの代わりに、３つの仮想サーバを並列に使用することができる。
【００５８】
いくつかの実装形態では、ＩＰカメラと記憶ネットワークノードの間に複数の別個の通信チャネル（たとえば、物理ネットワーク接続）を確立することができる。これらの追加通信チャネルは、バックアップ回線として、ならびに／またはデータストリームおよび任意の関連情報の１つもしくは複数の冗長な伝送を提供するために確立することができる。図４Ｂに示すように、複数のデータストリーム４４０を伝送するステップは、ネットワークインタフェース４３５を使用して、ネットワークインタフェースとそれぞれの宛先ノードの間に複数のデータ通信チャネル／回線４４５（すなわち、チャネル４４５ａ、４４５ｂ、４４５ｃ）を確立するステップを含むことができる。それに応じて、図示するように、各データ通信チャネルを使用して、それぞれ複数のデータストリーム４４０ａ、４４０ｂ、４４０ｃを伝送することができる。さまざまな方式を使用して、記憶ノードへのデータ要素の転送を管理することができることを認識することができる。たとえば、特定の通信チャネルが機能しなくなった場合、通信チャネル４４５ａを介して伝送ストリーム４４０ａとしてＳＮＮに伝送されるように最初に規定された別個の部分の伝送を、代替通信チャネル、たとえばチャネル４４５ｂを通して伝送ストリーム４４０ｂとして分散させることができる。他の例として、システムおよび実装の要件に基づき、冗長性を得るために、別個の部分を複数の異なる通信チャネルにわたり伝送することができる。さらにまたは代わりに、別個の部分の伝送もまた、異なる通信チャネルにわたり散在させることができる。また、複数の通信チャネルを使用してデータの別個の部分の伝送を最適化するために、複数の伝送ストリームにわたりデータの伝送を最適化するための代表的な処理（たとえば、さまざまなシステム構成要素に関して測定されたパラメータ、たとえばスループット、待ち時間などに基づくノード選択、データルーティングおよび分散など）をＩＰカメラにより同様に実装することができることを認識されたい。
【００５９】
ステップ５１５で断片がアップロードされると、次いでＳＮＮサーバは、たとえば通常利用できるクラウド・ホスティング・サーバにあるクラウド内に、処理したファイルスライス断片をホスティングし、将来のファイル・ダウンロード・リクエストを待つ。これにより、ビデオファイルが単一の物理機器内に記憶されるのではなく、暗号化されたファイルの「断片」を収容できる一連の物理機器全体に散在した「仮想ハードドライブ」機器が作成される。
【００６０】
ステップ５２０で、クライアントコンピューティング機器がファイルを取り出すことができる。ＳＮＮにすでにアップロードしたファイルをダウンロードする処理は、一般にアップロード処理で使用するステップの逆を含む。ファイルを移動する、削除する、読み出す、または編集するためにビデオファイルにアクセスすることは、ファイル断片をリアルタイムで迅速に再組立することにより成し遂げられる。この手法が、データの転送およびアクセスの速度、データセキュリティ、およびデータ可用性に数多くの改善をもたらす。
【００６１】
上記で説明したように、代表的な一実装形態では、ＩＰ防犯カメラからのビデオファイルを、２ステップ処理で小さなファイルスライス断片に切断することができる。第１のステップが、完全なファイル（圧縮する、または圧縮しないことができる）を一連のファイルスライスに切断する。これらのファイルスライスを暗号化することができ、スライスを元のファイルに組み立てる方法をマッピングするメタデータファイルが作成される。第２のステップが、各ファイルスライスを取り出し、元のデータを認識できなくするために、前述の技法に従ってイレージャーコーディングされた、より小さなデータ断片に縮小して切断する。
【００６２】
さらに、上述のように、ＳＮＮシステムにアクセスするように構成されたクライアントコンピューティング機器４６０が、ファイルスライス断片を識別する情報を含み、かつファイルスライス断片のすべてをその元のスライスに戻してマッピングすることができる１つまたは複数のメタデータファイルを具備することができる。さらに、メタデータファイルはまた、スライスを元のビデオファイルに戻してマッピングする情報を提供することができる。さらに、マップ情報は、どの記憶ノードネットワーク（ＳＮＮ）サーバがどのファイルスライス断片を記憶するために使用されたかの記録を含むことができる。１つまたは複数の暗号化鍵で各スライスを暗号化することができるので、クライアント機器はまた、断片またはスライスの暗号化のための、ならびに誤り訂正を行うためのイレージャー・コーディング・プロトコルのための、対応する鍵を具備することができる。
【００６３】
それに応じて、マップおよび対応する識別子を使用して、クライアントコンピューティング機器が、それぞれの分散ＳＮＮノードからデータの別個の部分を取り出すことができる。さらに、マップおよび関連する識別子を含むメタデータを使用して、取り出したデータの部分を復号し、再組立することができる。したがって、クライアントコンピューティング機器を使用して、再組立した防犯ビデオファイルを再生する、そのファイルにアクセスする、またはそのファイルを他の方法で処理することができる。
【００６４】
より具体的には、いくつかの実装形態では、多くのＳＮＮにわたり記憶されたスライス断片を取り出し、スライス断片をどのようにしてスライスに再組立するかをマッピングする第２のメタデータファイルを使用してファイルスライスに再組立する。これは、動作するＦＥＤＰ構成要素およびＣＳＰ構成要素も含むことができるクライアントコンピューティング機器により行われる。次いで、そのように組み立てたファイルスライスは、クライアントコンピューティング機器を使用することによってスライスを出力するための完全なファイルにどのようにして再組立するかをマッピングする第１のメタデータファイルを使用して、ＣＳＰにより完備したビデオファイルに再組立することができる。第２のメタデータファイルは、ファイルを記憶するために使用するＳＮＮの各々に冗長に記憶することができ、第１のメタデータファイルは、同じくクライアントのローカルデータセンタに、および同様に各ＳＮＮに記憶することができる。図１３は、代表的な一実施形態による、クライアントコンピューティング機器を使用してファイルダウンロード処理で行うことができる詳細なステップをさらに記載する表である。
【００６５】
ＩＰカメラビデオおよびビデオファイルの分散記憶のための開示する技術は、既存のシステムよりも有利な点を数多く提示する。これらの有利な点の中には以下がある。
【００６６】
Ａ．データ転送レート
既存のクラウド記憶技術と比較して、開示する実施形態により、典型的なインターネット通信条件の下でデータ転送の速度をかなり改善することができる。最大３００ｍｂｐｓの速度が実証された。この速度改善はいくつかの要因による。
【００６７】
ファイルを再構成するとき、ファイルに付随した「部分」が複数のサーバから／サーバに並列に転送され、その結果、スループットがかなり改善される。これは、今日使用されている広く普及したダウンロードアクセラレータ技術の一部にたとえることができ、この技術はまたファイルの部分をダウンロードするために複数のチャネルをオープンし、その結果、ダウンロードレートがかなり引き上げられる。クラウドサーバの１つに至る転送接続の１つで発生する場合がある待ち時間ボトルネックが、標準的待ち時間の条件の下で動作しているその他のサーバに至る、より高速な転送を停止させることはない。
【００６８】
分散記憶に由来して、データのセキュリティおよび信頼性が本質的に改善されることにより、複製によるデータの読出し／書込みを絶えずミラーリングする必要がなくなり、その結果、スループットの速度が改善される。
【００６９】
いくつかの実装形態では、最も多くの資源を使用するデータの処理が、クラウド内の１つまたは複数の非常に高性能のサーバ上のサーバ側で発生する可能性があり、このサーバは、クラウドサーバ記憶サイトとクライアントサイトの両方に対する速度および接続性のために最適化される。詳細には、ある種の実施形態でイレージャーコーディングをサーバ側で、たとえば、複数のデータ処理サーバ上で行うことができる。これらのサーバは、イレージャーコーディング処理が典型的には中央処理装置（ＣＰＵ）の負荷が高いタスクなので、高い処理性能を有するように選ぶことができる。これにより、イレージャーコーディングを効率的に行うためのハードウェアインフラストラクチャおよびソフトウェアインフラストラクチャを欠く可能性があるＩＰカメラ側で、または単一機器上で行われるイレージャーコーディングと比較して、性能が改善されることになる。最適化されたサーバのグループにそのような処理を移動することにより、負荷および性能の要件がクライアント側で低減される。
【００７０】
Ｂ．データセキュリティ
開示する「仮想機器」記憶により、データセキュリティに関してこれまでの設計に対して著しい改善が行われる。各メディアファイルを多くのファイルスライス断片に切断し、ファイルスライス断片を多くのクラウド記憶場所にわたり、好ましくは地理的に分散した場所に分散させることにより、ハッカーが、ファイルをその元の形態に再組立することがきわめて困難であることを知ることができる。さらに、ファイルスライス断片は、ある種の実施形態ではすべて暗号化され、データセキュリティの別のレイヤを追加して、潜在的ハッカーを困惑させる。クラウド記憶場所の１つのハッキングに成功したことで、全部そろったメディアファイルを再組立する能力がハッカーに与えられるわけではない。これは、これまでの設計と比べてかなりのデータセキュリティの改善になる。
【００７１】
ある種の実施形態では、ファイルスライス断片の処理と記憶の両方のために使用するサーバを、複数のクライアントで共用することができ、ハッカーがデータスライスから、それらがどのクライアントに属している可能性があるかを識別する方法がまったくない。これにより、ハッカーが、この技術を使用して、記憶したファイルデータのセキュリティを脅かすことがより困難になる。ファイルスライス断片を異なるクラウド記憶サーバにランダムに分散させることができ、データ記憶のセキュリティがさらに向上する。ある種の実施形態では、クライアントは、すべてのファイルスライス断片が直接分散させられた正確な場所がわからない。また、どの１つの置き場所にも、ファイルスライス断片を再組立するおよび／またはファイルスライス断片を解読するためのすべての鍵が記憶されていない。最後に、データセキュリティをさらに向上させるものとして、データを再構成するために必要なメタデータがクライアント側と遠隔クラウド記憶サーバの両方に記憶される、メタデータ記憶の２次元モデルを使用することができる。
【００７２】
開示する速度およびセキュリティの改善、ならびに利用できる記憶資源をより多く利用することにより、今日の通信プロトコルおよび通信技術を使用して、より高いビデオデータ転送レートが可能になる。
【００７３】
Ｃ．データ可用性
開示する「仮想機器」記憶により、従来の記憶技術と比較して、データの可用性の改善もまた行われる。いくつかの異なるクラウドサーバ上に記憶される複数のファイルスライス断片にファイルを分割することにより、クライアントの場所と、物理的なクラウドの場所の１つとの間の通信問題を、他のデータの場所との標準的な通信および他のデータの場所での低待ち時間により補うことができる。ファイル断片を複数の場所の間で分散させる総合的効果は、サイトの１つで通信が途絶することによる機能停止から全システムを隔離することである。
【００７４】
ファイルスライス断片を記憶するために多くの記憶ノードを使用することにより、クライアントデータを記憶する際に利用できるセキュリティが大きく高まる。ハッカーが、多数のＳＮＮで本質的に異なるスライス断片すべてを取り出し、かつ使用できるファイルに再組立するために必要な情報を見つけ出す作業が、非常に手に負えなくなる。
【００７５】
スライス断片を分散させるためにイレージャーコーディングを使用することにより、システムが、複数のデータ複製、複数のデータ複製につきものの余分にかかる負荷およびセキュリティリスクをなしで済ますことができるようになる、イレージャーコーディングにつきものの誤り検査／訂正により、信頼性の特別のレイヤが追加される。
【００７６】
好ましくは、中間サーバ処理ノードがすべて高性能プロセッサからなり、低待ち時間を有する。これにより、データ転送のためにクライアントに高可用性がもたらされる。
【００７７】
好ましくは、中間サーバ処理ノードは、そのサービスを要求するクライアントに対する待ち時間を最小にするために、各クライアントリクエストに応答して動的に選ぶことができる。クライアントはまた、ファイルスライス断片を記憶するために使用するクラウド記憶サーバのリストから選択することができ、クライアントの地理的場所、およびこれらのサーバの可用性に基づき、このリストを最適化することができる。これにより、各転送リクエストを行うときに、各クライアントに対するデータ可用性がさらに最大化される。
【００７８】
Ｄ．データ信頼性
開示する「仮想機器」記憶はまた、クラウドデータ記憶システムの信頼性の点で従来技術よりも改善をもたらす。各ファイルをファイルスライス断片に分離することは、ある種のすでに存在するシステムのように、ファイル全体が１つの物理的な場所に記憶される場合に当てはまる可能性があるように、ハードウェアもしくはソフトウェアの障害、または物理的なクラウド記憶の場所の１つで起きたエラーが、ファイルへのアクセスを妨害しないことを意味する。
【００７９】
さらに、本明細書で説明するイレージャーコーディング技術を使用することは、システムの高品質な誤り訂正能力を保証し、データセキュリティと信頼性の両方を向上させる。
【００８０】
元のデータを認識できなくするイレージャーコーディング、および冗長データを有する複数のノードを使用することにより、強力で安全な誤り訂正技術が追加される。パケット損失問題はもはや問題となる考慮事項ではない。開示する技術は、サービスエリア全体にわたり複数のサーバ上で元のビデオファイルの全部そろった冗長な複製を行う必要性をなくする。イレージャーコーディングは、その後一連のファイル断片記憶ノードに分散させられる一連のファイルスライス断片を作成する一方で、あらかじめ定義したレベルの冗長性をデータ収集物に追加する。この処理で使用するイレージャーコーディングのために、３０％以上の最適な冗長性が望ましい。メディアファイルに頻繁にアクセスする場合、システムは特定のスライスのファイルオブジェクト冗長性を高めることができる。
【００８１】
Ｅ．既存のクラウドインフラストラクチャ資源の使用
開示する主題の要素は、公的資源および私的資源を使って既存のクラウド・サーバ・インフラストラクチャを利用することができる。現在のクラウドプロバイダをその既存のハードウェアインフラストラクチャおよびソフトウェアインフラストラクチャを使って、開示する方法論で使用するためにセットアップすることができる。したがって、現在、既存のクラウド資源を修正なしに、または最小の修正で使用することができるので、本明細書で開示する技術により行われる向上の大部分を最小の投資で利用できるようにすることができる。
【００８２】
さらに、ファイルスライス断片の処理と記憶の両方のために使用するサーバを、複数のクライアントで共用することができ、ハッカーがスライスから、それがどのクライアントに属すかを識別する方法がまったくない。これにより、ハッカーが、この技術を使用して記憶したメディア・ファイル・データのセキュリティを脅かすことがより困難になる。
【００８３】
Ｆ．記憶インフラストラクチャコストの低減
ある種の実施形態が、既存のクラウド記憶技術ソリューションと比較してはるかに少ない冗長性を必要とする。前述のように、これまでの記憶システムは、ミラーリングおよび複製専用の５００％もの追加記憶領域を必要とする可能性がある。本明細書で開示する実施形態は、実施形態につきもののより高い信頼性のために、元のファイルサイズに対して３０％だけの冗長性でうまく動作することができる。３０％だけの冗長性でさえ、既存のシステムに対してより高いレベルの信頼性を達成することができる。高い冗長性の必要性が低下した結果、クラウド記憶容量のためのコストがより低くなる。
【００８４】
要約すると、代表的な一実施形態では、本明細書で開示するＩＰカメラカメラビデオ処理／符号化および分散記憶技術により、以下の基本タスクが成し遂げられる。
１）ＩＰカメラのビデオファイルを部分に、すなわち認識できない部分を提供するためにイレージャーコーディングされるファイル断片にさらにまた切断することができるファイルスライスに分割すること。
２）クライアントコンピュータでデータを組み立てることができるようにファイルがどのように分割されているかを記述する、ファイルスライスのマップを作成すること。このマップはメタデータファイルに記憶される。
３）データセキュリティを追加するためにファイルスライスを任意選択で暗号化すること。
４）データ記憶のサイズを低減するため、および転送速度を改善するために、ファイルスライスを任意選択で圧縮すること。
５）誤り訂正およびデータ回復を向上させることができるようにするために、ファイルスライスをイレージャーコーディングすること。スライスは、イレージャーコーディング処理によりファイルスライス断片に分けられる。
６）ファイルスライス断片をファイルスライスに再組立するために必要な、ファイルスライス断片のマップを作成すること。このマップは第２のメタデータファイルに記憶される。
７）データセキュリティを追加するためにファイルスライス断片を任意選択で暗号化すること。
８）記憶スペース要件を低減するため、および転送速度を改善するために、ファイルスライス断片を任意選択で圧縮すること。
９）クライアントのメディアプレーヤ（またはブラウザ）上で再生するために、クライアント機器上でファイルスライス断片を復号し、ファイルスライスに、次いで完全なビデオファイルに再組立すること。断片を適切な順序でスライスに組み立てなければならず、かつスライスを適切な順序で完全なファイルに組み立てなければならないことに留意されたい。クライアントソフトウェアは、これら２つの段階でビデオファイルを再組立するために、２つのメタデータファイルにより提供されるマッピング情報を使用する。
【００８５】
この技術の基本構造を、以下の動作要素により実装されているとして可視化することができる。
【００８６】
１．ＩＰカメラのＣＳＰ（図６Ａを参照のこと）が、ビデオファイルをファイルスライスにスライスし、任意選択でスライスを暗号化し、スライスをどのようにして元のメディアファイルに再組立するかのマップを有するメタデータファイルを生成する。メタデータファイルはまた、スライスを適切な順序で組み立てるために必要な、各ファイルスライスの順序に関する情報を維持する。
【００８７】
２．ＩＰカメラのＦＥＤＰ（図６Ａを参照のこと）が、認識できない部分を作り出すイレージャーコーディングを使用して、各ファイルスライスをファイルスライス断片に切断する。代表的な一実施形態では、イレージャーコーディングが３０％のデータ冗長性を追加する。第２のメタデータファイルが、ファイルスライス断片をどのようにしてファイルスライスに再組立するかをマッピングする。第２のメタデータファイルはまた、クライアント機器上で断片を再生する間に、スライスを適切な順序で組み立てるために必要な、各断片の順序に関する情報を維持する。
【００８８】
３．ＳＮＮは、データ断片を分散させるために使用する、さまざまな記憶ノードである。記憶ノードは、必ずしもクラウド内のすべてのサーバではない。ノードは、データセンタ、コンピュータ内のハードディスク、移動体機器、またはデータを記憶することができる何らかの他のマルチメディア機器とすることができる。これらの記憶ノードの数および識別情報は、ノードが最小の平均待ち時間および最良の可用性を有する記憶構成で待ち時間およびセキュリティを最適化するように選択することができる。
【００８９】
４．ビデオ・コンテンツ・ファイルにアクセスし、ビデオ・コンテンツ・ファイルを再構成するために実装することができるエンド・ユーザ・クライアント・デコーダ（ｅｎｄ−ｕｓｅｒ  ｃｌｉｅｎｔ  ｄｅｃｏｄｅｒ、ＥＣＤ）。この第４のレイヤが、１つまたは複数のビデオファイルにアクセスするためにメディア・ホスト・エンティティへのリクエストを起動し、次いで、記憶する間に生成された２つのメタデータファイルから得られるマッピングファイルを受信し、上記により、ＥＣＤが、ビデオファイルの再生または記憶のために、ファイルスライス断片を取り出し、ファイルスライス断片をスライスに、およびスライスを元のビデオファイルに組み立てることができるようになる。明らかなように、メディアコンテンツをオンデマンドで再生するために必要な適切な順序でビデオファイルを組み立てるべきである。
【００９０】
本明細書は多くの具体的実装の詳細を含むが、これらは、任意の発明の範囲、すなわち特許請求することができるものの範囲の限定と解釈されるべきではなく、むしろ、特定の発明の特定の実施形態に特有の特徴の説明として解釈されるべきである。別個の実施形態に関連して本明細書に記載するある種の特徴はまた、単一の実施形態で組み合わせて実装することができる。逆に、単一の実施形態に関連して記載するさまざまな特徴はまた、複数の実施形態で別個に、または任意の適切な副組合せで実装することができる。さらに、特徴について、ある種の組合せで作動するとして、およびそのようなものとして最初に特許請求されるとしてさえ上記で記載する場合があるが、場合によっては、特許請求される組合せからの１つまたは複数の特徴を、組合せから切り取ることができ、特許請求される組合せが、副組合せまたは副組合せの変形を対象とする場合がある。
【００９１】
同様に、動作について特定の順序で図面に描いているが、これを、所望の結果を達成するために、そのような動作が、示される特定の順序で、または連続した順序で行われること、または例示する動作すべてが行われることを要求していると理解すべきではない。ある種の状況では、マルチタスキングおよび並列処理が有利な場合がある。さらに、上記に記載する実施形態でさまざまなシステム構成要素を分離していることを、すべての実施形態でそのような分離を必要としていると理解すべきではなく、記載するプログラム構成要素およびシステムを、一般に単一のソフトウェア製品に一緒に統合する、または複数のソフトウェア製品にパッケージ化することができることを理解されたい。
【００９２】
このように、主題の特定の実施形態について記載した。他の実施形態が、以下の特許請求の範囲にはいる。場合によっては、特許請求の範囲で説明する活動が、異なる順序で行われる可能性があり、依然として所望の結果を達成することができる。さらに、添付図面に描く処理は、所望の結果を達成するために、図示する特定の順序を、または連続した順序を必ずしも必要としない。ある種の実装形態では、マルチタスキングおよび並列処理が有利な場合がある。
【図１】
2018525866.tif 000003
【図２】
2018525866.tif 000004
【図３】
2018525866.tif 000005
【図４Ａ】
2018525866.tif 000006
【図４Ｂ】
2018525866.tif 000007
【図５】
2018525866.tif 000008
【図６Ａ】
2018525866.tif 000009
【図６Ｂ】
2018525866.tif 000010
【図７Ａ】
2018525866.tif 000011
【図７Ｂ】
2018525866.tif 000012
【図７Ｃ】
2018525866.tif 000013
【図８】
2018525866.tif 000014
【図９】
2018525866.tif 000015
【図１０】
2018525866.tif 000016
【図１１】
2018525866.tif 000017
【図１２】
2018525866.tif 000018
【図１３】
2018525866.tif 000019
【国際調査報告】
2018525866.tif 000020
2018525866.tif 000021
2018525866.tif 000022
2018525866.tif 000023