(57)【要約】【課題】簡易な構成で、再生対象の映像ストリームのシームレスな切り替えを可能とする。【解決手段】本発明に係る配信装置１０は、複数の映像ストリームそれぞれに対応して設けられ、映像ストリームを分割したセグメントを処理するための情報を示すプレイリストを取得する取得部１１と、再生装置２０により参照され、再生対象の映像ストリームを分割したセグメントを処理するための情報を示す参照用プレイリストを生成する生成部１４と、参照用プレイリストを再生装置２０に配信する配信部１５と、を備え、生成部１４は、再生対象の映像ストリームが切り替えられる場合、取得部１１により取得された、切替先の映像ストリームに対応して予め設けられたプレイリストにより参照用プレイリストを更新し、配信部１５は、生成部１４により更新された参照用プレイリストを再生装置２０に配信する。【選択図】図１
2018133664.tif 000002
【特許請求の範囲】
【請求項１】
複数のセグメントに分割された複数の映像ストリームのいずれかを再生装置に配信する配信装置であって、
前記複数の映像ストリームそれぞれに対応して設けられ、前記映像ストリームを分割したセグメントを処理するための情報を示すプレイリストを取得する取得部と、
前記再生装置により参照され、前記再生装置での再生対象の映像ストリームを分割したセグメントを処理するための情報を示す参照用プレイリストを生成する生成部と、
前記生成部により生成された参照用プレイリストを前記再生装置に配信する配信部と、を備え、
前記生成部は、前記再生装置での再生対象の映像ストリームが切り替えられる場合、前記取得部により取得された、切替先の映像ストリームに対応して予め設けられたプレイリストにより前記参照用プレイリストを更新し、
前記配信部は、前記生成部により更新された参照用プレイリストを前記再生装置に配信することを特徴とする配信装置。
【請求項２】
請求項１に記載の配信装置において、
前記再生装置での再生対象の映像ストリームが切り替えられる場合、切替元の映像ストリームのセグメントと、切替先の映像ストリームのセグメントとを用いて、切替用セグメントを生成する切替用セグメント生成部をさらに備え、
前記配信部は、前記切替用セグメントに基づき前記参照用プレイリストを更新し、前記切替用セグメントに基づく前記参照用プレイリストの更新後、前記切替先の映像ストリームに対応して予め設けられたプレイリストにより、前記参照用プレイリストを更新することを特徴とする配信装置
【請求項３】
請求項２に記載の配信装置において、
前記切替用セグメント生成部は、前記切替元の映像ストリームのセグメントと、前記切替先の映像ストリームのセグメントとを合成して切替用セグメントを生成し、
前記配信部は、前記切替用セグメント生成部により生成された切替用セグメントにより前記切替先の映像ストリームのセグメントが置換されるように前記参照用プレイリストを更新することを特徴とする配信装置。
【請求項４】
請求項２に記載の配信装置において、
前記切替用セグメント生成部は、前記切替元の映像ストリームのセグメントの１フレーム分の静止画と、前記切替先の映像ストリームのセグメントの１フレーム分の静止画とに基づき切替用セグメントを生成し、
前記配信部は、前記切替用セグメント生成部により生成された切替用セグメントが、前記切替元の映像ストリームのセグメントと、前記切替先の映像ストリームのセグメントの次のセグメントとの間に挿入されるように、前記参照用プレイリストを更新することを特徴とする配信装置。
【請求項５】
請求項２に記載の配信装置において、
前記切替用セグメント生成部は、前記切替元の映像ストリームのセグメントの１フレーム分の静止画と、前記切替先の映像ストリームのセグメントの１フレーム分の静止画とに基づき切替用セグメントを生成し、
前記配信部は、前記切替用セグメント生成部により生成された切替用セグメントにより前記切替先の映像ストリームのセグメントが置換されるように前記参照用プレイリストを更新することを特徴とする配信装置。
【請求項６】
請求項２から５のいずれか一項に記載の配信装置において、
前記切替用セグメント生成部は、前記複数の映像ストリーム間での切替が所定の順序で行われる場合、前記切替元の映像ストリームのセグメントと、前記切替元の映像ストリームから切替可能な１以上の映像ストリームのセグメントそれぞれとを用いて前記切替用セグメントを生成し、
前記配信部は、前記切替元の映像ストリームから、前記切替元の映像ストリームから切替可能な映像ストリームのうちのいずれかの映像ストリームに切り替えられる場合、前記切替用セグメント生成部により生成された切替用セグメントのうち、前記切替元の映像ストリームのセグメントと、切替先の映像ストリームのセグメントとに基づき生成された切替用セグメントに基づき前記参照用プレイリストを更新することを特徴とする配信装置。
【請求項７】
コンピュータを、請求項１から６のいずれか一項に記載の配信装置として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、映像ストリームを再生装置に配信する配信装置およびプログラムに関する。
【背景技術】
【０００２】
インターネットなどの通信ネットワークを介した動画配信手法として、ＨＬＳ（HTTP Live Streaming）、ＭＰＥＧ−ＤＡＳＨ（Moving Picture Experts Group-Dynamic Adaptive Streaming over HTTP）に代表される、ＨＴＴＰ（Hypertext Transfer Protocol）に従い映像ストリームを再生装置に配信するＨＴＴＰベースの動画配信手法がある（非特許文献１参照）。ＨＴＴＰベースの動画配信手法には、標準的なＷｅｂサーバを用いて、映像ストリームを配信することができるという利点がある。
【０００３】
上述したＨＬＳを例にすると、配信側のエンコーダにより、映像ストリームが所定の時間長の動画ファイル（セグメント）に分割される。また、映像ストリームを分割したセグメントを再生装置において処理するための情報を示すプレイリストが生成される。プレイリストには、セグメントの場所、セグメントの時間長、セグメントの順序などの情報が含まれる。
【０００４】
再生装置は、ＨＴＴＰに従い、プレイリストやセグメントを配信するＷｅｂサーバから、再生対象の映像ストリームのプレイリストを取得し、取得したプレイリストに従い、再生対象の映像ストリームのセグメントを順番にダウンロードして再生する。
【先行技術文献】
【非特許文献】
【０００５】
【非特許文献１】"HTTP Live Streaming draft-pantos-http-live-streaming-20"、[online]、[平成28年12月26日検索]、インターネット<https://tools.ietf.org/html/draft-pantos-http-live-streaming-20>
【発明の概要】
【発明が解決しようとする課題】
【０００６】
上述したようなＨＴＴＰベースの動画配信手法では、再生側（再生装置）において、プレイリストの取扱いに課題が存在する。
【０００７】
ＨＬＳを例にすると、映像ストリームの再生の開始は、再生装置が備えるＷｅｂブラウザ上での操作により可能である。しかしながら、映像ストリームを再生するプレイヤーは、ＪａｖａＳｃｒｉｐｔ（登録商標）などを用いた動的な処理をすることができないケースがある。このようなケースでは、再生対象の映像ストリームを切り替える場合、プレイヤーを一旦終了させ、Ｗｅｂブラウザにより切替先の映像ストリームのプレイリストを再読み込みした後、再びプレイヤーを起動させるといった処理が必要となる。
【０００８】
このように、従来のＨＴＴＰベースの動画配信手法には、簡易な構成で、再生対象の映像ストリームのシームレスな切り替えが困難であるという問題があった。
【０００９】
上記のような問題点に鑑みてなされた本発明の目的は、簡易な構成で、再生対象の映像ストリームのシームレスな切り替えを可能とする配信装置およびプログラムを提供することにある。
【課題を解決するための手段】
【００１０】
上記課題を解決するため、本発明に係る配信装置は、複数のセグメントに分割された複数の映像ストリームのいずれかを再生装置に配信する配信装置であって、前記複数の映像ストリームそれぞれに対応して設けられ、前記映像ストリームを分割したセグメントを処理するための情報を示すプレイリストを取得する取得部と、前記再生装置により参照され、前記再生装置での再生対象の映像ストリームを分割したセグメントを処理するための情報を示す参照用プレイリストを生成する生成部と、前記生成部により生成された参照用プレイリストを前記再生装置に配信する配信部と、を備え、前記生成部は、前記再生装置での再生対象の映像ストリームが切り替えられる場合、前記取得部により取得された、切替先の映像ストリームに対応して予め設けられたプレイリストにより前記参照用プレイリストを更新し、前記配信部は、前記生成部により更新された参照用プレイリストを前記再生装置に配信する。
【００１１】
また、本発明に係る配信装置において、前記再生装置での再生対象の映像ストリームが切り替えられる場合、切替元の映像ストリームのセグメントと、切替先の映像ストリームのセグメントとを用いて、切替用セグメントを生成する切替用セグメント生成部をさらに備え、前記配信部は、前記切替用セグメントに基づき前記参照用プレイリストを更新し、前記切替用セグメントに基づく前記参照用プレイリストの更新後、前記切替先の映像ストリームに対応して予め設けられたプレイリストにより、前記参照用プレイリストを更新することが好ましい。
【００１２】
また、本発明に係る配信装置において、前記切替用セグメント生成部は、前記切替元の映像ストリームのセグメントと、前記切替先の映像ストリームのセグメントとを合成して切替用セグメントを生成し、前記配信部は、前記切替用セグメント生成部により生成された切替用セグメントにより前記切替先の映像ストリームのセグメントが置換されるように前記参照用プレイリストを更新することが好ましい。
【００１３】
また、本発明に係る配信装置において、前記切替用セグメント生成部は、前記切替元の映像ストリームのセグメントの１フレーム分の静止画と、前記切替先の映像ストリームのセグメントの１フレーム分の静止画とに基づき切替用セグメントを生成し、前記配信部は、前記切替用セグメント生成部により生成された切替用セグメントが、前記切替元の映像ストリームのセグメントと、前記切替先の映像ストリームのセグメントの次のセグメントとの間に挿入されるように、前記参照用プレイリストを更新することが好ましい。
【００１４】
また、本発明に係る配信装置において、前記切替用セグメント生成部は、前記切替元の映像ストリームのセグメントの１フレーム分の静止画と、前記切替先の映像ストリームのセグメントの１フレーム分の静止画とに基づき切替用セグメントを生成し、前記配信部は、前記切替用セグメント生成部により生成された切替用セグメントにより前記切替先の映像ストリームのセグメントが置換されるように前記参照用プレイリストを更新することが好ましい。
【００１５】
また、本発明に係る配信装置において、前記切替用セグメント生成部は、前記複数の映像ストリーム間での切替が所定の順序で行われる場合、前記切替元の映像ストリームのセグメントと、前記切替元の映像ストリームから切替可能な１以上の映像ストリームのセグメントそれぞれとを用いて前記切替用セグメントを生成し、前記配信部は、前記切替元の映像ストリームから、前記切替元の映像ストリームから切替可能な映像ストリームのうちのいずれかの映像ストリームに切り替えられる場合、前記切替用セグメント生成部により生成された切替用セグメントのうち、前記切替元の映像ストリームのセグメントと、切替先の映像ストリームのセグメントとに基づき生成された切替用セグメントに基づき前記参照用プレイリストを更新することが好ましい。
【００１６】
また、上記課題を解決するため、本発明に係るプログラムは、コンピュータを上記配信装置として機能させる。
【発明の効果】
【００１７】
本発明に係る再生装置およびプログラムによれば、簡易な構成で、再生対象の映像ストリームのシームレスな切り替えが可能となる。
【図面の簡単な説明】
【００１８】
【図１】本発明の一実施形態に係る配信装置の構成例を示す図である。
【図２】図１に示す配信装置の動作を説明するためのシーケンス図である。
【図３】図１に示す切替用セグメント生成部による切替用セグメントの生成方法の一例を示す図である。
【図４】図１に示す切替用セグメント生成部による切替用セグメントの生成方法の他の一例を示す図である。
【図５】図１に示す配信装置の動作の一例を示すフローチャートである。
【図６】図１に示す配信装置の動作の他の一例を示すフローチャートである。
【図７】複数の映像ストリーム間での再生対象の映像ストリームの切り替えの一例を示す図である。
【図８】図７に示す特定の映像ストリームを中心とした再生対象の映像ストリームの切り替えについて説明するための図である。
【図９】図７に示す複数の映像ストリーム間での再生対象の映像ストリームの切り替えに対して生成すべき切替用セグメントについて説明するための図である。
【図１０】複数の映像ストリーム間での再生対象の映像ストリームの切り替えの他の一例を示す図である。
【図１１】図１０に示す特定の映像ストリームを中心とした再生対象の映像ストリームの切り替えについて説明するための図である。
【図１２】図１０に示す複数の映像ストリーム間での再生対象の映像ストリームの切り替えに対して生成すべき切替用セグメントについて説明するための図である。
【発明を実施するための形態】
【００１９】
以下、本発明を実施するための形態について、図面を参照しながら説明する。
【００２０】
図１は、本発明の一実施形態に係る配信装置１０の構成例を示す図である。本実施形態に係る配信装置１０は、映像ストリームの配信側の配信システム１に設けられ、配信対象の複数の映像ストリームのいずれかを受信側の再生装置２０に配信するためのものである。
【００２１】
図１に示す配信装置１０は、取得部１１と、切替用セグメント生成部１２と、受信部１３と、生成部１４と、配信部１５とを備える。
【００２２】
取得部１１は、配信システム１内のエンコーダ（不図示）により生成された映像ストリームを分割したセグメントおよびセグメントを処理するための情報を示すプレイリストを取得し、切替用セグメント生成部１２および生成部１４に出力する。なお、通常、配信システム１による配信対象の映像ストリームは複数である。複数の映像ストリームとしては、それぞれ内容の異なる映像ストリーム、本番系および予備系として設けられた映像ストリーム、ビットレートの異なる映像ストリームなどがある。
【００２３】
切替用セグメント生成部１２は、取得部１１が取得した映像ストリームのセグメントを用いて、例えば、再生装置２０における再生対象の映像ストリームの切り替えの際に再生装置２０に配信するセグメント（切替用セグメント）を生成し、生成部１４に出力する。具体的には、切替用セグメント生成部１２は、例えば、再生対象の映像ストリームを映像ストリームＡから映像ストリームＢに切り替える場合、切替元の映像ストリームである映像ストリームＡのセグメントと、切替先の映像ストリームである映像ストリームＢのセグメントとを用いて、切替用セグメントを生成する。
【００２４】
受信部１３は、配信システム１内の他の装置（不図示）および再生装置２０の動作を制御するコントローラ２１から種々の要求を受信する。受信部１３が受信する要求としては、例えば、再生装置２０での再生対象の映像ストリームの切り替えを要求する切替要求がある。なお、切替要求は、再生装置２０のコントローラ２１から受信することもあるし、配信システム１内の他の装置から受信することもある。また、受信部１３が受信する要求としては、詳細は後述するが、再生装置２０が再生対象の映像ストリームのセグメントを処理するために参照する参照用プレイリストの取得要求などがある。
【００２５】
生成部１４は、取得部１１が取得した映像ストリームに基づき、再生装置２０が再生対象の映像ストリームのセグメントを処理するために参照する参照用プレイリストを生成し、配信部１５に出力する。また、生成部１４は、参照用プレイリストに従い、再生対象の映像ストリームのセグメントを配信部１５に出力してもよい。ここで、生成部１４は、例えば、複数の再生装置２０において独立に映像ストリームの再生が行われる場合、再生装置２０毎に異なる参照用プレイリストを生成する。また、生成部１４は、例えば、複数の再生装置２０で同じ映像ストリームを再生させる場合には、その複数の再生装置２０に対して同様の参照用プレイリストを生成する。
【００２６】
配信部１５は、生成部１４が生成した参照用プレイリストを再生装置２０に配信する。また、配信部１５は、参照用プレイリストに従い生成部１４から再生対象の映像ストリームのセグメントが出力された場合には、そのセグメントを再生装置２０に配信する。再生装置２０のプレイヤー２２は、配信装置１０から配信された参照用プレイリストに従い、再生対象の映像ストリームのセグメントを処理し、再生する。
【００２７】
次に、本実施形態に係る配信装置１０の動作について、図２に示すシーケンス図を参照して説明する。図２では、再生装置２０における再生対象の映像ストリームが、映像ストリームＡから映像ストリームＢに切り替えられる場合を例として説明する。
【００２８】
まず、映像ストリームＡ，Ｂそれぞれがセグメントに分割されるとともに、映像ストリームＡ，Ｂそれぞれに対応して、各映像ストリームのセグメントを処理するための情報を示すプレイリストが生成される。
【００２９】
具体的には、映像ストリームＡに対応するエンコーダＡは、処理を開始すると（Ｓｔａｒｔ  Ｐｒｏｃｅｓｓｉｎｇ）、映像ストリームＡを分割してセグメントＡを生成し、所定の記憶領域に記憶（Ｓｔｏｒｅ）させる（ステップＳ１０１）。また、エンコーダＡは、映像ストリームＡに対応するプレイリストＡを生成し、セグメントＡを生成する毎に、プレイリストＡを更新（Ｕｐｄａｔｅ）する（ステップＳ１０２）。
【００３０】
また、映像ストリームＢに対応するエンコーダＢは、処理を開始すると（Ｓｔａｒｔ  Ｐｒｏｃｅｓｓｉｎｇ）、映像ストリームＢを分割してセグメントＢを生成し、所定の記憶領域に記憶させる（Ｓｔｏｒｅ）（ステップＳ１０３）。また、エンコーダＢは、映像ストリームＢに対応するプレイリストＢを生成し、セグメントＢを生成する毎に、プレイリストＢを更新する（Ｕｐｄａｔｅ）（ステップＳ１０４）。
【００３１】
このように、映像ストリームＡ，Ｂそれぞれに対応して、各映像ストリームのセグメントを処理するための情報を示すプレイリストが予め生成される。
【００３２】
生成部１４は、再生装置２０が再生対象の映像ストリームを再生するために参照する参照用プレイリスト（Ｐｌａｙｌｉｓｔ  ＡｔｏＢ）を生成（Ｃｒｅａｔｅ）する（ステップＳ１０５）。
【００３３】
プレイヤー２２は、配信装置１０に対して、参照用プレイリスト（Ｐｌａｙｌｉｓｔ  ＡｔｏＢ）の取得（Ｇｅｔ）を要求する（ステップＳ１０６）。その要求に応じて、配信部１５は、生成部１４が生成した参照用プレイリスト（Ｐｌａｙｌｉｓｔ  ＡｔｏＢ）を再生装置２０に配信する（ステップＳ１０７）。
【００３４】
参照用プレイリストの生成後、配信装置１０は、再生装置２０に映像ストリームＡを配信するための処理を開始する（Ｓｔａｒｔ  Ｐｒｏｃｅｓｓｉｎｇ）。まず、取得部１１は、映像ストリームＡに対応するＷｅｂサーバに対して、プレイリストＡの取得（Ｇｅｔ）を要求する（ステップＳ１０８）。そして、取得部１１は、その要求に応じて映像ストリームＡに対応するＷｅｂサーバから送信されてきたプレイリストＡを取得する（ステップＳ１０９）。生成部１４は、取得部１１が取得したプレイリストＡを参照用プレイリストにコピーして、参照用プレイリストを更新する（Ｕｐｄａｔｅ（Ｃｏｐｙ  Ａ））（ステップＳ１１０）。
【００３５】
プレイヤー２２は、配信装置１０に対して、参照用プレイリストの取得（Ｇｅｔ）を要求する（ステップＳ１１１）。その要求に応じて、配信部１５は、生成部１４が生成した参照用プレイリストを再生装置２０に配信する（ステップＳ１１２）。
【００３６】
上述したように、参照用プレイリストは、プレイリストＡの内容をほぼコピーしたものである。プレイヤー２２は、参照用プレイリストに従い、映像ストリームＡに対応するＷｅｂサーバに対して、映像ストリームＡのセグメントＡの取得（Ｇｅｔ）を要求する（ステップＳ１１３）。そして、プレイヤー２２は、その要求に応じて、映像ストリームＡに対応するＷｅｂサーバから送信されてきたセグメントＡを取得し、再生する。
【００３７】
次に、再生対象の映像ストリームを映像ストリームＡから映像ストリームＢに切り替える操作入力が行われたとする。コントローラ２１は、配信装置１０に対して、映像ストリームＡから映像ストリームＢへの再生対象の映像ストリームの切り替え（Ｃｈａｎｇｅ）を要求する（ステップＳ１１５）。
【００３８】
取得部１１は、映像ストリームＡから映像ストリームＢへの再生対象の映像ストリームの切り替えが再生装置２０から要求されると、映像ストリームＡに対応するＷｅｂサーバに対して、映像ストリームＡのセグメントＡの取得（Ｇｅｔ）を要求する（ステップＳ１１６）。そして、取得部１１は、その要求に応じて、映像ストリームＡに対応するＷｅｂサーバから送信されてきたセグメントＡを取得する（ステップ１１７）。また、取得部１１は、映像ストリームＢに対応するＷｅｂサーバに対して、映像ストリームＢのセグメントＢの取得（Ｇｅｔ）を要求する（ステップＳ１１８）。そして、取得部１１は、その要求に応じて、映像ストリームＢに対応するＷｅｂサーバから送信されてきたセグメントＢを取得する（ステップＳ１１９）。
【００３９】
切替用セグメント生成部１２は、取得部１１が取得したセグメントＡ（切替元の映像ストリームである映像ストリームＡのセグメントＡ）およびセグメントＢ（切替先の映像ストリームである映像ストリームＢのセグメントＢ）とを用いて、切替用セグメント（Ｓｅｇｍｅｎｔ  ＡｔｏＢ）を生成し（Ｇｅｎｅｒａｔｅ）（ステップＳ１２０）、所定の記憶領域に記憶させる。
【００４０】
切替用セグメントの生成が完了すると（Ｄｏｎｅ）（ステップＳ１２１）、生成部１４は、切替用セグメントに基づき、参照用プレイリストを更新する（Ｕｐｄａｔｅ（ＡｔｏＢ））（ステップＳ１２２）。具体的には、生成部１４は、切替用セグメントの場所、時間長などの情報を参照用プレイリストに書き込む。そして、生成部１４は、配信部１５を介して、再生対象の映像ストリームの切替要求に対する処理が完了した（Ｄｏｎｅ）ことを再生装置２０に通知する（ステップＳ１２３）。
【００４１】
なお、切替用セグメントの生成および切替用セグメントに基づく参照用プレイリストの更新の詳細については後述する。
【００４２】
再生対象の映像ストリームの切替要求に対する処理が完了したことが通知されると、プレイヤー２２は、配信装置１０に対して、参照用プレイリストの取得（Ｇｅｔ）を要求する（ステップＳ１２４）。再生装置２０からの要求に応じて、配信部１５は、生成部１４が生成した参照用プレイリストを再生装置２０に配信する（ステップＳ１２５）。
【００４３】
上述したように、参照用プレイリストは、切替用セグメントに基づき更新されている。プレイヤー２２は、参照用プレイリストに従い、配信装置１０に対して、切替用セグメントの取得（Ｇｅｔ）を要求する（ステップＳ１２６）。そして、プレイヤー２２は、その要求に応じて、配信装置１０から送信されてきた切替用セグメントを取得し（ステップＳ１２７）、再生する。
【００４４】
切替用セグメントの生成後、配信装置１０は、再生装置２０に映像ストリームＢを配信するための処理を開始する（Ｓｔａｒｔ  Ｐｒｏｃｅｓｓｉｎｇ）。取得部１１は、映像ストリームＢに対応するＷｅｂサーバに対して、プレイリストＢの取得（Ｇｅｔ）を要求する（ステップＳ１２８）。そして、取得部１１は、その要求に応じて映像ストリームＢに対応するＷｅｂサーバから送信されてきたプレイリストＢを取得する（ステップＳ１２９）。生成部１４は、取得部１１が取得したプレイリストＢを参照用プレイリストにコピーして、参照用プレイリストを更新する（Ｕｐｄａｔｅ（Ｃｏｐｙ  Ｂ））（ステップＳ１３０）。
【００４５】
プレイヤー２２は、配信装置１０に対して、参照用プレイリストの取得（Ｇｅｔ）を要求する（ステップＳ１３１）。再生装置２０からの要求に応じて、配信部１５は、生成部１４が生成した参照用プレイリストを再生装置２０に配信する（ステップＳ１３２）。
【００４６】
上述したように、参照用プレイリストは、プレイリストＢの内容をほぼコピーしたものである。プレイヤー２２は、参照用プレイリストに従い、映像ストリームＢに対応するＷｅｂサーバに対して、映像ストリームＢのセグメントＢの取得（Ｇｅｔ）を要求する（ステップＳ１３３）。そして、プレイヤー２２は、その要求に応じて、映像ストリームＢに対応するＷｅｂサーバから送信されてきたセグメントＢを取得し、再生する。
【００４７】
このように、本実施形態においては、配信装置１０は、再生装置２０での再生対象の映像ストリームのセグメントを処理するための情報を示す参照用プレイリストを生成する。そして、配信装置１０は、再生対象の映像ストリームが切り替えられる場合、切替先の映像ストリームに対応するプレイリストにより参照用プレイリストを更新する。
【００４８】
再生装置２０は、再生対象の映像ストリームを切り替える場合にも、再生対象の映像ストリームの切り替えに応じて更新される参照用プレイリストだけを参照すればよく、参照するプレイリストを変更する必要が無い。したがって、再生対象の映像ストリームを切り替える場合に、プレイヤーを一旦終了させ、Ｗｅｂブラウザにより切替先の映像ストリームのプレイリストを再読み込みした後、再びプレイヤーを起動させるといった処理が不要となる。そのため、本実施形態においては、簡易な構成で、再生対象の映像ストリームのシームレスな切り替えが可能となる。
【００４９】
なお、図２においては、映像ストリームＡのセグメントＡおよび映像ストリームＢのセグメントＢはそれぞれ、各映像ストリームに対応するＷｅｂサーバから配信される例を用いて説明したが、これに限られるものではない。例えば、配信装置１０が、映像ストリームＡのセグメントＡおよび映像ストリームＢのセグメントＢを取得し、再生装置２０に配信するようにしてもよい。この場合、再生装置２０は、配信装置１０に対して、再生対象の映像ストリームのセグメントの取得を要求する。そして、配信装置１０は、この要求に応じて、再生対象の映像ストリームのセグメントを再生装置２０に配信する。
【００５０】
また、図２においては、切替用セグメントを生成し、切替用セグメントにより参照用プレイリストを更新した後、セグメントＢにより参照用プレイリストを更新する例を用いて説明したが、これに限られるものではない。映像ストリームＡから映像ストリームＢへのシームレスな切り替えのためだけなら、切替用セグメントは必ずしも必要ではない。すなわち、再生対象の映像ストリームを映像ストリームＡから映像ストリームＢに切り替える場合に、映像ストリームＡに対応するプレイリストＡがコピーされた参照用プレイリストを、切り替えタイミングに合わせて、映像ストリームＢに対応するプレイリストＢにより更新してもよい。こうすることによっても、映像ストリームＡから映像ストリームＢへのシームレスな切り替えが可能である。
【００５１】
ただし、切替用セグメントを用いない場合、映像ストリームＡと映像ストリームＢとで同期がとれていないと、切替時に再生画像が急な変化（ショック）が生じてしまうことがある。例えば、同じ内容の本番系の映像ストリームと予備系の映像ストリームとが用意され、本番系の映像ストリームから予備系の映像ストリームに切り替える場合に、本番系の映像ストリームと予備系の映像ストリームとで同期がとれていないと、切替時にショックが発生してしまう。なお、複数の映像ストリームを同期させることは、各映像ストリームに対応するエンコーダの処理の制御などが必要となり、一般的に困難である。
【００５２】
そこで、本実施形態においては、切替元の映像ストリームのセグメントと、切替先の映像ストリームのセグメントとを用いて、切替用セグメントを生成する。そして、切替用セグメントを用いて参照用プレイリストを更新した後、切替先の映像ストリームに対応するプレイリストにより参照プレイリストを更新する。こうすることで、切替元の映像ストリームと切替先の映像ストリームとの間の同期ずれを吸収し、再生画像が急な変化などを利用者に感じさせることなく、再生対象の映像ストリームを切り替えることができる。
【００５３】
また、切替用セグメントを用いることで、再生対象の映像ストリームの切替時に、アニメーションやフェードなどの映像効果を付加した切り替えが可能となる。
【００５４】
次に、切替用セグメントの生成方法について、図３，４を参照して説明する。なお、以下では、再生対象の映像ストリームが映像ストリームＡから映像ストリームＢに切り替えられるものとして説明する。また、映像ストリームＡは、時系列的に並ぶセグメントＡ１，Ａ２，Ａ３，Ａ４，Ａ５，Ａ６，・・・に分割されているものとする。また、映像ストリームＢは、時系列的に並ぶセグメントＢ１，Ｂ２，Ｂ３，Ｂ４，Ｂ５，Ｂ６，・・・に分割されているものとする。そして、再生対象の映像ストリームが、映像ストリームＡのセグメントＡ３の配信後、映像ストリームＡから映像ストリームＢに切り替えられるものとする。
【００５５】
図３は、切替用セグメントの生成方法の一例を示す図である。
【００５６】
上述したように、再生対象の映像ストリームが、映像ストリームＡのセグメントＡ３の配信後、映像ストリームＡから映像ストリームＢに切り替えられる。そのため、再生装置２０への配信ストリームとしては、映像ストリームＡのセグメントＡ１，Ａ２，Ａ３がこの順に配信される。
【００５７】
切替時には、切替用セグメント生成部１２は、切り替えタイミング直後の、切替元の映像ストリームのセグメント（映像ストリームＡのセグメントＡ４）と、切替先の映像ストリームのセグメント（映像ストリームＢのセグメントＢ４）とを動画合成して、切替用セグメントＡＢ４を生成する。
【００５８】
切替元の映像ストリームのセグメントと、切替先の映像ストリームのセグメントと動画合成した切替用セグメントＡＢ４は、例えば、時間の経過とともに、切替元の映像ストリームのセグメントの画像が徐々に薄くなり、切替先の映像ストリームのセグメントの画像が徐々に濃くなるような動画像である。また、切替用セグメントＡＢ４は、例えば、時間の経過とともに、切替元の映像ストリームのセグメントの画像が徐々に小さくなり、切替先の映像ストリームのセグメントの画像が徐々に大きくなるような動画像である。また、切替用セグメントＡＢ４は、切替元の映像ストリームのセグメントの画像から、切替先の映像ストリームのセグメントの画像への切り替えの間にアニメーションなどが付加された動画像であってもよい。
【００５９】
切替用セグメントＡＢ４は上述した例に限られるものではなく、切替元の映像ストリームのセグメントの画像と、切替先の映像ストリームのセグメントの画像とがスムーズに切り替えられれば、種々の動画合成方法により生成することができる。
【００６０】
生成された切替用セグメントＡＢ４は、切替先の映像ストリーム（映像ストリームＢ）のセグメントＢ４に置換される。すなわち、図３に示す例では、切替用セグメントＡＢ４の生成に用いられた切替先の映像ストリームのセグメントＢ４が切替用セグメントＡＢ４に置換されている。そのため、時間軸上で見た場合、新たなセグメントの追加などは行われていない（セグメントの時間軸が保持されている）。
【００６１】
その後、切替先の映像ストリームのセグメントＢ４に続くセグメントＢ５，Ｂ６が順次、再生装置２０に配信される。
【００６２】
したがって、参照用プレイリストは、切替元の映像ストリームＡのセグメントＡ３の後、切替用セグメントＡＢ４が配信され、その後、切替先の映像ストリームＢのセグメントＢ４に続くセグメントＢ５から順に配信されるように、更新される。
【００６３】
図４は、切替用セグメントの生成方法の他の一例を示す図である。
【００６４】
上述したように、再生対象の映像ストリームが、映像ストリームＡのセグメントＡ３の配信後、映像ストリームＡから映像ストリームＢに切り替えられる。そのため、再生装置２０への配信ストリームとしては、映像ストリームＡのセグメントＡ１，Ａ２，Ａ３がこの順に配信される。
【００６５】
切替時には、切替用セグメント生成部１２は、切り替えタイミング直前の、切替元の映像ストリームのセグメント（映像ストリームＡのセグメントＡ３）、および、切替先の映像ストリームのセグメント（映像ストリームＢのセグメントＢ３）の１フレーム（例えば、最終フレーム）分の静止画を用いて、切替用セグメントＡＢ３’を生成する。
【００６６】
切替元の映像ストリームのセグメント（静止画）と、切替先の映像ストリームのセグメント（静止画）とを合成した切替用セグメントは、例えば、静止画の切替りアニメーションを用いて生成することができる。
【００６７】
生成された切替用セグメントＡＢ３’は、切り替えタイミングの直前の切替元の映像ストリームのセグメント（映像ストリームＡのセグメントＡ３）の直後に配信され、その後、切替先の映像ストリームＢのセグメントＢ４，Ｂ５，Ｂ６が順次配信される。したがって、図４に示す例では、映像ストリームＡのセグメントＡ３（切替タイミングの直前の切替元の映像ストリームのセグメント）と、映像ストリームＢのセグメントＢ４（切替タイミングの直後の切替先の映像ストリームのセグメント）との間に、切替用セグメントＡＢ３’が挿入される。すなわち、図４に示す例では、切替元の映像ストリームＡのセグメントＡ３と、切替先の映像ストリームＢのセグメントＢ４との間に切替用セグメントが挿入されているため、時間軸上で見た場合、新たなセグメントが追加されている（セグメントの時間軸が保持されていない）。
【００６８】
参照用プレイリストは、切替元の映像ストリームＡのセグメントＡ３の後、切替用セグメントＡＢ３’が配信され、その後、切替先の映像ストリームＢのセグメントＢ３の次のセグメントＢ４、Ｂ５，Ｂ６が順次配信されるように、更新される。
【００６９】
図５は、本実施形態に係る配信装置１０の動作の一例を示すフローチャートである。
【００７０】
生成部１４は、取得部１１を介して、処理対象の（現在の再生対象の）映像ストリームのプレイリストを取得する（ステップＳ２０１）。
【００７１】
次に、生成部１４は、受信部１３を介して、切替要求を受信したか否かを判定する（ステップＳ２０２）。
【００７２】
切替要求を受信していないと判定した場合には（ステップＳ２０２：Ｎｏ）、生成部１４は、処理対象の映像ストリームのセグメントをそのまま利用する（配信する）と決定し（ステップＳ２０３）、処理対象の映像ストリームのプレイリストにより参照用プレイリストを更新する（ステップＳ２０４）。
【００７３】
切替要求を受信したと判定した場合には（ステップＳ２０２：Ｙｅｓ）、生成部１４は、切替要求に基づき、切替先の映像ストリームを特定する（ステップＳ２０５）。
【００７４】
次に、取得部１１は、切替元の映像ストリーム（現在の再生対象の映像ストリーム）および切替先の映像ストリームのセグメントを取得する（ステップＳ２０６）。
【００７５】
切替用セグメント生成部１２は、時間軸を保持するか否かを判定する（ステップＳ２０７）。なお、時間軸を保持するか否かは予め処理ルールとして設定されている。
【００７６】
時間軸を保持すると判定した場合には（ステップＳ２０７：Ｙｅｓ）、切替用セグメント生成部１２は、図３に示すように、切替タイミング直後の切替元および切替先の映像ストリームのセグメントを動画合成して、切替用セグメントを生成する（ステップＳ２０８）。
【００７７】
生成部１４は、切替タイミング直後の切替先の映像ストリームのセグメントが、切替用セグメント生成部１２により生成された切替用セグメントに置換されるように、参照用プレイリストを更新する（ステップＳ２０９）。その後、生成部１４は、切替先の映像ストリームのプレイリストにより参照用プレイリストを更新し、ステップＳ２０２の処理に戻る。
【００７８】
時間軸を保持しないと判定した場合には（ステップＳ２０７：Ｎｏ）、切替用セグメント生成部１２は、切替タイミング直前の切替元および切替先の映像ストリームのセグメントの１フレーム（例えば、最終フレーム）分の静止画を合成して、切替用セグメントを生成する（ステップＳ２１０）。
【００７９】
生成部１４は、切替タイミング直前の切替元の映像ストリームのセグメントと、切替タイミング直後の切替先の映像ストリームのセグメントとの間に、切替用セグメント生成部１２により生成された切替用セグメントに置換されるように、参照用プレイリストを更新する（ステップＳ２１１）。その後、生成部１４は、切替先の映像ストリームのプレイリストにより参照用プレイリストを更新し、ステップＳ２０２の処理に戻る。
【００８０】
図５においては、切替要求を受けて、切替用セグメントを生成する例を用いて説明したが、これに限られるものではなく、切替要求を受ける前に予め切替用セグメントを生成しておいてもよい。図６は、切替要求を受ける前に予め切替用セグメントを生成する場合の、配信装置１０の動作の一例を示すフローチャートである。
【００８１】
生成部１４は、取得部１１を介して、処理対象の（現在の再生対象の）映像ストリームのプレイリストを取得する（ステップＳ３０１）。
【００８２】
次に、生成部１４は、現在の再生対象の映像ストリームからの切替候補の映像ストリームを特定する（ステップＳ３０２）。
【００８３】
そして、生成部１４は、取得部１１を介して、処理対象および切替候補の映像ストリームのセグメントを取得する（ステップＳ３０３）。
【００８４】
切替用セグメント生成部１２は、時間軸を保持するか否かを判定する（ステップＳ３０４）。
【００８５】
時間軸を保持すると判定した場合には（ステップＳ３０４：Ｙｅｓ）、切替用セグメント生成部１２は、図３に示すように、処理対象の映像ストリームのセグメントと、切替候補の映像ストリームのセグメントそれぞれとを動画合成して、切替用セグメントを生成する（ステップＳ３０５）。
【００８６】
生成部１４は、受信部１３を介して、切替要求を受信したか否かを判定する（ステップＳ３０６）。
【００８７】
切替要求を受信したと判定した場合には（ステップＳ３０６：Ｙｅｓ）、生成部１４は、切替タイミング直後の切替先の映像ストリームのセグメントが、切替候補の映像ストリーム毎に生成した切替用セグメントのうち、切替先の映像ストリームのセグメントを用いて生成した切替用セグメントに置換されるように、参照用プレイリストを更新する（ステップＳ３０７）。
【００８８】
切替要求を受信していないと判定した場合には（ステップＳ３０６：Ｎｏ）、生成部１４は、処理対象の映像ストリームのセグメントをそのまま利用する（配信する）と決定し（ステップＳ３０８）、処理対象の映像ストリームのプレイリストにより参照用プレイリストを更新する（ステップＳ３０９）。
【００８９】
時間軸を保持しないと判定した場合には（ステップＳ３０４：Ｎｏ）、切替用セグメント生成部１２は、処理対象の映像ストリームおよび切替候補の映像ストリームのセグメントの１フレーム（例えば、最終フレーム）分の静止画を合成して、切替用セグメントを生成する（ステップＳ３１０）。
【００９０】
生成部１４は、受信部１３を介して、切替要求を受信したか否かを判定する（ステップＳ３１１）。
【００９１】
切替要求を受信していないと判定した場合には（ステップＳ３１１：Ｎｏ）、生成部１４は、ステップＳ３０８の処理に進む。
【００９２】
切替要求を受信したと判定した場合には（ステップＳ３１１：Ｎｏ）、生成部１４は、切替タイミング直前の切替元の映像ストリームのセグメントと、切替タイミング直後の切替先の映像ストリームのセグメントとの間に、切替候補の映像ストリーム毎に生成した切替用セグメントのうち、切替先の映像ストリームのセグメントを用いて生成した切替用セグメントを挿入して、参照用プレイリストを更新する（ステップＳ３１２）。
【００９３】
図６を参照して説明したように、切替要求を受ける前に予め切替用セグメントを生成する場合、配信可能な映像ストリームの数が多くなると、生成する切替用セグメントの数も多くなり、切替用セグメントの生成コストが増大する。ここで、複数の映像ストリーム間での切替の順序が予め決まっている場合には、切替用セグメントの生成コストの増大を抑制することができる。
【００９４】
例えば、図７に示すように、７つの映像ストリーム（映像ストリームＡ〜Ｇ）があるとする。そして、Ａ→Ｂ→Ｃというように反時計回りの方向（図７に示す（１）の矢印の方向）の順番と、Ａ→Ｇ→Ｆというように時計回りの方向（図７に示す（２）の矢印の方向）の順番とで切り替えが可能であるとする。
【００９５】
この場合、図８に示すように、映像ストリームＢを基準とした場合、（１）の矢印の方向では、Ａ→Ｂ，Ｂ→Ｃという２つの切替用セグメントを生成すればよく、（２）の矢印の方向では、Ｃ→Ｂ，Ｂ→Ａという２つの切替用セグメントを生成すればよい。
【００９６】
したがって、図９に示すように、図７に示す（１）の矢印の方向および（２）の矢印の方向それぞれについて隣接する映像ストリーム（切替可能な映像ストリーム）間のみ切替用セグメントを生成すればよい。したがって、映像ストリームの数をＮとすると、生成すべき切替用セグメントの数は（Ｎ−１）×２となる。
【００９７】
また、隣接する映像ストリーム間での相互切り替え（例えば、Ａ→Ｂ，Ｂ→Ａ）について、並列に２つの切替用セグメントの生成処理を行うのではなく、共通の処理はまとめて実施することで、生成に要する処理時間および演算コストを減らすことができる。また、音を考慮する必要が無い場合には、切替元の映像ストリームのセグメントの静止画と、切替先の映像ストリームのセグメントの静止画とを合成し、切替先の映像ストリームのセグメントに置換することで、時間軸を保持することもできる。時間軸を保持する必要がなければ、切替元の映像ストリームの最終フレームと、切替先の映像ストリームの最終フレームとを合成して切替用セグメントを生成し、切替先の映像ストリームの前に挿入することもできる。
【００９８】
また、例えば、図１０に示すように、９つの映像ストリーム（映像ストリームＡ〜Ｉ）があるとする。図１０に示すようなタイル状の配置において、上下左右に隣接する映像ストリーム間で切り替えが可能であるとする。
【００９９】
この場合、図１１に示すように、映像ストリームＥを基準とした場合、図１１に示す（１）の矢印の方向（下方向および右方向）では、Ｄ→Ｅ，Ｅ→Ｈ，Ｄ→Ｅ，Ｅ→Ｆという４つの切替用セグメントを生成すればよく、図１１に示す（２）の矢印の方向（上方向および左方向）では、Ｅ→Ｂ，Ｈ→Ｅ，Ｅ→Ｄ，Ｆ→Ｅという４つの切替用セグメントを生成すればよい。
【０１００】
したがって、図１２に示すように、図１０に示す配置において、隣接する映像ストリーム間のみ切替用セグメントを生成すればよく、生成すべき切替用セグメントの数が制限される。
【０１０１】
また、図１０に示すようなタイル状の配置においても、隣接する映像ストリーム間での相互切り替え（例えば、Ｄ→Ｅ，Ｅ→Ｄ）について、並列に２つの切替用セグメントの生成処理を行うのではなく、共通の処理はまとめて実施することで、生成に要する処理時間および演算コストを減らすことができる。また、音を考慮する必要が無い場合には、切替元の映像ストリームのセグメントの静止画と、切替先の映像ストリームのセグメントの静止画とを合成して切替用セグメントを生成することができる。また、切替元の映像ストリームのセグメントの静止画と、切替先の映像ストリームのセグメントの静止画とを合成して生成した切替用セグメントを、切替先の映像ストリームのセグメントに置換してもよいし、切替先の映像ストリームのセグメントの前に挿入してもよい。
【０１０２】
このように本実施形態においては、配信装置１０は、複数の映像ストリームそれぞれに対応して設けられ、映像ストリームを分割したセグメントを処理するための情報を示すプレイリストを取得する取得部１１と、再生装置２０により参照され、再生装置での再生対象の映像ストリームを分割したセグメントを処理するための情報を示す参照用プレイリストを生成する生成部１４と、生成部１４により生成された参照用プレイリストを前記再生装置に配信する配信部１５とを備える。生成部１４は、再生装置２０での再生対象の映像ストリームが切り替えられる場合、取得部１１により取得された、切替先の映像ストリームに対応して予め設けられたプレイリストにより、参照用プレイリストを更新する。配信部１５は、生成部１４により更新された参照用プレイリストを再生装置２０に配信する。
【０１０３】
再生装置２０は、再生対象の映像ストリームを切り替える場合にも、再生対象の映像ストリームの切り替えに応じて更新される参照用プレイリストだけを参照していればよく、参照するプレイリストを変更する必要が無い。したがって、再生対象の映像ストリームを切り替える場合に、プレイヤーを一旦終了させ、Ｗｅｂブラウザにより切替先の映像ストリームのプレイリストを再読み込みした後、再びプレイヤーを起動させるといった処理が不要となる。そのため、簡易な構成で、再生対象の映像ストリームのシームレスな切り替えが可能となる。
【０１０４】
上述した配信装置１０として機能させるためにコンピュータを好適に用いることができ、そのようなコンピュータは、配信装置１０の各機能を実現する処理内容を記述したプログラムを該コンピュータの記憶部に格納しておき、該コンピュータのＣＰＵ（Central Processing Unit）、ＧＰＵ（Graphics Processing Unit）などによってこのプログラムを読み出して実行させることで実現することができる。なお、このプログラムは、コンピュータ読取り可能な記録媒体に記録可能である。
【０１０５】
あるいは、配信装置１０が行う各処理を実行するためのプログラムは記憶するメモリおよびメモリに記憶されたプログラムを実行するプロセッサによって構成され、配信装置１０に搭載されるチップが提供されてもよい。
【０１０６】
上述の実施形態は代表的な例として説明したが、本発明の趣旨および範囲内で、多くの変更および置換が可能であることは当業者に明らかである。したがって、本発明は、上述の実施形態によって制限するものと解するべきではなく、特許請求の範囲から逸脱することなく、種々の変形や変更が可能である。例えば、実施形態の構成図に記載の複数の構成ブロックを１つに組み合わせたり、あるいは１つの構成ブロックを分割したりすることが可能である。
【符号の説明】
【０１０７】
１    配信システム
１０    配信装置
１１    取得部
１２    切替用セグメント生成部
１３    受信部
１４    生成部
１５    配信部
２０    再生装置
２１    コントローラ
２２    プレイヤー
【図１】
2018133664.tif 000003
【図２】
2018133664.tif 000004
【図３】
2018133664.tif 000005
【図４】
2018133664.tif 000006
【図５】
2018133664.tif 000007
【図６】
2018133664.tif 000008
【図７】
2018133664.tif 000009
【図８】
2018133664.tif 000010
【図９】
2018133664.tif 000011
【図１０】
2018133664.tif 000012
【図１１】
2018133664.tif 000013
【図１２】
2018133664.tif 000014