(57)【特許請求の範囲】
【請求項１】
HTTP Live Streamingによって複数のカメラの各々で撮影されたパノラマ映像をクライアントに配信する配信サーバであって、
前記カメラを識別するカメラ識別情報が含まれる第１の要求を前記クライアントから受信すると、前記複数のカメラの各々で撮影されたパノラマ映像を再生するためのプレイリストを前記クライアントに送信する送信手段と、
前記プレイリストを前記クライアントに送信すると、前記第１の要求に含まれるカメラ識別情報で識別されるカメラで撮影されたパノラマ映像を前記クライアントに配信する映像配信手段と、を有し、
前記映像配信手段は、
前記第１の要求に含まれるカメラ識別情報と異なるカメラ識別情報が含まれる第２の要求を受信すると、前記第２の要求に含まれるカメラ識別情報で識別されるカメラで撮影されたパノラマ映像を前記クライアントに配信する、ことを特徴とする配信サーバ。
【請求項２】
前記送信手段は、
前記第１の要求に含まれるカメラ識別情報と異なるカメラ識別情報が含まれる第２の要求を受信した場合、前記プレイリストを前記クライアントに送信しない、ことを特徴とする請求項１に記載の配信サーバ。
【請求項３】
前記第１の要求は、前記複数のカメラのうち、デフォルトとして設定されているカメラで撮影されたパノラマ映像の配信開始要求であり、
前記第２の要求は、前記カメラの切り替え要求である、ことを特徴とする請求項１又は２に記載の配信サーバ。
【請求項４】
前記カメラ毎に、該カメラで撮影されたパノラマ映像のコンテンツをセグメントファイルとして記憶する記憶手段を有し、
前記映像配信手段は、
前記カメラ識別情報で識別されるカメラで撮影されたパノラマ映像のセグメントファイルを前記クライアントに配信する、ことを特徴とする請求項１乃至３の何れか一項に記載の配信サーバ。
【請求項５】
前記セグメントファイルには、所定の時間幅のパノラマ映像を低解像度に圧縮したデータを示す低解像度データと、前記時間幅の前記パノラマ映像に含まれる所定の画像領域を示す高解像度データとが含まれる、ことを特徴とする請求項４に記載の配信サーバ。
【請求項６】
HTTP Live Streamingによって複数のカメラの各々で撮影されたパノラマ映像をクライアントに配信するコンピュータが、
前記カメラを識別するカメラ識別情報が含まれる第１の要求を前記クライアントから受信すると、前記複数のカメラの各々で撮影されたパノラマ映像を再生するためのプレイリストを前記クライアントに送信する送信手順と、
前記プレイリストを前記クライアントに送信すると、前記第１の要求に含まれるカメラ識別情報で識別されるカメラで撮影されたパノラマ映像を前記クライアントに配信する映像配信手順と、を実行し、
前記映像配信手順は、
前記第１の要求に含まれるカメラ識別情報と異なるカメラ識別情報が含まれる第２の要求を受信すると、前記第２の要求に含まれるカメラ識別情報で識別されるカメラで撮影されたパノラマ映像を前記クライアントに配信する、ことを特徴とする配信方法。
【請求項７】
コンピュータを、請求項１乃至５の何れか一項に記載の配信サーバにおける各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、配信サーバ、配信方法及びプログラムに関する。
【背景技術】
【０００２】
近年、上下左右の全方位３６０度の映像を撮影可能なカメラが知られており、このようなカメラで撮影された映像はパノラマ映像（又は、「パノラマ動画」や「３６０度パノラマ映像」、「ＶＲ（Virtual Reality）映像」、「ＶＲ動画」等とも称される。）として視聴可能である。
【０００３】
また、例えば、映像配信サーバがパノラマ映像を端末にストリーミング配信等することで、当該端末でパノラマ映像を視聴することも行われている。しかしながら、パノラマ映像では配信に要するデータ量が大きくなる場合が多かった。これに対して、端末に表示される範囲（以降、「視野範囲」とも表す。）を通常の画質で配信し、端末に表示されない範囲は低画質で配信することで、パノラマ映像の配信に要するデータ量を削減する技術が知られている（例えば特許文献１参照）。
【０００４】
また、映像配信サーバが映像を端末（クライアント）にストリーミング配信等するためのプロトコルとして、ＨＬＳ（HTTP Live Streaming）が知られている。ＨＬＳでは、カメラで撮影した映像と音声とをＭＰＥＧ−２  ＴＳ（Transport Stream）形式の複数のセグメントファイルに分割した上で映像配信サーバに格納すると共に、各セグメントファイルの所在や再生時間、再生順序等を記録したプレイリストファイルを生成して所定の場所に設置する。クライアントは、当該プレイリストファイルを映像配信サーバから取得することで、所望のセグメントファイルの取得及び再生を行うことができる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１６−１５７０５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ここで、例えば、コンサートやスポーツ競技等では、複数のカメラをそれぞれ複数の地点に設置等した上で、これらの複数のカメラのそれぞれでパノラマ映像を撮影することが行われている。このとき、ユーザは、複数のカメラのそれぞれで撮影されたパノラマ映像を切り替えて端末に表示させることができるのが一般的である。
【０００７】
しかしながら、ＨＬＳでパノラマ映像が配信されている場合、端末に表示させるパノラマ映像を切り替える都度（つまり、端末に表示させるパノラマ映像のカメラを切り替える都度）、切り替え後のカメラに対応するプレイリストファイルを取得する必要がある。このため、パノラマ映像の再生に遅延が発生する場合がある。
【０００８】
本発明の実施形態は、上記の点に鑑みてなされたもので、複数のカメラでそれぞれ撮影されたパノラマ映像の切り替えに伴う再生遅延の発生を防止することを目的とする。
【課題を解決するための手段】
【０００９】
上記目的を達成するため、本発明の実施形態に係る配信サーバは、HTTP Live Streamingによって複数のカメラの各々で撮影されたパノラマ映像をクライアントに配信する配信サーバであって、前記カメラを識別するカメラ識別情報が含まれる第１の要求を前記クライアントから受信すると、前記複数のカメラの各々で撮影されたパノラマ映像を再生するためのプレイリストを前記クライアントに送信する送信手段と、前記プレイリストを前記クライアントに送信すると、前記第１の要求に含まれるカメラ識別情報で識別されるカメラで撮影されたパノラマ映像を前記クライアントに配信する映像配信手段と、を有し、前記映像配信手段は、前記第１の要求に含まれるカメラ識別情報と異なるカメラ識別情報が含まれる第２の要求を受信すると、前記第２の要求に含まれるカメラ識別情報で識別されるカメラで撮影されたパノラマ映像を前記クライアントに配信する、ことを特徴とする。
【発明の効果】
【００１０】
複数のカメラでそれぞれ撮影されたパノラマ映像の切り替えに伴う再生遅延の発生を防止することができる。
【図面の簡単な説明】
【００１１】
【図１】パノラマ映像の一例を説明するための図である。
【図２】ＨＬＳを説明するための図である。
【図３】ＨＬＳによるパノラマ映像配信の一例を説明するための図である。
【図４】複数のカメラが存在する場合にカメラを切り替えた際のパノラマ映像配信の一例を説明するための図である。
【図５】本実施形態に係る映像配信システムの全体構成の一例を示す図である。
【図６】映像コンテンツのデータ構成の一例を説明するための図（その１）である。
【図７】映像コンテンツのデータ構成の一例を説明するための図（その２）である。
【図８】本実施形態に係るパノラマ映像配信処理の一例を示すシーケンス図である。
【図９】本実施形態に係るプレイリスト取得に関する通信処理の一例を示すシーケンス図である。
【発明を実施するための形態】
【００１２】
以下、本発明の実施形態（以降、「本実施形態」とも表す。）について説明する。本実施形態では、複数のカメラでそれぞれ撮影されたパノラマ映像の切り替えに伴う再生遅延の発生を防止することができる映像配信システム１について説明する。
【００１３】
＜従来技術の説明＞
まず、本実施形態に係る映像配信システム１の説明に必要な従来技術等について説明する。
【００１４】
（パノラマ映像）
上述したように、パノラマ映像は、「パノラマ動画」や「３６０度パノラマ映像」、「ＶＲ映像」、「ＶＲ動画」等とも称される。パノラマ映像は、例えば、図１に示すように、全天周投影球で表現される。全天周投影球で表現されるパノラマ映像では、全天周投影球の中心を観測位置として、この観測位置にある疑似的なカメラが所定の画角で撮影した範囲が視野範囲（つまり、端末に表示される範囲）となる。また、全天周投影球で表現されるパノラマ映像は、垂直角度θが０〜π、水平角度φが０〜２πの正距円筒図法で表現することができる。このとき、例えば、上記の特許文献１に記載されている技術では、正距円筒図法で表現されたパノラマ映像の視野範囲を含む部分領域データを「高解像度タイル」、パノラマ映像全体を圧縮したデータを「低解像度タイル」として端末に配信する。言い換えれば、視野範囲を含む部分領域は高ビットレートの高解像度タイルとして、パノラマ映像全体はビットレートを下げた低ビットレートの低解像度タイルとして端末に配信する。
【００１５】
これにより、パノラマ映像の配信に要するデータ量を削減させることができると共に、視野範囲では高画質な映像が視聴可能であり、かつ、視野範囲を移動させた場合であっても映像が途切れることなく視聴可能とさせることができる。なお、圧縮とは、画像サイズの縮小を意味するものとする。
【００１６】
本実施形態に係る映像配信システム１でも、上記の特許文献１に記載されている技術を利用し、高解像度タイルと低解像度タイルとを端末（クライアント）に配信することで、このクライアント上でパノラマ映像を再生するものとする。
【００１７】
（ＨＬＳ）
上述したように、ＨＬＳとは、配信サーバが映像をクライアントにストリーミング配信等するためのプロトコルである。例えば、図２に示すように、カメラから出力された映像信号がエンコードされてエンコード映像が作成され、配信サーバは、このエンコード映像を複数のセグメントファイルに分割すると共に、プレイリストファイルを生成して所定の場所に設置（格納）する。なお、セグメントファイルは「．ｔｓ」形式（つまり、ＭＰＥＧ−２  トランスポートストリーム形式）のファイルであり、プレイリストファイルは「．ｍ３ｕ８」形式のファイルである。図２では、一例として、エンコード映像が「ＴＳ−００．ｔｓ」〜「ＴＳ−ＮＮ．ｔｓ」に分割された場合を示している。
【００１８】
このとき、ＨＬＳでは、クライアントはプレイリストファイルを配信サーバから取得することで、所望のセグメントファイルの取得及び再生を行うことができるようになる。
【００１９】
（ＨＬＳによるパノラマ映像配信）
ＨＬＳによりパノラマ映像を配信する場合、配信サーバでは、所定の時間単位ｔｃ毎に、低解像度タイルと、所定の複数の視野範囲毎の高解像度タイルとをセグメントファイルとして格納している。例えば、図３に示すように、ｔｃ毎の低解像度タイルＬＴ、第１の視野範囲におけるｔｃ毎の高解像度タイルＨＴ１、第２の視野範囲におけるｔｃ毎の高解像度タイルＨＴ２、第３の視野範囲におけるｔｃ毎の高解像度タイルＨＴ３等が格納されている。ここで、図３に示す例では、第１の視野範囲は視野範囲の左上の座標が（０，０）となる範囲、第２の視野範囲は視野範囲の左上の座標が（Ｓｘ，０）となる範囲、第３の視野範囲は視野範囲の左上の座標が（２Ｓｘ，０）となる範囲である。Ｓｘは予め決められた水平角度（ｘ軸方向）のシフト量である。
【００２０】
なお、垂直角度（ｙ軸方向）のシフト量Ｓｙも予め決められ、高解像度タイルは、ｐ＝０，・・・，Ｐ、ｑ＝０，・・・，Ｑとして、一般に、視野範囲の左上の座標が（ｐ×Ｓｘ，ｑ×Ｓｙ）である範囲毎に格納されている。以降では、Ｍ＝Ｐ×Ｑとして、ｔｃ毎に、Ｍ個の視野範囲それぞれの高解像度タイルが格納されるものとする。
【００２１】
このように、パノラマ映像では、ｔｃ毎の低解像度タイルと、予め決められた複数の視野範囲におけるｔｃ毎の高解像度タイルとがセグメントファイルとして配信サーバに格納されている。
【００２２】
そして、パノラマ映像を再生する際には、クライアントは、プレイリストを配信サーバから取得することで、低解像度タイルと所望の視野範囲の高解像度タイルとを取得することができる。これにより、クライアントは、当該低解像度タイルと当該高解像度タイルとを用いて、パノラマ映像を再生することができる。
【００２３】
例えば、クライアントの視野範囲が３ｔｃ毎に水平角度にＳｘ分だけ移動した場合、図３に示すように、当該クライアントには、最初の３ｔｃ間ではＬＴ１〜ＬＴ３とＨＴ１−１〜ＨＴ１−３とがそれぞれ順に配信され、次の３ｔｃ間ではＬＴ４〜ＬＴ６とＨＴ２−４〜ＨＴ２−６とがそれぞれ順に配信され、更に次の３ｔｃ間ではＬＴ７〜ＬＴ９とＨＴ３−７〜ＨＴ３−９とがそれぞれ順に配信される。
【００２４】
なお、ｔｃは任意に設定されるが、例えば、０．５［秒］程度とすることが考えられる。また、Ｓｘ及びＳｙはパノラマ映像の画素数等に応じて任意に設定されるが、例えば、正距円筒図法で表現されたパノラマ映像が４０００×２０００画素である場合にはＳｘ＝１００、Ｓｙ＝５０等とすることが考えられる。Ｓｘ及びＳｙが大きいほど配信サーバで保持する高解像度タイル数を削減することができるが、視野範囲を切り替えた場合の滑らかさが低下する（つまり、ユーザの視聴品質が低下する。）。一方で、Ｓｘ及びＳｙが小さいほど配信サーバで保持する高解像度タイル数は増加するが、視野範囲を切り替えた場合の滑らかさが向上する（つまり、ユーザの視聴品質が向上する。）。
【００２５】
（複数のカメラが存在する場合におけるＨＬＳによるパノラマ映像配信）
例えば、コンサートやスポーツ競技等では、複数のカメラをそれぞれ複数の地点に設置等した上で、これらの複数のカメラのそれぞれでパノラマ映像を撮影することが行われている。このとき、クライアントでは、これら複数のカメラのそれぞれで撮影されたパノラマ映像を切り替え可能に表示することができるのが一般的である。
【００２６】
このとき、ＨＬＳによりパノラマ映像を配信する場合、配信サーバには、カメラ毎に、プレイリストとセグメントファイルとが格納される。例えば、図４に示すように、カメラ１〜カメラＮのＮ台のカメラが存在する場合、配信サーバには、カメラ１で撮影されたパノラマ映像（つまり、カメラ１の映像信号がエンコードされたエンコード映像）を示すカメラ１コンテンツ、カメラ２で撮影されたパノラマ映像を示すカメラ２コンテンツ、・・・、カメラＮで撮影されたパノラマ映像を示すカメラＮコンテンツが格納される。すなわち、配信サーバには、カメラ毎に、このカメラで撮影されたパノラマ映像を再生するためのプレイリスト及びセグメントファイルが格納されている。
【００２７】
したがって、図４に示すように、クライアントは、カメラ１で撮影されたパノラマ映像を再生する際には、カメラ１コンテンツ用のプレイリストを取得して、カメラ１コンテンツの低解像度タイル（ＬＴ：Low-resolution Tile）とカメラ１コンテンツの高解像度タイル（ＨＴ：High-resolution Tile）とを取得する。同様に、クライアントは、カメラＮで撮影されたパノラマ映像を再生する際には、カメラＮコンテンツ用のプレイリストを取得して、カメラＮコンテンツの低解像度タイルとカメラＮコンテンツの高解像度タイルとを取得する。
【００２８】
すなわち、クライアントは、再生するパノラマ映像のカメラを切り替える都度、このカメラに対応するプレイリストファイルを取得する必要がある。このため、クライアントは、再生するパノラマ映像のカメラを切り替える都度、配信サーバと通信を行う必要があり、パノラマ映像の再生に遅延が発生する場合がある。
【００２９】
そこで、以降で説明する本実施形態に係る映像配信システム１では、クライアントで再生するパノラマ映像のカメラを切り替えた場合における通信（プレイリスト取得のための通信）を無くすことで、パノラマ映像の再生に遅延が発生することを防止する。
【００３０】
＜映像配信システム１の全体構成＞
本実施形態に係る映像配信システム１の全体構成について、図５を参照しながら説明する。図５は、本実施形態に係る映像配信システム１の全体構成の一例を示す図である。
【００３１】
図５に示すように、本実施形態に係る映像配信システム１には、配信サーバ１０と、クライアント２０と、複数のカメラ３０と、エンコード装置４０とが含まれる。カメラ３０とエンコード装置４０との間、エンコード装置４０と配信サーバ１０との間、及び配信サーバ１０とクライアント２０との間は任意の通信ネットワークを介して通信可能に接続されている。
【００３２】
配信サーバ１０は、ＨＬＳによりパノラマ映像をクライアント２０に配信するコンピュータ又はコンピュータシステムである。このとき、配信サーバ１０は、複数のカメラ３０でそれぞれ撮影されたパノラマ映像のうち、クライアント２０が所望するカメラ３０で撮影されたパノラマ映像を当該クライアント２０に配信する。
【００３３】
クライアント２０は、ＨＬＳによりパノラマ映像を配信サーバ１０から受信（取得）して、このパノラマ映像を再生するコンピュータである。クライアント２０は、複数のカメラ３０の中から１つ以上のカメラ３０を選択して、選択したカメラ３０のパノラマ映像を再生することができる（つまり、クライアント２０では再生するパノラマ映像のカメラ３０を切り替えることができる。）。
【００３４】
なお、クライアント２０としては、例えば、ＰＣ（パーソナルコンピュータ）、スマートフォン、タブレット端末、ヘッドマウントディスプレイ（ＨＭＤ：Head Mounted Display）、ウェアラブルデバイス、ゲーム機器等を用いることが可能である。
【００３５】
カメラ３０は、所定の地点又は位置に設置等されている撮像装置である。したがって、複数のカメラ３０は、複数の地点又は位置にそれぞれ設置等されている。なお、以降では、カメラ３０の総数をＮ（ただし、Ｎは２以上の整数）として、複数のカメラ３０の各々を区別する場合には、「カメラ３０１」、「カメラ３０２」、・・・、「カメラ３０Ｎ」等と表す。
【００３６】
エンコード装置４０は、カメラ３０の映像信号をエンコードしてエンコード映像を作成するコンピュータである。エンコード装置４０で作成されたエンコード映像は、配信サーバ１０に送信される。
【００３７】
ここで、本実施形態に係る配信サーバ１０は、配信処理部１１０と、記憶部１２０とを有する。配信処理部１１０は、配信サーバ１０にインストールされた１以上のプログラムが、ＣＰＵ（Central Processing Unit）等のプロセッサに実行させる処理により実現される。また、記憶部１２０は、例えば、ＨＤＤ（Hard Disk Drive）やＳＳＤ（Solid State Drive）等の補助記憶装置を用いて実現可能である。なお、記憶部１２０は、配信サーバ１０と通信ネットワークを介して接続される記憶装置等を用いて実現されていてもよい。
【００３８】
配信処理部１１０は、クライアント２０からの要求に応じて、該当のカメラ３０のコンテンツ（つまり、低解像度タイル及び高解像度タイル）を当該クライアント２０に配信する。
【００３９】
記憶部１２０には、複数のカメラ３０で撮影されたパノラマ映像を示す映像コンテンツが記憶されている。ここで、映像コンテンツには、全てのカメラ３０のコンテンツで共通のプレイリストと、各カメラ３０のコンテンツ（つまり、「カメラ１コンテンツ」、「カメラ２コンテンツ」、・・・、「カメラＮコンテンツ」）とが含まれる。また、各カメラ３０のコンテンツには、セグメントファイルとして、ｔｃ毎の低解像度タイルと、予め決められた複数の視野範囲におけるｔｃ毎の高解像度タイルとが含まれる。なお、ｎ＝１，・・・，Ｎとして、カメラｎコンテンツは、カメラ３０ｎで撮影されたパノラマ映像を示すコンテンツである。
【００４０】
このように、本実施形態に係る配信サーバ１０の記憶部１２０には、カメラ３０ｎ（ｎ＝１，・・・，Ｎ）のカメラｎコンテンツで共通のプレイリストと、カメラ３０ｎ（ｎ＝１，・・・，Ｎ）のカメラｎコンテンツ（低解像度タイル及び高解像度タイル）とが記憶されている。このため、クライアント２０はプレイリストを１度取得した後は、カメラ３０を切り替えたとしも、再度プレイリストを取得する必要がなくなり、プレイリスト取得のための通信を削減することができる。なお、映像コンテンツのデータ構成の詳細については後述する。
【００４１】
また、本実施形態に係るクライアント２０は、視聴処理部２１０を有する。視聴処理部２１０は、クライアント２０にインストールされた１以上のプログラムが、ＣＰＵ等のプロセッサに実行させる処理により実現される。
【００４２】
視聴処理部２１０は、配信サーバ１０に対して各種要求（例えば、映像の配信要求等）を送信すると共に、該当のカメラ３０のコンテンツ（低解像度タイル及び高解像度タイル）を配信サーバ１０から受信して、当該コンテンツによってパノラマ映像を再生する。
【００４３】
なお、図１に示す映像配信システム１の全体構成は一例であって、他の構成であってもよい。例えば、エンコード装置４０は配信サーバ１０と一体となっていてもよい。この場合、映像信号は、配信サーバ１０でエンコードされる。
【００４４】
＜映像コンテンツのデータ構成＞
次に、本実施形態に係る配信サーバ１０の記憶部１２０に記憶されている映像コンテンツのデータ構成について説明する。
【００４５】
（実施例１）
実施例１における映像コンテンツのデータ構成について、図６を参照しながら説明する。図６は、映像コンテンツのデータ構成の一例を説明するための図（その１）である。
【００４６】
図６に示すように、実施例１では、コンテンツフォルダの直下にプレイリスト（これを「Ｃｏｎｔｅｎｔ．ｍ３ｕ８」とも表す。）と、Ｃｏｎｆフォルダと、Ｍｅｄｉａフォルダとが配置される。また、Ｃｏｎｆフォルダ内には、メタデータリスト（これを「Ｐｌａｙ．ｉｎｉ」とも表す。）と、配置情報（これを「Ｒｅｎｄｅｒｉｎｇ．ｉｎｉ」とも表す。）とが配置されている。
【００４７】
一方で、Ｍｅｄｉａフォルダ内には、カメラ１コンテンツが格納される各フォルダ（０フォルダ、１フォルダ、２フォルダ、・・・、Ｍフォルダ）、カメラ２コンテンツが格納される各フォルダ（Ｍ＋１フォルダ、Ｍ＋２フォルダ、・・・、２Ｍ＋１フォルダ）、・・・、カメラＮコンテンツが格納される各フォルダとが配置される。
【００４８】
ここで、ｉ＝１，・・・，Ｍ−１として、ｎ（ｉ＋１）−１フォルダには、カメラ３０ｎの第ｉの視野範囲の高解像度タイルが配置されている。具体的には、例えば、０フォルダには、カメラ３０１の第１の視野範囲におけるｔｃ毎の高解像度タイルが配置されている。図６に示す例では、最初のｔｃ間における当該高解像度タイル「０．ｔｓ」、次のｔｃ間における当該高解像度タイル「１．ｔｓ」、更に次のｔｃ間における当該高解像度タイル「２．ｔｓ」等が配置されている。同様に、１フォルダには、カメラ３０２の第２の視野範囲におけるｔｃ毎の高解像度タイルが配置されている。
【００４９】
一方で、ｉ＝Ｍとして、ｎ（Ｍ＋１）−１フォルダには、カメラ３０ｎのｔｃ毎の低解像度タイルが配置されている。具体的には、例えば、Ｍフォルダには、カメラ３０１のｔｃ毎の低解像度タイルが配置されている。図６に示す例では、最初のｔｃ間における低解像度タイル「０．ｔｓ」、次のｔｃ間における低解像度タイル「１．ｔｓ」、更に次のｔｃ間における低解像度タイル「２．ｔｓ」等が配置されている。また、ｎ（Ｍ＋１）−１フォルダには、メディア用のプレイリスト（これを「ＬＴ．ｍ３ｕ８」とも表す。）も配置されている。
【００５０】
このように、実施例１における映像コンテンツでは、Ｍｅｄｉａフォルダ内に、カメラ３０毎のコンテンツが格納されている。
【００５１】
なお、Ｃｏｎｔｅｎｔ．ｍ３ｕ８で表されるプレイリストをメディア用のプレイリストと区別するため、以降では、「コンテンツ用プレイリスト」とも表す、コンテンツ用プレイリストには、例えば、通信セッション情報、セグメントファイルを送信するための必須情報等が記述されている。
【００５２】
一方で、メディア用のプレイリスト（ＬＴ．ｍ３ｕ８）は「メディア用プレイリスト」とも表す。メディア用プレイリストには、例えば、各セグメントファイルの長さ（再生時間）等が記述されている。
【００５３】
また、メタデータリストには、コーデックに関する情報、各タイルのサイズの情報、カメラ３０の台数情報等が記述されている。より具体的には、メタデータリストには、カメラ３０の台数情報と、カメラ３０毎のコーデックに関する情報やカメラ３０毎のタイルのサイズの情報等が記述されている。
【００５４】
更に、配置情報には、高解像度タイルの配置に関する情報（つまり、高解像度タイル毎の視野範囲の座標に関する情報）等が記述されている。より具体的には、配置情報には、カメラ３０毎の高解像度タイルの配置に関する情報等が記述されている。
【００５５】
（実施例２）
実施例２における映像コンテンツのデータ構成について、図７を参照しながら説明する。図７は、映像コンテンツのデータ構成の一例を説明するための図（その２）である。
【００５６】
図７に示すように、実施例２では、コンテンツフォルダの直下にコンテンツ用プレイリストと、Ｃｏｎｆフォルダと、カメラ３０毎のＭｅｄｉａフォルダ（つまり、Ｍｅｄｉａ＿１フォルダ、Ｍｅｄｉａ＿２フォルダ、・・・、Ｍｅｄｉａ＿Ｎフォルダ）とが配置されている。Ｃｏｎｆフォルダ内には、実施例１と同様に、メタデータリストと、配置情報とが配置されている。
【００５７】
ｎ＝１，・・・，Ｎとして、Ｍｅｄｉａ＿ｎフォルダ内には、カメラｎコンテンツが格納される。すなわち、Ｍｅｄｉａ＿ｎフォルダには０フォルダ、１フォルダ、・・・、Ｍフォルダがそれぞれ配置されており、ｉ＝０，・・・，Ｍ−１として、ｉフォルダには、カメラ３０ｎの第ｉ＋１の視野範囲の高解像度タイルが配置されている。具体的には、例えば、Ｍｅｄｉａ＿１フォルダの０フォルダには、カメラ３０１の第１の視野範囲におけるｔｃ毎の高解像度タイルが配置されている。図７に示す例では、最初のｔｃ間における当該高解像度タイル「０．ｔｓ」、次のｔｃ間における当該高解像度タイル「１．ｔｓ」、更に次のｔｃ間における当該高解像度タイル「２．ｔｓ」等が配置されている。同様に、Ｍｅｄｉａ＿１フォルダの１フォルダには、カメラ３０１の第２の視野範囲におけるｔｃ毎の高解像度タイルが配置されている。
【００５８】
一方で、Ｍｅｄｉａ＿ｎフォルダのＭフォルダには、カメラ３０ｎのｔｃ毎の低解像度タイルが配置されている。具体的には、例えば、Ｍｅｄｉａ＿１フォルダのＭフォルダには、カメラ３０１のｔｃ毎の低解像度タイルが配置されている。図７に示す例では、最初のｔｃ間における低解像度タイル「０．ｔｓ」、次のｔｃ間における低解像度タイル「１．ｔｓ」、更に次のｔｃ間における低解像度タイル「２．ｔｓ」等が配置されている。また、Ｍフォルダには、メディア用のプレイリストも配置されている。
【００５９】
このように、実施例２における映像コンテンツでは、コンテンツフォルダ直下に、カメラ３０毎のＭｅｄｉａフォルダが配置されており、それぞれのＭｅｄｉａフォルダ内に該当のカメラ３０のコンテンツが格納されている。
【００６０】
＜パノラマ映像配信処理＞
次に、本実施形態に係るパノラマ映像配信処理について、図８を参照しながら説明する。図８は、本実施形態に係るパノラマ映像配信処理の一例を示すシーケンス図である。なお、以降では、カメラ３０を特定する情報をカメラ番号として、カメラ番号ｎ＝１のカメラ３０１をデフォルトのカメラ３０とする。そして、クライアント２０でパノラマ映像を再生する際には、デフォルトのカメラ３０１のパノラマ映像が最初に再生されるものとする。
【００６１】
まず、クライアント２０の視聴処理部２１０は、パノラマ映像の再生を開始すると、映像の配信要求を配信サーバ１０に送信する（ステップＳ１０１）。ここで、当該映像の配信要求には、デフォルトのカメラ３０１のカメラ番号ｎ＝１が含まれる。また、当該映像の配信要求には、現在時刻又はユーザによって指定された時刻も含まれる。以降では、現在時刻又はユーザによって指定された時刻を「再生時刻」とも表す。なお、例えば、ライブ配信等の場合には再生時刻として現在時刻が含まれる場合が多く、オンデマンド配信等の場合には再生時刻としてユーザによって指定された時刻が含まれる場合が多い。
【００６２】
本実施形態では、上記のステップＳ１０１で送信される要求を「映像の配信要求」としたが、この要求は、例えば、「映像の配信開始要求」等と称されてもよい。
【００６３】
次に、配信サーバ１０及びクライアント２０は、プレイリスト取得に関する通信処理（すなわち、コンテンツ用プレイリストやメディア用プレイリスト等を配信サーバ１０からクライアント２０に送信する処理）を行う（ステップＳ１０２）。これにより、クライアント２０は、コンテンツ用プレイリストやメディア用プレイリスト等を取得することができる。このプレイリスト取得に関する通信処理の詳細については後述する。
【００６４】
次に、配信サーバ１０の配信処理部１１０は、カメラ１コンテンツの低解像度タイル及び高解像度タイルのうち、再生時刻に対応する低解像度タイルと、デフォルトの視野範囲における再生時刻に対応する高解像度タイルとを記憶部１２０から読み出す（ステップＳ１０３）。なお、再生時刻に対応する低解像度タイル及び高解像度タイルとは、例えば、当該低解像度タイル及び当該高解像度タイルの再生時間に再生時刻が含まれるタイルのことである。
【００６５】
そして、配信サーバ１０の配信処理部１１０は、上記のステップＳ１０３で読み出した低解像度タイル及び高解像度タイルをクライアント２０に配信（送信）する（ステップＳ１０４）。
【００６６】
クライアント２０の視聴処理部２１０は、低解像度タイル及び高解像度タイルを受信すると、これらの低解像度タイル及び高解像度タイルを合成する（ステップＳ１０５）。すなわち、視聴処理部２１０は、例えば、上記のステップＳ１０２で取得した配置情報に基づいて、当該低解像度タイルの該当の領域に当該高解像度タイルを重畳させることで、これらの低解像度タイル及び高解像度タイルを合成する。これにより、視野範囲が高解像度で、かつ、視野範囲以外の領域は低解像度のパノラマ映像が作成される。
【００６７】
そして、クライアント２０の視聴処理部２１０は、上記のステップＳ１０５で低解像度タイル及び高解像度タイルを合成することで作成されたパノラマ映像を再生する（ステップＳ１０６）。視聴処理部２１０は、例えば、メタデータリストに記述されているコーデックに関する情報に従ってパノラマ映像を再生する。
【００６８】
以降のステップＳ１０７〜ステップＳ１１１では、カメラ３０ｎのパノラマ映像を再生している場合に、クライアント２０の視野範囲が変更されたときの処理について説明する。クライアント２０では、例えば、ジャイロセンサ等により視線方向の変更が検出されることで、この視線方向の変更に応じて視野範囲も変更される。ただし、視線方向の変更は、ジャイロセンサ等によって検出される場合に限られず、例えば、クライアント２０のタッチパネルをユーザの指で操作すること等によって視線方向が変更されてもよい。
【００６９】
クライアント２０の視聴処理部２１０は、変更後の視線方向を示す視線方向情報を配信サーバ１０に送信する（ステップＳ１０７）。なお、このとき、視聴処理部２１０は、再生時刻もあわせて配信サーバ１０に送信してもよい。
【００７０】
配信サーバ１０の配信処理部１１０は、視線方向情報を受信すると、カメラｎコンテンツの低解像度タイル及び高解像度タイルのうち、再生時刻（つまり、現在時刻又はユーザによって指定された時刻）に対応する低解像度タイルと、当該視線方向情報が示す視線方向の視野範囲における再生時刻に対応する高解像度タイルとを記憶部１２０から読み出す（ステップＳ１０８）。なお、視野範囲は、例えば、パノラマ映像を全天周投影球で表現した場合に、観測位置にある疑似的なカメラを視線方向に向けて撮影した範囲として特定される。
【００７１】
そして、配信サーバ１０の配信処理部１１０は、上記のステップＳ１０８で読み出した低解像度タイル及び高解像度タイルをクライアント２０に配信（送信）する（ステップＳ１０９）。
【００７２】
クライアント２０の視聴処理部２１０は、低解像度タイル及び高解像度タイルを受信すると、上記のステップＳ１０５と同様に、これらの低解像度タイル及び高解像度タイルを合成する（ステップＳ１１０）。
【００７３】
そして、クライアント２０の視聴処理部２１０は、上記のステップＳ１１０で低解像度タイル及び高解像度タイルを合成することで作成されたパノラマ映像を再生する（ステップＳ１１１）。
【００７４】
以降のステップＳ１１２〜ステップＳ１１６では、クライアント２０で再生するパノラマ映像を切り替えた場合（つまり、カメラ３０を切り替えた場合）の処理について説明する。クライアント２０のユーザは、所定の操作（例えば、カメラ切り替えボタンを押下する等）を行うことで、当該クライアント２０で再生するパノラマ映像を切り替えることができる。一例として、カメラ番号ｎ＝ｋのカメラ３０ｋで撮影されたパノラマ映像に切り替える場合について説明する。
【００７５】
クライアント２０の視聴処理部２１０は、カメラ番号ｎ＝ｋのカメラ３０ｋで撮影されたパノラマ映像に切り替える操作が行われると、映像の配信要求を配信サーバ１０に送信する（ステップＳ１１２）。ここで、当該映像の配信要求には、カメラ番号ｎ＝ｋが含まれる。なお、このとき、視聴処理部２１０は、再生時刻もあわせて配信サーバ１０に送信してもよい。本実施形態では、このステップＳ１１２で送信される要求を「映像の配信要求」としたが、この要求は、例えば、「カメラの切替要求」や「パノラマ映像の切替要求」等と称されてもよい。
【００７６】
配信サーバ１０の配信処理部１１０は、カメラｋコンテンツの低解像度タイル及び高解像度タイルのうち、再生時刻に対応する低解像度タイルと、デフォルトの視野範囲における再生時刻に対応する高解像度タイルとを記憶部１２０から読み出す（ステップＳ１１３）。
【００７７】
そして、配信サーバ１０の配信処理部１１０は、上記のステップＳ１１３で読み出した低解像度タイル及び高解像度タイルをクライアント２０に配信（送信）する（ステップＳ１１４）。
【００７８】
クライアント２０の視聴処理部２１０は、低解像度タイル及び高解像度タイルを受信すると、上記のステップＳ１０５と同様に、これらの低解像度タイル及び高解像度タイルを合成する（ステップＳ１１５）。
【００７９】
そして、クライアント２０の視聴処理部２１０は、上記のステップＳ１１５で低解像度タイル及び高解像度タイルを合成することで作成されたパノラマ映像を再生する（ステップＳ１１６）。
【００８０】
このように、本実施形態に係る映像配信システム１では、クライアント２０で再生するパノラマ映像を撮影するカメラ３０が切り替わった場合であっても、上記のステップＳ１０２でプレイリストを一度取得していれば、再度プレイリストを取得する必要がない。このため、再度プレイリスト取得に関する通信処理を行う必要がないため、パノラマ映像の再生遅延を防止することが可能となる。
【００８１】
なお、本実施形態では、カメラ３０ｋに切り替えた後のパノラマ映像の視野範囲は、当該カメラ３０ｋのデフォルトの視野範囲であるものとした（上記のステップＳ１１３）が、これに限られない。例えば、切り替え後の視野範囲を特定するための座標を、切り替え前の視野範囲を特定するための座標と同一としてもよい。
【００８２】
また、例えば、切り替え前の視野範囲内に或る対象（例えば、コンサートであれば或る特定の歌手、スポーツであれば或る特定の選手等）が含まれている場合に、同一の対象が含まれる範囲を切り替え後の視野範囲としてもよい。これにより、ユーザは、複数のカメラ３０を切り替えることで、例えば、異なる角度や異なる位置等から撮影された同一の対象を視聴することが可能となる。
【００８３】
また、例えば、パノラマ映像の再生時刻や内容に応じて、カメラ３０毎に着目する視野範囲を予め指定されていてもよい。具体的には、例えば、再生時刻が「０：００」〜「５：００」の間は、カメラ３０１に切り替わったときは視野範囲１、カメラ３０２に切り替わったときは視野範囲３、カメラ３０３に切り替わったときは視野範囲２等と予め設定することが考えられる。同様に、例えば、パノラマ映像の内容（コンテンツ）が「コンサート」の場合に、カメラ３０１に切り替わったときは視野範囲２、カメラ３０２に切り替わったときは視野範囲２、カメラ３０３に切り替わったときは視野範囲１等とする一方で、パノラマ映像の内容が「スポーツ」である場合に、カメラ３０１に切り替わったときは視野範囲１、カメラ３０２に切り替わったときは視野範囲１、カメラ３０３に切り替わったときは視野範囲３等と予め設定することが考えられる。これにより、パノラマ映像の再生時刻や内容に応じて、切り替え後のカメラ３０で指定された視野範囲を視聴することが可能となる。
【００８４】
ここで、上記のステップＳ１０２におけるプレイリスト取得に関する通信処理の詳細について、図９を参照しながら説明する。図９は、本実施形態に係るプレイリスト取得に関する通信処理の一例を示すシーケンス図である。
【００８５】
まず、クライアント２０の視聴処理部２１０は、Ｍａｓｔｅｒ  Ｐｌａｙｌｉｓｔ要求を配信サーバ１０に送信する（ステップＳ２０１）。なお、Ｍａｓｔｅｒ  Ｐｌａｙｌｉｓｔ要求とは、コンテンツ用プレイリストを取得するための要求である。
【００８６】
配信サーバ１０の配信処理部１１０は、Ｍａｓｔｅｒ  Ｐｌａｙｌｉｓｔ要求を受信すると、コンテンツ用プレイリストを記憶部１２０から読み出す（ステップＳ２０２）。
【００８７】
そして、配信サーバ１０の配信処理部１１０は、上記のステップＳ２０２で読み出したコンテンツ用プレイリスト（つまり、Ｃｏｎｔｅｎｔ．ｍ３ｕ８）をクライアント２０に送信する（ステップＳ２０３）。これにより、クライアント２０は、コンテンツ用プレイリストを取得することができる。
【００８８】
クライアント２０の配信処理部１１０は、コンテンツ用プレイリストを受信すると、Ｍｅｄｉａ  Ｐｌａｙｌｉｓｔ要求を配信サーバ１０に送信する（ステップＳ２０４）。なお、Ｍｅｄｉａ  Ｐｌａｙｌｉｓｔ要求とは、メディア用プレイリスト等を取得するための要求である。
【００８９】
配信サーバ１０の配信処理部１１０は、Ｍｅｄｉａ  Ｐｌａｙｌｉｓｔ要求を受信すると、メディア用プレイリスト（つまり、ＬＴ．ｍ３ｕ８）と、メタデータリスト（つまり、Ｐｌａｙ．ｉｎｉ）と、配置情報（つまり、Ｒｅｎｄｅｒｉｎｇ．ｉｎｉ）とを記憶部１２０から読み出す（ステップＳ２０５）。
【００９０】
そして、配信サーバ１０の配信処理部１１０は、上記のステップＳ２０５で読み出したメディア用プレイリストとメタデータリストと配置情報とをクライアント２０に送信する（ステップＳ２０６）。これにより、クライアント２０は、メディア用プレイリストとメタデータリストと配置情報とを取得することができる。
【００９１】
本発明は、具体的に開示された上記の実施形態に限定されるものではなく、特許請求の範囲から逸脱することなく、種々の変形や変更、組み合わせ等が可能である。
【符号の説明】
【００９２】
１        映像配信システム
１０      配信サーバ
２０      クライアント
３０      カメラ
４０      エンコード装置
１１０    配信処理部
１２０    記憶部
２１０    視聴処理部
【図１】
0006970143.tif 000002
【図２】
0006970143.tif 000003
【図３】
0006970143.tif 000004
【図４】
0006970143.tif 000005
【図５】
0006970143.tif 000006
【図６】
0006970143.tif 000007
【図７】
0006970143.tif 000008
【図８】
0006970143.tif 000009
【図９】
0006970143.tif 000010