(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-04-12
(45)【発行日】2024-04-22
(54)【発明の名称】没入型メディアの設置、及び没入型メディアから異種クライアントエンドポイントへの配信
(51)【国際特許分類】
H04N 21/2343 20110101AFI20240415BHJP
H04N 21/258 20110101ALI20240415BHJP
【FI】
H04N21/2343
H04N21/258
(21)【出願番号】P 2022549773
(86)(22)【出願日】2021-09-01
(86)【国際出願番号】 US2021048641
(87)【国際公開番号】W WO2022119612
(87)【国際公開日】2022-06-09
【審査請求日】2022-09-22
(32)【優先日】2020-12-04
(33)【優先権主張国・地域又は機関】US
(32)【優先日】2021-08-23
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】520353802
【氏名又は名称】テンセント・アメリカ・エルエルシー
(74)【代理人】
【識別番号】100107766
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【氏名又は名称】伊東 忠彦
(74)【代理人】
【識別番号】100135079
【氏名又は名称】宮崎 修
(72)【発明者】
【氏名】ハインズ,アリアンヌ
(72)【発明者】
【氏名】ウェンガー,スティーブン
【審査官】川中 龍太
(56)【参考文献】
【文献】特表2013-501475(JP,A)
【文献】特表2010-524412(JP,A)
【文献】特表2013-513319(JP,A)
【文献】特表2005-533433(JP,A)
【文献】特開2019-092152(JP,A)
【文献】特表2017-524183(JP,A)
【文献】米国特許出願公開第2019/0349627(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
H04N 21/00 - 21/858
(57)【特許請求の範囲】
【請求項1】
プロセッサーによって実行可能な没入型メディアのストリーミングを開始する方法であって、
1つ又は複数のトークンの伝送に基づいて、メディアコンテンツに関連付けられるクライアントの特性に対応する情報を受信するステップと、
前記1つ又は複数のトークンを使用して、パッケージングプロセスを前記メディアコンテンツに関連付けるステップであって、前記1つ又は複数のトークンは、前記クライアント、アプリケーション又はニューラルネットワークモデルに関連付けられる、ステップと、
関連付けられたパッケージングプロセスに基づいて、前記1つ又は複数のトークンのうちのトークンに応じて、前記メディアコンテンツを適合化するステップと、
を含
み、前記クライアントの前記特性に対応する前記情報は、前記クライアントが前記プロセッサーに関連付けられるメディア適合化プロセスと直接又は間接的にネゴシエートすることに基づいて受信され、当該方法は、
前記メディア適合化プロセスに関連付けられるニューラルネットワークモデルを作成及び訓練するステップ
をさらに含む、方法。
【請求項2】
前記1つ又は複数のトークンは、クライアントトークン、アプリケーショントークン、及びニューラルネットワークトークンのうちの少なくとも1つを含み、前記クライアントトークンは、前記クライアントの特性に関する情報を含み、前記ニューラルネットワークトークンは、適合化プロセスを容易にする前記ニューラルネットワークモデルに関する情報を含み、前記アプリケーショントークンは、前記クライアントで動作する前記アプリケーションの特性に関する情報を含む、
請求項1に記載の方法。
【請求項3】
前記クライアントが前記パッケージングプロセスを通じてパッケージングメディアサーバからのメディアストリーミングを開始することに基づいて、前記メディアコンテンツを適合化する、
請求項1に記載の方法。
【請求項4】
前記メディアコンテンツを前記クライアントにストリーミングするステップをさらに含む、
請求項1に記載の方法。
【請求項5】
前記メディアコンテンツは没入型メディアを含む、
請求項1に記載の方法。
【請求項6】
没入型メディアをストリーミングするためのコンピュータシステムであって、
コンピュータプログラムコードを記憶するように構成される1つ又は複数のコンピュータ可読非一時的記憶媒体と、
前記コンピュータプログラムコードにアクセスし、前記コンピュータプログラムコードによって指示されるように動作するように構成される1つ又は複数のコンピュータプロセッサーと、
を含み、前記コンピュータプログラムコードは、
前記1つ又は複数のコンピュータプロセッサーに、1つ又は複数のトークンの伝送に基づいて、メディアコンテンツに関連付けられるクライアントの特性に対応する情報を受信させるように構成される受信コードと、
前記1つ又は複数のコンピュータプロセッサーに、前記1つ又は複数のトークンを使用して、パッケージングプロセスを、前記メディアコンテンツに関連付けさせるように構成される関連付けコードであって、前記1つ又は複数のトークンは、前記クライアント、アプリケーション又はニューラルネットワークモデルに関連付けられる、関連付けコードと、
前記1つ又は複数のコンピュータプロセッサーに、関連付けられたパッケージングプロセスに基づいて、前記1つ又は複数のトークンのうちのトークンに応じて、前記メディアコンテンツを適合化させるように構成される適合化コードと、
を含
み、前記クライアントの前記特性に対応する前記情報は、前記クライアントが前記1つ又は複数のコンピュータプロセッサーに関連付けられるメディア適合化プロセスと直接又は間接的にネゴシエートすることに基づいて受信され、
前記1つ又は複数のコンピュータプロセッサーに、前記メディア適合化プロセスに関連付けられたニューラルネットワークモデルを作成及び訓練させるように構成される、相応する作成及び訓練コード
をさらに含む、コンピュータシステム。
【請求項7】
前記1つ又は複数のトークンは、クライアントトークン、アプリケーショントークン、及びニューラルネットワークトークンのうちの少なくとも1つを含み、前記クライアントトークンは、前記クライアントの特性に関する情報を含み、前記ニューラルネットワークトークンは、適合化プロセスを容易にする前記ニューラルネットワークモデルに関する情報を含み、前記アプリケーショントークンは、前記クライアントで動作する前記アプリケーションの特性に関する情報を含む、
請求項
6に記載のコンピュータシステム。
【請求項8】
前記クライアントが前記パッケージングプロセスを通じてパッケージングメディアサーバからのメディアストリーミングを開始することに基づいて、前記メディアコンテンツを適合化する、
請求項
6に記載のコンピュータシステム。
【請求項9】
前記1つ又は複数のコンピュータプロセッサーに、前記メディアコンテンツを前記クライアントにストリーミングさせるように構成されるストリーミングコードをさらに含む、
請求項
6に記載のコンピュータシステム。
【請求項10】
前記メディアコンテンツは没入型メディアを含む、
請求項
6に記載のコンピュータシステム。
【請求項11】
1つ又は複数のコンピュータプロセッサーに、請求項1乃至
5のいずれか一項に記載の方法を実行させる、コンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
[関連出願の相互参照]
本出願は、米国特許商標庁の米国仮特許出願第63/121,617号(2020年12月4日出願)及び米国特許商標庁の米国特許出願第17/408,933号(2021年8月23日出願)の優先権を主張し、そのすべての内容は参照により本明細書に組み込まれる。
【0002】
[技術分野]
本開示は、全体として、データプロセス分野に関し、より具体的に、ビデオコーディングに関する。
【背景技術】
【0003】
「没入型メディア」とは、一般に、人間の感覚システム(視覚、聴覚、体性感覚、嗅覚及び可能な味覚)のいずれか又はすべてを刺激して、ユーザーがメディアエクスペリエンスに実際に存在する知覚を作成又は強化することを指し、つまり、従来の商用ネットワークを介してタイムドの2次元(two-dimension、2D)ビデオ及び相応するオーディオに配信するコンテンツ(「レガシーメディア」と呼ばれる)を超えたものである。没入型メディア及びレガシーメディアの両方はタイムド又はアンタイムドとして特徴づけられることができる。
【発明の概要】
【発明が解決しようとする課題】
【0004】
タイムドメディアとは、時間に従って構造化及びプレゼンテーションされるメディアを指す。例として、映画の特集、ニュースレポート、エピソードコンテンツを含み、これらはすべて期間に従って編成される。レガシービデオ及びオーディオは、一般的に、タイムドメディアと見なされる。
【0005】
アンタイムドメディアは、時間ではなく、ロジック、空間及び/又は時間関係に従って構造化されるメディアである。例として、ユーザーがゲームデバイスにより作成されるエクスペリエンスを制御するビデオゲームを含む。アンタイムドメディアの別の例として、カメラで撮影した静止画像写真である。アンタイムドメディアは、タイムドメディアを、例えばビデオゲームシーンの連続的に循環されるオーディオ又はビデオセグメントに合併することができる。逆に、タイムドメディアはアンタイムドメディア、例えば、固定静止画像を背景とするビデオを合併することができる。
【0006】
没入型メディア機能を有するデバイスとは、没入型メディアにアクセス、解釈及びプレゼンテーションする機能を有するデバイスを指す。このようなメディア及びデバイスは、メディアの数とフォーマット、及びこのようなメディアを大規模に配信し、即ち、従来のネットワークを介したビデオ及びオーディオメディアの配信と同等の配信を実現するために必要なネットワークリソースの数及びタイプという点で、異種である。これに対して、例えば、ラップトップディスプレイ、テレビ及び携帯電話ディスプレイなどのレガシーデバイスは、それらの機能の点で、同種であり、なぜならば、これらのすべてのデバイスはいずれも長方形のディスプレイから構成され、2D長方形のビデオ又は静止画像を主なメディアフォーマットとして使用するからである。
【課題を解決するための手段】
【0007】
実施形態は没入型メディアをストリーミングするための方法、システム及びコンピュータ可読媒体に関する。1つの態様によれば、没入型メディアをストリーミングするための方法を提供する。当該方法は、1つ又は複数のトークンの伝送に基づいて、メディアコンテンツに関連付けられるクライアントの特性に対応する情報を受信するステップを含み得る。1つ又は複数のトークンを使用して、パッケージングプロセスをメディアコンテンツに関連付ける。関連付けられたパッケージングプロセスに基づいて、クライアントの特性に応じて、メディアコンテンツを適合化する。
【0008】
別の態様によれば、没入型メディアをストリーミングするためのコンピュータシステムを提供する。当該コンピュータシステムは、1つ又は複数のプロセッサー、1つ又は複数のコンピュータ可読メモリ、1つ又は複数のコンピュータ可読有形記憶デバイス、及び1つ又は複数の記憶デバイスのうちの少なくとも1つに記憶されたプログラム命令を含み、前記プログラム命令が、1つ又は複数のプロセッサーのうちの少なくとも1つに、1つ又は複数のメモリのうちの少なくとも1つメモリを介して実行させることで、コンピュータシステムは方法を実行することができる。当該方法は、1つ又は複数のトークンの伝送に基づいて、メディアコンテンツに関連付けられるクライアントの特性に対応する情報を受信するステップを含み得る。1つ又は複数のトークンを使用して、パッケージングプロセスをメディアコンテンツに関連付ける。関連付けられたパッケージングプロセスに基づいて、クライアントの特性に応じて、メディアコンテンツを適合化する。
【0009】
別の態様によれば、没入型メディアをストリーミングするためのコンピュータ可読媒体を提供する。当該コンピュータ可読媒体は、1つ又は複数のコンピュータ可読記憶デバイス、及び1つ又は複数の有形記憶デバイスのうちの少なくとも1つに記憶されたプログラム命令を含み、前記プログラム命令はプロセッサーにより実行されることができる。プログラム命令は、1つの方法を実行するためのプロセッサーにより実行されることができ、当該方法は、相応して、1つ又は複数のトークンの伝送に基づいて、メディアコンテンツに関連付けられるクライアントの特性に対応する情報を受信するステップを含み得る。1つ又は複数のトークンを使用して、パッケージングプロセスをメディアコンテンツに関連付ける。関連付けられたパッケージングプロセスに基づいて、クライアントの特性に応じて、メディアコンテンツを適合化する。
【図面の簡単な説明】
【0010】
上記及び他の目的、特徴及び利点は、添付の図面に関連して読まれる例示的な実施形態の以下の詳細な説明から明らかになる。図面は詳細な説明に関連して当業者の理解を容易にすることを明確にするためのものであるので、図面の様々な特徴は縮尺通りではない。
【0011】
【
図1】タイムドレガシーメディア配信のエンドツーエンドプロセスの概略図である。
【0012】
【
図2】タイムドレガシーメディアのストリーミングに使用される標準メディアフォーマットの概略図である。
【0013】
【
図3】タイムド没入型メディアのプレゼンテーション及びストリーミングのためのデータモデルの実施形態の概略図である。
【0014】
【
図4】アンタイムド没入型メディアのプレゼンテーション及びストリーミングのためのデータモデルの実施形態の概略図である。
【0015】
【
図5】自然シーンをキャプチャし、自然シーンを、異種クライアントエンドポイントにサービスを提供するネットワークの摂取フォーマット(ingest format)として使用できるプレゼンテーションに変換するプロセスの概略図である。
【0016】
【
図6】3Dモデリングツール及びフォーマットを使用して、異種クライアントエンドポイントにサービスを提供するネットワークの摂取フォーマットとして使用できる合成シーンのプレゼンテーションを作成するプロセスの概略図である。
【0017】
【0018】
【
図8】複数の異種クライアントエンドポイントにサービスを提供するネットワークの概略図である。
【0019】
【
図9】例えば、ネットワークが特定の没入型メディアクライアントエンドポイントによる使用のためにメディアを適合化するプロセスの前に、摂取メディアフォーマットで表される特定のメディアに関する適合化情報を提供する概略図である。
【0020】
【
図10】ソースメディアをその摂取フォーマットから、特定のクライアントエンドポイントに適する特定のフォーマットへ変換するメディアレンダリングコンバータを含む、メディア適合化プロセスのシステム図である。
【0021】
【
図11】ネットワークが、適合化されたソースメディアを、表現及びストリーミングに適するデータモデルにフォーマットする概略図である。
【0022】
【
図12】
図11のデータモデルを、ネットワークプロトコルパケットのペイロードに断片化(fragment)するメディアストリーミングプロセスのシステム図である。
【0023】
【
図13】ネットワークが、摂取フォーマットの特定の没入型メディアを、特定の没入型メディアクライアントエンドポイントのためのストリーミング可能で適切な配信フォーマットに適合化させるシーケンス図である。
【発明を実施するための形態】
【0024】
特許請求に係る構造及び方法の詳細な実施形態をここに開示する。しかしながら、開示された実施形態は、様々な形態で実施可能な特許請求に係る構造及び方法の単なる例示であると理解され得る。しかしながら、これらの構造及び方法は、多くの異なる形態で実施され、本明細書に記載の例示的な実施形態に限定されると解釈すべきではない。むしろ、これらの例示的な実施形態は、本開示が完璧かつ完全であり、当業者にその範囲を完全に伝えるように提供される。本説明では、本実施形態を不必要に曖昧にすることを回避するため、周知の特徴及び技術は省略されてもよい。
【0025】
実施形態は、全体として、データプロセス分野に関し、より具体的に、ビデオコーディングに関する。本明細書に記載の技術によれば、ネットワークはメディアのソースを摂取(ingest)し、且つフォーマットされたメディアを実際に様々なクライアントエンドポイントに配信する前に、メディアのソースを1つ又は複数のストリーミング可能な「配信フォーマット」に適合化することで、様々な異種クライアントエンドポイントデバイス、これらの異なる特徴、機能、及びクライアントエンドポイントで使用されるアプリケーションの要求に適することができる。メディアソースを様々なストリーミング可能な配信フォーマットに再フォーマットするという機能によって、ネットワークは、様々な機能及び利用可能なコンピューティングリソースを有する様々なクライアントエンドポイントにサービスを同時に提供できるとともに、新しい没入型クライアントエンドポイント、例えば、商用ネットワークにおけるホログラフィックディスプレイ及びライトフィールドディスプレイをサポートできる。異種クライアントエンドポイントデバイスの機能に合わせるようにメディアを適合化する機能は、エンドポイントクライアントで運行する様々なアプリケーションの要求、又はネットワークの現在の機能に合わせるようにメディアを適合化する機能に拡張してもよい。このようなメディアを適応的にストリーミングする機能は、様々なユースケースに没入型メディアを配信することで、その後、様々な異種のエンドポイントでプレゼンテーションすることができるようにするために不可欠である。また、デバイスエンドポイントは、それらの機能及び特徴の点で異種であるため、異種のエンドポイントをサポートすることで、エコシステムの発展に寄与し、異なるユースケースに対して最適化される様々なクライアントエンドポイントをサポートする。
【0026】
以上のように、「没入型メディア」とは、一般に、人間の感覚システム(視覚、聴覚、体性感覚、嗅覚及び可能な味覚)のいずれか又はすべてを刺激して、ユーザーがメディアエクスペリエンスに実際に存在する知覚を作成又は強化することを指し、つまり、従来の商用ネットワークを介してタイムドの2次元(two-dimension、2D)ビデオ及び相応するオーディオに配信するコンテンツ(「レガシーメディア」と呼ばれる)を超えたものである。没入型メディア及びレガシーメディアの両方はタイムド又はアンタイムドとして特徴づけられることができる。
【0027】
タイムドメディアとは、時間に従って構造化及びプレゼンテーションされるメディアを指す。例として、映画の特集、ニュースレポート、エピソードコンテンツを含み、これらは全部で期間に従って編成される。レガシービデオ及びオーディオは、一般的に、タイムドメディアと見なされる。
【0028】
アンタイムドメディアは、時間ではなく、ロジック、空間及び/又は時間関係に従って構造化されるメディアである。例として、ユーザーがゲームデバイスにより作成されるエクスペリエンスを制御するビデオゲームを含む。アンタイムドメディアの別の例として、カメラで撮影した静止画像写真である。アンタイムドメディアは、タイムドメディアを、例えばビデオゲームシーンの連続的に循環されるオーディオ又はビデオセグメントに合併することができる。逆に、タイムドメディアはアンタイムドメディア、例えば、固定静止画像を背景とするビデオを合併することができる。
【0029】
没入型メディア機能を有するデバイスとは、没入型メディアにアクセス、解釈及びプレゼンテーションする機能を有するデバイスを指す。このようなメディア及びデバイスは、メディアの数とフォーマット、及びこのようなメディアを大規模に配信し、即ち、従来のネットワークを介したビデオ及びオーディオメディアの配信と同等の配信を実現するために必要なネットワークリソースの数及びタイプという点で、異種である。これに対して、例えば、ラップトップディスプレイ、テレビ及び携帯電話ディスプレイなどのレガシーデバイスは、それらの機能の点で、同種であり、なぜならば、これらのすべてのデバイスはいずれも長方形のディスプレイから構成され、2D長方形のビデオ又は静止画像を主なメディアフォーマットとして使用するからである。
【0030】
ネットワークを介したメディアの配信では、いずれもメディアを入力又はネットワーク「摂取」フォーマットから、最終的な配信フォーマットに再フォーマットするメディア伝送システム及びアーキテクチャを採用でき、当該配信フォーマットはターゲットクライアントデバイス及びそのアプリケーションだけでなく、ネットワークを介してストリーミングを行うことに有利である。メディアの「ストリーミング」は、広義的に、ソースメディアの断片化及びパケット化を指し、ソースメディアがネットワークを介して連続する小さい「チャンク」で伝送されるようにし、これらの「ブロック」はメディアの時間的又は空間的構造のいずれか又は両方に従って論理的に編成及び順序付けされる。このような配信アーキテクチャ及びシステムにおいて、メディアは、圧縮又は階層化プロセスを経て、最も顕著なメディア情報のみが最初にクライアントに配信される場合がある。いくつかの場合、クライアントは、任意の同じメディア部分を端末ユーザーにプレゼンテーションできる前、メディアのいくつかの部分のすべての著しいメディア情報を受信しなければならない。
【0031】
圧縮及び階層化プロセスの例は、JPEG(Joint Photographic Experts Group、JPEG)標準の(ISO(International Organization for Standardization、ISO)/IEC(International Electrotechnical Commission、IEC)10918パート1)のプログレッシブフォーマットであり、画像を複数の層に分割し、画像全体は、まず、最初焦点がずれた基本的な形状及び色のみ、即ち、画像走査全体のからの低次DCT(Discrete Cosine Transformation、DCT)係数をプレゼンテーションし、そして、画像に焦点を合わせる追加の詳細層、即ち、画像走査からの高次DCT係数をプレゼンテーションする。
【0032】
メディアを小さな部分に分割し、小さな部分を連続するネットワークプロトコルパケットのペイロード部分に編成し、これらのプロトコルパケットを配信するプロセスは、メディアの「ストリーミング」と呼ばれ、メディアを、様々な異種アプリケーションの1つを実行する様々な異種クライアントエンドポイントの1つでプレゼンテーションされるフォーマットに変換するプロセスは、メディアの「適合化」と呼ばれる。
【0033】
定義
【0034】
シーングラフ:ベクターベースのグラフィック編集アプリケーションや最新のコンピューターゲームで一般的に使用される一般的なデータ構造であり、グラフィックシーンのロジックプレゼンテーションを配列し、一般的(しかし、必ずではない)に、空間表現(spatial representation)を配列し、グラフィック構造におけるノードと頂点のセットである。
【0035】
ノード:シーングラフの基本的な要素であり、視覚、オーディオ、触覚、嗅覚、味覚のロジック又は空間、或いは時間表現に関連する情報、若しくは関連するプロセス情報を含み、各ノードは1つの出力エッジ、ゼロ又は複数の入力エッジ、及び当該ノードに接続される少なくとも1つのエッジ(入力又は出力)を有する必要がある。
【0036】
基本層:アセットの公称表現(nominal representation)であり、一般的に、アセットのレンダリングに必要なコンピューティングリソースや時間、又はネットワークを介してアセットを伝送する時間を最小化するように作成される。
【0037】
強化層:1組の情報であり、アセットの基本層表現に応用すると、基本層でサポートされて特徴又は機能を含むように基本層を強化する情報のセットを含む。
【0038】
属性:ノードに関連付けられたメタデータであり、標準的な形式又はより複雑な形式で(例えば、別のノードに基づいて)、当該ノードの特定の特性又は特徴を記述するために用いられる。
【0039】
コンテナ:シリアル化されたフォーマットであり、シーングラフ、シーンのレンダリングに必要なメディアリソースにおけるすべてのメディアリソースを含むすべての自然シーン、すべての合成シーン又は合成シーンと自然シーンの混合を表すように、情報を記憶及び交換するために用いられる。
【0040】
シリアル化:データ構造又はオブジェクト状態を、記憶(例えば、ファイル又はメモリバッファなど)又は伝送(例えば、ネットワーク接続リンク経由)され、その後、再構成され得る(異なるコンピュータ環境にある可能性がある)フォーマットに変換するプロセスである。シリアル化フォーマットに基づいて、取得したビットシーケンスを再び読み取る場合、当該シリアル化フォーマットは、オリジナルオブジェクトの意味的に同じなクローンを作成するために使用できる。
【0041】
レンダラー:(一般的に、ソフトウェアによる)アプリケーション又はプロセスであり、音響物理学、光物理学、視覚認知、聴覚認知、数学、及びソフトウェア開発に関連する分野の選択的な組み合わせに基づいて、入力シーングラフ及びアセットコンテナを与えた場合、当該アプリケーション又はプロセスは、ターゲットデバイスでプレゼンテーションされるのに適した、又はシーングラフにおけるレンダリングターゲットノードの属性で指定される所望の性質に合った、視覚信号及び/又はオーディオ信号を送信する。視覚によるメディアアセットに対して、レンダラーは、ターゲットディスプレイに適した、又は中間アセット(例えば、別のコンテナに再パッケージングされ、即ち、グラフィックスパイプラインにおける一連のレンダリングプロセスで使用される)としての記憶に適した視覚信号を送信でき、オーディオによるメディアアセットに対して、レンダラーは、マルチチャンネルスピーカ及び/又はバイノーラルヘッドフォン(binauralized headphone)でプレゼンテーションされるため、又は別の(出力)コンテナに再パッケージングされるために、オーディオ信号を送信できる。レンダラーの一般的な例はUnity、Unrealを含む。
【0042】
評価:出力を抽象から具体な結果に移動させる1つの結果(例えば、ウェブページのドキュメントオブジェクトモデルの評価と同様)を生成する。
【0043】
スクリプト言語:解釈されたプログラミング言語であり、レンダラーによってランタイムに実行され、動的入力、及びシーングラフノードに対する可変状態変更を処理し、これらの変更は、空間及び時間オブジェクトトポロジ(物理力、約束、IK、変形、衝突を含む)のレンダリング、評価、エネルギー伝搬及び伝送(光、音)に影響する。
【0044】
シェーダー:コンピュータプログラムの一種であり、元々シェーディング(画像内で、適切なレベルの光、暗さ及び色を生成する)に用いられていたが、現在は、コンピュータグラフィックの特殊効果の各分野で、様々な専門機能を実行したり、又はシェーディングと関係がないビデオ後処理、或いはグラフィックとまったく関係がない機能を行ったりする。
【0045】
パストレーシング(Path tracing):シーンの照明が現実に忠実であるように、3次元シーンをレンダリングするコンピュータグラフィック方法である。
【0046】
タイムドメディア:時間に従ってソートされるメディアであり、例えば、特定のクロックによる開始時間及び終了時間を有する。
【0047】
アンタイムドメディア:空間、ロジック又は時間関係に従って編成されるメディアであり、例えば、ユーザーが採用する動作に従って実現されるインタラクティブなエクスペリエンスにあるようである。
【0048】
没入型メディアは、1つ又は複数のタイプのメディアと見なされてもよく、没入型メディア機能を有するデバイスによって人間にプレゼンテーションされる場合、当該メディアは、より迫真的で、且つ自然界でのエクスペリエンスに対する人間の理解に合うように、即ち、レガシーデバイスによりプレゼンテーションされるレガシーメディアを使用して他の方式で実現される刺激を超える刺激が、視覚、音声、味覚、触覚及び聴覚の5つの感覚のいずれかを刺激する。当該明細書において、「レガシーメディア」という用語は、2次元(2D)視覚メディア(静止ピクチャフレーム又は運動ピクチャフレーム)、及び/又はユーザーのインタラクション機能が一時停止、再生、早送り又は早戻しに限定される相応するオーディオを指し、「レガシーデバイス」とは、その機能が、レガシーメディアのみをプレゼンテーションできるように限定されるテレビ、ラップトップ、ディスプレイ及びモバイルデバイスを指す。消費者向けのアプリケーションシーンにおいて、没入型メディアに使用されるプレゼンテーションデバイス(即ち、没入型メディア機能を有するデバイス)は、消費者向けのハードウェアデバイスであり、没入型メディアにより体現される特定の情報を使用して、当該デバイスは、特に、物理的な世界に対する人間の理解と、物理的な世界とのインタラクションにより近いプレゼンテーションを作成できる機能が配置され、即ち、レガシーデバイスの機能を超える。レガシーデバイスの機能は、レガシーメディアのみをプレゼンテーションできるように限定され、没入型メディアデバイスも同様に制限されていない。
【0049】
過去10年間、ヘッドマウントディスプレイ、拡張現実メガネ、ハンドヘルドコントローラー、触覚グローブ及びゲームコンソールを含め、没入型メディア機能を有する多くのデバイスが既に消費市場に導入されている。同様に、ホログラフィックディスプレイ及び他の形態の体積ディスプレイも、次の10年内で登場する予定がある。これらのデバイスはすぐに利用可能、又はもうすぐ利用可能であるが、ある原因で、商用ネットワークを介して没入型メディアを配信するための連続するエンドツーエンドエコシステムは実現されていない。
【0050】
これらの原因の1つは、没入型メディアに対して、現在、商用ネットワークを介してメディアを大規模に配信する、以下の2つの主なユースケースを解決するできる単一の標準表現の欠如である:1)実写(live action)イベントのリアルタイム配信、即ち、コンテンツを作成し、コンテンツをクライアントエンドポイントにリアルタイム又はほぼリアルタイムで配信する場合、2)非リアルタイム配信、即ち、コンテンツが物理的にキャプチャ又は作成されるときに、コンテンツをリアルタイムで配信する必要がない場合。当該2つのユースケースを、現在存在する「ブロードキャスト」及び「オンデマンド」の配信フォーマットとそれぞれ比較してもよい。
【0051】
リアルタイム配信について、コンテンツは1つ又は複数のカメラによりキャプチャされてもよいし、又はコンピュータ生成技術を使用して作成されてもよい。カメラによりキャプチャされるコンテンツは、本明細書において「自然」コンテンツと呼ばれ、コンピュータ生成技術を使用して作成されるコンテンツは、本明細書において「合成」コンテンツと呼ばれる。合成コンテンツを表すためのメディアフォーマットは、3Dモデリング、視覚効果及びCAD(Computer Aided Design、CAD)/CAM(Computer Aided Manufacturing、CAM)業界で使用されるフォーマットであってもよく、オブジェクトフォーマット及びツール、例えばグリッド、テクスチャ、点群、構造化体積、アモルファス体積(例えば、火、煙及び霧に用いられる)、シェーダー、プログラムから生成されるジオメトリ、マテリアル、照明、仮想カメラ定義及びアニメーションを含む。合成コンテンツはコンピュータによって生成されるが、合成メディアフォーマットは自然コンテンツ及び合成コンテンツの両方に適用されることができ、ただし、自然コンテンツを合成メディアフォーマットに変換する(例えば、合成表現に変換する)プロセスは、時間と計算量の多いプロセスである可能性があるため、リアルタイムアプリケーション及びユースケースにとって、非現実的であるかもしれない。
【0052】
自然コンテンツのリアルタイム配信について、カメラによりキャプチャされるコンテンツはラスターフォーマットで配信されてもよく、レガシーディスプレイデバイスに適している。なぜならば、このようなデバイスの多くは同様に、ラスターフォーマットを表示するように設計されるからである。つまり、レガシーディスプレイは同様にラスターフォーマットを表示するように設計されるため、ラスターフォーマットの配信は、ラスターフォーマットのみを表示できるディスプレイに最適である。
【0053】
ところが、没入型メディア機能を有するディスプレイは、必ずしもラスターフォーマットによるディスプレイに限定されるわけではない。また、没入型メディア機能を有するいくつかのディスプレイは、ラスターフォーマットのみに基づいて利用可能なメディアをプレゼンテーションできない。最適化されることで、ラスターフォーマット以外のフォーマットによる没入型エクスペリエンスを作成するディスプレイの利用可能性は、没入型メディア配信のための連続するエンドツーエンドエコシステムがまだ存在しないもう1つの重要な理由である。
【0054】
複数の異なる没入型メディアデバイスに対して、連続する配信システムを作成する別の問題は、没入型メディア機能を有する現在及び新しいデバイス自体は、著しく変化する可能性があることである。例えば、いくつかの没入型メディアデバイスは、一度に1人のユーザーのみが使用するように明示的に設計され、例えばヘッドマウントディスプレイである。他の没入型メディアデバイスは、1人以上のユーザーが同時に使用するように設計され、例えば、「Looking Glass Factory 8K ディスプレイ」(以下、「レンチキュラーライトフィールドディスプレイ(lenticular light field display)」と呼ばれる)は、最大12人のユーザーが同時に見るコンテンツを表示でき、各ユーザーは、表示されているコンテンツに対する独特の視点(即ち、ビュー)を体験している。
【0055】
連続する配信システムの開発をより複雑にするのは、各ディスプレイが生成できる独特のビューの数が大幅に変化する可能性があることである。ほとんどの場合、レガシーディスプレイは単一のコンテンツビューのみを作成できる。ただし、レンチキュラーライトフィールドディスプレイは複数のユーザーをサポートでき、各ユーザーは同じ視覚シーンの独特のビューを体験する。同一のシーンに対する複数のビューの作成を完成させるために、レンチキュラーライトフィールドディスプレイは特定の体積視錐台を作成し、ディスプレイの入力として、同一のシーンの45個の独特ビューが必要である。これは、同一のシーンの45個のわずかに異なる独特のラスター表現をキャプチャし、当該特定のディスプレイに固有のフォーマット(即ち、その視錐台)で、ディスプレイに配信する必要があることを意味する。これに対して、レガシーディスプレイの視錐台は単一の2次元平面に限定されるため、当該ディスプレイを同時に体験する視聴者の数にも関わらず、ディスプレイの視錐台を介して1つ以上のコンテンツのパースペクティブをプレゼンテーションすることができない。
【0056】
一般的に、没入型メディアディスプレイはすべてのディスプレイの以下の特性に応じて大幅に変化する可能性がある、即ち、視錐台のサイズ、体積、同時にサポートする視聴者の数、視錐台を充填するための光学技術であって、点、射線又は波による技術、視錐台を占める光の単位(点、射線又は波)の密度、コンピューティング機能の利用可能性、コンピューティングタイプ(CPU(Central Processing Unit、CPU)又はGPU(Graphics Processing Unit、GPU))、電力のソース、利用可能性(バッテリ又はワイヤ)、ロカールストレージ又はキャッシュの数、及び補助リソース、例えば、クラウドベースのコンピューティングやストレージへのアクセスである。これらの特性は没入型メディアディスプレイの異種性を招致し、レガシーディスプレイの同種性に比べると、没入型メディアディスプレイの異種性は、レガシータイプのディスプレイ及び没入型タイプのディスプレイの両方を含むすべてをサポートできる単一の配信システムの開発を複雑にする。
【0057】
開示されたテーマは、ネットワークによるメディア配信システムの開発を解決し、当該システムは単一のネットワークのコンテキスト内でクライアントエンドポイントとしてのレガシーメディアディスプレイ及び没入型メディアディスプレイの両方をサポートできる。具体的に、本明細書では、入力される没入型メディアソースを、クライアントエンドポイントデバイス(現在、当該クライアントエンドポイントデバイスで実行されているアプリケーションを含む)の特定の特性に適するフォーマットに適合化させるメカニズムを提案する。このような適合化して入力される没入型メディアソースのメカニズムは、入力される没入型メディアの特性を、ターゲットエンドポイントクライアントデバイス(クライアントデバイスで実行されるアプリケーションを含む)の特性と調整し、次に、入力される没入型メディアを、ターゲットエンドポイント及びそのアプリケーションに適するフォーマットに適合化させる。また、適合化プロセスは、入力されるメディアから付加ビュー、例えば新規のビューを補間することで、クライアントエンドポイントに必要な付加ビューを作成する。このような補間は、ニューラルネットワークプロセスの協力で実行され得る。
【0058】
ここで、一般性を失うことなく、開示されたテーマの残りの部分は、入力される没入型メディアソースを特定のエンドポイントクライアントデバイスに適応させるプロセスと、同様に入力される没入型メディアソースを特定のクライアントエンドポイントデバイスで実行される特定のアプリケーションに適応させるプロセスとが同様又は類似することを前提としていることに留意されたい。つまり、入力されるメディアソースをエンドポイントデバイスの特性に適合化させるという問題は、入力される特定のメディアソースを特定のアプリケーションの特性に適合化させるという問題と、同様な複雑さを有する。
【0059】
レガシーメディアによりサポートされるレガシーデバイスは、幅広い消費者の応用を既に実現している。なぜならば、同様に、レガシーメディアコンテンツプロバイダ及び商用ネットワークサービスプロバイダのエコシステムにサポートされるからである。レガシーメディアコンテンツプロバイダは、レガシーメディアの標準に基づく表現を生成し、商用ネットワークサービスプロバイダは、レガシーデバイスを標準のレガシーコンテンツのソースに接続するために、ネットワークインフラストラクチャーを提供する。ネットワークを介してレガシーメディアを配信する役割に加えて、商用ネットワークサービスプロバイダは、さらに、レガシークライアントデバイスと、コンテンツ配信ネットワーク(Content Distribution Network、CDN)での従来のコンテンツへのアクセスとのペアリングを容易にする。適切な形式のコンテンツへのアクセスとペアリングすると、レガシークライアントデバイスは、端末ユーザーにプレゼンテーションするために、コンテンツサーバからデバイスに対してレガシーコンテンツをリクエスト又は「プル」できる。ただし、ネットワークサーバは適切なメディアを、適切なクライアントに「プッシュ」するアーキテクチャは、アーキテクチャ全体及び解決策設計に追加の複雑さをもたらすことなく、同様に関連する。
【0060】
本明細書は、様々な実施形態による方法、装置(システム)及びコンピュータ可読媒体のフローチャート及び/又はブロック図を参照して、各態様を説明する。ここで、コンピュータ可読プログラム命令によって、フローチャート及び/又はブロック図における各ブロック、並びにフローチャート及び/又はブロック図におけるブロックの組み合わせを実現できることを理解すべきである。
【0061】
以下に説明する例示的な実施形態は、メディアを配信するためのシステム、ネットワークのアーキテクチャ、構成及びコンポーネントに関し、前記メディアはビデオ、オーディオ、幾何学(3D)オブジェクト、触覚、関連するメタデータ、又はクライアントデバイスに使用される他のコンテンツを含む。具体的な実施形態は、メディアコンテンツを異種没入型及びインタラクティブなクライアントデバイスに配信するための指向性システム、構成及びアーキテクチャである。
【0062】
図1はタイムドレガシーメディア配信のエンドツーエンドプロセスの例である。
図1において、タイムド視聴コンテンツは101Aのカメラ又はマイクによりキャプチャされるか、又は101Bのコンピュータによって生成され、準備モジュール103に入力される2D画像、及び関連するオーディオのシーケンス102を作成する。103の出力はマスターフォーマット(Master Format)と呼ばれる、編集されたコンテンツ(例えば、言語翻訳、字幕、他の編集機能を含むポストプロダクションに用いられる)であり、当該マスターフォーマットは、コンバータモジュール104により標準メザニンフォーマット(Mezzanine Format)(例えば、オンデマンドメディア用)に変換され、又は標準コントリビューションフォーマット(Contribution Format)(例えば、ライブイベント用)とするように準備する。メディアは、商用ネットワークサービスプロバイダにより「摂取さられ(ingest)」、適合化モジュール105はメディアを様々なビットレート、時間解像度(フレームレート)又は空間解像度(フレームサイズ)にパッケージングし、これらのビットレート、時間解像度(フレームレート)又は空間解像度(フレームサイズ)は、標準配信フォーマット(Distribution Format)にパッケージングされる。取得した適合化は、コンテンツ配信ネットワーク106に記憶され、各クライアント108はコンテンツ配信ネットワーク106からプルリクエスト107を行って、メディアを取得し端末ユーザーにプレゼンテーションする。マスターフォーマットは、101A又は101Bからのメディアの混合を含み得、フォーマット101Aはリアルタイムに取得可能であり、例えば、スポーツの生中継から得られるメディアであることに留意することが重要である。また、クライアント108は、同様に、クライアントに最適な配置及び/又は現在のネットワーク条件に最適な特定の適合化107を選択することを担当するが、ネットワークサーバ(
図1において図示せず)は適切なコンテンツを決定し、その後、クライアント108に「プッシュ」する可能性がある。
【0063】
図2はレガシータイムドメディア、例えばビデオ、オーディオ及びメタデータをサポートする(例えば、字幕用のタイムドテキスト)標準メディアフォーマットを配信するための例である。
図1の項目106に示すように、メディアは、標準に基づく配信フォーマットでCDN201に記憶される。標準に基づくフォーマットはMPD(Microsoft(登録商標) Project Database、MPD)202として示され、クロックの開始時間及び終了時間に対応するタイムド期間203を有する複数の部分を含む。各期間203は1つ又は複数の適合化セット204に関する。各適合化セット204は、一般的に、単一タイプのメディア、例えばビデオ、オーディオ又はタイムドテキストに用いられる。任意の所定期間203について、複数の適合化セット204を提供し得、例えば、1つはビデオに用いられ、複数はオーディオに用いられ、例えば、各種言語への翻訳に用いられる。各適合化セット204は1つ又は複数の表現205に関し、メディアのフレーム解像度(ビデオについて)、フレームレート及びビットレートに関する情報を提供する。複数の表現205は、例えば、それぞれ超高解像度ビデオ、高解像度ビデオ又は標準解像度ビデオの表現205へのアクセスを提供するために使用され得る。各表現205は1つ又は複数のセグメントファイル206を参照し、メディアは、クライアント(
図1の108に示すように)による取得、又はネットワークメディアサーバ(
図1において、図示せず)による配信のために(「プッシュ」に基づくアーキテクチャ)、実際にセグメントファイル206に記憶される。
【0064】
図3は、タイムドの異種没入型メディアに使用されるストリーミング可能なフォーマットの表現例である。
図4は、アンタイムドの異種没入型メディアに使用されるストリーミング可能なフォーマットの表現例である。2つの図面はいずれもシーンに関し、
図3はタイムドメディアのシーン301に関し、
図4はアンタイムドメディアのシーン401に関する。どちらの場合も、シーンは様々なシーンで表現又はシーン記述により体現されることができる。
【0065】
例えば、一部の没入型メディア設計において、シーンはシーングラフにより、又はマルチプレーン画像(Multi-Plane Image、MPI)、或いは多球面画像(Multi-Spherical Image、MSI)として体現され得る。MPI技術及びMSI技術の両方は、自然コンテンツ(即ち、1つ又は複数のカメラから同時にキャプチャされる現実世界の画像)に対して、表示に関係がないシーン表現を作成するための技術例である。一方、シーングラフ技術は、自然画像及びコンピュータによって生成された画像の両方を合成表現の形式で表現するために使用できるが、コンテンツは1つ又は複数のカメラによって自然シーンとしてキャプチャされた場合、このような表現を作成するために、コンピュータ集約型を特に必要とする。つまり、自然にキャプチャされたコンテンツのシーングラフ表現の作成は、時間がかかる上に、コンピュータ集約型であるため、写真測量又は深層学習、或いは両方をともに有する技術を使用して自然画像を複雑に分析することで、合成表現を作成し、これらの表現はその後、補間が十分且つ十分な数を有するビューに使用されて、ターゲット没入型クライアントディスプレイの視錐台を充填する。従って、現在、このような合成表現を、自然コンテンツを表現する候補とすることは非現実的である。なぜならば、リアルタイムの配布を必要とするユースケースを考慮するために、実際にリアルタイムで作成することができない。ただし、現在、コンピュータによって生成された画像の最適な候補表現は、合成モデルを有するシーングラフを使用する。なぜならば、コンピュータによって生成された画像は、3Dモデリングプロセス及びツールを使用して作成されるからである。
【0066】
自然コンテンツ及びコンピュータによって生成されたコンテンツの両方の最適な表現におけるこの二分法は、自然にキャプチャされるコンテンツの最適な摂取フォーマットが、コンピュータによって生成されたコンテンツ、又はリアルタイム配信アプリケーションに不可欠ではない自然コンテンツの最適な摂取フォーマットと異なることを示す。従って、開示されたテーマは、十分にロバストであり、自然に作成されるかコンピュータにより作成されるかに関わらず、視覚没入型メディアに使用される様々な摂取フォーマットをサポートすることを目標とする。
【0067】
以下は、シーングラフを下記フォーマットとして体現する例示的な技術であり、当該フォーマットは、コンピュータ生成技術で作成される視覚没入型メディア、又は深層学習又は写真測量技術で自然シーンの相応する合成表現を作成する自然キャプチャコンテンツを表現するのに適し、つまり、リアルタイム配信アプリケーションに必須ではない。
【0068】
1. OTOYのORBX(登録商標)
【0069】
OTOYのORBXはシーングラフ技術の一種であり、任意のタイプのタイムド又はアンタイムドの視覚メディアをサポートでき、光線追跡可能な視覚フォーマット、レガシーの(フレームに基づく)視覚フォーマット、体積の視覚フォーマット及び他のタイプの合成、又はベクトルに基づく視覚フォーマットを含む。ORBXは他のシーングラフと異なる。なぜならば、ORBXは、メッシュ、点群及びテクスチャの自由に利用できるフォーマット及び/又はオープンソースフォーマットのためのネイティブサポート (native support)を提供するからである。ORBXは、様々なシーングラフ製造業者技術の間の交換を容易にすることを目的とするシーングラフに設計される。また、ORBXは豊かなマテリアルシステム、オープン型シェーダー言語(open shader language)のサポート、ロバストのカメラシステム、及びLuaスクリプトのサポートを提供する。ORBXは、没入型デジタルエクスペリエンスアライアンス(Immersive Digital Experiences Alliance、IDEA)が、ロイヤリティフリー条項での許可に対して発布した没入型技術メディアフォーマットの基礎でもある。メディアのリアルタイム配信のコンテキストにおいて、自然シーンのORBX表現を作成及び配信する機能は、コンピューティングリソースの利用可能性に依存し、カメラによりキャプチャされたデータを複雑に分析し、同じなデータを合成表現に合成する。これまで、リアルタイム配信に十分なコンピューティングの利用可能性は非現実的であるが、それでも不可能ではない。
【0070】
2. Pixar(登録商標)のユニバーサルシーンディスクリプション
【0071】
Pixarのユニバーサルシーンディスクリプション(Universal Scene Description、USD)は、VFX及び専門コンテンツ制作コミュニティで人気のある、もう1つの有名で成熟したシーングラフである。USDはNvidiaのOmniverseプラットフォームに統合され、Omniverseプラットフォームは、開発者がNvidiaのGPUを使用して3Dモデルの作成及びレンダリングを行うためのツールセットである。USDのサブセットは、Apple(登録商標)及びPixarによってUSDZとして公開された。USDZはAppleのARKitによりサポートされる。
【0072】
3. Khronos(登録商標)のglTF2.0
【0073】
glTF2.0は、Khronos 3D Groupにより作成される「グラフィック言語トランスミッションフォーマット(Graphics Language Transmission Format)」仕様の最新バージョンである。当該フォーマットは簡単なシーングラフフォーマットをサポートし、当該簡単なシーングラフフォーマットは一般的に、シーンにおける静的(アンタイムド)オブジェクトをサポートし、「png」及び「jpeg」画像フォーマットを含む。glTF2.0は簡単なアニメーションをサポートし、glTFプリミティブを使用して記述された基本的な形状(即ち、幾何学オブジェクト)の移動、回転及びスケールをサポートする。glTF2.0はタイムドメディアをサポートしないため、ビデオ及びサポートオーディオもサポートしない。
【0074】
没入型視覚メディアのシーン表現に使用されるこれらの既知の設計は、単なる例として提供され、開示されたテーマは、入力される没入型メディアソースをクライアントエンドポイントデバイスの特定の特性に適するフォーマットに適合化させるプロセスの機能に限定されていない。
【0075】
また、上記のメディア表現の例のいずれか又はすべては、深層学習技術を現在採用するか、又は採用する可能性があり、ニューラルネットワークモデルを訓練及び作成し、当該ニューラルネットワークモデルは、錐台の特定のサイズに基づいて特定のビューを選択して、特定のディスプレイの視錐台を充填することを可能にするか又は容易にする。特定のディスプレイの視錐台に対して選択されるビューは、シーン表現から明らかに提供される既存のビュー、例えば、MSI又はMPI技術で補間され、又は特定の仮想カメラ位置、フィルタ、或いはレンダリングエンジンの仮想カメラの記述に基づいて、これらのレンダリングエンジンによって直接的にレンダリングされてもよい。
【0076】
従って、開示されたテーマは、小さいが公知である没入型摂取メディアフォーマットのセットが存在することを考慮すると、十分にロバストであり、当該フォーマットは、リアルタイム又は「オンデマンド」(例えば、非リアルタイム)にメディアを配信するという要求を十分に満たし、前記メディアは自然にキャプチャされ(例えば、1つ又は複数のカメラを使用する)、又はコンピュータ生成技術によって作成される。
【0077】
先進のネットワーク技術、例えばモバイルネットワーク用の5G、及び固定ネットワーク用の光ファイバケーブルが配置されるにつれて、ニューラルネットワークモデル又はネットワークによるレンダリングエンジンの使用による、没入型メディア摂取フォーマットからのビューの補間はさらに容易にされる。つまり、これらの先進のネットワーク技術は商用ネットワークの容量及び機能を増やす。なぜならば、これらの先進のネットワークインフラストラクチャーは、ますます多くの視覚情報の輸送及び伝送をサポートできるからである。ネットワークインフラストラクチャー管理技術、例えばマルチアクセスエッジコンピューティング(Multi-access Edge Computing、MEC)、ソフトウェア定義ネットワーク(Software Defined Networks、SDN)及びネットワーク機能仮想化(Network Functions Virtualization、NFV)は、商用ネットワークサービスプロバイダが、そのネットワークインフラストラクチャーを柔軟に配置でき、いくつかのネットワークリソースのニーズ面での変化に適応し、例えば、ネットワークスループット、ネットワーク速度、ラウンドトリップ遅延及びコンピューティングリソースのニーズの動的な増加又は減少に応答する。また、このような動的なネットワーク要求に適合化する固有の機能は同様に、ネットワークが没入型メディア摂取フォーマットを、適切な配信フォーマットに適合化させて、様々な没入型メディアアプリケーションをサポートする機能を容易にし、これらの没入型メディアアプリケーションは、異種クライアントエンドポイントに使用される潜在的な異種視覚メディアフォーマットを有する。
【0078】
没入型メディアアプリケーション自体は、ネットワークリソースに対して異なる要求を有してもよく、前記没入型メディアアプリケーションは、著しく低いネットワーク遅延でゲーム状態中のリアルタイムな更新に応答するゲームアプリケーション、ネットワークのアップリンク部分及びダウンリンク部分の両方に対して対称的なスループット要求を有するテレプレゼンスアプリケーション、及びデータを消費しているクライアントエンドポイントディスプレイのタイプに基づいて、ダウンリンクリソースに対するニーズを増やしたパッシブビューイングアプリケーションを含む。一般的に、消費者向けの任意のアプリケーションは、様々なクライアントエンドポイントによりサポートされてもよく、これらのクライアントエンドポイントは、ストレージ、コンピューティング及び電力供給のための様々なオンボードクライアント機能を備え、且つ、同様に、特定のメディア表現に対する様々な要求を備える。
【0079】
従って、開示されたテーマは、十分に装備されたネットワーク、即ち、最新のネットワークの一部又はすべての特性を採用するネットワークが、その中に指定された特徴に基づいて、複数のレガシーデバイス、及び没入型メディア機能を有するデバイスを同時にサポートできる。
【0080】
1.リアルタイムユースケース及び「オンデマンド」ユースケースの両方に適するメディア摂取フォーマットを使用して、メディアを配信する柔軟性を提供する。
【0081】
2.レガシークライアントエンドポイント及び没入型メディア機能を有するクライアントエンドポイントの両方に対する自然コンテンツ及びコンピュータ生成コンテンツの両方をサポートする柔軟性を提供する。
【0082】
3.タイムドメディア及びアンタイムドメディアをサポートする。
【0083】
4.クライアントエンドポイントの特徴及び機能、並びにアプリケーションの要求に基づいて、ソースメディア摂取フォーマットを適切な配信フォーマットに動的に適合化させるプロセスを提供する。
【0084】
5.配信フォーマットがIPベースのネットワークでストリーミングできることを確保する。
【0085】
6. ネットワークは複数の異種クライアントエンドポイントに同時にサービスを提供でき、前記クライアントエンドポイントはレガシーデバイス、及び没入型メディア機能を有するデバイスを含む。
【0086】
7. シーン境界に沿ったメディアの編成及び配信に寄与する例示的なメディア表現フレームを提供する。
【0087】
開示されたテーマによって実現された、改善のエンドツーエンドの実施形態は、以下に記載の
図3~
図13の詳しい説明に記載のプロセス及び構成要素で実現される。
【0088】
図3及び
図4はいずれも単一の例示的なエンコンパス配信フォーマットを採用し、当該フォーマットは摂取ソースフォーマットから、特定のクライアントエンドポイントの機能に合わせるように適合化された。上述のように、
図3に示されるメディアはタイムドであり、
図4に示されるメディアはアンタイムドである。特定のエンコンパスフォーマット(encompassing format)の構成は十分にロバストであるため、大量のメディア属性に対応でき、各属性はいずれも、各層がメディア表現に寄与する著しい情報量に基づいて階層化を行う。このような階層化プロセスは、プログレッシブJPEG及びスケーラブルビデオアーキテクチャ、例えばISO/IEC 14496-10(Scalable Advanced Video Coding)で指定されるように、現在の最先端技術では既によく知られている手法であることに留意されたい。
【0089】
1.エンコンパスメディアフォーマットに基づいてストリーミングを行うメディアは、レガシーの視覚及びオーディオメディアに限定されず、マシンとインタラクションを行って人間の視覚、聴覚、味覚、触覚及び嗅覚を刺激する信号を生成できる任意のタイプのメディア情報を含む。
【0090】
2. エンコンパスメディアフォーマットに基づいてストリーミングを行うメディアは、タイムドメディア又はアンタイムドメディア、又は両方の混合であってもよい。
【0091】
3. 基本層及び強化層アーキテクチャを使用してメディアオブジェクトに対する階層化表現を実現することで、さらに、エンコンパスメディアフォーマットのストリーミングを可能にする。1つの例示において、各シーンにおけるメディアオブジェクトに対して多重解像度技術又は多細分化分析技術を使用して、分離した基本層及び強化層を計算する。ISO/IEC 10918-1(JPEG)及びISO/IEC 15444-1(JPEG2000)で指定されているプログレッシブレンダリングする画像フォーマットに類似するが、ラスターによる視覚フォーマットに限定されない。例示的な実施形態において、幾何学オブジェクトのプログレッシブ表現は、ウェーブレット分析を使用して計算されたオブジェクトの多重解像度表現であり得る。
【0092】
メディアフォーマットの階層化表現の別の例示において、強化層は異なる属性を基本層に適用し、例えば、基本層によって表される視覚オブジェクトの表面のマテリアル性質を細分化する。別の例示において、属性は基本層オブジェクトの表面のテクスチャを細分化でき、例えば、表面を滑らかなテクスチャから多孔質テクスチャに変更したり、つや消しの表面から光沢のある表面に変更したりできる。
【0093】
階層化表現の別の例示において、シーンにおける1つ又は複数の視覚オブジェクトの表面は、ランバート(Lambertian)表面から光線追跡可能な表面に変更してもよい。
【0094】
階層化表現の別の例示において、ネットワークはクライアントに基本層表現を配信し、クライアントがシーンの公称プレゼンテーション(nominal presentation)を作成するとともに、基本表現の解像度又は他の特性を細分化(refine)するように追加の強化層の伝送を待つことができるようにする。
【0095】
4. 強化層における属性又は細分化情報の解像度は、従来のMPEG(Moving Picture Experts Group、MPEG)ビデオ標準及びJPEG画像標準のように、基本層におけるオブジェクトの解像度と明示的に結合されていない。
【0096】
5. エンコンパスメディアフォーマットは、プレゼンテーションデバイス又はマシンでプレゼンテーション又は駆動される任意のタイプの情報メディアをサポートすることで、異種クライアントエンドポイントへの異種メディアフォーマットのサポートを実現する。メディアフォーマットを配信するネットワークの1つの実施形態において、ネットワークはまず、クライアントエンドポイントをクエリしてクライアントの機能を決定し、クライアントがメディア表現を有意義に摂取できないと、ネットワークは、クライアントによりサポートされない属性の層を除去するか、又はメディアを現在フォーマットからクライアントエンドポイントに適するフォーマットに適合化させる。このような適合化の1つの例において、ネットワークは、ネットワークベースのメディアプロセスプロトコルを使用して体積視覚メディアアセットを同じな視覚アセットの2D表現に変換する。
【0097】
6. 完全又は部分的に完全な没入型エクスペリエンス(ライブストリーミングイベント、ゲーム又はオンデマンドアセットの再生)に対するマニフェストはシーンにより編成され、当該マニフェストは、レンダリング及びゲームエンジンがプレゼンテーションを作成するために現在摂取できる最小限の情報である。マニフェストは、クライアントがリクエストする没入型エクスペリエンス全体に対してレンダリングされる各シーンのリストを含む。各シーンに関連付けられたのは、シーン幾何学形状のストリーミング可能なバージョンに対応するシーン内の幾何学オブジェクトの1つ又は複数の表現である。シーン表現の1つの実施形態は、当該シーンの幾何学オブジェクトの低解像度バージョンを指す。同一のシーンの別の実施形態は、同じシーンの幾何学オブジェクトに付加的な細部を追加するか、又はテセレーション(tessellation)を増加させるべきシーンの低解像度表現のための強化層を指す。以上のように、各シーンは、1つ以上の強化層を具備することで、シーンの幾何学オブジェクトの詳細をプログレッシブに増加させる。
【0098】
7.シーン内に引用されるメディアオブジェクトの各層はトークン(例えば、URI(Uniform Resource Identifier、URI))に関連付けられ、当該トークンは、ネットワーク内のアクセス可能なリソースのアドレスを指す。これらのリソースはCDNのリソースに類似し、コンテンツはクライアントから取得される。
【0099】
8. 幾何学オブジェクトの表現のためのトークンは、ネットワーク内の位置、又はクライアント内の位置を指す。つまり、クライアントは、そのリソースがネットワークベースのメディア処理のためにネットワークに利用可能であることを通知するように、ネットワークに信号を送信することができる。
【0100】
図3は、タイムドメディアに使用されるエンコンパスメディアフォーマットの実施形態を示す。タイムドシーンマニフェストは、シーン情報のリスト301を含む。シーン301はコンポーネント302のリストを参照し、コンポーネント302はシーン301を含むメディアアセットのプロセス情報及びタイプをそれぞれ記述する。コンポーネント302はアセット303に関し、アセット303はさらに基本層304及び属性強化層305に関する。
【0101】
図4は、アンタイムドメディアに使用されるエンコンパスメディアフォーマットの実施形態を示す。シーン情報401は、クロックによる開始及び終了持続時間に関連付けられていない。シーン情報401はコンポーネント402のリストに関し、コンポーネント402は、シーン401を含むメディアアセットのプロセス情報及びタイプをそれぞれ記述する。コンポーネント402はアセット403(例えば、視覚、オーディオ及び触覚アセット)に関し、アセット403はさらに基本層404及び属性強化層405に関する。また、シーン401は、アンタイムドメディアに使用される他のシーン401に関する。シーン401はさらにタイムドメディアシーンに関する。
【0102】
図5は、自然コンテンツから摂取フォーマットを合成するプロセス500の実施形態を示す。カメラユニット501は単一のカメラレンズを使用して人間のシーンをキャプチャする。カメラユニット502は環状のオブジェクトの周りに5つのカメラレンズを搭載することで、5つの発散する視野を有するシーンをキャプチャする。502における配置は、一般的に、VR(Virtual Reality、VR)アプリケーションに対して、全方向コンテンツをキャプチャする例示的な配置である。カメラユニット503は球の内径部分に7つのカメラレンズを搭載することで、7つの収束する視野を有するシーンをキャプチャする。配置503は一般的に、ライトフィールドディスプレイ又はホログラフィック没入型ディスプレイに対して、ライトフィールド(light field)をキャプチャする例示的な配置である。自然画像データ509は入力として、合成モジュール504に提供され、合成モジュール504は、オプションで、ニューラルネットワーク訓練モジュール505を採用して、訓練画像506のセットを使用して、選択可能なキャプチャニューラルネットワークモデル508を生成する。ニューラルネットワーク訓練モジュール505のプロセスの代わりとして一般的に使用される別のプロセスは、写真測量である。モデル508は、
図5に示されるプロセス500の間に作成されると、モデル508は、自然コンテンツに使用される摂取フォーマット507のアセットのうちの1つになる。摂取フォーマット507の例示的な実施形態はMPI及びMSIを含む。
【0103】
図6は、合成メディア、例えばコンピュータによって生成された画像に対して、摂取フォーマットを作成するプロセス600の実施形態を示す。ライダーカメラ601はシーンの点群602をキャプチャする。コンピュータ603上でCGI(Computer-Generated Imagery、CGI)ツール、3Dモデリングツール又は他のアニメーションプロセスを採用して合成コンテンツを作成することで、ネットワークを介して604 CGIアセットを作成する。センサーを有するモーションキャプチャスーツ605Aは役者605に装着され、役者605のモーションのデジタル記録をキャプチャし、アニメーションのモーションキャプチャ(Motion Capture、MoCap)データ606を生成する。データ602、604及び606は入力として、合成モジュール607に提供され、合成モジュール607は同様にオプションで、ニューラルネットワーク及び訓練データを使用してニューラルネットワークモデルを作成できる。
【0104】
上記の異種没入型メディアを表現及びストリーミングするための技術は、コンピュータ可読命令を使用して、1つ以上のコンピュータ可読媒体に物理的に記憶されるコンピュータソフトウェアとして実現され得る。例えば、
図7は、開示された主題の特定の実施形態を実現するのに適したコンピュータシステム700を示す。
【0105】
コンピュータソフトウェアは、いずれかの適切な機械コード又はコンピュータ言語を使用してコーディングされてもよく、当該機械コード又はコンピュータ言語は、命令を含むコードを生成するために、アセンブリ、コンパイル、リンクなどのメカニズムを受けてもよく、当該命令は、コンピュータ中央処理装置(CPU, central processing unit)、グラフィクス処理ユニット(GPU, Graphics Processing Unit)等によって、直接的に或いはインタープリタ、マイクロコード実行等を通じて実行されてもよい。
【0106】
上記の命令は、例えば、パーソナルコンピュータ、タブレットコンピュータ、サーバ、スマートフォン、ゲームデバイス、モノのインターネットのデバイス等を含む様々なタイプのコンピュータ又はその構成要素上で実行されてもよい。
【0107】
図7により示されるコンピュータシステム700に使用される構成要素は、本質的に例示的なものであり、本開示の実施形態を実装するコンピュータソフトウェアの使用範囲又は機能に関する如何なる限定も示唆することを意図するものではない。また、構成要素の構成も、コンピュータシステム700の例示的な実施形態に示される構成要素のいずれか1つ又は組み合わせに関する如何なる依存性又は要件も有するものとして解釈されるべきではない。
【0108】
コンピュータシステム700は、特定のヒューマンインタフェース入力デバイスを含んでもよい。このようなヒューマンインタフェース入力デバイスは、例えば、触覚入力(例えば、キーストローク、スワイプ、データグローブの動き等)、オーディオ入力(例えば、音声、拍手等)、視覚入力(ジェスチャ等)、嗅覚入力(図示せず)を通じて、1人以上の人間のユーザーによる入力に応答してもよい。また、ヒューマンインタフェースデバイスは、オーディオ(例えば、音声、音楽、周辺音)、画像(例えば、スキャン画像、静止画カメラから取得された写真画像等)、ビデオ(例えば、2次元ビデオ、立体ピクチャを含む3次元ビデオ等)のような、人間による意識的入力に必ずしも直接関連しない特定のメディアをキャプチャするために使用されてもよい。
【0109】
入力ヒューマンインタフェースデバイスは、キーボード701、マウス702、トラックパッド703、タッチスクリーン710、データグローブ(図示せず)、ジョイスティック705、マイクロフォン706、スキャナ707及びカメラ708のうちの1つ又は複数(それぞれの1つだけが図示されている)を含み得る。
【0110】
コンピュータシステム700は、特定のヒューマンインタフェース出力デバイスを含んでもよい。このようなヒューマンインタフェース出力デバイスは、例えば、触覚出力、音、光及び嗅覚/味覚を通じて、1人以上の人間のユーザーの感覚を刺激してもよい。このようなヒューマンインタフェース出力デバイスは、触覚出力デバイス(例えば、タッチスクリーン710、データグローブ(図示せず)又はジョイスティック705による触覚フィードバック、ただし、入力デバイスとして機能しない触覚フィードバックデバイスが存在してもよい)、オーディオ出力デバイス(例えば、スピーカ709、ヘッドフォン(図示せず)等)、視覚出力デバイス(CRTスクリーン、LDCスクリーン、プラズマスクリーン、OLEDスクリーンを含むスクリーン710など、それぞれがタッチスクリーン入力機能を有しても有さなくてもよく、それぞれが触覚フィードバック機能を有しても有さなくてもよく、いくつかがステレオグラフィック出力のように2次元視覚出力又は3次元以上の出力を出力可能であり、仮想現実メガネ(図示せず)、ホログラフィックディスプレイ及びスモークタンク(図示せず)、プリンタ(図示せず)を含んでもよい。
【0111】
コンピュータシステム700は、人間がアクセス可能な記憶デバイス、及び関連する媒体をさらに含み、例えば、CD(Compact Disc、CD)/DVD(Digital Versatile Disk、DVD)などの媒体721を有するCD/DVD ROM(Read Only Memory、ROM)/RW 720の光媒体、サムドライブ722、リムーバブルハードドライブ又はソリッドステートドライブ723、レガシーの磁気媒体(例えば、磁気テープ及びフレキシブルディスク(図示せず))、専用ROM/ASIC(Application Specific Integrated Circuit、ASIC)/PLD(Programable Logic Device、PLD)によるデバイス(例えば、セキュリティドングル(図示せず))などを含む。
【0112】
また、当業者は、ここに開示されたテーマに関連して使用される用語「コンピュータ可読媒体」が伝送媒体、搬送波又は他の非一時的な信号を含まないことを理解すべきである。
【0113】
コンピュータシステム700は、1つ又は複数の通信ネットワークへのインタフェースをさらに含んでもよい。ネットワークは、例えば、無線、有線、光学であってもよい。ネットワークはローカル、広域、メトロポリタン、車両及び産業、リアルタイム、遅延耐性などであってもよい。ネットワークの例は、ローカルネットワーク、例えばイーサネット(登録商標)、無線LAN(Local Area Network、LAN)、セルラーネットワーク(GSM(Global System for Mobile Communication)(登録商標)、3G(Third Generation、3G)、4G(Fourth Generation、4G)、5G(Fifth Generation、5G)、LTE(Long Term Evolution、LTE)などを含む)、TV有線又は無線広域デジタルネットワーク(ケーブルTV、衛星TV及び地上放送TVを含む)、車両及び産業(CANBusを含む)などを含む。いくつかのネットワークは一般的に、特定の汎用データポート又は周辺バス(749)に取り付けられる外部ネットワークインタフェースアダプタ(例えば、コンピュータシステム700のUSBポート)を必要とし、他のネットワークは、一般的に、以下に説明するシステムバス(例えば、PCコンピュータシステムへのイーサネットインタフェース又はスマートフォンコンピュータシステムへのセルラネットワークインタフェース)に取り付けられることによって、コンピュータシステム700のコアに統合される。これらのネットワークのいずれかを使用して、コンピュータシステム700は、他のエンティティと通信することができる。このような通信は、一方向の受信のみ(例えば、放送TV)、一方向の送信のみ(例えば、特定のCANbusデバイスへのCANbus)、或いは双方向(例えば、ローカル又は広域デジタルネットワークを使用する他のコンピュータシステムへ)であってもよい。特定のプロトコル及びプロトコルスタックは、上記のようなネットワーク及びネットワークインタフェースのそれぞれにおいて使用されてもよい。
【0114】
上記のヒューマンインタフェースデバイス、人間がアクセス可能な記憶デバイス及びネットワークインタフェースは、コンピュータシステム700のコア740に取り付けられてもよい。
【0115】
コア740は、1つ以上の中央処理装置(CPU)741、グラフィクス処理ユニット(GPU)742、フィールドプログラマブルゲートアレイ(FPGA, Field Programmable Gate Area)743の形式の特殊なプログラム可能処理ユニット、特定のタスク用のハードウェアアクセラレータ744等を含んでもよい。これらのデバイスは、読み取り専用メモリ(ROM)745、ランダムアクセスメモリ746、内部大容量記憶装置747(例えば、内部のユーザーアクセス不可能なハードドライブ、SSD等)とともに、システムバス748を通じて接続されてもよい。いくつかのコンピュータシステムでは、システムバス748は、更なるCPU、GPU等による拡張を可能にするために、1つ以上の物理プラグの形式でアクセス可能でもよい。周辺デバイスは、コアのシステムバス748に直接取り付けられてもよく、或いは、周辺バス749を通じて取り付けられてもよい。周辺バスのアーキテクチャは、PCI、USB等を含む。
【0116】
CPU 741、GPU 742、FPGA 743及びアクセラレータ744は特定の命令を実行してもよく、当該特定の命令は、組み合わせによって上記のコンピュータコードを構成してもよい。当該コンピュータコードは、ROM745又はRAM746に記憶されてもよい。また、一時的なデータは、RAM746に記憶されてもよいが、永続的なデータは、例えば、内部大容量記憶装置747に記憶されてもよい。1つ以上のCPU741、GPU742、大容量記憶装置747、ROM745、RAM746等と密接に関連し得るキャッシュメモリを使用することによって、メモリデバイスのいずれかへの高速記憶及び検索が可能になってもよい。
【0117】
コンピュータ可読媒体は、様々なコンピュータが実現可能な操作を実行するためのコンピュータコードを有する。媒体及びコンピュータコードは、本開示の目的のために特別に設計及び構築される媒体及びコンピュータコードであってもよく、又は媒体及びコンピュータコードは、コンピュータソフトウェア分野の当業者にとって公知且つ利用可能なタイプであってもよい。
【0118】
限定ではなく例示として、アーキテクチャを有するコンピュータシステム700、特にコア740は、プロセッサー(CPU、GPU、FPGA、アクセラレータなどを含む)が1つ又は複数の有形コンピュータ可読媒体に具現されたソフトウェアを実行することで、機能を提供する。このようなコンピュータ可読媒体は、以下の項目に関連付けられた媒体であってもよく、即ち、上記で紹介したユーザーがアクセス可能な大容量記憶デバイス、及びコア740の非一時的な性質を有するいくつかの記憶デバイス、例えばコア内部大容量記憶デバイス747又はROM 745である。本開示を実現する様々な実施形態のソフトウェアは、このようなデバイスに記憶され、コア740により実行される。特定の必要性に基づいて、コンピュータ可読媒体は、1つ又は複数のメモリデバイス又はチップを含み得る。ソフトウェアは、コア740、特にその中のプロセッサー(CPU、GPU、FPGA等を含む)に、本明細書で説明された、RAM 746に記憶されるデータ構造を限定し、及びソフトウェアにより限定されるプロセスに基づいてこのようなデータ構造を修正するステップを含む、特定のプロセス又は特定のプロセスの特定の部分を実行させる。さらに或いは代替として、コンピュータシステムは、回路(例えば、アクセラレータ744)に配線されたロジック又は他の方法で具現されたロジックの結果として、機能を提供してもよく、当該回路は、本明細書に記載の特定の処理又は特定の処理の特定の部分を実行するために、ソフトウェアの代わりに或いはソフトウェアとともに動作してもよい。ソフトウェアへの参照は、ロジックを含み、必要に応じて、その逆も可能である。コンピュータ可読媒体への参照は、必要に応じて、実行用のソフトウェアを記憶する回路(例えば、集積回路IC)、実行用のロジックを具現する回路又はこれらの双方を含んでもよい。本開示は、ハードウェア及びソフトウェアのいずれかの適切な組み合わせを含む。
【0119】
図8は、クライアントエンドポイントである様々なレガシーのディスプレイ及び没入型メディア機能を有する異種のディスプレイをサポートする例示的なネットワークメディア配信システム800を示す。コンテンツ取得モジュール801は、
図6又は
図5の例示的な実施形態を用いて、メディアをキャプチャ又は作成する。摂取フォーマットはコンテンツ準備モジュール802で作成され、伝送モジュール803によってネットワークメディア配信システムにおける1つ又は複数のクライアントエンドポイント804に伝送される。ゲートウェイは、ネットワークの様々なクライアントエンドポイントへのネットワークアクセスを提供するために、カスタマ構内設備(customer premise equipment)にサービスを提供する。セットトップボックスはカスタマ構内設備として機能することもでき、これによって、ネットワークサービスプロバイダより集約コンテンツへのアクセスを提供する。無線復調器はモバイルデバイスのモバイルネットワークアクセスポイントとして機能することができる(例えば、携帯電話及びディスプレイと同様)。1つ又は複数の実施形態において、レガシーの2Dテレビはゲートウェイ、無線復調器又はWiFiルータに直接接続される。レガシーの2Dディスプレイを有するノートパソコンは、WiFiルータに接続されるクライアントエンドポイントであってもよい。ヘッドマウント2D(ラスターによる)ディスプレイもルータに接続されてもよい。レンチキュラー(Lenticular)ライトフィールドディスプレイはゲートウェイであってもよい。ディスプレイはローカルコンピューティングGPU、記憶デバイス、及び射線による(ray-based)レンチキュラー光学技術を使用して複数のビューを作成する視覚プレゼンテーションユニットを含み得る。ホログラフィックディスプレイはセットトップボックスに接続されるとともに、ローカルコンピューティングCPU、GPU、記憶デバイス及びフレネル(Fresnal)パターン、ウェーブベースのホログラフィック可視化ユニットを含む。拡張現実ヘッドセットは無線復調器に接続され、GPU、記憶デバイス、バッテリ及び体積視覚プレゼンテーションコンポーネントを含んでもよい。密集(dense)ライトフィールドディスプレイはWiFiルータに接続され、複数のGPU、CPU及び記憶デバイス、眼追跡デバイス、カメラ、及び密集射線によるライトフィールドパネルを含んでもよい。
【0120】
図9は、
図8に示されたレガシーのディスプレイ、及び没入型メディア機能を有する異種のディスプレイにサービスを提供する没入型メディア配信モジュール900の実施形態を示す。モジュール901においてコンテンツを作成又は取得し、モジュール901は、それぞれ自然コンテンツ及びCGIコンテンツに対する
図5及び
図6において、さらに体現される。ネットワーク摂取フォーマット作成モジュール902を使用してコンテンツ901を摂取フォーマットに変換する。モジュール902は同様に、それぞれ自然コンテンツ及びCGIコンテンツに対する
図5及び
図6においてさらに体現される。摂取メディアフォーマットをネットワークに伝送し、記憶デバイス903に記憶する。オプションで、記憶デバイスは、没入型メディアコンテンツプロデューサのネットワークに常駐し、903を等分する点線で示されるように、没入型メディアネットワーク配信モジュール(番号付けず)によってリモートでアクセスされる。オプションで、クライアント及びアプリケーション固有の情報はリモート記憶デバイス904で利用可能であり、オプションで、当該リモート記憶デバイス904は代替の「クラウド」ネットワークにリモートで存在してもよい。
【0121】
図9に示すように、クライアントインタフェースモジュール905は情報の主なソース、及びシンク(sink)として機能し、配信ネットワークの主なタスクを実行する。当該特定の実施形態において、モジュール905はネットワークの他のコンポーネントとともに、統合されたフォーマットで実現される。ただし、
図9のモジュール905によって示されるタスクは開示されたテーマの必要な要素を形成する。
【0122】
モジュール905は、クライアント908の特徴及び属性に関する情報を受信し、さらに、908で現在実行されているアプリケーションに関するリクエストを収集する。当該情報はデバイス904から取得され得、又は代替の実施形態において、当該情報はクライアント908を直接的にクエリすることで取得され得る。クライアント908への直接クエリの場合、双方向プロトコル(
図9において図示せず)が存在し、当該双方向プロトコルは操作可能であると仮定し、クライアントはインタフェースモジュール905と直接通信できるようにする。
【0123】
インタフェースモジュール905はさらに、
図9に記載されているメディア適合化及び断片化モジュール910を開始し、通信する。摂取メディアがモジュール910によって適合化及び断片化される場合、オプションで、メディアは、デバイス909の配信記憶のために準備されたメディアとして示される中間メディア記憶デバイスに伝送される。配信メディアが準備され、デバイス909に記憶された場合、インタフェースモジュール905は没入型クライアント908がそのネットワークインタフェース908B、又は「プッシュ」を介して、配信メディア及び相応する記述情報906を受信するか、又はクライアント908自体は記憶デバイス909からメディア906に対する「プル」リクエストを開始できることを確実にする。オプションで、没入型クライアント908はGPU(又は図示されていないCPU)908Cを採用してもよい。メディアの配信フォーマットはクライアント908の記憶デバイス又は記憶キャッシュ908Dに記憶される。最後、クライアント908はその可視化コンポーネント908Aを介してメディアを可視的にプレゼンテーションする。
【0124】
没入型メディアをクライアント908にストリーミングするプロセス全体において、インタフェースモジュール905はクライアント進行状況及び状態フィードバックチャンネル907を介して、クライアントの進行状況の状態を監視する。
【0125】
図10はメディア適合化プロセスの特定の実施形態を示し、摂取されたソースメディアは、クライアント908のリクエストに合うように適切に適合化される。メディア適合化モジュール1001は複数のコンポーネントを含み、当該コンポーネントは、摂取メディアを、クライアント908に対する適切な配信フォーマットに適合化することに寄与する。これらのコンポーネントは例示と見なされるべきである。
図10において、適合化モジュール1001は入力ネットワーク状態1005を受信し、ネットワークでの現在のトラフィック負荷を追跡し、クライアント908の情報は属性、特徴の説明、アプリケーションの特徴、説明、アプリケーションの現在状態、クライアントニューラルネットワークモデル(利用可能であれば)を含み、クライアントの錐台の幾何学形状を、没入型摂取メディアの補間機能にマッピングするのに役立つ。適合化モジュール1001は、適合化された出力が、作成の際、クライアントに適合化されるメディア記憶デバイス1006に記憶されることを確実にする。
【0126】
適合化モジュール1001はレンダラー1001B又はプロセッサー1001Cを使用して、特定の摂取ソースメディアを、クライアントに適するフォーマットに適合化させる。プロセッサー1001Cは1001Aのニューラルネットワークモデルを使用する。このようなプロセッサー1001Cの例は、MPI及びMSIで説明されたDeepviewニューラルネットワークモデルジェネレータを含む。適切なレンダラー1001Bの例はOTOY Octaneレンダラーの修正バージョンであってもよく、当該レンダラーは、直接的に適合化モジュール1001とインタラクションを行うように修正される。オプションで、適合化モジュール1001は圧縮エンコーダ1001D及び圧縮デコーダ1001Eを採用し、摂取メディアのフォーマット及びクライアント908の必要なフォーマットに関して、これらのツールの必要性に依存する。
【0127】
図11は、
図10のクライアントに適合化されるメディア記憶デバイス1102に常駐している、メディア適合化モジュール1101からの適合化メディアを最終的に変換するパッケージングモジュール1103を示す。パッケージングモジュール1103はモジュール1101からの適合化メディアを、ロバストの配信フォーマットに、例えば、
図3又は
図4に示される例示のフォーマットにフォーマットする。マニフェスト情報1104Aはクライアント908に、受信が期待できるシーンデータのリストを提供し、さらに、視覚アセット及び相応するメタデータ、並びにオーディオアセット及び相応するメタデータのリストを提供する。
【0128】
図12は、パケタイザ(Packetizer)モジュール1202を示し、パケタイザモジュール1202は、適合化メディア1201を、クライアント908へのストリーミングに適する個々のパケット1203に「断片化」する。
【0129】
図13に示されるシーケンス
図1300のコンポーネント及び通信は以下のように説明される、即ち、クライアントエンドポイント1301はネットワーク配信インタフェース1302に対してメディアリクエスト1308を開始する。リクエスト1308は、URN(Unique Resource Name、URN)又は他の標準命名法で、クライアントによってリクエストされるメディアを認識する情報を含む。ネットワーク配信インタフェース1302はプロファイルリクエスト1309を使用してリクエスト1308に応答し、プロファイルリクエスト1309は、現在利用可能なリソースに関する情報(コンピューティング、記憶、バッテリ充電率、及びクライアントの現在操作状態を表すための他の情報を含む)を提供するように、クライアント1301にリクエストする。プロファイルリクエスト1309はさらに、1つ又は複数のニューラルネットワークモデルを提供するように、クライアントにリクエストし、ネットワークは前記ニューラルネットワークモデルを使用してニューラルネットワーク推論を行うことで、正確なメディアビューを摂取又は補間し、クライアントプレゼンテーションシステムの特徴に合わせる(このようなモデルがクライアントで利用可能であれば)。クライアント1301からインタフェース1302への応答1311はクライアントトークン、アプリケーショントークン及び1つ又は複数のニューラルネットワークモデルトークン(このようなニューラルネットワークモデルトークンがクライアントで利用可能であれば)を提供する。そして、インタフェース1302はクライアント1301にセッションIDトークン1311を提供する。インタフェース1302は摂取メディアリクエスト1312で摂取メディアサーバ1303にリクエストし、摂取メディアリクエスト1312は、リクエスト1308で認識されたメディアのURN又は標準命名法名称を含む。サーバ1303は摂取メディアトークンを含む応答1313をリクエスト1312に返信する。インタフェース1302は呼び出し1314で応答1313からのメディアトークンをクライアント1301に提供する。インタフェース1302は適合化インタフェース1304に摂取メディアトークン、クライアントトークン、アプリケーショントークン及びニューラルネットワークモデルトークンを提供することで、1308でリクエストされるメディアの適合化プロセスを開始する。インタフェース1304は呼び出し1316でサーバ1303に摂取メディアトークンを提供することで、摂取メディアアセットへのアクセスをリクエストし、これによって、摂取メディアへのアクセスをリクエストする。サーバ1303は、インタフェース1304に対する応答1317において、摂取メディアアクセストークンで呼び出し1316に応答する。インタフェース1304は、摂取メディアアクセストークンにある摂取メディア適合化を、1313で作成されたセッションIDトークンに対応するクライアント、アプリケーション及びニューラルネットワーク推論モデルに適用させるように、メディア適合化モジュール1305にリクエストする。インタフェース1304からモジュール1305へのリクエスト1318は、必要なトークン及びセッションIDを含む。モジュール1305は更新1319において、インタフェース1302に、適合化されたメディアアクセストークン及びセッションIDを提供する。インタフェース1302はインタフェース呼び出し1320において、パッケージングモジュール1306に、適合化されたメディアアクセストークン及びセッションIDを提供する。パッケージングモジュール1306は応答1321において、パッケージングメディアアクセストークン及びセッションIDで、インタフェース1302に応答1321を提供する。モジュール1306は応答1322において、パッケージングメディアサーバ1307に、セッションID用のパッケージングメディアアクセストークン、URN及びパッケージングアセットを提供する。クライアント1301は、応答1321で受信されたパッケージングメディアアクセストークンに対応するメディアアセットのストリーミングを開始するために、リクエスト1323を実行する。クライアント1301は他のリクエストを実行し、メッセージ1324においてインタフェース1302に状態更新を提供する。
【0130】
いくつかの実施形態は、任意の可能な技術詳細レベルの統合のシステム、方法及び/又はコンピュータ可読媒体に関し得る。コンピュータ可読媒体は、プロセッサーに動作を実行させるためのコンピュータ可読プログラム命令を有するコンピュータ可読非一時的記憶媒体(又は複数の媒体)を含む。
【0131】
コンピュータ可読記憶媒体は、命令実行デバイスによって使用される命令を保持及び記憶できる有形のデバイスでもよい。コンピュータ可読記憶媒体は、例えば、電子記憶デバイス、磁気記憶デバイス、光記憶デバイス、電磁記憶デバイス、半導体記憶デバイス又はこれらのいずれかの適切な組み合わせでもよいが、これらに限定されない。コンピュータ可読記憶媒体のより具体的な例の非網羅的なリストは、ポータブルコンピュータディスク、ハードディスク、ランダムアクセスメモリ(RAM)、読み取り専用メモリ(ROM)、消去可能プログラム可能読み取り専用メモリ(EPROM又はフラッシュメモリ)、スタティックランダムアクセスメモリ(SRAM)、ポータブルコンパクトディスク読み取り専用メモリ(CD-ROM)、デジタル多用途ディスク(DVD)、メモリスティック、フロッピーディスク、パンチカードのような機械的に符号化されたデバイス、又は記録された命令を有する溝にある隆起構造、及びこれらのいずれか適切な組み合わせを含む。本明細書で使用されるコンピュータ可読記憶媒体は、電波又は他の自由伝搬電磁波、導波管又は他の伝送媒体を通じて伝搬する電磁波(例えば、光ファイバケーブルを通過する光パルス)、又はワイヤを通じて伝送される電気信号のような、それ自体で一時的な信号であると解釈されるべきではない。
【0132】
本明細書に記載のコンピュータ可読プログラム命令は、コンピュータ可読記憶媒体から各コンピューティング/処理デバイスにダウンロードされてもよく、或いは、ネットワーク(例えば、インターネット、ローカルエリアネットワーク、広域ネットワーク及び/又は無線ネットワーク)を介して外部コンピュータ又は外部記憶デバイスにダウンロードされてもよい。ネットワークは、銅線伝送ケーブル、光伝送ファイバ、無線伝送、ルータ、ファイアウォール、スイッチ、ゲートウェイコンピュータ及び/又はエッジサーバを含んでもよい。各コンピューティング/処理デバイス内のネットワークアダプタカード又はネットワークインタフェースは、ネットワークからコンピュータ可読プログラム命令を受信し、各コンピューティング/処理デバイス内のコンピュータ可読記憶媒体に記憶するためにコンピュータ可読プログラム命令を転送する。
【0133】
動作を実行するためのコンピュータ可読プログラムコード/命令は、アセンブラ命令、命令セットアーキテクチャ(ISA, instruction-set-architecture)命令、機械命令、機械依存命令、マイクロコード、ファームウェア命令、状態設定データ、集積回路システム用の構成データ、又はSmalltalk、C++等のようなオブジェクト指向プログラミング言語、及び「C」プログラミング言語又は同様のプログラミング言語のような手続き型プログラミング言語を含む、1つ以上のプログラミング言語のうちいずれかの組み合わせで記述されたソースコード又はオブジェクトコードでもよい。コンピュータ可読プログラム命令は、ユーザーのコンピュータ上で完全に、スタンドアローンソフトウェアパッケージとしてユーザーのコンピュータ上で部分的に、ユーザーのコンピュータ上で部分的に且つリモートコンピュータ上で部分的に、或いはリモートコンピュータ又はサーバ上で完全に実行されてもよい。リモートコンピュータ又はサーバ上で完全に実行される場合、リモートコンピュータは、ローカルエリアネットワーク(LAN)又は広域ネットワーク(WAN)を含むいずれかのタイプのネットワークを通じてユーザーのコンピュータに接続されてもよく、或いは、外部コンピュータに接続されてもよい(例えば、インターネットサービスプロバイダのインターネットの使用による)。いくつかの実施形態では、例えば、プログラム可能論理回路、フィールドプログラマブルゲートアレイ(FPGA)又はプログラマブルロジックアレイ(PLA, programmable logic array)を含む電子回路システムは、コンピュータ可読プログラム命令の状態情報を利用してコンピュータ可読プログラム命令を実行し電子回路をパーソナライズすることで、各態様又は動作を実行してもよい。
【0134】
これらのコンピュータ可読プログラム命令は、汎用コンピュータ、専用コンピュータ又は他のプログラム可能データ処理装置のプロセッサーに提供され、コンピュータのプロセッサー又は他のプログラム可能データ処理装置を介して実行される命令が、フローチャート及び/又はブロック図のブロックに指定された機能/動作を実装するための手段を生成するように、機械を生成してもよい。また、これらのコンピュータ可読プログラム命令は、コンピュータ、プログラム可能データ処理装置及び/又は他のデバイスに対して特定の方式で機能するように命令できるコンピュータ可読記憶媒体に記憶されてもよく、それにより、記憶された命令を有するコンピュータ可読記憶媒体は、フローチャート及び/又はブロック図に指定された機能/動作の態様を実施する命令を含む製造物を含む。
【0135】
コンピュータ可読プログラム命令は、コンピュータ、他のプログラム可能データ処理装置又は他のデバイスにロードされ、コンピュータ、他のプログラム可能装置又は他のデバイスに一連の動作ステップを実行させ、コンピュータ実装プロセスを生成させてもよく、それにより、コンピュータ、他のプログラム可能装置又は他のデバイスで実行される命令が、フローチャート及び/又はブロック図のブロックに指定された機能/動作を実施する。
【0136】
図面におけるフローチャート及びブロック図は、様々な実施形態によるシステム、方法及びコンピュータ可読媒体の可能な実装のアーキテクチャ、機能及び動作を示す。この点に関し、フローチャート又はブロック図の各ブロックは、特定の論理機能を実装するための1つ以上の実行可能命令を含む、モジュール、セグメント又は命令の一部を表してもよい。方法、コンピュータシステム及びコンピュータ可読媒体は、図面に示すものよりも多くのブロック、少ないブロック、異なるブロック又は異なる配置のブロックを含んでもよい。いくつかの別の実装では、ブロックに記載の機能は、図面に記載の順序から外れてもよい。例えば、連続して示される2つのブロックは、実際には、同時又は実質的に同時に実行されてもよく、或いは、関する機能に応じて、ブロックが場合によっては逆の順序で実行されてもよい。また、ブロック図及び/又はフローチャートの各ブロック、及びブロック図及び/又はフローチャートのブロックの組み合わせは、特定の機能又は動作を実行する専用のハードウェアベースのシステム、又は専用のハードウェアとコンピュータ命令との組み合わせによって実装されてもよい点に留意されたい。
【0137】
本明細書に記載のシステム及び/又は方法は、異なる形式のハードウェア、ファームウェア、又はハードウェアとソフトウェアとの組み合わせで実装されてもよいことが明らかである。これらのシステム及び/又は方法を実装するために使用される実際の専用制御ハードウェア又はソフトウェアコードは、実装を限定するものではない。従って、システム及び/又は方法の動作及び挙動は、特定のソフトウェアコードを参照することなく本明細書に記載されており、ソフトウェア及びハードウェアは、本明細書の記載に基づいてシステム及び/又は方法を実施するように設計されてもよいことが理解される。
【0138】
本明細書で使用される如何なる要素、動作又は命令も、明示的に記載されない限り、重要又は必須であると解釈されるべきではない。また、本明細書で使用される単数形は、1つ以上の項目を含むことを意図しており、「1つ以上」と互換的に使用されてもよい。さらに、本明細書で使用される「セット」という用語は、1つ以上の項目(例えば、関連項目、非関連項目、関連項目と非関連項目との組み合わせ等)を含むことを意図しており、「1つ以上」と互換的に使用されてもよい。1つの項目のみが意図される場合、「1つ」という用語又は同様の言語が使用される。また、本明細書で使用される「持つ」「ある」、「有する」という用語等は、オープンエンドの用語であることを意図する。さらに、「基づく」という用語は、特に明記しない限り、「少なくとも部分的に基づく」を意味することを意図する。
【0139】
様々な態様及び実施形態の説明が例示の目的で提示されているが、網羅的であること又は開示された実施形態に限定されることを意図するものではない。特徴の組み合わせが特許請求の範囲に記載されている及び/又は明細書に開示されているとしても、これらの組み合わせは、可能な実装の開示を限定することを意図するものではない。実際に、これらの特徴の多くは、特許請求の範囲に具体的に記載されていない方法及び/又は明細書に開示されていない方法で組み合わされてもよい。以下に記載の各従属項は、1つの請求項のみに直接従属することがあるが、可能な実装の開示は、請求項のセットの中の他のすべての請求項と組み合わせた各従属項を含む。多くの変更及び変形は、説明した実施形態の範囲から逸脱することなく当業者には明らかになる。本明細書で使用される用語は、実施形態の原理、市場で見出される技術に対する実際の適用又は技術的な改良を最もよく説明するために、或いは、当業者が本明細書に開示される実施形態を理解することを可能にするために選択されている。