(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2024-03-21
(54)【発明の名称】イマーシブテクノロジーズメディアフォーマット(ITMF)仕様のマッピングアーキテクチャのための方法、装置、及びコンピュータプログラム
(51)【国際特許分類】
G06T 15/00 20110101AFI20240313BHJP
【FI】
G06T15/00
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2023559983
(86)(22)【出願日】2022-12-15
(85)【翻訳文提出日】2023-09-28
(86)【国際出願番号】 US2022052944
(87)【国際公開番号】W WO2023132921
(87)【国際公開日】2023-07-13
(32)【優先日】2022-01-10
(33)【優先権主張国・地域又は機関】US
(32)【優先日】2022-12-05
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
(71)【出願人】
【識別番号】520353802
【氏名又は名称】テンセント・アメリカ・エルエルシー
(74)【代理人】
【識別番号】100107766
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【氏名又は名称】伊東 忠彦
(74)【代理人】
【識別番号】100135079
【氏名又は名称】宮崎 修
(72)【発明者】
【氏名】アビシェーク,ロヒット
(72)【発明者】
【氏名】ハインズ,アリアンヌ
【テーマコード(参考)】
5B080
【Fターム(参考)】
5B080BA00
5B080DA01
5B080FA09
5B080GA06
5B080GA21
(57)【要約】
シーンファイルを解析して、関連シーンファイルデータを抽出するステップと、前記関連シーンファイルデータをコンバータに送信するステップと、前記コンバータによって、前記関連シーンファイルデータをそれぞれのレンダリングエンジンと互換性のあるフォーマットに変換するステップと、前記それぞれのレンダリングエンジンを用いて、前記変換されたシーンファイルデータをシーン表現にマッピングするステップであり、前記シーン表現は、イマーシブテクノロジーズメディアフォーマット(ITMF)と互換性がある、ステップと、を含む方法。
【特許請求の範囲】
【請求項1】
少なくとも1つのプロセッサによって実行される方法であって、
シーンファイルを解析して、関連シーンファイルデータを抽出するステップと、
前記関連シーンファイルデータをコンバータに送信するステップと、
前記コンバータによって、前記関連シーンファイルデータをそれぞれのレンダリングエンジンと互換性のあるフォーマットに変換するステップと、
前記それぞれのレンダリングエンジンを用いて、前記変換されたシーンファイルデータをシーン表現にマッピングするステップであり、前記シーン表現は、イマーシブテクノロジーズメディアフォーマット(ITMF)と互換性がある、ステップと、
を含む方法。
【請求項2】
イマーシブテクノロジーズメディアフォーマット(ITMF)シーングラフを用いて、前記シーンファイルデータを、前記それぞれのレンダリングエンジンと互換性のある様々なシーン表現クラスに編成するステップ、を更に含む請求項1に記載の方法。
【請求項3】
前記抽出される関連シーンファイルデータは、シーンアセット、マテリアル、ジオメトリ、レンダリングパス、及びシーン要素を含む、請求項1に記載の方法。
【請求項4】
前記それぞれのレンダリングエンジンを用いて、前記変換されたシーンファイルデータをシーン表現に前記マッピングするステップは、前記変換されたシーンファイルデータを複数の非現実的プライマリシーンクラス及び複数の非現実的マテリアルクラスにマッピングすることを含む、請求項1に記載の方法。
【請求項5】
前記ITMFシーングラフは、前記シーンファイル内の複数のビジュアルオブジェクト間の時間的関係及び空間的関係を記述するノードベースの有向非巡回グラフを含む、請求項2に記載の方法。
【請求項6】
前記ITMFシーングラフは、人間読み取り可能XMLファイルとして表現される、請求項2に記載の方法。
【請求項7】
前記ITMFシーングラフは、レガシー及び新興の両方の高度結像ディスプレイ技術をサポートする、請求項2に記載の方法。
【請求項8】
前記ITMFシーングラフによってシーンアセットを参照するステップと、
前記ITMFシーングラフによって参照された前記シーンアセットを人間読み取り可能XMLファイルと集約するステップと、
前記集約されたシーンアセット及び前記人間読み取り可能XMLファイルをITMFコンテナに格納するステップと、
を更に含む請求項2に記載の方法。
【請求項9】
1つ以上のプロセッサと、
コンピュータプログラムを格納した1つ以上のメモリと、
を有し、
前記コンピュータプログラムは、前記1つ以上のプロセッサに、請求項1乃至8のいずれか一項に記載の方法を実行させる、
装置。
【請求項10】
コンピュータに請求項1乃至8のいずれか一項に記載の方法を実行させるコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
この出願は、2022年1月10日に出願された米国仮出願第63/298,110号及び2022年12月5日に出願された米国出願第18/075,037号に基づくとともに、それらに対する優先権を主張するものであり、それらの開示をそれらの全体にてここに援用する。
【0002】
本開示は、様々なレンダリングエンジンのシーン表現を用いたITMF仕様のアーキテクチャマッピングに関する。
【背景技術】
【0003】
没入型メディアは、デジタルシミュレーションを通じて物理世界を作成又は模倣し、それにより、何らかの又は全ての人間感覚系をシミュレートして、シーン内に物理的に存在するユーザの知覚を作成しようとする没入型技術を含む。
【0004】
現在使用されている没入型メディア技術には、仮想現実(VR)、拡張現実(AR)、複合現実(MR)、ライトフィールド/ホログラフィック技術など、様々なタイプが存在している。VRは、ヘッドセットを用いてユーザをコンピュータ生成された世界に置くことによって、ユーザの物理的環境を置き換えるデジタル環境を指す。一方、ARは、クリアビジョン又はスマートフォンのいずれかを用いることによって、デジタルメディアを取り込み、それらを人の周りの現実世界に重ねる。MRは、現実世界とデジタル世界とを融合させ、それにより、テクノロジーと物理世界とが共存できる環境を作り出すことを指す。
【0005】
ライトフィールド/ホログラフィック技術は、各点及び方向から来る光線を用いて、3D空間内の光線で構成される。これは、周囲に見える全てのものが、任意の光源から来て、空間を通って移動し、そして、物体の表面に当たる光によって照らされており、物体の表面で光が部分的に吸収されるとともに部分的に別の表面へと反射されてから人の目に届く、という概念に基づく。ライトフィールドが適切に再現されると、例えば両眼視機能及び連続的な運動視差などの3D効果をユーザに提供することになる。ライトフィールドディスプレイの基礎となる概念は、僅かに異なる方向に、異なるが一貫した情報を示すことによって、ライトフィールドの近似を再現するように、投影モジュールの大規模なアレイがホログラフィックスクリーン上に光線を投影するというものである。
【0006】
イマーシブデジタルエクスペリエンスアライアンス(Immersive Digital Experience Alliance,IDEA)によって規定された、ORBXに基づくオープンソースのイマーシブテクノロジーズメディアフォーマット(Immersive Technologies Media Format,ITMF)は、写真のような現実感のある没入型メディア向けアプリケーションを中心としたロバストなシーン記述である。ITMFは、コンテンツ合成ワークフローと、没入型メディアのための、メディアアウェアネットワークを介したネットワークベースのレンダリング、プログレッシブダウンロード、及び/又はストリーミングのための伝送との両方に焦点を当てている。ITMFは、例えばテクスチャ及びメッシュなどの個々のアセットがシーングラフ(Scene Graph)内にインポートされる前に完成されるDCCツールでの使用を意図している。異なるレンダリングエンジンでITMF仕様をマッピングする方法が必要である。
【発明の概要】
【0007】
以下にて、本開示の1つ以上の実施形態の簡略化した概要を、それら実施形態の基本的な理解を提供するために提示する。この概要は、企図される全ての実施形態の広範な要約ではなく、全ての実施形態の主要又は重要な要素を特定することも、いずれか又は全ての実施形態の範囲を線引きすることも意図していない。その唯一の目的は、後に提示されるいっそう詳細な説明の前置きとして、簡略化した形式で本開示の1つ以上の実施形態の一部概念を提示することである。
【0008】
クラウドプラットフォームにおける並列処理のためのセグメント化されたメディアメタデータ向けワイヤフォーマットに関する方法、装置、及び非一時的コンピュータ読み取り可能媒体が、本開示によって開示される。
【0009】
一部の実施形態によれば、少なくとも1つのプロセッサによって実行される方法が提供される。当該方法は、シーンファイルを解析して、関連シーンファイルデータを抽出することを含む。当該方法は更に、関連シーンファイルデータをコンバータに送信することを含む。当該方法は更に、コンバータによって、関連シーンファイルデータをそれぞれのレンダリングエンジンと互換性のあるフォーマットに変換することを含む。当該方法は更に、それぞれのレンダリングエンジンを用いて、変換されたシーンファイルデータをシーン表現にマッピングすることを含み、該シーン表現は、イマーシブテクノロジーズメディアフォーマット(ITMF)と互換性がある。
【0010】
一部の実施形態によれば、装置は、プログラムコードを格納するように構成された少なくとも1つのメモリと、プログラムコードを読み取り、プログラムコードによって命令されるように動作するように構成された少なくとも1つのプロセッサと、を含む。プログラムコードは、上記少なくとも1つのプロセッサに、シーンファイルを解析させて、関連シーンファイルデータを抽出させるように構成された解析コードを含む。プログラムコードは更に、上記少なくとも1つのプロセッサに、関連シーンファイルデータをコンバータに送信させるように構成された送信コードを含む。プログラムコードは更に、上記少なくとも1つのプロセッサに、コンバータによって、関連シーンファイルデータをそれぞれのレンダリングエンジンと互換性のあるフォーマットに変換させるように構成された変換コードを含む。プログラムコードは更に、上記少なくとも1つのプロセッサに、それぞれのレンダリングエンジンを用いて、変換されたシーンファイルデータをシーン表現にマッピングさせるように構成されたマッピングコードを含み、該シーン表現は、イマーシブテクノロジーズメディアフォーマット(ITMF)と互換性がある。
【0011】
一部の実施形態によれば、非一時的コンピュータ読み取り可能記憶媒体が命令を格納し、該命令は、少なくとも1つのプロセッサによって実行されるときに、該少なくとも1つのプロセッサに、シーンファイルを解析させて、関連シーンファイルデータを抽出させる。上記命令は更に、上記少なくとも1つのプロセッサに、関連シーンファイルデータをコンバータに送信させる。上記命令は更に、上記少なくとも1つのプロセッサに、コンバータによって、関連シーンファイルデータをそれぞれのレンダリングエンジンと互換性のあるフォーマットに変換させる。上記命令は更に、上記少なくとも1つのプロセッサに、それぞれのレンダリングエンジンを用いて、変換されたシーンファイルデータをシーン表現にマッピングさせ、該シーン表現は、イマーシブテクノロジーズメディアフォーマット(ITMF)と互換性がある。
【0012】
更なる実施形態が、以下の説明で記述され、説明から部分的に明らかになり、及び/又は本開示の提示実施形態の実施によって学習され得る。
【図面の簡単な説明】
【0013】
本開示の上述の及び他の態様、特徴、及び実施形態の態様が、添付の図面と併せられる以下の説明から明らかになる。
【
図1】一部の実施形態に従った、一例のITMFコンテナである。
【
図2】一部の実施形態に従った、一例のITMFマッピングアーキテクチャである。
【
図3】ここで説明されるシステム及び/又は方法が実装され得る一例の環境の図である。
【
図4】一部の実施形態に従った、通信システムの簡略ブロック図である。
【
図5】一部の実施形態に従った、コンピュータシステムの図である。
【発明を実施するための形態】
【0014】
実施形態例の以下の詳細な説明は添付の図面を参照する。異なる図における同じ参照符号が同じ又は同様の要素を識別することがある。
【0015】
上述の開示は、例示及び説明を提供するものであり、網羅的であること、又は開示されたままの形態に実装を限定することを意図するものではない。変更及び変形が、上の開示に照らして可能であり、又は実装の実施から習得され得る。また、1つの実施形態の1つ以上の機構又はコンポーネントが、別の実施形態(又は別の実施形態の1つ以上の機構)に組み込まれたり組み合わされたりし得る。また、以下に提供される動作のフローチャート及び説明において、理解されることには、1つ以上の動作が省略されてもよいし、1つ以上の動作が追加されてもよいし、1つ以上の動作が(少なくとも部分的に)同時に実行されてもよいし、1つ以上の動作の順序が入れ替えられてもよい。
【0016】
明らかになることには、ここに記載されたシステム及び/又は方法は、様々な形態のハードウェア、ファームウェア、又はハードウェアとソフトウェアとの組み合わせで実装され得る。これらのシステム及び/又は方法を実装するのに使用される実際の特殊化された制御ハードウェア又はソフトウェアコードは、実装の限定となるものではない。従って、ここでは、システム及び/又は方法の動作及び挙動を、特定のソフトウェアコードを参照することなく記述しており、理解されることには、ここでの記載に基づくシステム及び/又は方法を実装するように、ソフトウェア及びハードウェアが設計され得る。
【0017】
複数の機構の特定の組み合わせが請求項に記載され且つ/或いは明細書に開示されているとしても、それらの組み合わせは、可能な実装の開示を限定することを意図するものではない。実際、それらの機構のうち多くは、具体的には請求項に記載され且つ/或いは明細書に開示されたものではないように組み合わされることができる。以下に挙げられる各従属請求項は1つのクレームのみに直接的に従属することがあるが、可能な実装の開示は、各従属請求項を、請求項セット内のあらゆる他のクレームとの組み合わせで含む。
【0018】
ここで使用される如何なる要素、行為、又は命令も、そのように明示的に記載されない限り、重要又は必須であるとして解釈されるべきでない。また、ここで使用されるとき、冠詞“a”及び“an”は、1つ以上のアイテムを含むことを意図しており、“1つ以上の”と交換可能に使用され得る。1つのアイテムのみが意図される場合には、用語“1つの”又は類似の言葉が使用される。また、ここで使用されるとき、用語“持つ”、“有する”、“持っている”、“含む”、“含んでいる”などは、オープンエンドの用語であることを意図している。さらに、“に基づく”という言い回しは、明示的に別の断りがない限り、“少なくとも部分的に基づく”を意味することを意図している。また、例えば“[A]及び[B]のうちの少なくとも1つ”又は“[A]又は[B]のうちの少なくとも1つ”などの表現は、Aのみ、Bのみ、又はAとBの両方、を含むものとして理解されるべきである。
【0019】
この明細書全体を通しての“一実施形態”、“ある実施形態”、又は同様の言葉への言及は、示される実施形態に関連して説明される特定の機構、構造、又は特性が、本ソリューションの少なくとも1つの実施形態に含まれることを意味する。従って、この明細書全体を通しての“一実施形態において”、“ある実施形態において”、及び同様の言葉の言い回しは、必ずしも全てが同じ実施形態を指すわけではない。
【0020】
また、本開示の説明される特徴、利点、及び特性は、1つ以上の実施形態において任意の好適なやり方で組み合わされ得る。ここでの説明に照らして当業者が認識し得ることには、本開示は、特定の実施形態の特定の特徴又は利点のうちの1つ以上を伴わずにも実施され得る。他の例において、本開示の全ての実施形態には存在しないとし得る追加の特徴及び利点が、特定の実施形態において認識され得る。
【0021】
ITMFは、ノードが入力ピン及び出力ピンの両方を持ったノードベースの階層的なシーングラフである。ピンはノード間の関係を可能にする。さらに、ノードは、オブジェクトの固有且つ不変の特性を定義する属性を持つ。ノードは、カメラ、ジオメトリ、ライティング、マテリアル、テクスチャなどを含む多数のタイプを持ち、これらがレンダリングターゲットノードに送り込まれる。各ノードは、接続が生成されてサポートされることを可能にする入力ピン及び出力ピンを持つ。レンダリングターゲットノードは、バイアスされないレンダリングアプリケーションにおける写真のような現実感のあるレンダリングのためのレイトレーシングを可能にするパラメータを持つ。メディア及びデバイスアウェアなネットワーク内で、レンダリングターゲットを有するレンダリングターゲットノードの設計は、レガシー2D/3Dディスプレイ、仮想及び拡張現実ヘッドセット、並びに新興の立体及びライトフィールドディスプレイを含むターゲット装置に適応されることができる。
【0022】
シーンコンテンツ全体をバイナリマークアップ言語(BML)コンテナ内にバイナリ符号化することができ、シーンの記述を、XMLベースのシーングラフにおける一意のノード識別子及び接続関係を用いてシリアル化することができる。コンテナ内で、ディレクトリ及びインデックスユニットによってリスト化されるジオメトリ、テクスチャ、及びより多くのインポートされたアセットを符号化する論理ユニットが、個々のユニットのランダムアクセス及び圧縮/暗号化を可能にする。コンテナの設計は、追加のファイルタイプが、必要に応じて復号のために論理ユニット内に符号化されることを可能にする。
【0023】
一部の実施形態において、ITMFシーングラフは、シーン内の複数のビジュアルオブジェクト間の論理的、時間的、及び空間的関係を記述するノードベースの有向非巡回グラフとし得る。該グラフは完全に人間読み取り可能XMLファイルとして表現され得る。ITMFシーングラフを用いて、レガシー及び新興の両方の高度結像(例えば、立体、ホログラフィック、ライトフィールド)ディスプレイ技術をサポートすることができる。
図1において、シーングラフ110によって参照されるシーン要素120の各々と、グラフ自体のためのXMLファイルとが集約され、ITMFコンテナ100に格納され得る。
【0024】
ITMFシーンファイルがエンドクライアントに提供された後、エンドクライアントのレンダリングエンジンが該シーンファイルをサポートしていない場合、ITMFシーンファイルを、エンドポイントがサポートしているファイルのシーングラフにマッピングする必要がある。
【0025】
ITMF仕様を様々なエンドポイントの表現に変換するためのアーキテクチャフレームワークを
図2に示す。ITMF仕様201が非現実(仮想)コンバータ204にマッピングされ得る。ITMFシーンパーサ202が、シーンファイルを解析すること、例えば、シーングラフ及びシーン要素を解析することによって、ITMFコンテナから、例えばシーンアセット、マテリアル、ジオメトリ、レンダリングパスなどの関連情報を抽出することを担い得る。そして、解析されたデータがコンバータに送られ、該コンバータが、データを、それぞれのレンダリングエンジンによって理解されるフォーマットに変換する。ITMFシーンパーサ202は、ITMF仕様モジュール209、210、211、212、213、214、215、及び216からデータを受信した後に、ITMF仕様201を関連するレンダリングエンジンフォーマットに変換するように、ITMF仕様201を構造的に解析することができる。非現実コンバータ204が、レンダリングエンジンコンバータ217及び218と共に、解析されたITMFファイルを等価なレンダリングエンジンフォーマットに変換する。
【0026】
レンダリングエンジンコンバータ217及び218を含め、非現実コンバータ204は、解析されたITMFシーンを等価な非現実的シーン表現206にマッピングすることを担うことができ、非現実的シーン表現206では、データが、レンダリングエンジンコンバータ217及び218によって理解されるような、例えば非現実的プライマリシーンクラス207及び非現実的マテリアルクラス208などの様々なシーン表現クラスに編成される。
【0027】
図3は、一部の実施形態に従った1つ以上の装置のコンポーネント例のブロック図である。
【0028】
装置300は、ユーザ装置及び/又はプラットフォームに対応し得る。
図3に示すように、装置300は、バス310、プロセッサ320、メモリ330、ストレージコンポーネント340、入力コンポーネント350、出力コンポーネント360、及び通信インタフェース370を含み得る。
【0029】
バス310は、装置300のコンポーネント間での通信を可能にするコンポーネントを含み得る。プロセッサ320は、ハードウェア、ファームウェア、又はハードウェアとソフトウェアとの組み合わせで実装される。プロセッサ320は、中央演算処理ユニット(CPU)、グラフィックス処理ユニット(GPU)、アクセラレーテッドプロセッシングユニット(APU)、マイクロプロセッサ、マイクロコントローラ、デジタル信号プロセッサ(DSP)、フィールドプログラマブルゲートアレイ(FPGA)、特定用途向け集積回路(ASIC)、又は他のタイプの処理コンポーネントである。一部の実施形態において、プロセッサ320は、動作を実行するようにプログラムされることが可能な1つ以上のプロセッサを含み得る。メモリ330は、ランダムアクセスメモリ(RAM)、読み出し専用メモリ(ROM)、及び/又は、プロセッサ320による使用のための情報及び/又は命令を格納する他のタイプの動的又は静的な記憶デバイス(例えば、フラッシュメモリ、磁気メモリ、及び/又は光メモリ)を含み得る。
【0030】
ストレージコンポーネント340は、装置300の動作及び使用に関係する情報及び/又はソフトウェアを格納する。例えば、ストレージコンポーネント340は、ハードディスク(例えば、磁気ディスク、光ディスク、光磁気ディスク、及び/又はソリッドステートディスク)、コンパクトディスク(CD)、デジタル多用途ディスク(DVD)、フロッピーディスク(登録商標)、カートリッジ、磁気テープ、及び/又は他のタイプの非一時的なコンピュータ読み取り可能媒体を、対応するドライブと共に含み得る。
【0031】
入力コンポーネント350は、装置300が、例えばユーザ入力を介してなどで、情報を受信することを可能にするコンポーネント(例えば、タッチスクリーンディスプレイ、キーボード、キーパッド、マウス、ボタン、スイッチ、及び/又はマイクロフォン)を含み得る。加えて、あるいは代わりに、入力コンポーネント350は、情報をセンシングするセンサ(例えば、グローバルポジショニングシステム(GPS)コンポーネント、加速度計、ジャイロスコープ、及び/又はアクチュエータ)を含んでもよい。出力コンポーネント360は、装置300からの出力情報を提供するコンポーネントを含み得る(例えば、ディスプレイ、スピーカ、及び/又は1つ以上の発光ダイオード(LED))。
【0032】
通信インタフェース370は、装置300が、例えば有線接続、無線接続、又は有線接続と無線接続との組み合わせを介してなどで、他の装置と通信することを可能にするトランシーバのようなコンポーネント(例えば、トランシーバ及び/又は別個の受信器と送信器)を含み得る。通信インタフェース370は、装置300が他の装置から情報を受信すること及び/又は他の装置に情報を提供することを可能にし得る。例えば、通信インタフェース370は、イーサネット(登録商標)インタフェース、光インタフェース、同軸インタフェース、赤外線インタフェース、無線周波数(RF)インタフェース、ユニバーサルシリアルバス(USB)インタフェース、Wi-Fiインタフェース、セルラネットワークインタフェース、又はこれらに類するものを含み得る。
【0033】
装置300は、ここに記載される1つ以上のプロセスを実行し得る。装置300は、それらのプロセスを、例えばメモリ330及び/又はストレージコンポーネント340などの非一時的なコンピュータ読み取り可能媒体によって格納されたソフトウェア命令をプロセッサ320が実行することに基づいて実行し得る。コンピュータ読み取り可能媒体は、ここでは、非一時的なメモリ装置として定義される。メモリ装置は、単一の物理的記憶装置内の記憶空間を含むことができ、又は複数の物理的記憶装置にわたって広がった記憶空間を含むことができる。
【0034】
ソフトウェア命令が、メモリ330及び/又はストレージコンポーネント340に、他のコンピュータ読み取り可能媒体から又は通信インタフェース370を介して他の装置から読み込まれ得る。メモリ330及び/又はストレージコンポーネント340に格納されたソフトウェア命令は、実行されるときに、プロセッサ320に、ここに記載される1つ以上のプロセスを実行させ得る。加えて、あるいは代わりに、ここに記載される1つ以上のプロセスを実行するために、ソフトウェア命令の代わりに又はそれと組み合わせてハードワイヤード回路が使用されてもよい。従って、ここに記載される実施形態は、ハードウェア回路とソフトウェアとの如何なる特定の組み合わせにも限定されるものではない。
【0035】
図3に示したコンポーネントの数及び構成は、一例として提供されている。実際には、装置300は、
図3に示したものに対して、追加のコンポーネント、より少ないコンポーネント、異なるコンポーネント、又は異なる構成のコンポーネントを含み得る。加えて、あるいは代わりに、装置300のコンポーネントのセット(例えば、1つ以上のコンポーネント)が、装置300のコンポーネントの別のセットによって実行されるとして記載された1つ以上の動作を実行してもよい。
【0036】
図4は、本開示の一部の実施形態に従った通信システム400の簡略ブロック図を示している。通信システム400は、ネットワーク450を介して相互接続された少なくとも2つの端末410-420を含み得る。データの単方向伝送では、第1の端末410が、ネットワーク450を介した他の端末420への伝送のために、ローカル位置でビデオデータをコーディングし得る。第2端末420が、ネットワーク450から他の端末のコーディングされたビデオデータを受信し、コーディングされたデータを復号し、復元されたビデオデータを表示し得る。単方向データ伝送は、メディアサービング用途及びこれに類するにおいて一般的であり得る。
【0037】
図4は、例えばテレビ会議において発生し得るコーディングされたビデオの双方向伝送をサポートするように設けられた第2ペアの端末430、440を示している。データの双方向伝送では、各端末430、440が、ネットワーク450を介した他の端末への伝送のために、ローカル位置でキャプチャされたビデオデータをコーディングし得る。各端末430、440はまた、他の端末によって送信されたコーディングされたビデオデータを受信することができ、コーディングされたデータを復号することができ、そして、復元されたビデオデータをローカルのディスプレイ装置に表示することができる。
【0038】
図4において、端末410-440は、サーバ、パーソナルコンピュータ、及びスマートフォンとして示されているが、本開示の原理はそのように限定されるものではない。本開示の実施形態は、ラップトップコンピュータ、タブレットコンピュータ、メディアプレーヤ、及び/又は専用のテレビ会議機器での適用を見出す。ネットワーク450は、例えば、配線通信ネットワーク及び/又は無線通信ネットワークを含め、端末410-440間でコーディングされた映像データを伝達するあらゆる数のネットワークを表す。通信ネットワーク450は、回線交換チャネル及び/又はパケット交換チャネルにてデータを交換し得る。代表的なネットワークは、遠距離通信ネットワーク、ローカルエリアネットワーク、ワイドエリアネットワーク、及び/又はインターネットを含む。本説明の目的上、ネットワーク450のアーキテクチャ及びトポロジーは、ここで説明しない限り、本開示の動作にとって重要ではないとし得る。
【0039】
コンピュータシステム500に関して
図5に示すコンポーネントは、例示的なものであり、本開示の実施形態を実装するコンピュータソフトウェアの使用又は機能性の範囲についての何らかの限定を示唆する意図はない。同様に、コンポーネントの構成、コンピュータシステム500のこの例示的な実施形態に示されたコンポーネントの任意の1つ又は組み合わせに関する何らかの従属性又は要件を持つものとして解釈されるように限定されるべきでない。
【0040】
コンピュータシステム500は、特定のヒューマンインタフェース入力装置を含んでもよい。そのようなヒューマンインタフェース入力装置は、例えば、触覚入力(例えば、キーストローク、スワイプ、データグローブを動かすことなど)、オーディオ入力(例えば、音声、拍手など)、視覚入力(例えば、ジェスチャなど)、嗅覚入力(図示せず)を介した、一人以上の人間ユーザによる入力に応答し得る。ヒューマンインタフェース装置はまた、例えばオーディオ(例えば、会話、音楽、周囲の音など)、画像(例えば、走査画像、静止画カメラから得られる写真画像など)、映像(例えば、二次元映像、立体視映像を含む三次元映像など)などの、人間による意識的な入力には必ずしも直接関係しない特定の媒体を捕捉するために使用されてもよい。
【0041】
入力ヒューマンインタフェース装置は、キーボード505、マウス510、トラックパッド515、タッチスクリーン545、データグローブ(図示せず)、ジョイスティック520、マイクロフォン525、スキャナ530、カメラ535(各々1つのみ図示している)のうちの1つ以上を含み得る。
【0042】
コンピュータシステム500はまた、特定のヒューマンインタフェース出力装置を含み得る。そのようなヒューマンインタフェース出力装置は、例えば、触覚出力、音、光、及び臭い/味を通して、一人以上の人間ユーザの感覚を刺激し得る。従って、ヒューマンインタフェース出力装置は、触覚出力装置(例えば、タッチスクリーン545、データグローブ(図示せず)、又はジョイスティック520による触覚フィードバックであるが、入力装置として機能しない触覚フィードバック装置もあってもよい)、オーディオ出力装置(例えば、スピーカ540、ヘッドフォン(図示せず)など)、視覚出力装置(例えば、CRTスクリーン、LCDスクリーン、プラズマスクリーン、OLEDスクリーンを含むスクリーン545(各々がタッチスクリーン入力機能を有する又は有さない。各々が触覚フィードバック機能を有する又は有さない。これらの一部は、二次元の視覚出力、又は例えば立体視出力などの手段を通じて四次元以上の出力を出力することができるとし得る。)、仮想現実グラス(図示せず)、ホログラフィックディスプレイ及びスモークタンク(図示せず)など)、及びプリンタ(図示せず)を含み得る。
【0043】
コンピュータシステム500はまた、例えば、CD/DVD若しくは類似の媒体555を有するCD/DVD ROM/RW Z20を含む光媒体、サムドライブ560、取り外し可能なハードドライブ若しくは又はソリッドステートドライブ565、例えばテープ及びフロッピーディスク(登録商標、図示せず)などのレガシー磁気媒体、例えばセキュリティドングルなどの特殊化されたROM/ASIC/PLDベースの装置(図示せず)、及びこれらに類するものなどの、人間アクセス可能なストレージ装置及びそれらの関連媒体を含み得る。
【0044】
当業者がこれまた理解するはずのことには、ここでの開示に係る事項に関連して使用される用語“コンピュータ読み取り可能媒体”は、伝送媒体、搬送波、又は他の一時的な信号を含まない。
【0045】
コンピュータシステム500はまた、1つ以上の通信ネットワークへのインタフェースを含み得る。ネットワークは、例えば、無線、有線、光とし得る。ネットワークは更に、ローカル、広域、大都市、車両及び産業、リアルタイム、耐遅延などとし得る。ネットワークの例は、例えばイーサネット(登録商標)などのローカルエリアネットワークや、無線LANや、GSM、3G、4G、5G、LTE及びこれらに類するものを含むセルラネットワークや、ケーブルTV、衛星TV、及び地上波放送TVを含むTV有線又は無線広域デジタルネットワークや、CANbusを含む車両及び産業などを含む。特定のネットワークは一般に、例えばコンピュータシステム500のUSBポートといった、特定の汎用データポート又はペリフェラルバス589に取り付けられる外付けネットワークインタフェースアダプタを必要とし、他のものは一般に、後述のシステムバスへの取り付けによってコンピュータシステム500のコアに統合される(例えば、PCコンピュータシステムへのイーサネットインタフェース、又はスマートフォンコンピュータシステムへのセルラネットワークインタフェース)。これらのネットワークのいずれかを使用して、コンピュータシステム500は、他のエンティティと通信し得る。通信は、単方向の受信のみ(例えば、放送TV)であってもよいし、単方向の送信のみ(例えば、特定のCANbus装置に対するCANbus)であってもよいし、あるいは、例えばローカル又は広域デジタルネットワークを用いた他のコンピュータシステムに対しての、双方向であってもよい。特定のプロトコル及びプロトコルスタックも、上述のようにネットワーク及びネットワークインタフェースの各々上で使用され得る。
【0046】
前述のヒューマンインタフェース装置、人間アクセス可能なストレージ装置、及びネットワークインタフェースは、コンピュータシステム500のコア580に取り付けられ得る。
【0047】
コア580は、1つ以上の中央演算処理ユニット(CPU)581、グラフィックス処理ユニット(GPU)582、フィールドプログラマブルゲートアレイ(FPGA)583の形態の特殊なプログラム可能なプロセッシングユニット、特定のタスク用のハードウェアアクセラレータ584などを含み得る。これらのデバイスは、読み出し専用メモリ(ROM)585、ランダムアクセスメモリ586、例えば内部のユーザアクセス可能でないハードドライブ、SSD、及びこれらに類するものなどの内部大容量ストレージ587と共に、システムバス588を介して接続され得る。一部のコンピュータシステムにおいて、システムバス588は、追加のCPU、GPU、及びこれらに類するものによる拡張を可能にするために、1つ以上の物理プラグの形態でアクセス可能にされ得る。周辺装置も、コアのシステムバス588に直接的に、又はペリフェラルバス589を介して、のいずれで取り付けられてもよい。ペリフェラルバスのアーキテクチャは、PCI、USB、及びこれらに類するものを含む。
【0048】
CPU581、GPU582、FPGA583、及びアクセラレータ584は、組み合わさって前述のコンピュータコードを構成し得る特定の命令を実行し得る。そのようなコンピュータコードはRAM586に格納され得る。RAM586には過渡的なデータも格納されることができ、永久的なデータは、例えば内部大容量ストレージ587に格納され得る。メモリデバイスのいずれかへの高速な記憶及び取り出しが、1つ以上のCPU581、GPU582、大容量ストレージ587、ROM585、RAM586、及びこれらに類するものの近くに付随し得るものであるキャッシュメモリの使用によって可能にされ得る。
【0049】
コンピュータ読み取り可能媒体はその上に、様々なコンピュータ実装処理を実行するためのコンピュータコードを有し得る。媒体及びコンピュータコードは、本開示の目的に合わせて特別に設計及び構築されてもよいし、あるいは、それらは、コンピュータソフトウェア技術の当業者にとって周知且つ利用可能な種類のものであってもよい。
【0050】
限定ではなく、一例として、コンピュータシステム500に対応するアーキテクチャ、特に、コア580は、1つ以上の有形のコンピュータ読み取り可能媒体に具現化されたソフトウェアを(1つ以上の)プロセッサ(CPU、GPU、FPGA、アクセラレータ、及びこれらに類するものを含む)が実行することの結果として機能を提供し得る。そのようなコンピュータ読み取り可能媒体は、例えばコア内部の大容量ストレージ587又はROM585などの、非一時的性質のものであるコア580の特定のストレージ、及び上で紹介したようなユーザアクセス可能な大容量ストレージに関連する媒体とし得る。本開示の様々な実施形態を実装するソフトウェアは、そのような装置に格納され、コア580によって実行され得る。コンピュータ読み取り可能媒体は、具体的なニーズに従って、1つ以上のメモリデバイス又はチップを含み得る。ソフトウェアは、コア580及び特にその中のプロセッサ(CPU、GPU、FPGA、及びこれらに類するものを含む)に、RAM586に格納されるデータ構造を規定すること、及びそのようなデータ構造を、ソフトウェアによって規定されたプロセスに従って変更することを含めて、ここに記載された特定のプロセスを又は特定のプロセスの特定の部分を実行させることができる。加えて、又は代替として、コンピュータシステムは、ここに記載された特定のプロセスを又は特定のプロセスの特定の部分を実行するようにソフトウェアの代わりに又はソフトウェアと共に動作し得る回路(例えば、アクセラレータ584)にて配線された又はその他の方法で具体化されたロジックの結果として、機能を提供してもよい。ソフトウェアへの言及はロジックを含み、また、適当な場合にその逆もまた然りであるとし得る。コンピュータ読み取り可能媒体への言及は、実行のためのソフトウェアを格納した回路(例えば、集積回路(IC)など)、実行のためのロジックを具体化した回路、又は適当な場合にこれら双方を含み得る。本開示は、ハードウェア及びソフトウェアの好適な組み合わせを含む。
【0051】
上述の開示は、例示及び説明を提供するものであり、網羅的であること、又は開示されたままの形態に実装を限定することを意図するものではない。変更及び変形が、上の開示に照らして可能であり、又は実装の実施から習得され得る。
【0052】
理解されることには、ここに開示されたプロセス/フローチャートにおけるブロックの特定の順序又は階層はアプローチ例を示したものである。理解されることには、設計選好に基づいて、プロセス/フローチャートにおけるブロックの特定の順序又は階層は並べ替えられ得る。また、一部のブロックが組み合わされたり省略されたりしてもよい。添付の方法クレームは、様々なブロックの要素をサンプル順序で提示しており、提示された特定の順序又は階層に限定されるという意味ではない。
【0053】
一部の実施形態は、任意の取り得る技術的詳細レベルの統合でのシステム、方法、及び/又はコンピュータ読み取り可能媒体に関し得る。また、上述のコンポーネントのうちの1つ以上が、コンピュータ読み取り可能媒体に格納されて少なくとも1つのプロセッサによって実行可能な命令として実装されてもよい(及び/又は少なくとも1つのプロセッサを含んでもよい)。コンピュータ読み取り可能媒体は、プロセッサに動作を実行させるためのコンピュータ読み取り可能プログラム命令を有したコンピュータ読み取り可能な(1つ以上の)非一時的記憶媒体を含み得る。
【0054】
コンピュータ読み取り可能記憶媒体は、命令実行装置による使用のために命令を保持及び格納し得る有形デバイスとし得る。コンピュータ読み取り可能記憶媒体は、例えば、以下に限られないが、電子ストレージ装置、磁気ストレージ装置、光ストレージ装置、電磁ストレージ装置、半導体ストレージ装置、又はこれらの任意の好適な組み合わせとし得る。コンピュータ読み取り可能記憶媒体のいっそう具体的な例の非網羅的なリストは、ポータブルコンピュータディスケット、ハードディスク、ランダムアクセスメモリ(RAM)、読み出し専用メモリ(ROM)、消去可能プログラム可能読み出し専用メモリ(EPROM又はフラッシュメモリ)、スタティックランダムアクセスメモリ(SRAM)、ポータブルコンパクトディスク読み出し専用メモリ(CD-ROM)、デジタル多用途ディスク(DVD)、メモリスティック、フロッピーディスク(登録商標)、命令を記録した例えばパンチカード若しくは溝内の隆起構造などの機械的に符号化されたデバイス、及びこれらの任意の好適な組み合わせを含む。コンピュータ読み取り可能記憶媒体は、ここで使用されるとき、例えば電波若しくは他の自由伝播する電磁波、導波路若しくは他の伝送媒体中を伝播する電磁波(例えば、光ファイバケーブル中を通る光パルス)、又はワイヤ中を伝送される電気信号などの、一時的な信号それ自体であると解釈されるものではない。
【0055】
ここに記載されるコンピュータ読み取り可能プログラム命令は、コンピュータ読み取り可能記憶媒体からそれぞれのコンピューティング/プロセッシング装置にダウンロードされることができ、あるいは、例えばインターネット、ローカルエリアネットワーク、ワイドエリアネットワーク、及び/又は無線ネットワークといった、ネットワークを介して、外部コンピュータ又は外部ストレージ装置にダウンロードされることができる。ネットワークは、銅伝送ケーブル、光伝送ファイバ、無線伝送、ルータ、ファイアウォール、交換機、ゲートウェイコンピュータ、及び/又はエッジサーバを有し得る。各コンピューティング/プロセッシング装置内のネットワークアダプタカード又はネットワークインタフェースが、ネットワークからコンピュータ読み取り可能プログラム命令を受信し、該コンピュータ読み取り可能プログラム命令を、それぞれのコンピューティング/プロセッシング装置内のコンピュータ読み取り可能記憶媒体に記憶するために転送する。
【0056】
動作を実行するためのコンピュータ読み取り可能プログラムコード/命令は、アセンブラ命令、命令セットアーキテクチャ(ISA)命令、機械命令、機械依存命令、マイクロコード、ファームウェア命令、状態設定データ、集積回路用のコンフィグレーションデータ、又は例えばSmalltalk、C++、若しくはこれらに類するものなどのオブジェクト指向プログラミング言語、及び“C”プログラミング言語若しくは類似のプログラミング言語などの手続き型プログラミング言語を含め、1つ以上のプログラミング言語の任意の組み合わせで記述されたソースコード又はオブジェクトコードのいずれかとし得る。コンピュータ読み取り可能プログラム命令は、全体としてユーザのコンピュータ上で、部分的にユーザのコンピュータ上で、スタンドアローンのソフトウェアパッケージとして、部分的にユーザのコンピュータ上で且つ部分的に遠隔コンピュータ上で、又は完全に遠隔コンピュータ若しくはサーバ上で実行され得る。後者のシナリオにおいて、遠隔コンピュータは、ローカルエリアネットワーク(LAN)又はワイドエリアネットワーク(WAN)を含め、任意のタイプのネットワークを介してユーザのコンピュータに接続されることができ、あるいは、(例えば、インターネットサービスプロバイダを用いてインターネットを介して)外部コンピュータに対して接続が為されてもよい。一部の実施形態において、例えば、プログラマブル論理回路、フィールドプログラマブルゲートアレイ(FPGA)、又はプログラマブル論理アレイ(PLA)を含む電子回路が、態様又は動作を実行するために、コンピュータ読み取り可能プログラム命令の状態情報を利用して当該電子回路をパーソナライズすることによって、コンピュータ読み取り可能プログラム命令を実行し得る。
【0057】
これらのコンピュータ読み取り可能プログラム命令は、汎用コンピュータ、専用コンピュータ、又は他のプログラマブルデータ処理装置のプロセッサに提供されてマシンを生成することで、コンピュータ又は他のプログラマブルデータ処理装置のプロセッサによって実行される命令が、フローチャート及び/又はブロック図の1つ以上のブロックに規定された機能/行為を実行するための手段を作り出すようにし得る。これらのコンピュータ読み取り可能プログラム命令はまた、特定の方法で機能するようにコンピュータ、プログラマブルデータ処理装置、及び/又は他の装置に指示し得るコンピュータ読み取り可能記憶媒体に格納されることで、命令を格納した該コンピュータ読み取り可能記憶媒体が、フローチャート及び/又はブロック図の1つ以上のブロックに規定された機能/行為の態様を実行する命令を含む製造物品を有するようにし得る。
【0058】
コンピュータ読み取り可能プログラム命令はまた、コンピュータ、他のプログラマブルデータ処理装置、又は他の装置にロードされて、一連の動作ステップが該コンピュータ、他のプログラマブル装置、又は他の装置上で実行されてコンピュータ実装プロセスを生成することで、該コンピュータ、他のプログラマブル装置、又は他の装置上で実行される命令が、フローチャート及び/又はブロック図の1つ以上のブロックに規定された機能/行為を実行するようにし得る。
【0059】
図におけるフローチャート及びブロック図は、様々な実施形態に従ったシステム、方法、及びコンピュータ読み取り可能媒体の取り得る実装のアーキテクチャ、機能、及び動作を示している。これに関し、フローチャート又はブロック図の各ブロックは、特定の(1つ以上の)論理機能を実装するための1つ以上の実行可能命令を有するモジュール、セグメント、又は命令部分を表し得る。当該方法、コンピュータシステム、及びコンピュータ読み取り可能媒体は、図に示したものに対して、追加のブロック、より少ないブロック、異なるブロック、又は異なるように構成されたブロックを含み得る。代わりの一部の実装では、ブロックにて言及された機能は、図で言及された順序とは順不同で行われてもよい。例えば、相次いで示された2つのブロックが実際には同時に又は実質的に同時に実行されてもよく、あるいは、関与する機能に応じて、ブロックが逆の順序で実行されてもよいことがある。これまた留意されたいことには、ブロック図及び/又はフローチャート図の各ブロック、並びにブロック図及び/又はフロー図のブロックの組み合わせは、規定された機能又は行為を実行する、あるいは専用ハードウェア及びコンピュータ命令の組み合わせを実行する、専用ハードウェアベースのシステムによって実装され得る。
【0060】
明らかになることには、ここに記載されたシステム及び/又は方法は、様々な形態のハードウェア、ファームウェア、又はハードウェアとソフトウェアとの組み合わせで実装され得る。これらのシステム及び/又は方法を実装するのに使用される実際の特殊化された制御ハードウェア又はソフトウェアコードは、実装の限定となるものではない。従って、ここでは、システム及び/又は方法の動作及び挙動を、特定のソフトウェアコードを参照することなく記述しており、理解されることには、ここでの記載に基づくシステム及び/又は方法を実装するように、ソフトウェア及びハードウェアが設計され得る。
【0061】
この開示は幾つかの例示的な実施形態を説明してきたが、本開示の範囲内に入る改変、置換、及び様々な代替均等物が存在する。従って、理解されることには、当業者は、ここでは明示的に図示又は説明されていないが、本開示の原理を具現化するものであって、それ故に本開示の精神及び範囲内にあるものである数多くのシステム及び方法を考案することができる。
【国際調査報告】