JP2021064822A - 通信装置、通信装置の制御方法およびプログラム - Google Patents
通信装置、通信装置の制御方法およびプログラム Download PDFInfo
- Publication number
- JP2021064822A JP2021064822A JP2019186646A JP2019186646A JP2021064822A JP 2021064822 A JP2021064822 A JP 2021064822A JP 2019186646 A JP2019186646 A JP 2019186646A JP 2019186646 A JP2019186646 A JP 2019186646A JP 2021064822 A JP2021064822 A JP 2021064822A
- Authority
- JP
- Japan
- Prior art keywords
- video data
- communication device
- information
- segment
- description file
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Information Transfer Between Computers (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
【課題】ユーザの姿勢に応じた映像データの配信を、映像データ受信側の処理負荷を軽減しつつ実行する。【解決手段】通信装置は、映像データを取得するための情報を記述する記述ファイルを取得する取得手段と、取得された記述ファイルに記述される映像データの基準となる方向を示す第1の方向の情報を解析する解析手段と、通信装置の表示装置が向いている方向を示す第2の方向の情報を検出する検出手段と、第1の方向の情報および第2の方向の情報に基づいて、映像データを領域分割した複数のセグメントの中から受信すべき映像データのセグメントを決定する決定手段と、取得された記述ファイルに記述される情報の中から決定されたセグメントに対応する映像データを取得するための情報を指定し、他の通信装置から前記セグメントを受信する受信手段と、受信されたセグメントから表示すべき映像データを生成する生成手段とを備える。【選択図】図9
Description
本発明は、メディアデータをストリーミング配信ないし再生可能な通信装置に関する。
近年、音声データや映像データ等で構成されるストリーミング形式のコンテンツを、ユーザにリアルタイムに配信する配信システムが提供されている。このような配信システムを利用することで、ユーザは、自身の端末装置を介して、ライブ映像等の所望のコンテンツをリアルタイムで再生することができる。
また、スマートフォンやタブレット等の携帯型端末の普及により、様々な端末装置を介していつでもどこでもストリーミングコンテンツを再生したいという要請が高まっている。このような要請に応えるための技術として、端末装置の能力や端末装置が設置される通信状況に応じて、取得する映像データの品質を動的に変更する適応型ストリーミング(Adaptive Streaming)が注目されている。
また、スマートフォンやタブレット等の携帯型端末の普及により、様々な端末装置を介していつでもどこでもストリーミングコンテンツを再生したいという要請が高まっている。このような要請に応えるための技術として、端末装置の能力や端末装置が設置される通信状況に応じて、取得する映像データの品質を動的に変更する適応型ストリーミング(Adaptive Streaming)が注目されている。
MPEG−DASH(MPEG Dynamic Adaptive Streaming over HTTP)、HTTP Live Streaming等により、HTTPプロトコルでの適応型ストリーミングを実現することができる。
これらの技術では、配信装置は、映像データを細かい時間単位のセグメントに分割し、セグメントを取得させるためのURL(Uniform Resouce Locator)をプレイリストと呼ばれるファイルに記述する。受信装置は、まずこのプレイリストを取得し、プレイリストに記述される情報を参照して所望の品質の映像データのセグメントを取得する。プレイリスト中には、複数のバージョンの映像データのセグメントの取得先アドレスであるURLが記述されている。受信装置は、セグメントのURLを指定することで、HTTP(Hyper Text Transfer Protocol)プロトコルで、自身の能力や通信環境に応じた最適なバージョンの映像データのセグメントを取得することができる。
これらの技術では、配信装置は、映像データを細かい時間単位のセグメントに分割し、セグメントを取得させるためのURL(Uniform Resouce Locator)をプレイリストと呼ばれるファイルに記述する。受信装置は、まずこのプレイリストを取得し、プレイリストに記述される情報を参照して所望の品質の映像データのセグメントを取得する。プレイリスト中には、複数のバージョンの映像データのセグメントの取得先アドレスであるURLが記述されている。受信装置は、セグメントのURLを指定することで、HTTP(Hyper Text Transfer Protocol)プロトコルで、自身の能力や通信環境に応じた最適なバージョンの映像データのセグメントを取得することができる。
適応型ストリーミングを用いて、ユーザが視点を自由に移動できる自由視点映像(3次元映像)をストリーミング配信することができる。
特許文献1は、ユーザの頭部追跡データに基づいて、パノラマ映像の解像度を調整してストリーミング配信する方法を開示する。具体的には、特許文献1の配信方法において、配信側は、ユーザの頭部に装着されるヘッドマウントディスプレイ装置で取得される頭部の向きおよび動きを示す頭部追跡データを受信する。受信された頭部追跡データに基づいてユーザの現在視野を決定し、現在視野内のパノラマ映像の解像度を、現在視野の外側のパノラマ映像の解像度より高く調整し、調整された解像度のパノラマ映像のサブストリームをクライアントへ提供する。
特許文献1は、ユーザの頭部追跡データに基づいて、パノラマ映像の解像度を調整してストリーミング配信する方法を開示する。具体的には、特許文献1の配信方法において、配信側は、ユーザの頭部に装着されるヘッドマウントディスプレイ装置で取得される頭部の向きおよび動きを示す頭部追跡データを受信する。受信された頭部追跡データに基づいてユーザの現在視野を決定し、現在視野内のパノラマ映像の解像度を、現在視野の外側のパノラマ映像の解像度より高く調整し、調整された解像度のパノラマ映像のサブストリームをクライアントへ提供する。
しかしながら、より広視野、例えば360°の3次元映像をストリーミングで視聴しようとする場合、現在の視野外の3次元映像を低い解像度に調整しても、映像データをストリーミング配信するためのネットワーク帯域を十分に削減することは困難であった。また、受信された3次元映像をクライアント側で復号する処理負荷も十分に低減され得ず、映像データの視聴のリアルタイム性が損なわれる場合があった。
特に、ユーザの姿勢(視野領域)の変化に追従して360°の3次元映像を再生表示する場合、ユーザの姿勢にかかわりなく360°の3次元映像をストリーミング配信すると、本来不要であるネットワーク帯域の使用や復号処理が発生してしまう。
特に、ユーザの姿勢(視野領域)の変化に追従して360°の3次元映像を再生表示する場合、ユーザの姿勢にかかわりなく360°の3次元映像をストリーミング配信すると、本来不要であるネットワーク帯域の使用や復号処理が発生してしまう。
本発明の目的は、ユーザの姿勢に応じた映像データの配信を、映像データ受信側の処理負荷を軽減しつつ実行することにある。
上記課題を解決するため、本発明に係る通信装置は、映像データを取得するための情報を記述する記述ファイルを取得する取得手段と、前記取得手段により取得された前記記述ファイルに記述される前記映像データの基準となる方向を示す第1の方向の情報を解析する解析手段と、前記通信装置の表示装置が向いている方向を示す第2の方向の情報を検出する検出手段と、前記第1の方向の情報および前記第2の方向の情報に基づいて、前記映像データを領域分割した複数のセグメントの中から受信すべき映像データのセグメントを決定する決定手段と、前記取得手段により取得された前記記述ファイルに記述される情報の中から前記決定手段により決定された前記セグメントに対応する映像データを取得するための情報を指定し、他の通信装置から前記セグメントを受信する受信手段と、前記受信手段により受信された前記セグメントから表示すべき映像データを生成する生成手段とを備える。
本発明によれば、ユーザの姿勢に応じた映像データの配信を、映像データ受信側の処理負荷を軽減しつつ実行することができる。
以下、添付図面を参照して、本発明を実施するための実施形態について詳細に説明する。なお、以下に説明する実施形態は、本発明の実現手段としての一例であり、本発明が適用される装置の構成や各種条件によって適宜修正または変更されるべきものであり、本発明は以下の実施形態に限定されるものではない。また、本実施形態で説明されている特徴の組み合わせの全てが本発明の解決手段に必須のものとは限らない。
以下、通信装置間で、動画等の映像データをMPEG−DASH(MPEG Dynamic Adaptive Streaming over HTTP)規格に基づき配信する例を説明するが、本実施形態はこれに限定されない。例えば、通信装置は、静止画等の画像データ、音声データ、テキストデータ等の他のデータを送受信してもよい。また、通信装置は、MPEG−DASH規格に替えて、例えば、HTTP Smooth Streaming、HTTP Live Streaming、HTTP Dynamic Streaming等のHTTPストリーミング方式を使用してもよい。あるいは、その他の適応型ストリーミング方式を使用してもよい。
(実施形態1)
<本実施形態のネットワーク構成>
図1は、本実施形態に係る通信システムのネットワーク構成の一例を示す図である。
図1に示す通信システムは、ネットワーク3を介して相互に接続されるクライアント1およびサーバ2を備え、ネットワーク3上で通信を実行する。なお、図1には、1つのクライアント1と1つのサーバ2が図示されているが、ネットワーク3を介して相互接続されるクライアント1およびサーバ2はそれぞれ複数であってもよい。
<本実施形態のネットワーク構成>
図1は、本実施形態に係る通信システムのネットワーク構成の一例を示す図である。
図1に示す通信システムは、ネットワーク3を介して相互に接続されるクライアント1およびサーバ2を備え、ネットワーク3上で通信を実行する。なお、図1には、1つのクライアント1と1つのサーバ2が図示されているが、ネットワーク3を介して相互接続されるクライアント1およびサーバ2はそれぞれ複数であってもよい。
クライアント1は、例えば、DTV(Digital TV)、HMD(HeadMount Display)、マルチビューテレビジョン、スマートフォン、タブレット等の表示機能を備える通信装置であってよい。クライアント1は、サーバ2から配信される映像データを受信および表示するクライアント装置として機能する。あるいは、クライアント1の機能は、PC(PersonalComputer)上のWebブラウザや、その他のインストールされたアプリケーションに実装されてもよい。あるいは、クライアント1は、投影装置を備えるプロジェクタであってもよく、複数の投影装置を備えるマルチプロジェクタであってもよい。また、クライアント1の機能を複数のクライアント装置により分散して実行してもよい。
サーバ2は、デジタルカメラ、デジタルビデオカメラ、ネットワークカメラ、プロジェクタ、携帯電話、スマートフォン、PC、及びサーバ装置等の、映像データをクライアント1へ配信するサーバ装置として機能する。以下、本実施形態では、サーバ2を1つのPCによって実現する例を説明するが、サーバ2の機能は、クラウド上で分散して配置されていてもよい。
ネットワーク3は、クライアント1とサーバ2とを接続して相互通信可能にする。ネットワーク3は、LAN(Local Area Network)やWAN(Wide Area Network)、LTE(Long Term Evolution)や5G等の公衆移動体通信、またはこれらの組み合わせにより構成されてよい。LANは、例えばEthernet(登録商標)に準拠する有線LANや、IEEE(Institute of Electrical and Electronics Engineers)802.11シリーズに準拠する無線LAN等であってよい。WANは、例えばインターネット等であってよい。
なお、クライアント1とサーバ2とは、図1のネットワーク3を介さずに、直接接続されてもよい。例えば、無線アドホックネットワークを用いて、クライアント1とサーバ2とが通信してもよい。本実施形態はネットワーク3の形態如何により限定されるものではない。
なお、クライアント1とサーバ2とは、図1のネットワーク3を介さずに、直接接続されてもよい。例えば、無線アドホックネットワークを用いて、クライアント1とサーバ2とが通信してもよい。本実施形態はネットワーク3の形態如何により限定されるものではない。
図2は、ユーザの姿勢と3次元映像データとの位置関係の一例を説明する図である。図2(a)に示すように、ユーザ2aの姿勢方向2eは、x軸2c、y軸2d、z軸2bの3軸のそれぞれを基準として表現することができる。この姿勢表現による姿勢方向2eはユーザの視点の方向(すなわち、HMD等の表示装置が向いている方向)を示すものと見做すことができ、本実施形態では、3種類の姿勢表現形式のいずれかによって表現可能であるが、その詳細は図3を参照して後述する。
一方、図2(b)を参照して、3次元映像データの映像領域2gは、360°の映像を撮像する際のカメラの基準となる方向(以下、「基準方向」という)2hを有する。本実施形態において、図2(a)のユーザ2aの姿勢方向2eに対応する図2(b)のユーザ2aの姿勢方向2fが向く映像領域2iを、ユーザ2aは、クライアント1を介してサーバ2に対して、選択的にリクエストすることができる。
一方、図2(b)を参照して、3次元映像データの映像領域2gは、360°の映像を撮像する際のカメラの基準となる方向(以下、「基準方向」という)2hを有する。本実施形態において、図2(a)のユーザ2aの姿勢方向2eに対応する図2(b)のユーザ2aの姿勢方向2fが向く映像領域2iを、ユーザ2aは、クライアント1を介してサーバ2に対して、選択的にリクエストすることができる。
例えば、3次元映像データがダイナミックにカメラの撮像姿勢を変化させながら撮像された映像であって、それをユーザ2aが一定の姿勢を保った状態で当該3次元映像データを視聴するものとする。この場合、3次元映像の基準方向2hが無い場合は、カメラの撮像姿勢の変化による映像の変化がそのままユーザ2aが視聴する映像に反映される。一方、本実施形態では、ユーザ2aの姿勢方向2eから3次元映像の基準方向2hを相殺した方向2fの映像領域を選択的に取得する。これにより、3次元映像データの映像が不所望に変化することなく、ユーザ2aが一定の姿勢を保った状態で3次元映像を表示し続けることができる。
図2(c)は、3次元映像データの映像領域(ユーザ2aの空間領域)を、姿勢方向の3軸に基づいて複数の領域に分割した一例を示す。図2(c)では、3次元映像データの映像領域2gを平面分割した例が示されている。
本実施形態では、3次元映像データを分割した平面領域ごとに、符号化を実行してよい。これにより、クライアント1は、ユーザ自身が必要とする領域の映像データだけを取得し、取得された当該領域の映像データを復号化して再生することが可能となる。従来のような3次元映像データ全体を配信し復号化する場合と比較して、3次元映像データの視聴のために必要となるネットワークの帯域を削減することができ、復号化処理の負荷も軽減される。
本実施形態では、3次元映像データを分割した平面領域ごとに、符号化を実行してよい。これにより、クライアント1は、ユーザ自身が必要とする領域の映像データだけを取得し、取得された当該領域の映像データを復号化して再生することが可能となる。従来のような3次元映像データ全体を配信し復号化する場合と比較して、3次元映像データの視聴のために必要となるネットワークの帯域を削減することができ、復号化処理の負荷も軽減される。
本実施形態において、ユーザ2aは、現在視聴中の3次元映像データの視点位置から、ユーザ2a自身が向いている姿勢方向2fに対応する領域2iの映像データのみを取得する。図2(c)を参照して、ユーザ2aの姿勢方向がx軸2c方向に回転し、2kの領域に入った場合は、領域2kの映像データを取得する。一方、ユーザ2aの姿勢方向が反対に回転し、2jの領域に回転した場合は、領域2jの映像データを取得する。
なお、本実施形態では3軸それぞれで平面分割を行うものとするが、本実施形態はこれに限定されず、例えば、1平面のみで平面分割を行ってもよい。すなわち、Z軸2bに沿ってXY平面で分割するような分割手法、X軸2cに沿ってYZ平面で分割する手法、あるいはY軸2dに沿っててXZ平面で分割する手法を本実施形態に適用してもよい。
また、本実施形態では姿勢の回転方向のみで分割を行っているが、本実施形態はこれに限定されず、さらに移動方向または焦点位置での分割も併せて行ってもよい。これにより、ユーザが必要とする3次元映像データをより小さいデータサイズで配信することが可能となり、映像データ配信におけるネットワークの負荷を低減することができる。
また、本実施形態では姿勢の回転方向のみで分割を行っているが、本実施形態はこれに限定されず、さらに移動方向または焦点位置での分割も併せて行ってもよい。これにより、ユーザが必要とする3次元映像データをより小さいデータサイズで配信することが可能となり、映像データ配信におけるネットワークの負荷を低減することができる。
このように、クライアント1が、ユーザが視聴したい姿勢方向の映像データのみを取得することで、3次元映像データの視聴のため必要となるネットワークの帯域が削減できるとともに、復号化処理の負荷も軽減される。
図3は、3つの姿勢表現形式の相違を説明する図である。図3に示す姿勢表現形式で表現可能なユーザ2aの姿勢方向と3次元映像データの基準方向を示すカメラの撮像姿勢は、クライアント1およびサーバ2の姿勢検出部により検出されるがその詳細は、図4および図5を参照して後述する。
図3を参照して、オイラー角(Euler Angle)3a、回転行列(Rotation Matrix)3b、四元数(Quaternion)3cの表現形式のうちいずれかによって姿勢を表現することが可能である。これらの姿勢表現形式は、ユーザ2aの姿勢方向および3次元映像データの基準方向をそれぞれ表現することができ、3次元映像データを取得する際、および表示する際の姿勢の内部演算に用いられる。
図3を参照して、オイラー角(Euler Angle)3a、回転行列(Rotation Matrix)3b、四元数(Quaternion)3cの表現形式のうちいずれかによって姿勢を表現することが可能である。これらの姿勢表現形式は、ユーザ2aの姿勢方向および3次元映像データの基準方向をそれぞれ表現することができ、3次元映像データを取得する際、および表示する際の姿勢の内部演算に用いられる。
各姿勢表現形式の関係式につきここでは詳細な説明を割愛するが、オイラー角3a、回転行列3b、および四元数3cでの姿勢表現形式はそれぞれ、図3に示すような可逆性を有し、相互に表現形式を変換することができる。
なお、表示する3次元映像の姿勢表現に用いられる姿勢表現形式は、3次元映像データを受信するクライアント1のアプリケーションによって異なり得る。このため、3次元映像データが有する基準方向(カメラの撮像姿勢)の姿勢表現形式と、ユーザの姿勢方向の姿勢表現形式とが異なり得る。この場合、上記のユーザ2aの姿勢方向2eから3次元映像の基準方向2hを相殺した姿勢方向2fの映像領域を取得しようとする際、相殺のための演算処理に先だって姿勢表現形式の変換処理を実行しなければならず、演算処理負荷が増大する。このような姿勢表現形式の変換処理を避けてストリーミング再生のリアルタイム性を維持するため、3次元映像データの姿勢表現形式とユーザの姿勢方向の姿勢表現形式とが一致していることが望ましいことになる。
なお、表示する3次元映像の姿勢表現に用いられる姿勢表現形式は、3次元映像データを受信するクライアント1のアプリケーションによって異なり得る。このため、3次元映像データが有する基準方向(カメラの撮像姿勢)の姿勢表現形式と、ユーザの姿勢方向の姿勢表現形式とが異なり得る。この場合、上記のユーザ2aの姿勢方向2eから3次元映像の基準方向2hを相殺した姿勢方向2fの映像領域を取得しようとする際、相殺のための演算処理に先だって姿勢表現形式の変換処理を実行しなければならず、演算処理負荷が増大する。このような姿勢表現形式の変換処理を避けてストリーミング再生のリアルタイム性を維持するため、3次元映像データの姿勢表現形式とユーザの姿勢方向の姿勢表現形式とが一致していることが望ましいことになる。
<クライアント1のハードウエア構成>
図4は、本実施形態に係るクライアント1のハードウエア構成の一例を示す図である。
図4に示すクライアント1は、制御部11、記憶部12、表示部13、姿勢検出部14、復号化部15、操作部16、通信部17、およびインタフェース18を備える。
図4のクライアント1の各構成部は、システムバス19により通信可能に相互接続される。なお、クライアント1は、上記のモジュール全てを備えなくともよく、図4の構成に加えて追加のモジュール等を備えてもよい。
図4は、本実施形態に係るクライアント1のハードウエア構成の一例を示す図である。
図4に示すクライアント1は、制御部11、記憶部12、表示部13、姿勢検出部14、復号化部15、操作部16、通信部17、およびインタフェース18を備える。
図4のクライアント1の各構成部は、システムバス19により通信可能に相互接続される。なお、クライアント1は、上記のモジュール全てを備えなくともよく、図4の構成に加えて追加のモジュール等を備えてもよい。
制御部11は、CPU(Central Processing Unit)やMPU(Micro Processing Unit)等の1つまたは複数のプロセッサにより構成される。制御部11は、記憶部12に記憶されたプログラムを実行することにより、クライアント1の動作を統括的に制御し、システムバス19を介して各構成部を制御する。
記憶部12は、ROM(Read Only Memory)やRAM(Random Access Memory)等のメモリにより構成され、後述する各種動作を実行するためのプログラム、各種データ、通信パラメータ等の情報を記憶する。なお、記憶部12として、ROMやRAM等のメモリの他、例えば、フレキシブルディスク、ハードディスク、光ディスク、CD−ROM、CD−R、磁気テープ、不揮発性メモリカード、DVD等の記憶媒体を用いてよい。また、記憶部12は、複数のメモリを備えてよい。
記憶部12は、ROM(Read Only Memory)やRAM(Random Access Memory)等のメモリにより構成され、後述する各種動作を実行するためのプログラム、各種データ、通信パラメータ等の情報を記憶する。なお、記憶部12として、ROMやRAM等のメモリの他、例えば、フレキシブルディスク、ハードディスク、光ディスク、CD−ROM、CD−R、磁気テープ、不揮発性メモリカード、DVD等の記憶媒体を用いてよい。また、記憶部12は、複数のメモリを備えてよい。
表示部13は、例えば液晶パネル等を備え、制御部11の制御の下で各種の表示を行う。なお、図4では、映像データを表示する表示部13がクライアント1のハードウエアに含まれているが、本実施形態はこれに限定されない。表示部13は、クライアント1にHDMI(Hi−Definition Multimedia Interface)(登録商標)等を介して接続されるディスプレイ、テレビ等の表示機能を備える別個の装置であってもよい。
姿勢検出部14は、例えばジャイロセンサ、加速度センサ、または地磁気センサ等を備え、ユーザの姿勢方向の時間上の変化を検出する。姿勢検出部14により検出されたユーザの姿勢方向(姿勢情報)は、記憶部12に記憶される。
復号化部15は、サーバ2で符号化された映像データの復号化処理を行う。
操作部16は、マウス等のポインティングデバイスや音声入力、ボタン操作等を介してユーザからの各種操作の受付を行う。操作部16はまた、ヘッドマウントディスプレイ(HMD)等を装着するユーザの視点、姿勢、焦点等に関する操作を検出する。
復号化部15は、サーバ2で符号化された映像データの復号化処理を行う。
操作部16は、マウス等のポインティングデバイスや音声入力、ボタン操作等を介してユーザからの各種操作の受付を行う。操作部16はまた、ヘッドマウントディスプレイ(HMD)等を装着するユーザの視点、姿勢、焦点等に関する操作を検出する。
通信部17は、インタフェース18を制御して、各種通信処理を制御する。
インタフェース18は、無線LAN、有線LAN、または公衆移動体通信を介した通信を提供する。
インタフェース18は、無線LAN、有線LAN、または公衆移動体通信を介した通信を提供する。
<サーバ2のハードウエア構成>
図5は、本実施形態に係るサーバ2のハードウエア構成の一例を示す図である。
図5に示すサーバ2は、制御部21、記憶部22、表示部23、姿勢検出部24、符号化部25、操作部26、通信部27、撮像部28、およびインタフェース29を備える。
図5のサーバ2の各構成部は、システムバス29bにより通信可能に相互接続される。なお、クライアント2は、上記のモジュール全てを備えなくともよく、図5の構成に加えて追加のモジュール等を備えてもよい。
図5は、本実施形態に係るサーバ2のハードウエア構成の一例を示す図である。
図5に示すサーバ2は、制御部21、記憶部22、表示部23、姿勢検出部24、符号化部25、操作部26、通信部27、撮像部28、およびインタフェース29を備える。
図5のサーバ2の各構成部は、システムバス29bにより通信可能に相互接続される。なお、クライアント2は、上記のモジュール全てを備えなくともよく、図5の構成に加えて追加のモジュール等を備えてもよい。
制御部21は、CPUやMPU等の1つまたは複数のプロセッサにより構成される。制御部21は、記憶部22に記憶されたプログラムを実行することにより、サーバ2の動作を統括的に制御し、システムバス29bを介して各構成部を制御する。
記憶部22は、ROMやRAM等のメモリにより構成され、後述する各種動作を実行するためのプログラム、各種データ、通信パラメータ等の情報を記憶する。なお、記憶部22として、ROMやRAM等のメモリの他、例えば、フレキシブルディスク、ハードディスク、光ディスク、CD−ROM、CD−R、磁気テープ、不揮発性メモリカード、DVD等の記憶媒体を用いてよい。また、記憶部22は、複数のメモリを備えてよい。
記憶部22は、ROMやRAM等のメモリにより構成され、後述する各種動作を実行するためのプログラム、各種データ、通信パラメータ等の情報を記憶する。なお、記憶部22として、ROMやRAM等のメモリの他、例えば、フレキシブルディスク、ハードディスク、光ディスク、CD−ROM、CD−R、磁気テープ、不揮発性メモリカード、DVD等の記憶媒体を用いてよい。また、記憶部22は、複数のメモリを備えてよい。
表示部23は、例えば液晶パネル等を備え、制御部21の制御の下で各種の表示を行う。
姿勢検出部24は、例えばジャイロセンサ、加速度センサ、または地磁気センサ等を備え、サーバ2の撮像部28の撮像姿勢の時間上の変化を検出する。
符号化部25は、配信すべき映像データの符号化処理を行う。なお、図5では、映像データを符号化する符号化部25がサーバ2のハードウエアに含まれているが、本実施形態はこれに限定されず、サーバ2は、他の装置から符号化済みの映像データを取得してもよい。
操作部26は、マウス等のポインティングデバイスや音声入力、ボタン操作等を介してユーザからの各種操作の受付を行う。
姿勢検出部24は、例えばジャイロセンサ、加速度センサ、または地磁気センサ等を備え、サーバ2の撮像部28の撮像姿勢の時間上の変化を検出する。
符号化部25は、配信すべき映像データの符号化処理を行う。なお、図5では、映像データを符号化する符号化部25がサーバ2のハードウエアに含まれているが、本実施形態はこれに限定されず、サーバ2は、他の装置から符号化済みの映像データを取得してもよい。
操作部26は、マウス等のポインティングデバイスや音声入力、ボタン操作等を介してユーザからの各種操作の受付を行う。
通信部27は、インタフェース29を制御して、各種通信処理を制御する。
インタフェース29は、無線LAN、有線LAN、または公衆移動体通信を介した通信を提供する。
撮像部28は、映像データを撮像する。なお、図5では、映像データを撮像する撮像部28がサーバ2のハードウエアに含まれているが、本実施形態はこれに限定されない。サーバ2は、他の通信装置から映像データを取得してもよく、この場合、サーバ2は撮像部28を備えなくてよい。また、本実施形態では、1つのサーバ2が取得した映像データを使用しているが、これに限らず、サーバ2は、複数の機器から取得した映像データを元に配信すべき映像データを生成してもよい。さらに、サーバ2は、複数の機器から取得された映像データを元に生成された映像データを、他の機器から取得してもよい。
インタフェース29は、無線LAN、有線LAN、または公衆移動体通信を介した通信を提供する。
撮像部28は、映像データを撮像する。なお、図5では、映像データを撮像する撮像部28がサーバ2のハードウエアに含まれているが、本実施形態はこれに限定されない。サーバ2は、他の通信装置から映像データを取得してもよく、この場合、サーバ2は撮像部28を備えなくてよい。また、本実施形態では、1つのサーバ2が取得した映像データを使用しているが、これに限らず、サーバ2は、複数の機器から取得した映像データを元に配信すべき映像データを生成してもよい。さらに、サーバ2は、複数の機器から取得された映像データを元に生成された映像データを、他の機器から取得してもよい。
<クライアント1の機能構成>
図6は、クライアント1の機能構成の一例を示すブロック図である。
図6に示す各機能部は、1つ以上のCPU(不図示)が、記憶部12に格納されたプログラムを実行することにより実現され得る。すなわち、後述する各フローチャートは、1つ以上のCPUが、記憶部12に格納されたプログラムを実行し、情報の演算および加工並びに各ハードウェアの制御を実行することにより実現され得る。ただし、図6に示す各機能部の一部またはすべてが専用のハードウェアにより実現されてもよい。
なお、本実施形態では以下に示す各機能ブロックの機能は、制御部11のCPU(不図示)がメモリ(不図示)に格納されているソフトウェアプログラムを実行することにより実施されるものとする。但し、各機能ブロックに含まれる一部または全部がハードウェア化されていてもよい。後述する図7に示すサーバ2の各機能部についても同様である。
図6は、クライアント1の機能構成の一例を示すブロック図である。
図6に示す各機能部は、1つ以上のCPU(不図示)が、記憶部12に格納されたプログラムを実行することにより実現され得る。すなわち、後述する各フローチャートは、1つ以上のCPUが、記憶部12に格納されたプログラムを実行し、情報の演算および加工並びに各ハードウェアの制御を実行することにより実現され得る。ただし、図6に示す各機能部の一部またはすべてが専用のハードウェアにより実現されてもよい。
なお、本実施形態では以下に示す各機能ブロックの機能は、制御部11のCPU(不図示)がメモリ(不図示)に格納されているソフトウェアプログラムを実行することにより実施されるものとする。但し、各機能ブロックに含まれる一部または全部がハードウェア化されていてもよい。後述する図7に示すサーバ2の各機能部についても同様である。
クライアント1は、MPD取得部101、MPD解析部102、視点制御部103、姿勢制御部104、復号化制御部105、表現判定部106、表示制御部107、アダプテーションセット管理部108、および操作制御部109を備える。クライアント1はさらに、通信制御部110、セグメント取得部112、およびセグメント解析部113を備える。
MPD取得部101は、通信制御部110を介して、サーバ2からMPD(Media Presentation Description)ファイルを取得する。
MPEG−DASHのコンテンツは、セグメントとMPDとの2種類のファイルで構成されている。セグメントは、符号化された映像データを数秒〜数十秒単位に分割した映像データのファイルである。MPDは、XML(Extensible Markup Language)形式のメタデータであり、映像データのストリーミング再生に必要な情報を記述する記述ファイル(マニュフェストファイル)ないしプレイリストである。
具体的には、MPDは、符号化方式やビットレート等の符号化パラメータ、およびセグメントの分割単位や取得先等のセグメントの情報を記述する。セグメントの取得先は、特定のタイミングに当該セグメントにアクセスするためのURL(Uniform Resource Locator)として記述され、セグメントに一意に付与されるURLを指定することでセグメントを取得することができる。
MPEG−DASHのコンテンツは、セグメントとMPDとの2種類のファイルで構成されている。セグメントは、符号化された映像データを数秒〜数十秒単位に分割した映像データのファイルである。MPDは、XML(Extensible Markup Language)形式のメタデータであり、映像データのストリーミング再生に必要な情報を記述する記述ファイル(マニュフェストファイル)ないしプレイリストである。
具体的には、MPDは、符号化方式やビットレート等の符号化パラメータ、およびセグメントの分割単位や取得先等のセグメントの情報を記述する。セグメントの取得先は、特定のタイミングに当該セグメントにアクセスするためのURL(Uniform Resource Locator)として記述され、セグメントに一意に付与されるURLを指定することでセグメントを取得することができる。
MPD解析部102は、MPD取得部101によりサーバ2から取得されたMPDファイルを解析する。具体的には、MPD解析部102は、MPDファイルに記述されている3次元映像データの取得および再生に使用されるメタデータを解析するが、このMPDファイルのメタデータの記述例は図11〜図13を参照して後述する。
視点制御部103は、3次元映像データの空間内での視点移動を制御する。具体的には、視点制御部103は、ユーザの現在の視点位置と3次元映像データの視点移動可能範囲とを保持し、視点位置が3次元映像データの範囲外に移動しないように制御する。また、視点制御部103は、空間領域が図2(c)に示すように分割されている場合、分割されたそれぞれの分割領域(分割空間)について視点移動可能範囲を保持する。
視点制御部103は、3次元映像データの空間内での視点移動を制御する。具体的には、視点制御部103は、ユーザの現在の視点位置と3次元映像データの視点移動可能範囲とを保持し、視点位置が3次元映像データの範囲外に移動しないように制御する。また、視点制御部103は、空間領域が図2(c)に示すように分割されている場合、分割されたそれぞれの分割領域(分割空間)について視点移動可能範囲を保持する。
姿勢制御部104は、3次元映像データの空間内でのユーザの姿勢方向および姿勢範囲を制御する。具体的には、姿勢制御部104は、ユーザの現在の姿勢方向と姿勢範囲、および3次元映像データに含まれている基準方向およびその移動可能範囲を保持し、ユーザの姿勢方向や姿勢範囲が3次元映像データの範囲外にならないように制御する。
復号化制御部105は復号化部15を制御し、符号化された3次元映像データの復号化を行う。なお、復号化制御部105は、3次元映像データに限らず、その他の符号化方式で符号化された各種映像データを復号してもよい。
復号化制御部105は復号化部15を制御し、符号化された3次元映像データの復号化を行う。なお、復号化制御部105は、3次元映像データに限らず、その他の符号化方式で符号化された各種映像データを復号してもよい。
姿勢表現判定部106は、クライアント1が複数の姿勢表現形式のうち、所定の姿勢表現形式を判別できるかを判定する。例えば、姿勢表現判定部106は、クライアント1が取得したMPDファイルに記述されるcodecsの値を取得する。そして、姿勢表現判定部106は、当該codecsを含むAdaptationSet、または、Representationに含まれる映像データが判別可能かを判定する(図11〜図13参照)。
表示制御部107は、視点制御部103、姿勢制御部104、および姿勢表現判定部106等の制御処理の実行結果に基づいて、表示部13に表示される3次元映像データの表示を制御する。表示制御部107は、セグメント単位でサーバ2から配信される3次元映像データを、サーバ2から受信されるMPDファイルに記述される映像データの構成にしたがい、クライアント1の映像再生用バッファ内でつなぎ合わせて、表示部13に表示させる。また、表示制御部107は、3次元映像データの拡大・縮小等のズーム処理も行う。
表示制御部107は、視点制御部103、姿勢制御部104、および姿勢表現判定部106等の制御処理の実行結果に基づいて、表示部13に表示される3次元映像データの表示を制御する。表示制御部107は、セグメント単位でサーバ2から配信される3次元映像データを、サーバ2から受信されるMPDファイルに記述される映像データの構成にしたがい、クライアント1の映像再生用バッファ内でつなぎ合わせて、表示部13に表示させる。また、表示制御部107は、3次元映像データの拡大・縮小等のズーム処理も行う。
適応セット管理部108は、MPDファイルに含まれるAdaptationSetと、それぞれのAdaptationSetに含まれるメタデータとを管理する。また、適応セット管理部108は、再生中のセグメントのAdaptationSetを管理する。
操作制御部109は、操作部16を制御して、ユーザからの各種操作を受け付ける。
通信制御部110は、通信部17を制御して、サーバ2を含む他の通信装置との間での通信を制御する。具体的には、通信制御部110は、HTTP、TCP(Transmission Control Protocol)/IP(Internet Protocol)等の各種通信プロトコルによる通信を制御する。
操作制御部109は、操作部16を制御して、ユーザからの各種操作を受け付ける。
通信制御部110は、通信部17を制御して、サーバ2を含む他の通信装置との間での通信を制御する。具体的には、通信制御部110は、HTTP、TCP(Transmission Control Protocol)/IP(Internet Protocol)等の各種通信プロトコルによる通信を制御する。
セグメント取得部111は、通信制御部110を介して、サーバ2から3次元映像データのセグメントを取得する。本実施形態において、セグメント取得部111は、MPDファイルに記述されている3次元映像データの基準方向と、姿勢制御部104が保持する視点位置からのユーザの姿勢方向とに基づいて、3次元映像データの視点の初期方向を演算する。そして、セグメント取得部111は、サーバに対して、演算された初期方向を使用して、ユーザが向いている領域に対応するセグメントを選択的に要求することができる。ここで要求されるセグメントは、3次元映像データを分割した分割領域のそれぞれに対応してよく、それぞれ異なるURLが付与され、分割領域のセグメントの方向がそれぞれMDPファイルに記述されてよい。
セグメント解析部112は、セグメント取得部111を介して取得された3次元映像データのセグメントを解析する。解析された3次元映像データのセグメントは、復号化制御部105を介して復号化され、表示制御部107により、当該セグメントに付与された方向と、現在のユーザの姿勢とを演算して、表示部13を介してレンダリング表示される。
セグメント解析部112は、セグメント取得部111を介して取得された3次元映像データのセグメントを解析する。解析された3次元映像データのセグメントは、復号化制御部105を介して復号化され、表示制御部107により、当該セグメントに付与された方向と、現在のユーザの姿勢とを演算して、表示部13を介してレンダリング表示される。
<サーバ2の機能構成>
図7は、サーバ2の機能構成の一例を示すブロック図である。
サーバ2は、MPD生成部201、視点移動範囲生成部202、姿勢演算部203、符号化制御部204、通信制御部205、およびセグメント管理部206を備える。
MPD生成部201は、配信すべき3次元映像データに対応するMPDファイルを生成する。本実施形態において、MPD生成部201は、クライアント1から通知される姿勢表現形式で、MPDファイルに3次元映像データの撮像姿勢を記述する。
図7は、サーバ2の機能構成の一例を示すブロック図である。
サーバ2は、MPD生成部201、視点移動範囲生成部202、姿勢演算部203、符号化制御部204、通信制御部205、およびセグメント管理部206を備える。
MPD生成部201は、配信すべき3次元映像データに対応するMPDファイルを生成する。本実施形態において、MPD生成部201は、クライアント1から通知される姿勢表現形式で、MPDファイルに3次元映像データの撮像姿勢を記述する。
視点移動範囲生成部202は、MPDファイルに記述する3次元映像データの視点位置の移動可能範囲を生成する。視点移動範囲生成部202は、視点が移動可能な範囲を、3次元映像データ、または3次元映像データのコンテナを解析して取得する。
基準方向演算部203は、MPDファイルに記述する3次元映像データの基準方向の移動範囲を生成する。基準方向演算部203は、基準方向が移動可能な範囲を、3次元映像データ、または3次元映像データのコンテナを解析して取得する。
基準方向演算部203は、MPDファイルに記述する3次元映像データの基準方向の移動範囲を生成する。基準方向演算部203は、基準方向が移動可能な範囲を、3次元映像データ、または3次元映像データのコンテナを解析して取得する。
符号化制御部204は、配信すべき映像データの符号化方式を判定して、MPDファイルに当該映像データの符号化方式を記述する。符号化制御部204は、符号化部25を制御し、配信すべき映像データを符号化する。あるいは、他の機器で符号化された映像データを配信する場合、符号化制御部204は、3次元映像形式で符号化された映像データ、および、その他の符号化方式で符号化された映像データを、符号化データまたは、符号化データのコンテナを解析して取得する。
通信制御部205は、通信部27を介してクライアント1や他の通信装置との通信を制御する。
セグメント管理部206は、3次元映像形式で符号化された映像データのセグメント、あるいは3次元映像形式以外の形式で符号化された映像データのセグメントを管理する。セグメント管理部206は、映像データのセグメントを生成してもよいし、他の機器で生成されたセグメントを当該他の機器から取得してもよい。
セグメント管理部206は、3次元映像形式で符号化された映像データのセグメント、あるいは3次元映像形式以外の形式で符号化された映像データのセグメントを管理する。セグメント管理部206は、映像データのセグメントを生成してもよいし、他の機器で生成されたセグメントを当該他の機器から取得してもよい。
<クライアントとサーバ間の映像データ配信シーケンス>
図8は、クライアントとサーバ間で実行される映像データ配信処理の処理シーケンスの一例を示す図である。
S1で、クライアント1は、自機器が判別可能な姿勢表現形式をサーバ2へ通知する。
S2で、サーバ2のMPD生成部201は、クライアント1から通知される姿勢表現形式を判定する。MPD生成部201は、クライアント1から通知された姿勢表現形式で、3次元映像データの基準方向の情報をMPDファイルの適応セット(AdaptationSet)に含まれる補充プロパティ(SupplementalProperty)に記述する。
図8は、クライアントとサーバ間で実行される映像データ配信処理の処理シーケンスの一例を示す図である。
S1で、クライアント1は、自機器が判別可能な姿勢表現形式をサーバ2へ通知する。
S2で、サーバ2のMPD生成部201は、クライアント1から通知される姿勢表現形式を判定する。MPD生成部201は、クライアント1から通知された姿勢表現形式で、3次元映像データの基準方向の情報をMPDファイルの適応セット(AdaptationSet)に含まれる補充プロパティ(SupplementalProperty)に記述する。
図11を参照して、MPDファイル11aの一部の記述11bは、3つのAdaptationSet11c、11d、11eを含む。図11は、サーバ2が四元数(Quaterniоn)を姿勢表現形式として通知された場合の記述例である。1番目の適応セット11cの補充プロパティは、SchemeldUriの識別子として四元数で姿勢情報を表現する旨のURN(Uniform Resource Name)記述と、四元数で記述された3次元映像データの基準方向の値を含む。
同様に、図12を参照して、MPDファイル12aの一部の記述12bは、3つのAdaptationSet12c、12d、12eを含む。図12は、サーバ2がオイラー角(EulerAngle)を姿勢表現形式として通知された場合の記述例である。1番目の適応セット12cの補充プロパティは、SchemeldUriの識別子としてオイラー角で姿勢情報を表現する旨のURN記述と、オイラー角で記述された3次元映像データの基準方向の値を含む。
同様に、図13を参照して、MPDファイル13aの一部の記述13bは、3つのAdaptationSet13c、13d、13eを含む。図13は、サーバ2が回転行列(RotationMatrix)を姿勢表現形式として通知された場合の記述例である。1番目の適応セット13cの補充プロパティは、SchemeldUriの識別子として回転行列で姿勢情報を表現する旨のURN記述と、回転行列で記述された3次元映像データの基準方向の値を含む。いずれの姿勢表現形式であっても、MPDファイルは、360°等の広範囲の3次元映像データの基準方向とともに、3次元映像を空間分割した分割領域(分割映像)のそれぞれについての方向を記述してよい。
同様に、図12を参照して、MPDファイル12aの一部の記述12bは、3つのAdaptationSet12c、12d、12eを含む。図12は、サーバ2がオイラー角(EulerAngle)を姿勢表現形式として通知された場合の記述例である。1番目の適応セット12cの補充プロパティは、SchemeldUriの識別子としてオイラー角で姿勢情報を表現する旨のURN記述と、オイラー角で記述された3次元映像データの基準方向の値を含む。
同様に、図13を参照して、MPDファイル13aの一部の記述13bは、3つのAdaptationSet13c、13d、13eを含む。図13は、サーバ2が回転行列(RotationMatrix)を姿勢表現形式として通知された場合の記述例である。1番目の適応セット13cの補充プロパティは、SchemeldUriの識別子として回転行列で姿勢情報を表現する旨のURN記述と、回転行列で記述された3次元映像データの基準方向の値を含む。いずれの姿勢表現形式であっても、MPDファイルは、360°等の広範囲の3次元映像データの基準方向とともに、3次元映像を空間分割した分割領域(分割映像)のそれぞれについての方向を記述してよい。
図8に戻り、S3で、クライアント1は、MPDファイルの送信リクエストをサーバ2へ送信し、S4で、サーバ2は、クライアント1へ、要求されたMPDファイルを送信する。
S5で、クライアント1は、S4で受信されたMPDファイルに記述されたメタデータを解析する。
S6で、クライアント1は、S5で解析されたMPDファイルの解析結果に基づいて、セグメントの送信リクエストをサーバ2へ送信する。クライアント1は、視点位置からのユーザの姿勢方向に対応する分割領域についての3次元映像データのセグメントの送信リクエストをサーバ2へ送信してよい。
S7で、サーバ2は、S6で受信された映像データのセグメントの送信リクエストに応じて、3次元映像データのセグメントを生成し、S8で、生成されたセグメントを映像ストリームとしてクライアント1へ配信する。
S9で、クライアント1は、映像ストリームとして受信される映像データのセグメントを、自装置(ユーザ)の現在の姿勢の情報に応じてレンダリングして表示する。
S5で、クライアント1は、S4で受信されたMPDファイルに記述されたメタデータを解析する。
S6で、クライアント1は、S5で解析されたMPDファイルの解析結果に基づいて、セグメントの送信リクエストをサーバ2へ送信する。クライアント1は、視点位置からのユーザの姿勢方向に対応する分割領域についての3次元映像データのセグメントの送信リクエストをサーバ2へ送信してよい。
S7で、サーバ2は、S6で受信された映像データのセグメントの送信リクエストに応じて、3次元映像データのセグメントを生成し、S8で、生成されたセグメントを映像ストリームとしてクライアント1へ配信する。
S9で、クライアント1は、映像ストリームとして受信される映像データのセグメントを、自装置(ユーザ)の現在の姿勢の情報に応じてレンダリングして表示する。
<クライアント1が実行する3次元映像データの受信および表示処理>
図9は、クライアント1が実行する3次元映像データの受信および表示処理の処理手順の一例を示すフローチャートである。
なお、図9の各ステップは、クライアント1の記憶部12に記憶されたプログラムを制御部11が読み出し、実行することで実現される。また、図9に示すフローチャートの少なくとも一部をハードウェアにより実現してもよい。ハードウェアにより実現する場合、例えば、所定のコンパイラを用いることで、各ステップを実現するためのプログラムからFPGA上に自動的に専用回路を生成すればよい。FPGAとは、Field Programmable Gate Arrayの略である。また、FPGAと同様にしてGate Array回路を形成し、ハードウェアとして実現するようにしてもよい。また、ASIC(Application Specific Integrated Circuit)により実現するようにしてもよい。
図9は、クライアント1が実行する3次元映像データの受信および表示処理の処理手順の一例を示すフローチャートである。
なお、図9の各ステップは、クライアント1の記憶部12に記憶されたプログラムを制御部11が読み出し、実行することで実現される。また、図9に示すフローチャートの少なくとも一部をハードウェアにより実現してもよい。ハードウェアにより実現する場合、例えば、所定のコンパイラを用いることで、各ステップを実現するためのプログラムからFPGA上に自動的に専用回路を生成すればよい。FPGAとは、Field Programmable Gate Arrayの略である。また、FPGAと同様にしてGate Array回路を形成し、ハードウェアとして実現するようにしてもよい。また、ASIC(Application Specific Integrated Circuit)により実現するようにしてもよい。
S901で、姿勢表現判定部106は、自装置の姿勢表現形式を取得する。S901で取得される姿勢表現形式は、四元数(Quaternion)、オイラー角(EulerAngle)、および回転行列(RotationMatrix)のいずれかを含む。
S902で、姿勢表現判定部106は、通信制御部110を介して、S901で取得された姿勢表現形式をサーバ2へ通知する。
S903で、MPD取得部101は、MPDファイルの取得リクエストをサーバ2へ送信する。
S904で、MPD解析部102は、S903での取得リクエストに応じて取得されたMPDファイルを解析する。
S905で、MPD解析部102は、取得されたMPDファイルに3次元映像データの符号化方式の適応セット(AdaptationSet)があるか否かをcоdecsの情報を参照して判定する。
S902で、姿勢表現判定部106は、通信制御部110を介して、S901で取得された姿勢表現形式をサーバ2へ通知する。
S903で、MPD取得部101は、MPDファイルの取得リクエストをサーバ2へ送信する。
S904で、MPD解析部102は、S903での取得リクエストに応じて取得されたMPDファイルを解析する。
S905で、MPD解析部102は、取得されたMPDファイルに3次元映像データの符号化方式の適応セット(AdaptationSet)があるか否かをcоdecsの情報を参照して判定する。
取得されたMPDファイルが3次元映像データに対応するメタデータを含む、すなわち取得されたMPDファイルが3次元映像の符号化方式に対応する記述を有する場合(S905:Y)、S906に進む。一方、取得されたMPDファイルが3次元映像データに対応するメタデータを含まない場合(S905:N)、S914へ進む。
S906で、姿勢表現判定部106は、自装置が判別可能な姿勢表現形式に一致する姿勢表現形式がSupplementalPropertyに記述されているか否かを判定する。
S906で、姿勢表現判定部106は、自装置が判別可能な姿勢表現形式に一致する姿勢表現形式がSupplementalPropertyに記述されているか否かを判定する。
取得されたMPDファイルに記述される3次元映像データの姿勢表現形式が自装置の姿勢表現形式に一致すれば(S906:Y)、取得された3次元映像データの姿勢表現形式が判別可能であり、S909に進む。一方、MPDファイルに記述される3次元映像データの姿勢表現形式が自装置の姿勢表現形式と一致しない場合(S906:N)、S907に進む。S907で、姿勢表現判定部106は、MPDファイルに記述される3次元映像データの姿勢表現形式を自機器の姿勢表現形式に変換する。
S908で、姿勢表現判定部106は、変換後の姿勢表現形式が判別可能であるか否かを再度判定する。変換後の姿勢表現形式が判別可能である場合(S908:Y)、S909に進み、一方、変換後の姿勢表現形式が判別可能でない場合(S908:N)、S914に進む。
S908で、姿勢表現判定部106は、変換後の姿勢表現形式が判別可能であるか否かを再度判定する。変換後の姿勢表現形式が判別可能である場合(S908:Y)、S909に進み、一方、変換後の姿勢表現形式が判別可能でない場合(S908:N)、S914に進む。
S909で、姿勢制御部104は、取得されたMPDファイルのSupplementalPropatyに記述される3次元映像データの基準方向と、自装置(ユーザ)の姿勢方向とを掛け合わせて、取得する3次元映像データの視点の初期方向を演算する。
S910で、セグメント取得部111は、S909で演算された3次元映像データの初期方向に対応するセグメントの選択的取得リクエストをサーバ2へ送信する。
S911で、サーバ2から、S910で要求されたセグメントが受信されると(S911:Y)、S912に進み、一方、セグメントが受信されない間、S911のセグメント受信判定を繰り返す。
S912で、セグメント解析部112は、S911で受信されたセグメントを解析する。S912でさらに、表示制御部107は、受信されたセグメントに付与される方向と現在の自装置(ユーザ)の姿勢方向とを演算してレンダリングし、レンダリングされた3次元映像データを表示部13に表示させる。
S913で、S903で取得されたMPDファイルに記述される単位の3次元映像データ(メディアコンテンツ)の視聴が終了するまで、S905〜S915までの処理を繰り返す。
S910で、セグメント取得部111は、S909で演算された3次元映像データの初期方向に対応するセグメントの選択的取得リクエストをサーバ2へ送信する。
S911で、サーバ2から、S910で要求されたセグメントが受信されると(S911:Y)、S912に進み、一方、セグメントが受信されない間、S911のセグメント受信判定を繰り返す。
S912で、セグメント解析部112は、S911で受信されたセグメントを解析する。S912でさらに、表示制御部107は、受信されたセグメントに付与される方向と現在の自装置(ユーザ)の姿勢方向とを演算してレンダリングし、レンダリングされた3次元映像データを表示部13に表示させる。
S913で、S903で取得されたMPDファイルに記述される単位の3次元映像データ(メディアコンテンツ)の視聴が終了するまで、S905〜S915までの処理を繰り返す。
一方、S905またはS908のいずれかでNの場合、S914で、MPD解析部102は、取得されたMPDファイルが判別可能な適応セット(AdaptationSet)を含むか否かを判定する。判別可能な適応セットを含む場合(S914:Y)、S915に進み、判別可能な適応セットに対応するセグメントの取得リクエストをサーバ2に送信する。一方、判別可能な適応セットを含まない場合(S914:N)、S916に進み、エラー処理を実行する。
<サーバ2が実行する3次元映像データの配信処理>
図10は、サーバ2が実行する3次元映像データの配信処理の処理手順の一例を示すフローチャートである。
S101で、サーバ2の通信制御部205は、クライアント1からセグメント取得リクエストを受信したか否かを判定する。セグメント取得リクエストが受信された場合(S101:Y)、S108に進んで、セグメント管理部206は、S101で要求された3次元映像データのセグメントを生成し、S109で、生成されたセグメントをクライアント1へ配信する。S109で配信されるセグメントには、3次元映像を分割した映像領域の方向の情報が付与されている。
一方、セグメント取得リクエストが無い場合(S101:N)、S102に進んで、通信制御部205は、クライアント1からMPD取得リクエストを受信したか否かを判定する。
図10は、サーバ2が実行する3次元映像データの配信処理の処理手順の一例を示すフローチャートである。
S101で、サーバ2の通信制御部205は、クライアント1からセグメント取得リクエストを受信したか否かを判定する。セグメント取得リクエストが受信された場合(S101:Y)、S108に進んで、セグメント管理部206は、S101で要求された3次元映像データのセグメントを生成し、S109で、生成されたセグメントをクライアント1へ配信する。S109で配信されるセグメントには、3次元映像を分割した映像領域の方向の情報が付与されている。
一方、セグメント取得リクエストが無い場合(S101:N)、S102に進んで、通信制御部205は、クライアント1からMPD取得リクエストを受信したか否かを判定する。
クライアント1からMPD取得リクエストを受信しない場合(S102:N)、通信制御部205は、S101に戻って、セグメント取得リクエストの受信判定を繰り返す。一方、クライアント1からMPD取得リクエストを受信した場合(S102:Y)、S 103に進み、基準方向演算部203は、クライアント1から、クライアント1で判別可能な姿勢表現形式の通知を受信したか否かを判定する。
クライアント1から姿勢表現形式の通知が無い場合(S103:N)、S105に進み、MPD生成部201は、汎用の姿勢表現形式を採用する。汎用の姿勢表現形式として、例えば、図11に示すように四元数(Quaternion)が採用されてよいが、他の姿勢表現形式が採用されてもよい。一方、クライアント1から姿勢表現形式の通知がされた場合(S103:Y)、S104に進む。
S104で、MPD生成部201は、S103で通知された姿勢表現形式に一致する姿勢表現形式で、3次元映像データの基準方向を、MPDのSupplementalPropertyに記述する。
クライアント1から姿勢表現形式の通知が無い場合(S103:N)、S105に進み、MPD生成部201は、汎用の姿勢表現形式を採用する。汎用の姿勢表現形式として、例えば、図11に示すように四元数(Quaternion)が採用されてよいが、他の姿勢表現形式が採用されてもよい。一方、クライアント1から姿勢表現形式の通知がされた場合(S103:Y)、S104に進む。
S104で、MPD生成部201は、S103で通知された姿勢表現形式に一致する姿勢表現形式で、3次元映像データの基準方向を、MPDのSupplementalPropertyに記述する。
図12を参照して、例えば、S103で通知された姿勢表現形式がオイラー角(EulerAngle)であった場合、図12に示すように、MPDファイルの適応セット12cに姿勢表現形式がオイラー角である旨とオイラー角による姿勢情報を記述する。同様に、例えば、S103で通知された姿勢表現形式が回転行列(RotationMatrix)であった場合、図13に示すように、MPDファイルの適応セット13cに表現形式が回転行列である旨と回転行列による姿勢情報を記述する。
S106で、MPD生成部201は、S104またはS105で決定された姿勢表現形式で3次元映像データの基準方向の記述が付加されたMPDファイルを生成し、S107で、通信制御部205は、生成されたMPDファイルをクライアント1へ配信する。
S106で、MPD生成部201は、S104またはS105で決定された姿勢表現形式で3次元映像データの基準方向の記述が付加されたMPDファイルを生成し、S107で、通信制御部205は、生成されたMPDファイルをクライアント1へ配信する。
なお、上記では、MPDで記述する姿勢表現形式を、汎用的な記述形式である四元数(Quaternion)、またはオイラー角(EulerAngle)、回転行列(RotationMatrix)である例を挙げたがこれらに限定されない。MPDに記述する姿勢表現形式は、クライアント1が判別可能な表現形式であればよい。
S110で、S101〜S109までの処理を、映像データの配信が終了するまで繰り返す。
S110で、S101〜S109までの処理を、映像データの配信が終了するまで繰り返す。
以上説明したように、本実施形態によれば、クライアント1は、自装置で判別可能な姿勢表現形式をサーバ2に通知する。クライアント1は、サーバ2から通知された姿勢表現形式で記述された3次元映像データの基準方向を含む記述ファイルを解析して、3次元映像データの基準方向と自装置の姿勢方向とに基づいて、3次元映像データの初期方向を演算する。さらに、クライアント1は、演算された3次元映像データの初期方向に対応する領域の3次元映像データのセグメントを、サーバ2に対して要求して取得し、3次元映像データをレンダリング表示する。
また、サーバ2は、クライアント1から通知される、クライアント1で判別可能な姿勢表現形式で、3次元映像データの基準方向を記述ファイルに記述し、生成された記述ファイルをクライアント1へ送信する。サーバ2はまた、クライアント1で演算された3次元映像データの初期方向に対応する領域の3次元映像データのセグメントを生成ないし取得して、クライアント1に配信する。
これにより、適応型ストリーミングにおいて、3次元映像データのうち、クライアント1の表示装置が向いている姿勢方向の領域の3次元映像データのセグメントを選択的に配信および再生することができる。従って、ユーザの姿勢に応じた映像データの配信を、映像データ受信側の処理負荷を軽減しつつ実行することが可能となる。
また、サーバ2は、クライアント1から通知される、クライアント1で判別可能な姿勢表現形式で、3次元映像データの基準方向を記述ファイルに記述し、生成された記述ファイルをクライアント1へ送信する。サーバ2はまた、クライアント1で演算された3次元映像データの初期方向に対応する領域の3次元映像データのセグメントを生成ないし取得して、クライアント1に配信する。
これにより、適応型ストリーミングにおいて、3次元映像データのうち、クライアント1の表示装置が向いている姿勢方向の領域の3次元映像データのセグメントを選択的に配信および再生することができる。従って、ユーザの姿勢に応じた映像データの配信を、映像データ受信側の処理負荷を軽減しつつ実行することが可能となる。
(実施形態2)
以下、図14から図16を参照して、実施形態2を、実施形態1と異なる点についてのみ詳細に説明する。
実施形態1では、クライアント1は、自機器で判別可能な姿勢表現形式をサーバ2へ通知した。これに対して本実施形態では、サーバ2は、クライアント1からの姿勢表現形式の通知の有無にかかわりなく、想定される複数のすべての姿勢表現形式で、3次元映像データの基準方向を記述ファイル(MPDファイル)に記述する。
実施形態2に係るクライアント1およびサーバ2のハードウエアおよび機能構成は、図4〜図7を参照して説明した実施形態1に係るクライアント1およびサーバ2とそれぞれ同様であるため、その説明を省略する。
以下、図14から図16を参照して、実施形態2を、実施形態1と異なる点についてのみ詳細に説明する。
実施形態1では、クライアント1は、自機器で判別可能な姿勢表現形式をサーバ2へ通知した。これに対して本実施形態では、サーバ2は、クライアント1からの姿勢表現形式の通知の有無にかかわりなく、想定される複数のすべての姿勢表現形式で、3次元映像データの基準方向を記述ファイル(MPDファイル)に記述する。
実施形態2に係るクライアント1およびサーバ2のハードウエアおよび機能構成は、図4〜図7を参照して説明した実施形態1に係るクライアント1およびサーバ2とそれぞれ同様であるため、その説明を省略する。
図14は、本実施形態におけるクライアントとサーバ間で実行される映像データ配信処理の処理シーケンスの一例を示す図である。
S3に先だって、S141で、サーバ2は、クライアント1からの姿勢表現形式の通知の有無にかかわりなく、想定される全ての姿勢表現形式で、3次元映像データの基準方向をMPDファイルに記述する。
S141に続き、S3で、クライアント1は、MPDファイルの送信リクエストをサーバ2へ送信し、S4で、サーバ2は、クライアント1へ、要求されたMPDファイルを送信する。S4で、サーバ2からクライアント1へ送信されるMPDファイルには、想定される全ての姿勢表現形式で、3次元映像データの基準方向が記述されている。
S3に先だって、S141で、サーバ2は、クライアント1からの姿勢表現形式の通知の有無にかかわりなく、想定される全ての姿勢表現形式で、3次元映像データの基準方向をMPDファイルに記述する。
S141に続き、S3で、クライアント1は、MPDファイルの送信リクエストをサーバ2へ送信し、S4で、サーバ2は、クライアント1へ、要求されたMPDファイルを送信する。S4で、サーバ2からクライアント1へ送信されるMPDファイルには、想定される全ての姿勢表現形式で、3次元映像データの基準方向が記述されている。
S4に続き、S142で、クライアント1は、MPD解析部102により、MPDファイルを解析し、姿勢表現判定部106により、MPDファイル記述された複数の姿勢表現形式から、自装置で判別可能な姿勢表現形式と一致する姿勢表現形式を判定する。その後、クライアント1は、姿勢制御部104により、S4で受信されたMPDファイルに記述されるメタデータに含まれる情報を用いて、3次元映像データの視点の初期方向を、姿勢表現判定部106により判定された姿勢表現形式で演算する。
S6で、クライアント1は、S142で取得された3次元映像データの初期方向に基づいて、クライアント1で判別可能な姿勢表現形式を含むRepresentationに含まれるセグメントの選択的配信リクエストをサーバ2へ送信する。
S7で、サーバ2は、S6で受信された映像データのセグメントの送信リクエストに応じて、3次元映像データのセグメントを生成し、S8で、生成されたセグメントを映像ストリームとしてクライアント1へ配信する。
S9で、クライアント1は、映像ストリームとして受信される映像データのセグメントを、自装置(ユーザ)の現在の姿勢の情報に応じてレンダリング表示する。
S7で、サーバ2は、S6で受信された映像データのセグメントの送信リクエストに応じて、3次元映像データのセグメントを生成し、S8で、生成されたセグメントを映像ストリームとしてクライアント1へ配信する。
S9で、クライアント1は、映像ストリームとして受信される映像データのセグメントを、自装置(ユーザ)の現在の姿勢の情報に応じてレンダリング表示する。
本実施形態に係るクライアント1が実行する3次元映像データの受信および表示処理は、図9を参照して説明した実施形態1と同様であるが、図9において、S902の自機器が判別可能な姿勢表現形式をサーバ2へ通知する処理を省略することができる。
図15は、本実施形態に係るサーバ2が実行する3次元映像データ配信処理の処理手順の一例を示すフローチャートである。
S101に先だって、S151で、サーバ2のMPD生成部201は、想定される複数のすべての姿勢表現形式を用いて、3次元映像データの基準方向の情報をMPDファイルに記述する。
図15は、本実施形態に係るサーバ2が実行する3次元映像データ配信処理の処理手順の一例を示すフローチャートである。
S101に先だって、S151で、サーバ2のMPD生成部201は、想定される複数のすべての姿勢表現形式を用いて、3次元映像データの基準方向の情報をMPDファイルに記述する。
S101〜S102の処理は、図10に示す実施形態1と同様である。S102で、サーバ2の通信制御部205が、クライアント1からMPDファイルの取得リクエストを受信したと判定すると(S102:Y)、MPD生成部201は、MPDファイルを生成する。
S107で、通信制御部205は、生成されたMPDファイルを、クライアント1に配信して、S110に進む。
一方、S101で、クライアント1からセグメントの取得リクエストを受信した場合(S101:Y)、S108で、サーバ2のセグメント管理部206は、クライアント1から要求されるセグメント取得リクエストに応答して、セグメントを生成する。具体的には、セグメント管理部206は、セグメント取得リクエストに含まれるSchemidUriに該当するセグメントを生成する。
S109で、セグメント管理部206は、通信制御部205を介して、S108で生成されたセグメントを、クライアント1に配信する。
S110で、セグメント管理部206は、配信したMPDに対応する、サーバ2からの3次元映像データの配信が終了するまで、図15に示すS101、S102、S107〜S110の処理を繰り返す。
S107で、通信制御部205は、生成されたMPDファイルを、クライアント1に配信して、S110に進む。
一方、S101で、クライアント1からセグメントの取得リクエストを受信した場合(S101:Y)、S108で、サーバ2のセグメント管理部206は、クライアント1から要求されるセグメント取得リクエストに応答して、セグメントを生成する。具体的には、セグメント管理部206は、セグメント取得リクエストに含まれるSchemidUriに該当するセグメントを生成する。
S109で、セグメント管理部206は、通信制御部205を介して、S108で生成されたセグメントを、クライアント1に配信する。
S110で、セグメント管理部206は、配信したMPDに対応する、サーバ2からの3次元映像データの配信が終了するまで、図15に示すS101、S102、S107〜S110の処理を繰り返す。
図16を参照して、本実施形態におけるMPDファイル16aの記述16bは、3つの適応セット(AdaptationSet)の記述16c〜16e、16f、16gを含む。1番目のAdaptationSetは、3つのSupplementalProperty16c、16d、および16eを含む。SupplementalPropertyのSchemldUriの属性には、3次元映像データの基準方向の姿勢表現形式の識別子として、それぞれ、四元数、オイラー角、および回転行列が記述されている。
クライアント1は、このMPDファイルのSchemidUriに記述された識別子を判定することにより、記述された姿勢表現形式を判別する。判別不能であった場合、クライアント1は、判別可能なAdaptationSetid16f、16dを順に選択して、映像データのセグメントをリクエスト可能としている。
クライアント1は、このMPDファイルのSchemidUriに記述された識別子を判定することにより、記述された姿勢表現形式を判別する。判別不能であった場合、クライアント1は、判別可能なAdaptationSetid16f、16dを順に選択して、映像データのセグメントをリクエスト可能としている。
以上説明したように、本実施形態では、サーバ2は、クライアント1からの姿勢表現形式の通知の有無にかかわりなく、想定される複数のすべての姿勢表現形式で、3次元映像データの基準方向をプレイリストに記述する。
これにより、クライアント1から、クライアント1で判別可能な姿勢表現形式を通知されなくても、実施形態1と同様の効果が得られる。すなわち、適応型ストリーミングにおいて、3次元映像データのうち、クライアント1が向いている姿勢方向の領域の3次元映像データのセグメントを選択的に配信および再生することができる。従って、ユーザの姿勢に応じた映像データの配信を、映像データ受信側の処理負荷を軽減しつつ実行することが可能となる。
これにより、クライアント1から、クライアント1で判別可能な姿勢表現形式を通知されなくても、実施形態1と同様の効果が得られる。すなわち、適応型ストリーミングにおいて、3次元映像データのうち、クライアント1が向いている姿勢方向の領域の3次元映像データのセグメントを選択的に配信および再生することができる。従って、ユーザの姿勢に応じた映像データの配信を、映像データ受信側の処理負荷を軽減しつつ実行することが可能となる。
(他の実施形態)
本発明は例えば、システム、装置、方法、プログラム若しくは記録媒体(記憶媒体)等としての実施態様をとることが可能である。具体的には、複数の機器(例えば、ホストコンピュータ、インタフェース機器、撮像装置、Webアプリケーション等)から構成されるシステムに適用してもよいし、また、一つの機器からなる装置に適用してもよい。
また、本発明は、上述の実施形態の一部または1以上の機能を実現するプログラムによっても実現可能である。すなわち、そのプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータ(またはCPUやMPU等)における1つ以上のプロセッサがプログラムを読出し実行する処理により実現可能である。また、そのプログラムをコンピュータ可読な記録媒体に記録して提供してもよい。
また、コンピュータが読みだしたプログラムを実行することにより、実施形態の機能が実現されるものに限定されない。例えば、プログラムの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム(OS)などが実際の処理の一部または全部を行い、その処理によって上記した実施形態の機能が実現されてもよい。
本発明は例えば、システム、装置、方法、プログラム若しくは記録媒体(記憶媒体)等としての実施態様をとることが可能である。具体的には、複数の機器(例えば、ホストコンピュータ、インタフェース機器、撮像装置、Webアプリケーション等)から構成されるシステムに適用してもよいし、また、一つの機器からなる装置に適用してもよい。
また、本発明は、上述の実施形態の一部または1以上の機能を実現するプログラムによっても実現可能である。すなわち、そのプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータ(またはCPUやMPU等)における1つ以上のプロセッサがプログラムを読出し実行する処理により実現可能である。また、そのプログラムをコンピュータ可読な記録媒体に記録して提供してもよい。
また、コンピュータが読みだしたプログラムを実行することにより、実施形態の機能が実現されるものに限定されない。例えば、プログラムの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム(OS)などが実際の処理の一部または全部を行い、その処理によって上記した実施形態の機能が実現されてもよい。
1…クライアント、2…サーバ、3…ネットワーク、101…MPD取得部、102…MPD解析部、103…視点制御部、104…姿勢制御部、105…復号化制御部、106…姿勢表現判定部、107…表示制御部、108…適応セット管理部、109…操作制御部、110…通信制御部、111…セグメント取得部、112…セグメント解析部、201…MPD生成部、202…視点移動範囲生成部、203…基準方向演算部、204…符号化制御部、205…通信制御部、206…セグメント管理部
Claims (15)
- 通信装置であって、
映像データを取得するための情報を記述する記述ファイルを取得する取得手段と、
前記取得手段により取得された前記記述ファイルに記述される前記映像データの基準となる方向を示す第1の方向の情報を解析する解析手段と、
前記通信装置の表示装置が向いている方向を示す第2の方向の情報を検出する検出手段と、
前記第1の方向の情報および前記第2の方向の情報に基づいて、前記映像データを領域分割した複数のセグメントの中から受信すべき映像データのセグメントを決定する決定手段と、
前記取得手段により取得された前記記述ファイルに記述される情報の中から前記決定手段により決定された前記セグメントに対応する映像データを取得するための情報を指定し、他の通信装置から前記セグメントを受信する受信手段と、
前記受信手段により受信された前記セグメントから表示すべき映像データを生成する生成手段と
を備えることを特徴とする通信装置。 - 前記解析手段は、前記記述ファイルに記述され得る前記第1の方向の情報の複数の表現形式を判別して、前記第1の方向の情報を解析する
ことを特徴とする請求項1に記載の通信装置。 - 前記解析手段は、前記記述ファイルに記述される前記第1の方向の情報の表現形式が、前記通信装置が判別可能な表現形式であるか否かを判定し、判別可能な表現形式でない場合、前記通信装置が判別可能な他の表現形式に変換して、前記第1の方向の情報を解析する
ことを特徴とする請求項1または2に記載の通信装置。 - 前記記述ファイルに記述される複数のセグメントのそれぞれは、3次元映像データを分割した領域ごとに符号化され、互いに異なるアドレスおよび方向が付与されている
ことを特徴とする請求項1から3のいずれか1項に記載の通信装置。 - 前記決定手段は、前記第1の方向の情報と前記第2の方向の情報とを演算して、前記表示すべき映像データの視点の初期方向を取得し、取得された前記初期方向に基づいて、受信すべき映像データのセグメントを決定する
ことを特徴とする請求項1から4のいずれか1項に記載の通信装置。 - 前記解析手段は、前記記述ファイルが前記第1の方向の情報を含まない場合、前記記述ファイルから他の判別可能な符号化方式のセグメントを受信すべきセグメントとして決定する
ことを特徴とする請求項1から5のいずれか1項に記載の通信装置。 - 前記通信装置が判別可能な表現形式を、前記他の通信装置へ通知する通知手段をさらに備える
ことを特徴とする請求項1から6のいずれか1項に記載の通信装置。 - 前記映像データは、MPEG−DASH(MPEG Dynamic Adaptive Streaming over HTTP)に準拠する映像ストリームであり、
前記記述ファイルは、MPD(Media Presentation Description)ファイルである
ことを特徴とする請求項1から7のいずれか1項に記載の通信装置。 - 前記第1の方向の情報は、前記MPDファイルのSupplemental Propertyとして記述される
ことを特徴とする請求項8に記載の通信装置。 - 他の通信装置に映像データを取得させるための情報を記述する記述ファイルを生成する生成手段と、
前記記述ファイルに記述すべき映像データの基準となる方向を示す第1の方向の情報を前記記述ファイルに付加する付加手段と、
前記付加手段により前記第1の方向の情報が付加された前記記述ファイルを、前記他の通信装置へ送信する送信手段と、
前記記述ファイルに記述される前記映像データのうち、前記他の通信装置から要求される映像データのセグメントを、前記他の通信装置へ配信する配信手段と
を備えることを特徴とする通信装置。 - 前記他の通信装置から、前記他の通信装置が判別可能な表現形式を受信する受信手段をさらに備え、
前記付加手段は、前記受信手段により受信された前記表現形式で、前記第1の方向の情報を前記記述ファイルに付加する
ことを特徴とする請求項10に記載の通信装置。 - 前記付加手段は、複数の表現形式で、前記第1の方向の情報を前記記述ファイルに付加する
ことを特徴とする請求項10または11に記載の通信装置。 - 通信装置の制御方法であって、
映像データを取得するための情報を記述する記述ファイルを取得するステップと、
取得された前記記述ファイルに記述される映像データの基準となる方向を示す第1の方向の情報を解析するステップと、
前記通信装置の表示装置が向いている方向を示す第2の方向の情報を検出するステップと、
前記第1の方向の情報および前記第2の方向の情報に基づいて、前記映像データを領域分割した複数のセグメントの中から受信すべき映像データのセグメントを決定するステップと、
取得された前記記述ファイルに記述される情報の中から決定された前記セグメントに対応する映像データを取得するための情報を指定し、他の通信装置から前記セグメントを受信するステップと、
受信された前記セグメントから表示すべき映像データを生成するステップと
を含むことを特徴とする通信装置の制御方法。 - 通信装置の制御方法であって、
他の通信装置に映像データを取得させるための情報を記述する記述ファイルを生成するステップと、
前記記述ファイルに記述すべき映像データの基準となる方向を示す第1の方向の情報を前記記述ファイルに付加するステップと、
前記第1の方向の情報が付加された前記記述ファイルを、前記他の通信装置へ送信するステップと、
前記記述ファイルに記述される前記映像データのうち、前記他の通信装置から要求される映像データのセグメントを、前記他の通信装置へ配信するステップと
を含むことを特徴とする通信装置の制御方法。 - コンピュータを、請求項1から12のいずれか1項に記載の通信装置の各手段として機能させるためのプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019186646A JP2021064822A (ja) | 2019-10-10 | 2019-10-10 | 通信装置、通信装置の制御方法およびプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019186646A JP2021064822A (ja) | 2019-10-10 | 2019-10-10 | 通信装置、通信装置の制御方法およびプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2021064822A true JP2021064822A (ja) | 2021-04-22 |
Family
ID=75486721
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019186646A Pending JP2021064822A (ja) | 2019-10-10 | 2019-10-10 | 通信装置、通信装置の制御方法およびプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2021064822A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2023029318A (ja) * | 2021-08-20 | 2023-03-03 | ティー-モバイル ユーエスエイ インコーポレイテッド | 媒体コンテンツの拡張機能を有効にするためのネットワークプロトコル |
-
2019
- 2019-10-10 JP JP2019186646A patent/JP2021064822A/ja active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2023029318A (ja) * | 2021-08-20 | 2023-03-03 | ティー-モバイル ユーエスエイ インコーポレイテッド | 媒体コンテンツの拡張機能を有効にするためのネットワークプロトコル |
JP7340666B2 (ja) | 2021-08-20 | 2023-09-07 | ティー-モバイル ユーエスエイ インコーポレイテッド | メディアコンテンツの拡張機能を有効にするためのネットワークプロトコル |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102246002B1 (ko) | 가상 현실 미디어 콘텐트의 스트리밍을 개선하는 방법, 디바이스, 및 컴퓨터 프로그램 | |
JP7223106B2 (ja) | 仮想現実メディアコンテンツを適応ストリーミングする方法、デバイス及びコンピュータプログラム | |
US11356648B2 (en) | Information processing apparatus, information providing apparatus, control method, and storage medium in which virtual viewpoint video is generated based on background and object data | |
JP2019526994A (ja) | オーディオビジュアルコンテンツの観察点および観察向きの制御された選択のための方法および装置 | |
US11451838B2 (en) | Method for adaptive streaming of media | |
KR20180029344A (ko) | 가상 현실 시스템에서 컨텐트 전송 및 재생 방법 및 장치 | |
CN111869222B (zh) | 基于http的dash客户端网元、方法及介质 | |
JP2022536182A (ja) | データストリームを同期させるシステム及び方法 | |
US11523144B2 (en) | Communication apparatus, communication method, and computer-readable storage medium | |
JP6860485B2 (ja) | 情報処理装置、および情報処理方法、並びにプログラム | |
US20170353753A1 (en) | Communication apparatus, communication control method, and communication system | |
JP6541309B2 (ja) | 送信装置、送信方法、及びプログラム | |
US10636115B2 (en) | Information processing apparatus, method for controlling the same, and storage medium | |
JP7396267B2 (ja) | 情報処理装置、情報処理方法、及びプログラム | |
JP2021064822A (ja) | 通信装置、通信装置の制御方法およびプログラム | |
KR20200136394A (ko) | 정보 처리 장치, 정보 처리 방법 및 프로그램 | |
JP2021033354A (ja) | 通信装置およびその制御方法 | |
JP2024116702A (ja) | シーン記述編集装置及びプログラム |