IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ インターナショナル・ビジネス・マシーンズ・コーポレーションの特許一覧

特許7372013ライブ・ストリーミング・ビデオの低遅延のコンテンツの無害化および再構築(CDR)
<>
  • 特許-ライブ・ストリーミング・ビデオの低遅延のコンテンツの無害化および再構築(CDR) 図1
  • 特許-ライブ・ストリーミング・ビデオの低遅延のコンテンツの無害化および再構築(CDR) 図2
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-10-23
(45)【発行日】2023-10-31
(54)【発明の名称】ライブ・ストリーミング・ビデオの低遅延のコンテンツの無害化および再構築(CDR)
(51)【国際特許分類】
   H04N 19/40 20140101AFI20231024BHJP
   H04N 19/126 20140101ALI20231024BHJP
   H04N 19/46 20140101ALI20231024BHJP
   H04N 21/2343 20110101ALI20231024BHJP
   H04N 21/647 20110101ALI20231024BHJP
【FI】
H04N19/40
H04N19/126
H04N19/46
H04N21/2343
H04N21/647
【請求項の数】 9
(21)【出願番号】P 2021551800
(86)(22)【出願日】2020-03-12
(65)【公表番号】
(43)【公表日】2022-05-11
(86)【国際出願番号】 IB2020052222
(87)【国際公開番号】W WO2020188421
(87)【国際公開日】2020-09-24
【審査請求日】2022-08-24
(31)【優先権主張番号】16/355,775
(32)【優先日】2019-03-17
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】390009531
【氏名又は名称】インターナショナル・ビジネス・マシーンズ・コーポレーション
【氏名又は名称原語表記】INTERNATIONAL BUSINESS MACHINES CORPORATION
【住所又は居所原語表記】New Orchard Road, Armonk, New York 10504, United States of America
(74)【代理人】
【識別番号】100112690
【弁理士】
【氏名又は名称】太佐 種一
(72)【発明者】
【氏名】アズライ、オフィール
【審査官】田中 純一
(56)【参考文献】
【文献】特表2007-501577(JP,A)
【文献】国際公開第2008/090793(WO,A1)
【文献】米国特許出願公開第2010/0086225(US,A1)
【文献】特表2018-509067(JP,A)
【文献】米国特許出願公開第2016/0234496(US,A1)
【文献】特開2007-318574(JP,A)
【文献】特開2014-064279(JP,A)
【文献】米国特許出願公開第2012/0264465(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
H04N 7/10 - 7/173
H04N 7/20 - 7/56
H04N 19/00 - 19/98
H04N 21/00 - 21/858
IEEE Xplore
(57)【特許請求の範囲】
【請求項1】
符号化ビデオ・ストリームに埋め込まれる可能性のある悪意のあるエージェントを無効にするために、前記符号化ビデオ・ストリームを無害化および再構築する方法であって、
受信した符号化ビデオ・ストリームを復号して復号ビデオ・ストリームを取得し、
前記符号化ビデオ・ストリームを作成するための発信エンコーダによって計算された符号化情報を、前記符号化ビデオ・ストリームから抽出し、
前記符号化情報で定義された少なくとも1つの量子化パラメータを、量子化パラメータ値の範囲からのランダムな値の選択に基づいて計算された、それぞれの調整済み量子化パラメータに置き換えることによって、前記符号化情報を調整し、
前記調整済み符号化情報を使用して前記復号ビデオ・ストリームを符号化して、修正済み符号化ビデオ・ストリームを生成し、かつ
前記修正済み符号化ビデオ・ストリームを送信する
ために、少なくとも1つのプロセッサを使用することを含む、方法。
【請求項2】
前記受信した符号化ビデオ・ストリームが、前記符号化ビデオ・ストリームをカプセル化する受信トランスポート・ストリームから抽出される、請求項1に記載の方法。
【請求項3】
前記修正済み符号化ビデオ・ストリームが、出力トランスポート・ストリームにカプセル化される、請求項1または2に記載の方法。
【請求項4】
前記符号化ビデオ・ストリームが、ライブ・イベントを描写するライブ符号化ビデオ・ストリームである、請求項1~3のいずれか1項に記載の方法。
【請求項5】
前記符号化ビデオ・ストリームが、MPEG-1、MPEG-2、MPEG-4、H.261、H.263、H.264、およびH.265からなる群のうちの1つであるビデオ・コーディング・プロトコルに従って符号化される、請求項1~4のいずれか1項に記載の方法。
【請求項6】
前記符号化情報が、前記符号化ビデオ・ストリームで符号化された複数のフレームについて前記発信エンコーダによって生成された、動きベクトル、量子化パラメータ、およびマクロブロック・タイプを含む、請求項1~5のいずれか1項に記載の方法。
【請求項7】
前記それぞれの調整済み量子化パラメータの量子化パラメータ値が、前記少なくとも1つの量子化パラメータの量子化パラメータ値以下である、請求項1~6のいずれか1項に記載の方法。
【請求項8】
符号化ビデオ・ストリームに埋め込まれる可能性のある悪意のあるエージェントを無効にするために、前記符号化ビデオ・ストリームを無害化および再構築するためのシステムであって
受信した符号化ビデオ・ストリームを復号して復号ビデオ・ストリームを取得する手段と、
前記符号化ビデオ・ストリームを作成するための発信エンコーダによって計算された符号化情報を、前記符号化ビデオ・ストリームから抽出する手段と、
前記符号化情報で定義された少なくとも1つの量子化パラメータを、量子化パラメータ値の範囲からのランダムな値の選択に基づいて計算された、それぞれの調整済み量子化パラメータに置き換えることによって、前記符号化情報を調整する手段と、
前記調整済み符号化情報を使用して前記復号ビデオ・ストリームを符号化して、修正済み符号化ビデオ・ストリームを生成する手段と、
前記修正済み符号化ビデオ・ストリームを送信する手段
を含む、システム。
【請求項9】
符号化ビデオ・ストリームに埋め込まれる可能性のある悪意のあるエージェントを無効にするために、前記符号化ビデオ・ストリームを無害化および再構築するためのコンピュータ・プログラムであって、
前記コンピュータ・プログラムは、コンピュータに、
受信した符号化ビデオ・ストリームを復号して復号ビデオ・ストリームを取得することと、
前記符号化ビデオ・ストリームを作成するための発信エンコーダによって計算された符号化情報を、前記符号化ビデオ・ストリームから抽出することと、
前記符号化情報で定義された少なくとも1つの量子化パラメータを、量子化パラメータ値の範囲からのランダムな値の選択に基づいて計算された、それぞれの調整済み量子化パラメータに置き換えることによって、前記符号化情報を調整することと、
前記調整済み符号化情報を使用して前記復号ビデオ・ストリームを符号化して、修正済み符号化ビデオ・ストリームを生成することと、
前記修正済み符号化ビデオ・ストリームを送信すること
実行させる
ンピュータ・プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、その一部の実施形態において、符号化ビデオ・ストリームのコンテンツの無害化および再構築(CDR)に関し、より詳細には、限定されないが、符号化ビデオから抽出され、修正済み符号化ビデオ・ストリームを生成するように調整された符号化情報を使用して、符号化ライブ・ビデオ・ストリームをストリーミングする低遅延CDRに関する。
【背景技術】
【0002】
現代の生活サービス、アプリケーション、システム、プラットフォームが情報技術、情報共有、および分散コンピューティングにますます依存するようになっているため、そのような情報およびコンピュータ・リソースの公開、変更、無効化、破壊、盗用、不正アクセス、または不正使用を試みる悪意のある当事者(例えばハッカ)が仕掛けるサイバ脅威およびサイバ攻撃に対する幅広い方法が開かれている。
【0003】
したがって、サイバ・セキュリティは大きな課題となっており、悪意のあるサイバ攻撃を考え出す悪意のある当事者と、これらの悪意のあるサイバ攻撃の特定、ブロック、または中和、あるいはその組合せを行うための対策を開発および展開するためのサイバ・セキュリティの取組みとの間で絶え間ない競争が行われている。
【0004】
サイバ・セキュリティの取組みの一環として、サイバ脅威の様々な側面および特徴に注目してこれを利用するための多くの方法、技法、およびツールが開発されている。しかしながら、サイバ脅威の性質、フットプリント、種類、パターン、特徴、影響、または動作モード、あるいはその組合せは、常に存在するサイバ・セキュリティの課題を絶えず変化させている。
【発明の概要】
【0005】
本発明の第1の態様によれば、符号化ビデオ・ストリームに埋め込まれる可能性のある悪意のあるエージェントを無効にするために、符号化ビデオ・ストリームを無害化および再構築する方法であって、
- 受信した符号化ビデオ・ストリームを復号して復号ビデオ・ストリームを取得し、
- 符号化ビデオ・ストリームを作成するための発信エンコーダによって計算された符号化情報を、符号化ビデオ・ストリームから抽出し、
- 符号化情報で定義された1つまたは複数の量子化パラメータを、量子化パラメータ値の範囲からのランダムな値の選択に基づいて計算された、それぞれの調整済み量子化パラメータに置き換えることによって、符号化情報を調整し、
- 調整済み符号化情報を使用して復号ビデオ・ストリームを符号化して、修正済み符号化ビデオ・ストリームを生成し、かつ
- 修正済み符号化ビデオ・ストリームを送信する
ために、1つまたは複数のプロセッサを使用することを含む方法が提供される。
【0006】
本発明の第2の態様によれば、符号化ビデオ・ストリームに埋め込まれる可能性のある悪意のあるエージェントを無効にするために、符号化ビデオ・ストリームを無害化および再構築するためのシステムであって、コードを実行する1つまたは複数のプロセッサを含む、システムが提供される。コードは、
- 受信した符号化ビデオ・ストリームを復号して復号ビデオ・ストリームを取得するためのコード命令と、
- 符号化ビデオ・ストリームを作成するための発信エンコーダによって計算された符号化情報を、符号化ビデオ・ストリームから抽出するためのコード命令と、
- 符号化情報で定義された1つまたは複数の量子化パラメータを、量子化パラメータ値の範囲からのランダムな値の選択に基づいて計算された、それぞれの調整済み量子化パラメータに置き換えることによって、符号化情報を調整するためのコード命令と、
- 調整済み符号化情報を使用して復号ビデオ・ストリームを符号化して、修正済み符号化ビデオ・ストリームを生成するためのコード命令と、
- 修正済み符号化ビデオ・ストリームを送信するためのコード命令とを含む。
【0007】
本発明の第3の態様によれば、符号化ビデオ・ストリームに埋め込まれる可能性のある悪意のあるエージェントを無効にするために、符号化ビデオ・ストリームを無害化および再構築するためのコンピュータ・プログラム製品であって、
- 非一過性のコンピュータ可読記憶媒体と、
- 受信した符号化ビデオ・ストリームを復号して復号ビデオ・ストリームを取得するための第1のプログラム命令と、
- 符号化ビデオ・ストリームを作成するための発信エンコーダによって計算された符号化情報を、符号化ビデオ・ストリームから抽出するための第2のプログラム命令と、
- 符号化情報で定義された1つまたは複数の量子化パラメータを、量子化パラメータ値の範囲からのランダムな値の選択に基づいて計算された、それぞれの調整済み量子化パラメータに置き換えることによって、符号化情報を調整するための第3のプログラム命令と、
- 調整済み符号化情報を使用して復号ビデオ・ストリームを符号化して、修正済み符号化ビデオ・ストリームを生成するための第4のプログラム命令と、
- 修正済み符号化ビデオ・ストリームを送信するための第5のプログラム命令とを含み、
第1のプログラム命令、第2のプログラム命令、第3のプログラム命令、第4のプログラム命令、および第5のプログラム命令が、非一過性のコンピュータ可読記憶媒体から1つまたは複数のプロセッサによって実行される、コンピュータ・プログラム製品が提供される。
【0008】
第1の態様、第2の態様、または第3の態様、あるいはその組合せのさらなる実装形態において、受信した符号化ビデオ・ストリームは、符号化ビデオ・ストリームをカプセル化する受信トランスポート・ストリームから抽出される。
【0009】
第1の態様、第2の態様、または第3の態様、あるいはその組合せのさらなる実装形態において、修正済み符号化ビデオ・ストリームは、出力トランスポート・ストリームにカプセル化される。
【0010】
第1の態様、第2の態様、または第3の態様、あるいはその組合せのさらなる実装形態において、符号化ビデオ・ストリームは、ライブ・イベントを描写するライブ符号化ビデオ・ストリームである。
【0011】
第1の態様、第2の態様、または第3の態様、あるいはその組合せのさらなる実装形態において、符号化ビデオ・ストリームは、ビデオ・コーディング・プロトコル、例えば、MPEG-1、MPEG-2、MPEG-4、H.261、H.263、H.264、またはH.265、あるいはその組合せに従って符号化される。
【0012】
第1の態様、第2の態様、または第3の態様、あるいはその組合せのさらなる実装形態において、符号化情報は、符号化ビデオ・ストリームで符号化された複数のフレームについて発信エンコーダによって生成された、動きベクトル、量子化パラメータ、およびマクロブロック・タイプを含む。
【0013】
第1の態様、第2の態様、または第3の態様、あるいはその組合せのさらなる実装形態において、それぞれの調整済み量子化パラメータの量子化パラメータ値は、それぞれの量子化パラメータの量子化パラメータ値以下である。
【0014】
本開示の他のシステム、方法、特徴、および利点は、以下の図面および詳細な説明を考察すれば当業者に明らかであろうまたは明らかになるであろう。このような追加のシステム、方法、特徴、および利点はすべて、この説明に含まれ、本開示の範囲内にあり、添付の特許請求の範囲によって保護されることを意図している。
【0015】
特に定義しない限り、本明細書で使用するすべての技術用語または科学用語あるいはその両方は、本発明が属する技術分野の当業者によって通常理解されるものと同じ意味を有する。本明細書に記載のものと同様または同等の方法および材料を、本発明の実施形態の実践または試験に使用することができるが、例示的な方法または材料あるいはその両方を以下に記載する。矛盾する場合、定義を含む特許明細書が優先する。加えて、材料、方法、および実施例は単なる例示であり、必ずしも限定を意図するものではない。
【0016】
本発明の実施形態の方法またはシステムあるいはその両方の実装形態は、選択したタスクを手動で、自動的に、またはそれらの組合せで実行または完了することを含むことができる。さらに、本発明の方法またはシステムあるいはその両方の実施形態の実際の計装および装備によれば、いくつかの選択されたタスクを、ハードウェア、ソフトウェア、ファームウェア、またはオペレーティング・システムを使用したそれらの組合せによって実施することができる。
【0017】
例えば、本発明の実施形態による選択されたタスクを実行するためのハードウェアは、チップまたは回路として実装され得る。ソフトウェアとしては、本発明の実施形態による選択されたタスクは、任意の適切なオペレーティング・システムを使用してコンピュータによって実行されている複数のソフトウェア命令として実装され得る。本発明の例示的な実施形態において、本明細書に記載の方法またはシステムあるいはその両方の例示的な実施形態による1つまたは複数のタスクは、複数の命令を実行するためのコンピューティング・プラットフォームなどのデータ・プロセッサによって実行される。オプションとして、データ・プロセッサは、命令もしくはデータまたはその両方を格納するための揮発性メモリ、または命令もしくはデータまたはその両方を格納するための不揮発性ストレージ(例えば、磁気ハードディスクもしくはリムーバブル・メディアまたはその両方)、あるいはその両方を含む。オプションとして、ネットワーク接続も提供される。ディスプレイ、またはキーボードもしくはマウスなどのユーザ入力デバイス、あるいはその両方もオプションとして提供される。
【0018】
添付図面を参照しながら、本発明のいくつかの実施形態について、例としてのみ本明細書で説明する。以下で図面を詳細に参照するが、これらの詳細は例として示されており、本発明の実施形態の例示的な説明を目的としていることが強調される。これに関して、図面を用いた説明により、本発明の実施形態を実践し得る方法が当業者に明らかになる。
【図面の簡単な説明】
【0019】
図1】本発明の一部の実施形態による、符号化ビデオ・ストリームに埋め込まれる可能性のある悪意のあるエージェントを無効にするために、符号化ビデオ・ストリームを無害化および再構築する例示的なプロセスのフローチャートである。
図2】本発明の一部の実施形態による、符号化ビデオ・ストリームに埋め込まれる可能性のある悪意のあるエージェントを無効にするために、符号化ビデオ・ストリームを無害化および再構築するための例示的なシステムの概略図である。
【発明を実施するための形態】
【0020】
本発明は、その一部の実施形態において、符号化ビデオ・ストリームのCDRに関し、より詳細には、限定されないが、符号化ビデオから抽出され、修正済み符号化ビデオ・ストリームを生成するように調整された符号化情報を使用して、符号化ライブ・ビデオ・ストリームをストリーミングする低遅延CDRに関する。
【0021】
本発明の一部の実施形態によれば、符号化ビデオ・ストリームに埋め込まれる可能性のある悪意のあるエージェントを無効にするための、受信した符号化ビデオ・ストリームのコンテンツの無害化および再構築(CDR)のための方法、システム、およびコンピュータ・プログラム製品が提供され、符号化ビデオ・ストリームは、1つまたは複数の符号化プロトコル、例えば、MPEG-1、MPEG-2、MPEG-4、H.261、H.263、H.264、H.265などに従って符号化されたフレームのシーケンスを含む。
【0022】
特に、CDRは、例えばインターネットのような外部の信頼できないネットワークから発生するサイバ脅威に対する、セキュア(内部)・ネットワーク、例えば、プライベート・ネットワーク、企業ネットワーク、組織ネットワーク、工場ネットワーク、機関ネットワークなどの免疫を高めるように指示される。そのため、受信した符号化ビデオ・ストリームのCDRは、セキュア(内部)・ネットワークと外部の信頼できないネットワークとの間のゲートとして機能する1つまたは複数のアクセス・システムまたはデバイスあるいはその両方、例えば、ゲートウェイ、ルータ、プロキシ・サーバなどによって適用され得る。
【0023】
符号化ビデオ・ストリームは信頼できないネットワークから受信されるため、1つまたは複数の悪意のあるプログラム・コンポーネント、例えば、ウイルス、ワーム、トロイの木馬、悪意のあるエージェント、ランサムウェア、スパイウェア、アドウェア、スケアウェアなどが、受信(入力)した符号化ビデオ・ストリームに存在する可能性がある。このような悪意のあるプログラム・コンポーネントは、セキュア・ネットワーク内のリソースを公開、変更、無効化、破壊、盗用、不正アクセス、または不正使用、あるいはその組合せを行うように構成されることがある。
【0024】
CDRプロセス中、受信した符号化ビデオ・ストリームは、最初に復号されて符号化ビデオを復号し、次に復号ビデオが再構築され、すなわち、元の符号化プロトコルに従って再符号化されて、受信した符号化ビデオ・ストリームと比較して修正され得る出力符号化ビデオ・ストリームを生成する。ビデオが復号された後に再符号化されるため、受信した符号化ビデオ・ストリームに追加され、注入され、または存在する、あるいはその組合せの冗長コンポーネント、特に悪意のあるプログラム・コンポーネントを、削除するか、または少なくとも悪意のあるプログラム・コンポーネントを無効にする程度に変更することにより、悪意のあるプログラム・コンポーネントの悪意のある動作を防止することができる。
【0025】
入力符号化ビデオ・ストリームの復号は、比較的簡単であり得るため、例えば、処理能力、処理時間、ストレージ・リソースなどのコンピューティング・リソースの消費が限られる。しかしながら、高いビデオ品質を維持しながらビデオ・ストリームを圧縮するために適用される符号化プロトコルがリソースを極度に消費する可能性があるため、復号ビデオを再符号化して出力符号化ビデオ・ストリームを生成するには、大量のコンピューティング・リソースが必要になる場合がある。
【0026】
ビデオ・ストリームの圧縮は、主に、ビデオ・ストリームの後続フレーム間の空間的および時間的冗長性を低減することに基づく。この冗長性を特定して利用するために、高度な動き推定技術を、符号化情報、例えば、動きベクトル、量子化パラメータ、マクロブロック・タイプなどの計算に適用して、符号化ビデオ・ストリームを生成する。動き推定は、複雑な画像処理および動き予測アルゴリズムを含むため、さらに大きな電力消費を招く可能性のある大量のコンピューティング・リソース、例えば、処理能力、処理時間、ストレージ・リソースなどを必要とする場合がある。
【0027】
したがって、ビデオ・ストリームを再符号化して出力符号化ビデオ・ストリームを生成するのに必要なコンピューティング・リソースを削減するために、受信(入力)した符号化ビデオ・ストリームを符号化した発信エンコーダによって計算された符号化情報を、入力符号化ビデオ・ストリームから抽出して、出力符号化ビデオ・ストリームを生成するために使用することができる。したがって、CDRプロセス中に、出力符号化ビデオ・ストリームを生成するために動き推定計算が行われるのではなく、出力符号化ビデオ・ストリームは、発信エンコーダによって計算された符号化情報を使用して生成(符号化)される。
【0028】
具体的には、抽出された符号化情報を使用して出力符号化ビデオ・ストリームを生成することにより、CDR時間が大幅に短縮されるため、入力符号化ビデオ・ストリームを受信した時間から出力符号化ビデオ・ストリームを送信する時間までの待ち時間を大幅に短縮することができる。これは、符号化ビデオ・ストリームがライブ・イベントを描写するライブ・ストリーミング符号化ビデオ・ストリームである場合に特に重要となり得る。
【0029】
しかしながら、人間または自動のいずれかあるいはその両方である悪意のある当事者は、再構築された出力符号化ビデオ・ストリームの構造を予測できる可能性があり、悪意のあるプログラム・コンポーネントのうちの1つまたは複数がCDRプロセスに耐える(CDRプロセスをくぐり抜ける)こと、および出力符号化ビデオ・ストリーム内で悪意のある機能を維持することを可能にし得る方法で、悪意のあるプログラム・コンポーネントを注入する可能性がある。
【0030】
このような悪用を防ぐために、入力符号化ビデオ・ストリームから抽出された符号化情報を調整してから、受信した符号化ビデオ・ストリームと比較して修正され得る出力符号化ビデオ・ストリームを生成(符号化)するために使用することができる。具体的には、符号化情報で定義された量子化パラメータのうちの1つまたは複数を調整済み量子化パラメータに置き換えることによって、符号化情報を調整することができる。修正済み符号化ビデオ・ストリームの構造またはパターンあるいはその両方を確実に予測不能にするために、調整済み量子化パラメータを、量子化パラメータ値の範囲またはグループあるいはその両方からのランダムな値の選択に基づいて計算することができる。したがって、修正済み符号化ビデオ・ストリームのランダムかつ予測不能に修正された構造またはパターンあるいはその両方は、悪意のある当事者が、CDRプロセスに耐え得る悪意のあるプログラム・コンポーネントを注入することを防ぐことができ、または少なくともそのような注入の試みを無益にすることができる。
【0031】
調整後、調整済み符号化情報を使用して出力符号化ビデオ・ストリームを生成(符号化)することにより、出力符号化ビデオ・ストリームは入力(受信)符号化ビデオ・ストリームに修正される。その後、修正済み符号化ビデオ・ストリームを、セキュア・ネットワークに接続されている1つまたは複数の復号クライアント、例えば、サーバ、ネットワーク・ノード、コンピューティング・ノード、コンピュータ、スマートフォンなどに送信する、配布する、または提供する、あるいはその組合せを行うことができる。
【0032】
量子化パラメータは、符号化ビデオ・ストリーム内のフレームをサンプリングするためのサンプリング・レートおよびサンプル数を定義する量子化ステップに直接関連する。したがって、量子化ステップは、符号化ビデオ・ストリームのビットレートに関連して、符号化ビデオ・ストリームの品質に影響を与える。サンプリング・レートおよびサンプル数が品質に変換されるため、量子化ステップは品質に反比例して、量子化ステップが低いほどビデオ品質が高くなり、量子化ステップが高いほどビデオ品質が低くなる。しかしながら、サンプリング・レートおよびサンプル数はビットレートにも変換され、量子化ステップは符号化ビデオのビットレートに反比例して、量子化ステップが低いほどビットレートが高くなり、量子化ステップが高いほどビットレートが低くなる。
【0033】
入力符号化ビデオ・ストリームと比較して出力(および場合により、修正済み)符号化ビデオ・ストリームのビデオ品質を維持して劣化を防ぐために、調整済み量子化パラメータは、入力符号化ビデオ・ストリームから抽出された符号化情報で定義された元の量子化パラメータ以下になるようにランダムに選択される。調整済み量子化パラメータは元の量子化パラメータ以下であるため、修正済みビデオ・ストリームのそれぞれの量子化ステップも低く、最初に受信した符号化ビデオ・ストリームと比較して修正済みビデオ・ストリームの品質劣化はない。
【0034】
調整済み符号化情報を使用して修正済み符号化ビデオ・ストリームを生成(符号化)することは、符号化プロトコルに準拠した任意のデコーダに対してトランスペアレントであるため、デコーダが、元の符号化ビデオ・ストリームについて行うのと同様に、修正済みビデオ・ストリームを復号することができる点を強調すべきである。
【0035】
調整済み符号化情報に基づくCDRを適用することは、既存のCDRまたはサイバ・セキュリティ方法およびシステムあるいはその両方と比較して、大きな利点および利益を示すことができる。
【0036】
まず、調整済み符号化情報に基づくCDRは、未知の悪意のあるプログラム・コンポーネントの構造を削除または少なくとも変更することができる。このプログラム・コンポーネントは、符号化ビデオ・ストリームに存在する場合も存在しない場合もあり、未知のフットプリント、パターン、特徴、影響、動作モードなどを有することがある。したがって、CDRは、サイバ・セキュリティ方法のいくつかによって行われることがあるように、既知のサイバ脅威、すなわち既知の悪意のあるプログラム・コンポーネントを特定するように設計または訓練されるあるいはその両方が行われる必要はない。さらに、このような悪意のあるプログラム・コンポーネントの数が非常に多いと、受信した符号化ビデオ・ストリームをセキュア・ネットワーク上のクライアントに転送する際に、コンピューティング・リソースまたは待ち時間あるいはその両方を大量に利用する可能性がある。一方、調整済み符号化情報に基づくCDRは、既知の悪意のあるプログラム・コンポーネントを特定するために符号化ビデオ・ストリームを処理しないため、コンピューティング・リソースを大幅に削減すると共に、符号化ビデオ・ストリームをセキュア・ネットワーク・クライアントに転送するための待ち時間を大幅に短縮することができる。待ち時間の短い符号化ビデオの転送は、どのビデオ・ストリームにも大きな利点をもたらすことができるが、転送の遅延がユーザ・エクスペリエンスなどを大幅に低下させ得る符号化ライブ・ビデオ・ストリームを転送する際に、短い待ち時間はさらに有益となり得る。
【0037】
さらに、既存のCDR方法の一部は、受信した符号化ビデオ・ストリームを復号し、次に復号ビデオを符号化して、出力符号化ビデオ・ストリームを生成することができる。本明細書で前述したように、復号ビデオを符号化するには、大量のコンピューティング・リソースを必要とする場合があり、これは、符号化ビデオ・ストリームの符号化情報を計算するために適用される複雑でリソースを消費する動き予測アルゴリズムにより、長い待ち時間につながる可能性がある。したがって、既存のCDR方法は、出力符号化ビデオ・ストリームを再構築するために大量のコンピューティング・リソースを必要とする場合があり、通常、出力符号化ビデオ・ストリームをセキュア・ネットワーク・クライアントに配信する際に、かなりの待ち時間が発生する可能性がある。一方、調整済み符号化情報に基づくCDRは、符号化情報を計算するためにいかなる動き推定計算を行うのではなく、発信エンコーダによって計算され、受信した符号化ビデオ・ストリームから抽出された元の符号化情報に基づく符号化情報を使用する。したがって、調整済み符号化情報に基づくCDRは、出力符号化ビデオ・ストリームを再構築するためのコンピューティング・リソースを大幅に削減することができる。計算時間が短縮されるため、調整済み符号化情報に基づくCDRを使用すると、受信した符号化ビデオ・ストリームをセキュア・ネットワーク・クライアントに配信する際の待ち時間を大幅に短縮することができる。
【0038】
さらに、調整済み符号化情報に基づくCDRは、符号化情報をランダムに調整し、それを使用して修正済み符号化ビデオ・ストリームを作成することに基づいているため、修正済み符号化ビデオ・ストリームは、ランダムで予測不能な構造またはパターンあるいはその両方を有することができる。悪意のある当事者は、修正済み符号化ビデオ・ストリームの構造またはパターンあるいはその両方を予測できない可能性があるため、符号化ビデオ・ストリームに存在する場合に、調整済み符号化情報に基づくCDRプロセスに耐える(CDRプロセスをくぐり抜ける)悪意のあるプログラム・コンポーネントを設計することができない可能性がある。
【0039】
発明の少なくとも1つの実施形態を詳細に説明する前に、本発明は、その適用において、以下の説明に示されるか、または図面もしくは実施例またはその両方に示されるか、あるいはその両方に示される構成要素または方法あるいはその両方の構成および配置の詳細に必ずしも限定されないことを理解されたい。本発明は、他の実施形態が可能であり、または様々な方法で実践もしくは実行することができる。
【0040】
当業者が理解するように、本発明の態様は、システム、方法、またはコンピュータ・プログラム製品として具現化され得る。したがって、本発明の態様は、完全にハードウェアの実施形態、完全にソフトウェアの実施形態(ファームウェア、常駐ソフトウェア、マイクロコードなどを含む)、または、本明細書においてすべて一般的に「回路」、「モジュール」、もしくは「システム」と呼ばれることのあるソフトウェアおよびハードウェアの態様を組み合わせた実施形態の形態をとることができる。さらに、本発明の態様は、コンピュータ可読プログラム・コードがその上に具現化された1つまたは複数のコンピュータ可読媒体内に具現化されたコンピュータ・プログラム製品の形態をとることができる。
【0041】
1つまたは複数のコンピュータ可読媒体の任意の組合せを利用することができる。コンピュータ可読記憶媒体は、命令実行デバイスが使用する命令を保持および格納できる有形デバイスであってよい。コンピュータ可読媒体は、コンピュータ可読信号媒体またはコンピュータ可読記憶媒体であってもよい。コンピュータ可読記憶媒体は、限定されないが、例えば、電子、磁気、光、電磁、赤外線、もしくは半導体システム、装置、またはデバイス、あるいはこれらの任意の適切な組合せであってよい。コンピュータ可読記憶媒体のより具体的な例(非網羅的なリスト)には、以下のもの、すなわち、1つまたは複数のワイヤを有する電気接続部、携帯型コンピュータ・ディスケット、ハードディスク、ランダム・アクセス・メモリ(RAM)、読取り専用メモリ(ROM)、消去可能なプログラマブル読取り専用メモリ(EPROMもしくはフラッシュ・メモリ)、光ファイバ、携帯型コンパクト・ディスク読取り専用メモリ(CD-ROM)、光ストレージ・デバイス、磁気ストレージ・デバイス、またはこれらの任意の適切な組合せが含まれる。本明細書の文脈において、コンピュータ可読記憶媒体は、命令実行システム、装置、もしくはデバイスによって使用されるプログラム、または命令実行システム、装置、もしくはデバイスに関連するプログラムを含むまたは格納することができる任意の有形媒体であってよい。
【0042】
コンピュータ可読信号媒体は、例えば、ベースバンド内に、またはキャリア波の一部として、コンピュータ可読プログラム・コードがその中に具現化された伝搬データ信号を含むことができる。このような伝搬信号は、電磁信号、光信号、またはこれらの任意の適切な組合せを含むがこれらに限定されない様々な形態のいずれかをとることができる。コンピュータ可読信号媒体は、コンピュータ可読記憶媒体ではなく、命令実行システム、装置、もしくはデバイスによって使用されるプログラム、または命令実行システム、装置、もしくはデバイスに関連するプログラムを通信、伝搬、または伝送することができる任意のコンピュータ可読媒体であってもよい。
【0043】
コンピュータ可読媒体上に具現化されたコンピュータ可読プログラム命令を含むコンピュータプログラムコードは、無線、有線、光ファイバ・ケーブル、RFなど、またはこれら任意の適切な組合せを含むがこれらに限定されない任意の適切な媒体を使用して送信されてよい。
【0044】
本発明の態様の動作を実行するためのプログラム・コードは、Java(登録商標)、Smalltalk(登録商標)、C++などのオブジェクト指向プログラミング言語、および「C」プログラミング言語または同様のプログラミング言語などの従来の手続き型プログラミング言語を含む、1つまたは複数のプログラミング言語の任意の組合せで書かれていてよい。
【0045】
プログラム・コードは、全体的にユーザのコンピュータ上で、一部がユーザのコンピュータ上で、独立型ソフトウェア・パッケージとして、一部がユーザのコンピュータ上かつ一部がリモート・コンピュータ上で、または全体的にリモート・コンピュータもしくはサーバ上で実行することができる。後者のシナリオにおいて、リモート・コンピュータは、ローカル・エリア・ネットワーク(LAN)もしくはワイド・エリア・ネットワーク(WAN)を含む任意の種類のネットワークを介してユーザのコンピュータに接続することができ、または(例えば、インターネット・サービス・プロバイダを使用してインターネットを介して)外部コンピュータに接続することができる。プログラム・コードは、コンピュータ可読記憶媒体からそれぞれのコンピューティング/処理デバイスにダウンロードすることができ、または、ネットワーク、例えばインターネット、ローカル・エリア・ネットワーク、ワイド・エリア・ネットワーク、または無線ネットワーク、あるいはその組合せを介して外部コンピュータもしくは外部ストレージ・デバイスにダウンロードすることができる。
【0046】
本発明の実施形態による方法、装置(システム)、およびコンピュータ・プログラム製品のフローチャート図またはブロック図あるいはその両方を参照しながら、本発明の態様について本明細書で説明する。フローチャート図またはブロック図あるいはその両方の各ブロック、およびフローチャート図またはブロック図あるいはその両方におけるブロックの組合せは、コンピュータ可読プログラム命令によって実装できることが理解されよう。
【0047】
図中のフローチャート図およびブロック図は、本発明の様々な実施形態によるシステム、方法、およびコンピュータ・プログラム製品の可能な実装形態のアーキテクチャ、機能、および動作を示す。これに関して、フローチャート図またはブロック図の各ブロックは、指定された論理機能を実施するための1つまたは複数の実行可能命令を含む、命令のモジュール、セグメント、または部分を表すことができる。一部の代替実装形態において、ブロックに示す機能を、図示する順序以外で行うことができる。例えば、連続して示す2つのブロックを、実際には略同時に実行することができ、または、関与する機能に応じて、それらのブロックを時として逆の順序で実行することができる。また、ブロック図またはフローチャート図あるいはその両方の各ブロック、およびブロック図またはフローチャート図あるいはその両方におけるブロックの組合せは、指定された機能もしくは動作を実行する、または専用ハードウェア命令とコンピュータ命令との組合せを実行する専用ハードウェア・ベースのシステムによって実装することができることにも留意されたい。
【0048】
次に、図面を参照すると、図1は、本発明の一部の実施形態による、符号化ビデオ・ストリームに埋め込まれる可能性のある悪意のあるエージェントを無効にするために、符号化ビデオ・ストリームを無害化および再構築する例示的なプロセスのフローチャートである。受信した符号化ビデオ・ストリームに存在する可能性のある1つまたは複数の悪意のあるプログラム・コンポーネントから発生するサイバ脅威に対するセキュア・ネットワークの免疫を高めるために、例示的なプロセス100を実行して、信頼できない(外部の)発信元から受信した符号化ビデオ・ストリームにCDRを適用してから、符号化ビデオ・ストリームをセキュア(内部)・ネットワークのクライアントに転送することができる。
【0049】
また、図2を参照すると、本発明の一部の実施形態による、符号化ビデオ・ストリームに埋め込まれる可能性のある悪意のあるエージェントを無効にするために、符号化ビデオ・ストリームを無害化および再構築するための例示的なシステムの概略図である。例示的なコンテンツの無害化および再構成(CDR)システム200、例えば、コンピュータ、サーバ、コンピューティング・ノード、コンピューティング・ノードのクラスタなどは、入力符号化ビデオ・ストリーム202を無害化および再構築し、復号ビデオを再構築して、出力符号化ビデオ・ストリーム204を生成するためのプロセス100などのプロセスを実行することができる。
【0050】
フレームのシーケンスを含む入力符号化ビデオ・ストリーム202は、1つまたは複数の符号化プロトコル、例えば、MPEG-1、MPEG-2、MPEG-4、H.261、H.263、H.264、H.265などに従って符号化される。入力符号化ビデオ・ストリーム202は、現在進行中のライブ・イベント、例えば、スポーツ・イベント、音楽コンサート、ライブ・ショー、公演などを描写するライブ・ストリーミング符号化ビデオ・ストリームであってよい。
【0051】
特に、CDRシステム200は、セキュア(内部)・ネットワーク240、例えば、プライベート・ネットワーク、企業ネットワーク、組織ネットワーク、工場ネットワーク、機関ネットワークなどと、外部の信頼できないネットワーク242、例えばインターネットとの間のゲートとして機能する、1つまたは複数のアクセス・システムまたはデバイスあるいはその両方、例えばゲートウェイ、ルータ、プロキシ・サーバなどに実装されてよい。
【0052】
CDRシステム200は、入力符号化ビデオ・ストリーム202を受信し、出力符号化ビデオ・ストリーム204を送信するためのネットワーク・インターフェース210と、プロセス100を実行するためのプロセッサ212と、コードまたはデータあるいはその両方を格納するためのストレージ214とを含むことができる。
【0053】
ネットワーク・インターフェース210は、1つまたは複数の有線ネットワークまたは無線ネットワークあるいはその両方、例えば、ローカル・エリア・ネットワーク(LAN)、ワイド・エリア・ネットワーク(WAN)、都市域ネットワーク(MAN)、セルラ・ネットワーク、インターネットなどに接続して、セキュア・ネットワーク240に接続された1つまたは複数のネットワーク・ノードとの通信を容易にするための、および信頼できないネットワーク242に接続された1つまたは複数のリモート・リソースと通信するための、1つまたは複数のネットワーク・インターフェースを含むことができる。
【0054】
プロセッサ212は、同種または異種の1つまたは複数のプロセッサを含み、各々が並列処理のために配置された1つまたは複数の処理ノードを、クラスタとして、または1つまたは複数のマルチコア・プロセッサとして、あるいはその両方として含む。プロセッサ212は、1つまたは複数のハードウェア固有のコンポーネント、例えば、特定用途向け集積回路(ASIC)、フィールド・プログラマブル・ゲート・アレイ(FPGA)、デジタル信号プロセッサ(DSP)、グラフィック・プロセッサ・ユニット(GPU)、ネットワーク・プロセッサなどをさらに含んで、プロセス100の実行をサポートすることができる。
【0055】
データまたはプログラム・コードあるいはその両方を格納するために使用されるストレージ214は、永続的な不揮発性デバイス、例えば、ハード・ドライブ、ソリッド・ステート・ドライブ(SSD)、磁気ディスク、フラッシュ・アレイなどのいずれかあるいはそれらの組み合わせである、1つまたは複数の非一過性のメモリ・デバイス、または揮発性デバイス、例えば、ランダム・アクセス・メモリ(RAM)・デバイス、キャッシュ・メモリなど、のいずれかあるいはその両方を含むことができる。ストレージ214は、ネットワーク・インターフェース210を通じて1つまたは複数のネットワークを介してアクセス可能な1つまたは複数のネットワーク・ストレージ・リソース、例えば、ストレージ・サーバ、ネットワーク接続ストレージ(NAS)、ネットワーク・ドライブなどをさらに含むことができる。
【0056】
プロセッサ212は、ストレージ214などの非一過性の媒体に格納され、プロセッサ212などの1つまたは複数のプロセッサによって実行される複数のプログラム命令を各々含む、1つまたは複数のソフトウェア・モジュール、例えば、プロセス、アプリケーション、エージェント、ユーティリティ、ツール、スクリプト、オペレーティング・システム(OS)などを実行することができる。
【0057】
プロセッサ212は、ソフトウェア・モジュールのうちの1つもしくは複数、ハードウェア固有のコンポーネントのうちの1つもしくは複数、またはそれらの組合せによって実装され得る1つまたは複数の機能モジュールを実行することができる。機能モジュールとしては、とりわけ、例えば、逆多重化モジュール220、復号モジュール222、符号化情報抽出モジュール224、量子化パラメータ計算モジュール226、符号化モジュール228、多重化モジュール230が挙げられる。
【0058】
逆多重化モジュール220は、ネットワーク・インターフェース210を介して、信頼できないネットワーク242から入力符号化ビデオ・ストリーム202を受信するように構成されてよい。入力符号化ビデオ・ストリーム202は、通常、オーディオ、ビデオ、およびプログラムおよびシステム情報プロトコル(PSIP)・データの送信ならびに格納のために放送システムで通常使用される標準的なデジタル・コンテナ形式である着信トランスポート・ストリームにカプセル化されてよい。したがって、逆多重化モジュール220は、着信トランスポート・ストリームを逆多重化し、カプセル化された入力符号化ビデオ・ストリーム202を抽出するように構成されてよい。
【0059】
復号モジュール222は、着信トランスポート・ストリームから抽出された入力符号化ビデオ・ストリーム202を復号して復号ビデオ・ストリームを生成するように構成されてよい。
【0060】
符号化情報抽出モジュール224は、入力符号化ビデオ・ストリーム202を符号化および生成した発信エンコーダによって計算された符号化情報を、入力符号化ビデオ・ストリーム202から抽出するように構成されてよい。
【0061】
量子化パラメータ計算モジュール226は、抽出された符号化情報で定義された1つまたは複数の量子化パラメータを調整して、調整済み符号化情報を生成するように構成されてよい。
【0062】
符号化モジュール228は、調整済み符号化情報を使用して、入力符号化ビデオ・ストリーム202から復号されたビデオを再符号化して、出力符号化ビデオ・ストリーム204を生成するように構成されてよい。
【0063】
多重化モジュール230は、ネットワーク・インターフェース210を介して、セキュア・ネットワーク240に接続された1つまたは複数のクライアントに送信され得る発信トランスポート・ストリームに、出力符号化ビデオ・ストリーム204をカプセル化するように構成されてよい。
【0064】
102に示すように、プロセス100は、ネットワーク・インターフェース210を介して入力符号化ビデオ・ストリーム202を受信する逆多重化モジュール220から始まる。
【0065】
入力符号化ビデオ・ストリーム202は、通常、信頼できないネットワークから受信されるため、1つまたは複数の悪意のあるプログラム・コンポーネント、例えば、ウイルス、ワーム、トロイの木馬、悪意のあるエージェント、ランサムウェア、スパイウェア、アドウェア、スケアウェアなどが、入力符号化ビデオ・ストリーム202に存在する可能性があり得る。
【0066】
104で示すように、入力符号化ビデオ・ストリーム202が着信トランスポート・ストリームにカプセル化される場合、逆多重化モジュール220は、着信トランスポート・ストリームを逆多重化し、カプセル化された入力符号化ビデオ・ストリーム202を抽出することができる。
【0067】
106に示すように、復号モジュール222は、入力符号化ビデオ・ストリーム202を復号して、その中で符号化されたビデオ・ストリームを抽出する。
【0068】
108に示すように、符号化情報抽出モジュール224は、入力符号化ビデオ・ストリーム202から符号化情報を抽出することができる。入力符号化ビデオ・ストリーム202を符号化および生成した発信エンコーダによって計算および生成される符号化情報としては、例えば、入力符号化ビデオ・ストリーム202の動きベクトル、量子化パラメータ、マクロブロック・タイプなどが挙げられる。本明細書で前述したように、符号化情報は主に動き推定に関連し、したがって、符号化情報の生成は、大量のコンピューティング・リソースを必要とし得るリソース集約的な計算を伴う。
【0069】
110に示すように、量子化パラメータ計算モジュール226は、符号化情報を調整することができる。具体的には、量子化パラメータ計算モジュール226は、入力符号化ビデオ・ストリーム202の符号化情報で定義された量子化パラメータのうちの1つまたは複数を調整することができる。
【0070】
量子化パラメータは、符号化ビデオ・ストリームの1つまたは複数のフレームの量子化ステップに直接関連し、したがって、ビデオのサンプリング・レートおよびサンプル数に影響を与えることにより、符号化ビデオのビットレートに関連して、符号化ビデオの品質に影響を与える。サンプリング・レートおよびサンプル数が品質に変換されるため、量子化ステップは品質に反比例して、量子化ステップが低いほどビデオ品質が高くなり、量子化ステップが高いほどビデオ品質が低くなる。しかしながら、サンプリング・レートおよびサンプル数はビットレートにも変換され、量子化ステップは符号化ビデオのビットレートに反比例して、量子化ステップが低いほどビットレートが高くなり、量子化ステップが高いほどビットレートが低くなる。
【0071】
量子化パラメータ計算モジュール226は量子化パラメータのうちの1つまたは複数を、量子化パラメータ値の範囲からの量子化パラメータ値のランダムな選択に基づいて計算された、それぞれの調整済み量子化パラメータに置き換えることによって、量子化パラメータのうちの1つまたは複数を調整することができる。しかしながら、調整済み量子化パラメータを使用してビデオを再符号化して、出力符号化ビデオ・ストリーム204を生成した後に、入力符号化ビデオ・ストリーム202と比較して出力符号化ビデオ・ストリーム204の品質劣化を避けるために、量子化パラメータ計算モジュール226は、調整済み量子化パラメータを元の量子化パラメータ以下になるよう計算するように構成される。
【0072】
オプションとして、量子化パラメータ計算モジュール226は、調整済み量子化パラメータを使用して符号化(生成)された出力符号化ビデオ・ストリーム204が最大ビットレートを超えないビットレートを有するように、最大ビットレート制約の下で調整済み量子化パラメータを計算するように構成される。
【0073】
例えば、入力符号化ビデオ・ストリーム202が量子化パラメータについて0~51の範囲を定義するH.264符号化プロトコルに従って符号化されると仮定する。入力符号化ビデオ・ストリーム202から抽出された符号化情報の仮定には、値15を有するある量子化パラメータが含まれる。このような場合、量子化パラメータ計算モジュール226は、ビデオの品質劣化を避けるために、低い量子化パラメータ値を含む量子化パラメータ値の一定の範囲である10~15からの、それぞれの調整済み量子化パラメータのランダムな選択に基づいて、それぞれの調整済み量子化パラメータを計算することができる。
【0074】
112に示すように、符号化モジュール228は、入力符号化ビデオ・ストリーム202から復号されたビデオを符号化して出力符号化ビデオ・ストリーム204を生成する。この出力符号化ビデオ・ストリーム204は、通常、入力符号化ビデオ・ストリーム202と比較して、修正済み符号化ビデオ・ストリームであり得る。しかしながら、符号化モジュール228は、いかなる動き推定計算を行うのではなく、入力符号化ビデオ・ストリーム202を生成した発信エンコーダによって計算された符号化情報に基づく調整済み符号化情報を使用する。したがって、符号化モジュール228は、出力符号化ビデオ・ストリーム204を生成(符号化)するためのコンピューティング・リソースを大幅に削減する必要がある。
【0075】
114に示すように、多重化モジュール230は、出力符号化ビデオ・ストリーム204を発信トランスポート・ストリームにカプセル化することができる。
【0076】
116に示すように、多重化モジュール230は、ネットワーク・インターフェース210を介して、発信トランスポート・ストリームにオプションとしてカプセル化された出力符号化ビデオ・ストリーム204を送信することができる。これにより、出力符号化ビデオ・ストリーム204は、セキュア・ネットワーク240に接続された1つまたは複数のネットワーク・ノード(クライアント)に、送信され、配布され、または配信され、あるいはその組合せが行われてよい。出力符号化ビデオ・ストリーム204は、元の入力符号化ビデオ・ストリーム202と同じ符号化プロトコルに従って符号化されるため、CDRプロセス100は、選択された符号化プロトコルに準拠した任意のデコーダに対してトランスペアレントであってよい。したがって、入力符号化ビデオ・ストリーム202を復号可能な任意のデコーダは、出力符号化ビデオ・ストリーム204を復号可能であってよい。
【0077】
本出願から成熟する特許の存続期間の間に、多くの関連するシステム、方法、およびコンピュータ・プログラムが開発されることが予想され、ビデオ符号化プロトコルおよびトランスポート・ストリーム・プロトコルという用語の範囲は、すべてのそのような新しい技術を推測的に含むことが意図されている。
【0078】
本明細書で使用する場合、用語「約」は±10%を指す。
【0079】
用語「備える」、「備えている」、「含む」、「含んでいる」、「有している」、およびそれらの活用形は、「含むがそれに限定されない」を意味する。
【0080】
用語「からなる」は、「含むがそれに限定されない」を意味する。
【0081】
本明細書で使用する場合、単数形「a」、「an」、および「the」は、文脈が明確に他の解釈を示していない限り複数形も含む。例えば、用語「化合物」または「少なくとも1つの化合物」は、複数の化合物を、それらの混合物を含めて含み得る。
【0082】
本出願全体を通して、本発明の様々な実施形態を範囲形式で提示する場合がある。範囲形式での説明は、単に利便性および簡潔性のためであり、本発明の範囲に関する柔軟性を欠く限定と解釈されるべきではないことを理解されたい。したがって、範囲の説明を、すべての可能な部分範囲およびその範囲内の個々の数値を具体的に開示したものと考えるべきである。例えば1から6までのような範囲の説明を、1から3まで、1から4まで、1から5まで、2から4まで、2から6まで、3から6までなどのような部分範囲、ならびに、その範囲内の個々の数、例えば1、2、3、4、5、および6を具体的に開示したものと考えるべきである。これは、範囲の幅に関係なく適用される。
【0083】
数値範囲が本明細書で指示されるときは常に、その数値範囲は、指示される範囲内の任意の引用される数字(小数または整数)を含むことが意図される。第1の指示数と第2の指示数との「間に範囲が及んでいる/及ぶ」、および、第1の指示数「から」第2の指示数「まで範囲が及んでいる/及ぶ」という語句は、本明細書では互換的に使用され、第1の指示数および第2の指示数、ならびに、それらの数の間のすべての小数および整数を含むことが意図される。
【0084】
明確性のために別々の実施形態の文脈において説明されている本発明のある特徴を、単一の実施形態において組み合わせて提示してもよいことが認識される。逆に、簡潔性のために単一の実施形態の文脈において説明されている本発明の様々な特徴を、別々に、または任意の適切な部分的組合せで、または本発明の任意の他の説明した実施形態において適切であるように提示してもよい。様々な実施形態の文脈において説明されているある特徴を、実施形態がそれらの要素なしでは動作不能であるという場合を除いては、それらの実施形態の本質的な特徴と考えるべきではない。
【0085】
本発明をその具体的な実施形態と併せて説明したが、多くの代替形態、変更形態、および変形形態が当業者に明らかになることは明白である。したがって本発明は、添付の特許請求の範囲の思想および広い範囲に含まれる、すべてのそのような代替形態、変更形態、および変形形態を包含することが意図されている。
【0086】
本明細書で述べたすべての刊行物、特許、および特許出願は、各々の個々の刊行物、特許、または特許出願が、具体的に、および個々に、参照により本明細書に組み込まれるように指示されている場合と同じ程度まで、参照によりそれらの全体が本明細書に組み込まれる。加えて、本出願におけるいかなる参照文献の引用または特定も、そのような参照文献が本発明に対する先行技術として利用可能であると認めるものと解釈してはならない。セクションの見出しが使用される限り、それらの見出しを必ずしも限定的であると解釈すべきではない。加えて、本出願のいかなる優先権書類も、参照によりそれらの全体が本明細書に組み込まれる。
図1
図2