(57)【要約】      （修正有）【課題】コンテンツの再生が途切れないようにするコンテンツ配信システム、クライアント装置、サーバ装置及びコンテンツ配信方法を提供する。【解決手段】複数のストリームのうちいずれかのストリームを選択してダウンロードする制御部２２と、選択されたストリームを記憶する第１記憶部２３と、選択されたストリームに対応し、このストリームのビットレートよりも低いビットレートで符号化されたストリームを記憶する第２記憶部２４と、第１記憶部２３が記憶するストリームのセグメントを取得して再生し、次に再生するセグメントがない場合には、第２記憶部２４から次に再生するセグメントに対応する低いビットレートで符号化されたストリームのセグメントを取得して再生する再生部２６と、を備える。【選択図】図１
2016225959.tif 000002
【特許請求の範囲】
【請求項１】
異なるビットレートで符号化された複数のストリームを格納するサーバ装置と、
前記サーバ装置とネットワークを介して接続され、
前記サーバ装置に格納された前記複数のストリームのうちいずれかのストリームを選択してダウンロードするクライアント装置と、
を備えるコンテンツ配信システムにおいて、
前記クライアント装置は、
前記複数のストリームのうちいずれかのストリームを選択してダウンロードする制御部と、
選択された前記ストリームを記憶する第１の記憶部と、
選択された前記ストリームに対応し、前記ストリームのビットレートよりも低いビットレートで符号化されたストリームを記憶する第２の記憶部と、
前記第１の記憶部が記憶する前記ストリームのセグメントを取得して再生し、次に再生するセグメントがない場合には、前記第２の記憶部から前記次に再生するセグメントに対応する前記低いビットレートで符号化されたストリームのセグメントを取得して再生する再生部と、
を備えることを特徴とするコンテンツ配信システム。
【請求項２】
前記制御部は、
前記第１の記憶部に記憶させる前記ストリームを選択するとともに、前記第２の記憶部に記憶させるストリームを選択してダウンロードすることを特徴とする請求項１に記載のコンテンツ配信システム。
【請求項３】
前記制御部は、
前記第１の記憶部に記憶させる前記ストリームを選択する際に、前記ネットワークの通信速度に応じたストリームを選択することを特徴とする請求項１又は請求項２に記載のコンテンツ配信システム。
【請求項４】
前記制御部は、
前記第２の記憶部に記憶させる前記ストリームを選択する際に、前記サーバ装置に記憶された前記複数のストリームのうち、最低ビットレートで符号化されたストリームを選択することを特徴とする請求項２又は請求項３に記載のコンテンツ配信システム。
【請求項５】
前記制御部は、
前記第２の記憶部に記憶させる前記ストリームを選択する際に、前記ネットワークの通信速度に応じたストリームを選択することを特徴とする請求項２又は請求項３に記載のコンテンツ配信システム。
【請求項６】
異なるビットレートで符号化された複数のストリームを記憶するサーバ装置とネットワークを介して接続され、前記サーバ装置に記憶された前記複数のストリームのうちいずれかのストリームを選択してダウンロードするクライアント装置において、
前記複数のストリームのうちいずれかのストリームを選択してダウンロードする制御部と、
選択された前記ストリームを記憶する第１の記憶部と、
選択された前記ストリームに対応し、前記ストリームよりも低いビットレートで符号化されたストリームを記憶する第２の記憶部と、
前記第１の記憶部が記憶する前記ストリームのセグメントを取得して再生し、次に再生するセグメントがない場合には、前記第２の記憶部から前記次に再生するセグメントに対応する前記低いビットレートで符号化されたストリームのセグメントを取得して再生する再生部と、
を備えることを特徴とするクライアント装置。
【請求項７】
異なるビットレートで符号化された複数のストリームのうち、いずれかのストリームを選択してダウンロードするクライアント装置とネットワークを介して接続され、前記複数のストリームのうち、前記クライアント装置から要求されたビットレートのストリームを前記クライアント装置に送信するサーバ装置において、
前記異なるビットレートで符号化された複数のストリームを記憶する記憶部と、
前記複数のストリームのうちいずれかのビットレートで符号化されたストリームを要求する信号を受信した場合に、対応するビットレートで符号化されたストリームを選択して前記クライアント装置に送信するとともに、送信した前記ストリームのビットレートよりも低いビットレートで符号化されたストリームを選択して前記クライアント装置に送信する制御部と、
を備えることを特徴とするサーバ装置。
【請求項８】
複数のストリームのうちいずれかのストリームを選択してダウンロードするコンテンツ配信方法において、
前記複数のストリームのうちいずれかのストリームを選択してダウンロードするステップと、
選択した前記ストリームを記憶する第１の記憶ステップと、
前記第１の記憶ステップで記憶した前記ストリームに対応し、前記ストリームのビットレートよりも低いビットレートで符号化されたストリームを記憶する第２の記憶ステップと、
前記第１の記憶ステップで記憶した前記ストリームのセグメントを再生し、次に再生するセグメントがない場合には、前記第２の記憶ステップで記憶された前記次に再生するセグメントに対応する前記低いビットレートで符号化されたストリームのセグメントを再生する再生ステップと、
を有することを特徴とするコンテンツ配信方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、映像データ等のコンテンツを配信するコンテンツ配信システム、クライアント装置、サーバ装置、及びコンテンツ配信方法に関するものである。
【背景技術】
【０００２】
映像・音声・字幕データ等のコンテンツ配信において、無線回線等、ネットワークの通信速度が変動する環境で通信速度に応じて再生するストリーミングのビットレートを切り替えることで高品質（高ビットレート）かつコンテンツの再生が可能な限り途切れないようにする適応ストリーミング技術がある。適応ストリーミング技術において、サーバ装置は異なるビットレートで符号化された１以上のストリームを備えている。クライアント装置は、異なるビットレートで符号化された１以上のストリームのうち、通信速度の速さに応じてサーバ装置からダウンロードするストリームを動的に切り換え、可能な限り高品質（高ビットレート）のストリームをダウンロードするとともに、映像が途切れないようにする（例えば、非特許文献１参照）。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】ＩＳＯ／ＩＥＣ  ２３００９−１
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、非特許文献１に記載のコンテンツ配信システムは、サーバ装置が備える最低ビットレートで符号化されたストリームのビットレートよりも、通信速度の方が低い状況が続くような場合（例えば、通信速度が０となるような場合）には、クライアント装置が最低ビットレートで符号化されたストリームを選択し、サーバ装置からダウンロードしたとしても、ストリームのダウンロード速度よりもストリームの再生速度の方が相対的に早くなるため、次に再生するストリームが無く、再生が途切れてしまうという課題があった。
【０００５】
本発明に係るコンテンツ配信システム、クライアント装置、サーバ装置、及びコンテンツ配信方法は、上記のような課題を解決するためになされたもので、サーバ装置が備えるストリームのビットレートよりも、通信速度の方が低い状況が続くような場合においても、コンテンツの再生が途切れないようにすることを目的とする。
【課題を解決するための手段】
【０００６】
本発明に係るコンテンツ配信システムは、異なるビットレートで符号化された複数のストリームを格納するサーバ装置と、前記サーバ装置とネットワークを介して接続され、前記サーバ装置に格納された前記複数のストリームのうちいずれかのストリームを選択してダウンロードするクライアント装置と、を備えるコンテンツ配信システムにおいて、前記クライアント装置は、前記複数のストリームのうちいずれかのストリームを選択してダウンロードする制御部と、選択された前記ストリームを記憶する第１の記憶部と、選択された前記ストリームに対応し、前記ストリームのビットレートよりも低いビットレートで符号化されたストリームを記憶する第２の記憶部と、前記第１の記憶部が記憶する前記ストリームのセグメントを取得して再生し、次に再生するセグメントがない場合には、前記第２の記憶部から前記次に再生するセグメントに対応する前記低いビットレートで符号化されたストリームのセグメントを取得して再生する再生部と、を備えることを特徴とする。
【０００７】
本発明に係るクライアント装置は、異なるビットレートで符号化された複数のストリームを格納するサーバ装置とネットワークを介して接続され、前記サーバ装置に格納された前記複数のストリームのうちいずれかのストリームを選択してダウンロードするクライアント装置において、前記複数のストリームのうちいずれかのストリームを選択してダウンロードする制御部と、選択された前記ストリームを記憶する第１の記憶部と、選択された前記ストリームに対応し、前記ストリームよりも低いビットレートで符号化されたストリームを記憶する第２の記憶部と、前記第１の記憶部が記憶する前記ストリームのセグメントを取得して再生し、次に再生するセグメントがない場合には、前記第２の記憶部から前記次に再生するセグメントに対応する前記低いビットレートで符号化されたストリームのセグメントを取得して再生する再生部と、を備えることを特徴とする。
【０００８】
本発明に係るサーバ装置は、異なるビットレートで符号化された複数のストリームのうち、いずれかのストリームを選択してダウンロードするクライアント装置とネットワークを介して接続され、前記複数のストリームのうち、前記クライアント装置から要求されたビットレートのストリームを前記クライアント装置に送信するサーバ装置において、前記異なるビットレートで符号化された複数のストリームを格納する格納部と、前記複数のストリームのうちいずれかのビットレートで符号化されたストリームを要求する信号を受信した場合に、対応するビットレートで符号化されたストリームを選択して前記クライアント装置に送信するとともに、送信した前記ストリームのビットレートよりも低いビットレートで符号化されたストリームを選択して前記クライアント装置に送信する制御部と、を備えることを特徴とする。
【０００９】
本発明に係るコンテンツ配信方法は、複数のストリームのうちいずれかのストリームを選択してダウンロードするコンテンツ配信方法において、前記複数のストリームのうちいずれかのストリームを選択してダウンロードするステップと、選択した前記ストリームを記憶する第１の記憶ステップと、前記第１の記憶ステップで記憶した前記ストリームに対応し、前記ストリームのビットレートよりも低いビットレートで符号化されたストリームを記憶する第２の記憶ステップと、前記第１の記憶ステップで記憶した前記ストリームのセグメントを再生し、次に再生するセグメントがない場合には、前記第２の記憶ステップで記憶された前記次に再生するセグメントに対応する前記低いビットレートで符号化されたストリームのセグメントを再生する再生ステップと、を有することを特徴とする。
【発明の効果】
【００１０】
本発明に係るコンテンツ配信システム、クライアント装置、サーバ装置及びコンテンツ配信方法は、サーバ装置が格納する最低ビットレートで符号化されたストリームのビットレートよりも、ネットワークの通信速度の方が低い状況が続いたような場合であっても、クライアント装置側で再生が途切れないようコンテンツを再生することができる。
【図面の簡単な説明】
【００１１】
【図１】実施の形態１に係るコンテンツ配信システムの構成図である。
【図２】実施の形態１に係るＭＰＤファイルの構成例である。
【図３】実施の形態１に係るストリームの分割のパターンを示す図である。
【図４】実施の形態１に係るコンテンツ配信システムの動作フローチャートである。
【図５】実施の形態１に係る制御部が第１の記憶部に記憶させるストリームを選択する例である。
【図６】実施の形態１に係る第１の記憶部及び第２の記憶部に記憶させるストリームを選択する例である。
【図７】実施の形態１に係るネットワーク監視部を備えるコンテンツ配信システムの構成図である。
【図８】実施の形態１に係る第１メディア情報記憶部及び第２メディア情報記憶部とを備えるコンテンツ配信システムの構成図である。
【図９】実施の形態１に係るコンテンツ配信システムのハードウェア構成図である。
【発明を実施するための形態】
【００１２】
実施の形態１．
以下、実施の形態１に係るコンテンツ配信システムの構成について説明する。図１は、実施の形態１に係るコンテンツ配信システムの構成図である。なお、以下の説明において、コンテンツとは、映像データ、オーディオデータ又は字幕等の補足データを指す。ストリームとは、コンテンツが符号化されたものを指す。以下の説明において、映像データが符号化されたものを映像ストリーム、オーディオデータが符号化されたものをオーディオストリームと表現する。なお、ストリームの詳細については、後述する。
【００１３】
図１において、サーバ装置１００は、メディア情報記憶部１１、コンテンツ格納部１２、送受信部１３、及び制御部１４を備える。
【００１４】
メディア情報記憶部１１は、メディア情報ファイル（以下、ＭＰＤ（Ｍｅｄｉａ  Ｐｒｅｓｅｎｔａｔｉｏｎ  Ｄｅｓｃｒｉｐｔｉｏｎ）ファイルとする）を記憶している。ＭＰＤファイルは、後述するクライアント装置２００がダウンロードすべきストリームを選択する際に参照する情報であって、ストリームの符号化方式、画像サイズ、フレームレート、音声チャネル数、ビットレート、再生時間（長さ）、各セグメントの時間関連情報（時刻情報（再生開始位置）、再生時間（長さ））及び保管ＵＲＬ等の情報を有する。セグメントは、１つのストリームが１以上に分割された分割ファイルを示す。セグメントの詳細については後述する。
【００１５】
図２は、実施の形態１に係るＭＰＤファイルの構成例である。図２に示すように、ＭＰＤファイルは、コンテンツ情報を有する。コンテンツ情報は、コンテンツの種類を示す情報であり、コンテンツ毎にＰｅｒｉｏｄ  ＩＤを設定している。例えば、映画のストリーミングサービスであれば、個々の映画毎に異なるＰｅｒｉｏｄ  ＩＤを持つコンテンツ情報を持つように構成することが一般的である。
【００１６】
コンテンツ情報は、メディア（ビデオ、オーディオ、字幕等）情報を有する。メディア情報の単位をＡｄａｐｔａｔｉｏｎ  ｓｅｔとする。
【００１７】
ビデオやオーディオに関するメディア情報（Ａｄａｐｔａｔｉｏｎ  ｓｅｔ）は、符号化条件（ビットレート、時間解像度、空間解像度等）毎のストリーム情報を有する。ストリーム情報は符号化条件として、ビットレート、時間解像度、空間解像度、符号化方式、音声チャネル数、再生時間、各セグメントの分割時間（セグメント単位の再生時間）等の情報を有する。時間解像度は、画像サイズに相当し、空間解像度は、フレームレートに相当する。また、ストリーム情報の単位をＲｅｐｒｅｓｅｎｔａｔｉｏｎとする。
【００１８】
ストリーム情報には、セグメントのアクセス先の情報が含まれる。セグメントのアクセス先の情報としては、サーバ装置１００のコンテンツ格納部１２に保存されているセグメントの保管ＵＲＬが相当する。
【００１９】
コンテンツ格納部１２は、同じ内容のストリームであって、異なるビットレートで符号化された複数のビデオストリームと異なるビットレートで符号化された複数のオーディオストリームをコンテンツ毎に有する。同じ内容のストリームとは、同じコンテンツを符号化して生成したストリームを示す。例えば、コンテンツが映画であれば、同じ内容のストリームであり、ビットレートの異なる複数のビデオストリーム及びビットレートの異なる複数のオーディオストリームが用意されている場合、ビデオストリーム及びオーディオストリームそれぞれ任意のストリームを復号することで同じ映画を視聴することができる。以下の説明において、同じ内容のストリームであって、異なるビットレートで符号化されたストリームを対応するストリーム又は異なるビットレートで符号化されたストリームと表現してもよい。各ストリームはＮ個（Ｎは１以上）のファイルに分割されている。この分割ファイルがセグメントである。例えば、図１の例において、コンテンツ格納部１２は、ビデオ１（ｘ＿１ｂｐｓ）のストリームが分割されたセグメントＶ＿１１からＶ＿１Ｎを格納している。ビデオ２からビデオＭについても同様に、１以上のセグメント（例えば、Ｖ＿２１からＶ＿２Ｎ、Ｖ＿Ｍ１からＶ＿ＭＮ）に分割されている。オーディオ１からオーディオＬのストリームも同様に、１以上のセグメント（例えば、Ａ＿１１からＡ＿１Ｎ、Ａ＿２１からＡ＿２Ｎ、Ａ＿Ｌ１からＡ＿ＬＮ）に分割されている。本実施の形態に係るコンテンツ配信システムの例においては、ビデオ１に格納されたセグメントがサーバ装置１００に格納されているセグメントのうち、最低ビットレートで符号化されたセグメントであるものとする。また、ビデオ２からビデオＭの順にビットレートが高くなるものとする。なお、図１の例では、コンテンツ格納部１２が異なるビットレートで符号化されたビデオストリームをＭ個（Ｍは２以上）、異なるビットレートで符号化されたオーディオストリームをＬ個（Ｌは２以上）格納する例を示すが、さらに字幕データ等の補足データを複数格納していてもよい。なお、コンテンツ格納部１２は、必ずしもビデオストリームとオーディオストリームの両方を格納している必要はない。例えば、サーバ装置１００が映像のみを配信する場合には、オーディオストリームは必要ない。
【００２０】
図３は、実施の形態１に係るストリームの分割パターンを示す図である。図３に示すように、ストリームは単独で復号可能なサブセグメントによって分割される。このサブセグメントを１以上有する単位がセグメントである。なお、ストリームは、セグメント、及びサブセグメント単位で１以上に分割するとしたことから、セグメント及びサブセグメントが１つであってもよい。すなわち、セグメント単位及びサブセグメント単位の分割が存在しない（セグメント数１）ストリームも許容する。
【００２１】
なお、図１において、各ストリームは同じセグメント数Ｎとなっているが、それぞれ別のセグメント数でも良い。サーバ装置１００は、ビットレートの異なるストリームを複数格納しているが、同じビットレートのストリームを複数格納していても良い。また、各ストリームはビットレートだけでなく、時間解像度、空間解像度、符号化方式、音声チャネル数、色フォーマット等といった映像・音声の符号化条件が異なっていても良い。ただし、これらの情報は全てＭＰＤファイルに格納されているものとする。
【００２２】
送受信部１３は、クライアント装置２００からストリームのダウンロードを要求する信号（以下、ストリーム要求信号とする）を受信し、コンテンツ格納部１２に格納されているストリームのセグメントをクライアント装置２００に送信する。
【００２３】
制御部１４は、メディア情報記憶部１１のＭＰＤファイルの送受信、及びコンテンツ格納部１２に格納されたストリームの送受信を制御する。制御部１４は、クライアント装置２００からストリーム要求信号を送受信部１３を介して受信し、ストリーム要求信号で要求されるコンテンツを選択して送受信部１３を介してクライアント装置２００に送信する。
【００２４】
クライアント装置２００は、送受信部２０、解析部２１、制御部２２、第１の記憶部２３、第２の記憶部２４、復号部２５、再生部２６、及び切り替え部２７を備える。
【００２５】
送受信部２０は、サーバ装置１００と情報をやりとりするためのインターフェースである。送受信部２０は、クライアント装置２００からＭＰＤファイルを要求するための信号（以下、メディア情報要求信号とする）を送信し、ＭＰＤファイルを受信する。また、送信部２０は、ストリーム要求信号をクライアント装置２００に送信し、ストリームのセグメントを受信する。
【００２６】
解析部２１は、サーバ装置１００から送受信部２０を介してＭＰＤファイルを受信し、解析する。具体的には、解析部２１は、ＭＰＤファイルに記憶されているコンテンツ情報、メディア情報、ストリーム情報を取り出して、制御部２２に出力する。
【００２７】
制御部２２は、送受信部２０、解析部２１、復号部２５、再生部２６、切り替え部２７を制御する。まず制御部２２は、ＭＰＤファイルからコンテンツ情報を取得し、ストリーミングするコンテンツ（ストリーミング対象コンテンツ）を特定する。例えばＭＰＤファイルに記載されたＰｅｒｉｏｄ  ＩＤ順にストリーミングするようにしても良いし、ユーザがプレイヤを操作して選択可能としても良い。そして、ストリーミングするコンテンツ特定後、解析部２１からストリーム情報として含まれるビットレートの情報をメディア毎に取得し、後述する第１の記憶部２３及び第２の記憶部２４に記憶するストリームを選択し、この第１の記憶部２３、及び第２の記憶部２４にストリームを記憶させる。ストリームの選択に関して、制御部２２は、後述する第１の記憶部２３に記憶させるストリームを通信速度に応じて選択する。一方、制御部２２は、後述する第２の記憶部２４に記憶させるストリームとして、サーバ装置１００のコンテンツ格納部１２に格納されたストリーミング対象コンテンツのストリームのうち最低ビットレートで符号化されたストリームを選択する。なお、制御部２２が第１の記憶部２３及び第２の記憶部２４に記憶させるストリームの選択方法の詳細については、後述する。以下の説明においては、制御部２２は、第２の記憶部２４に記憶させるストリームを、サーバ装置１００に記憶されたストリーミング対象コンテンツのストリームのうち、最低ビットレートで符号化されたストリームを選択するものとする。制御部２２が第２の記憶部２４に記憶させるストリームとして、最低ビットレートのストリームを選択することによって、より早く第２の記憶部２４にストリームを蓄積することが可能となる。
【００２８】
第１の記憶部２３は、送受信部２０を介して、ストリーミング対象コンテンツに属する異なるビットレートで符号化された複数のストリームのうち、通信速度に応じて選択されたストリームを記憶する。
【００２９】
第２の記憶部２４は、ストリーミング対象コンテンツに属する異なるビットレートで符号化された複数のストリームのうち、最低ビットレートで符号化されたストリームを記憶する。第２の記憶部２４は、後述する再生部２６が第１の記憶部２３に記憶されたストリームを再生している際に、次に再生するストリームがない場合に再生されるストリームを記憶するために用いられる。
【００３０】
なお、第１の記憶部２３及び第２の記憶部２４は、物理的に分離されたメモリであってもよいし、１つのメモリ内の記憶領域であってもよい。
【００３１】
復号部２５は、第１の記憶部２３又は第２の記憶部２４からストリームのセグメントを取得し、復号する。その際、制御部２２からＭＰＤファイルに記載されているセグメントの時間情報等を取得して正しく再生されるように、復号したデータの再生部２６への出力タイミングを制御するようにしても良い。そのようにしない場合は、再生部２６で制御部２２からセグメントの時間関連情報等を取得して正しく再生されるように復号されたコンテンツの表示制御を行うようにする。
【００３２】
再生部２６は、復号部２５で復号されたコンテンツデータを再生する。上述のとおり、復号部２５で復号したデータの再生部２６への出力タイミングを制御していない場合、再生部２６で制御部２２からセグメントの時間関連情報等を取得して正しく再生されるように復号されたコンテンツの表示制御を行うようにする。
【００３３】
切り替え部２７は、復号部２５がセグメントを第１の記憶部２３又は第２の記憶部２４から取得する際に、いずれの記憶部からセグメントを取得するかを切り替える。
【００３４】
なお、解析部２１、制御部２２、復号部２５、及び再生部２６は、ハードウェアで実現されても良いし、ソフトウェアで実現されても良い。
【００３５】
次に、図４を用いて、実施の形態１に係るコンテンツ配信システムの動作について説明する。図４は、実施の形態１に係るコンテンツ配信システムの動作フローチャートである。
【００３６】
ＳＴ１において、クライアント装置２００の送受信部２０は、サーバ装置１００の送受信部１３にメディア情報要求信号を送信する。サーバ装置１００は、送受信部１３を介してメディア情報要求信号を受信し、メディア情報記憶部１１に記憶されたＭＰＤファイルを送受信部１３を介してクライアント装置２００に送信する。送受信部２０は、ＭＰＤファイルを取得し、解析部２１に入力する。
【００３７】
ＳＴ２において、解析部２１は、ＭＰＤファイルを解析し、各ストリームの符号化方式、画像サイズ、音声チャネル数、ビットレート、再生時間、各セグメントの分割間隔（セグメント単位の再生時間）や保管ＵＲＬ等といったＭＰＤファイルの情報を取得する。また、解析部２１は、取得したＭＰＤファイルに含まれるビットレートの情報を制御部２２に出力する。
【００３８】
ＳＴ３において、制御部２２は、サーバ装置１００とクライアント装置２００を繋ぐネットワークにおけるダウンロード速度、すなわち、通信速度を取得する。具体的には、制御部２２は、直近に第１の記憶部２３、又は第２の記憶部２４に格納したストリームのダウンロード実行時間とそのデータサイズから通信速度を算出する。すなわち、（通信速度）＝（データサイズ）／（ダウンロード実行時間）であり、直近に取得した１つのストリームのみから算出しても良いし、直近の複数のストリームを対象として算出するようにしても良い。
【００３９】
ＳＴ４ａにおいて、制御部２２は、ＭＰＤファイルに含まれるビットレートの情報と、通信速度の情報とに基づいて、適応ストリーミング技術により第１の記憶部２３に記憶するストリームを選択する。具体的には、制御部２２は、ＭＰＤファイルに含まれるビットレートの情報を参照し、サーバ装置１００のコンテンツ格納部１２に格納されているストリーミング対象コンテンツに属する複数のストリームの各ビットレートを確認する。そして、制御部２２は、ビデオ１からビデオＭのストリームのうち、最低ビットレートで符号化されたビデオ１のストリーム以外のストリームを通信速度に応じて１つ選択する。同様に、制御部２２は、オーディオ１からオーディオＬのストリームのうち、最低ビットレートで符号化されたオーディオ１のストリーム以外のストリームを通信速度に応じて１つ選択する。ストリームの選択に関して、制御部２２は、ダウンロードするストリームのビットレートの総和が、通信速度のビットレートを超えないようにストリームを選択する。
【００４０】
ＳＴ４ｂにおいて、制御部２２は、ＭＰＤファイルに含まれるビットレートの情報に基づいて、第２の記憶部２４に記憶するストリームを選択する。具体的には、ビデオ１からビデオＭのストリームのうち、最低ビットレートで符号化されたビデオ１のストリームを選択する。同様に、制御部２２は、オーディオ１からオーディオＬのストリームのうち、最低ビットレートで符号化されたオーディオ１のストリームを選択する。
【００４１】
ＳＴ５において、制御部２２はＳＴ４ａ、４ｂで選択したストリームのダウンロードを開始する。制御部２２は、送受信部２０を介して、ストリーム要求信号をサーバ装置１００に送信する。このとき、ストリーム要求信号には、選択したストリームのセグメントに対応する保管ＵＲＬの情報が含まれる。サーバ装置１００の制御部１４は、ストリーム要求信号を送受信部１３を介して受信し、保管ＵＲＬに対応するストリームのセグメントをコンテンツ格納部１２から選択し、選択したセグメントを送受信部１３を介してクライアント装置２００に送信する。
【００４２】
続いて、制御部２２は、サーバ装置１００からＳＴ４ａ、及びＳＴ４ｂで選択したストリームのセグメントをダウンロードする。そして、ダウンロードしたセグメントを第１の記憶部２３及び第２の記憶部２４に記憶する。また、制御部２２は、第１の記憶部２３に記憶したセグメントを、ＭＰＤファイルに記載されているセグメントの時刻情報に基づいて、再生順に復号部２５で復号するように制御する。
【００４３】
ストリームのダウンロード中において、制御部２２は、優先的に第２の記憶部２４に記憶するストリームをダウンロードするとともに、第１の記憶部２３に記憶するストリームをダウンロードする。優先的に第２の記憶部２４に記憶するストリームをダウンロードするとは、第１の記憶部２３に記憶しているストリームのセグメントの中で最も先の時刻を示すセグメントの時刻以降の時刻を示すセグメントが第２の記憶部２４に常に１以上記憶されているように、第２の記憶部２４に記憶するセグメントをダウンロードすることをいう。このとき、２つのストリームを例えば同じ平均ダウンロード速度でダウンロードする（例えば、パケット単位（ネットワークのデータ転送単位）等で時間方向に交互にダウンロードする）ものとして、第２の記憶部２４に記憶するセグメントを優先的にダウンロードするためには、第２の記憶部２４に記憶させるストリームのビットレートが第１の記憶部２３に記憶させるストリームのビットレートよりも低いビットレートとなるようにすればよい。また、第１の記憶部２３に記憶させるストリームのダウンロードと第２の記憶部２４に記憶させるストリームのダウンロードをともに行う方法として、２つのストリームを例えばパケット単位やセグメント単位で時間方向に特定の比率で割り当ててダウンロードするようにしてもよい（例えば、第２の記憶部２４に記憶させるストリームのパケットを２つダウンロードした後第１の記憶部２３に記憶させるストリームのパケットを１つダウンロードする等）。
【００４４】
制御部２２は、ダウンロード開始後から所定時間後、セグメントのダウンロード完了毎、又はサブセグメントのダウンロード完了毎にＳＴ３、ＳＴ４ａの処理を繰り返し実行し、ストリームの再選択を実施する。具体的には、制御部２２は、通信速度を取得し（ＳＴ３）、この通信速度に基づいて第１の記憶部２３に記憶させるストリームを再度選択する（ＳＴ４ａ）。なお、本実施の形態に係るコンテンツ配信システムにおいて、制御部２２は、ＳＴ４ｂの処理を繰り返し実行せず、第２の記憶部２４に記憶させるストリームについては、常に最低ビットレートのストリームを選択するものとする。
【００４５】
図５は、実施の形態１に係る制御部が第１の記憶部に記憶させるストリームを選択する例である。図５において、縦軸は通信速度で横軸は時間である。また、時間軸の下方には、制御部２２が選択するビデオストリームと選択するオーディオストリームを示している。
【００４６】
図５において、通信速度は時間に応じて変動しており、制御部２２は、通信速度が向上すると、選択しているビットレート２Ｍｂｐｓのビデオストリームからビットレート３Mｂｐｓのビデオストリームに変更する。また、通信速度が向上すると、制御部２２は、ビットレート３Ｍｂｐｓのビデオストリームからビットレート４Ｍｂｐｓのビデオストリームに変更する。また、通信速度が低下した場合には、ビットレート４Ｍｂｐｓのビデオストリームからビットレート２Ｍｂｐｓのビデオストリームに変更する。なお、制御部２２は、オーディオストリームについても同様に、異なるビットレートで符号化されたオーディオストリームのうち、ネットワークの通信速度に応じたビットレートのオーディオストリームを選択しながらダウンロードする。このように、制御部２２は、異なるビットレートで符号化されたストリームのうち、通信速度に応じたビットレートで符号化されたストリームを選択するので、ネットワークの通信速度が速いときには、高品質のストリームをダウンロードすることができ、通信速度が遅いときには、低品質のストリームをダウンロードすることができる。
【００４７】
第１の記憶部２３及び第２の記憶部２４に記憶させるストリームのビットレートと通信速度との関係は、少なくともネットワークの通信速度よりも選択したストリームの総和が小さくなるようにすればよい。図６は、実施の形態１に係る制御部が第１の記憶部及び第２の記憶部に記憶させるストリームを選択する例である。図６において、縦軸は通信速度で横軸は時間である。また、時間軸の下方には、制御部２２が第１の記憶部２３に記憶するストリームとして選択するビデオストリーム及びオーディオストリーム（図６（ａ）参照）と、制御部２２が第２の記憶部２４に記憶するストリームとして選択するビデオストリーム及びオーディオストリーム（図６（ｂ）参照）を示している。ネットワークの通信速度が３．５Ｍｂｐｓ以上４．５Ｍｂｐｓ未満である場合（図６Ａ）、制御部２２は、２Mｂｐｓのビデオストリーム及び２５６ｋｂｐｓのオーディオストリームを第１の記憶部２３に記憶するためのストリームとして選択し、ダウンロードする。また、制御部２２は、最低ビットレートである１Ｍｂｐｓのビデオストリーム及び１２８ｋｂｐｓのオーディオストリームを第２の記憶部２４に記憶するためのストリームとして選択し、ダウンロードする。
【００４８】
ネットワークの通信速度が４．５Ｍｂｐｓ以上６Ｍｂｐｓ未満である場合（図６Ｂ）、制御部２２は、３Mｂｐｓのビデオストリーム及び２５６ｋｂｐｓのオーディオストリームを第１の記憶部２３に記憶するためのストリームとして選択し、ダウンロードする。また、制御部２２は、最低ビットレートである１Ｍｂｐｓのビデオストリーム及び１２８ｋｂｐｓのオーディオストリームを第２の制御部２４に記憶するためのストリームとして選択し、ダウンロードする。
【００４９】
ネットワークの通信速度が６Ｍｂｐｓ以上である場合（図６Ｃ）、制御部２２は、４Mｂｐｓのビデオストリーム及び５１２ｋｂｐｓのオーディオストリームを第１の記憶部２３に記憶するためのストリームとして選択し、ダウンロードする。また、制御部２２は、最低ビットレートである１Ｍｂｐｓのビデオストリーム及び１２８ｋｂｐｓのオーディオストリームを第２の制御部２４に記憶するためのストリームとして選択し、ダウンロードする。
【００５０】
再度、ネットワークの通信速度が４．５Ｍｂｐｓ以上６Ｍｂｐｓ未満となった場合（図６Ｂ２）、制御部２２は、３Mｂｐｓのビデオストリーム及び２５６ｋｂｐｓのオーディオストリームを第１の記憶部２３に記憶するためのストリームとして選択し、ダウンロードする。また、制御部２２は、最低ビットレートである１Ｍｂｐｓのビデオストリーム及び１２８ｋｂｐｓのオーディオストリームを第２の制御部２４に記憶するためのストリームとして選択し、ダウンロードする。なお、上記図６の説明における、ネットワークの通信速度の数値（閾値）は一例であり、設計者によって任意に決定できるものとする。また、ビデオストリームとオーディオストリームのビットレートの切り替わる通信速度の閾値はそれぞれ独立であっても良い。
【００５１】
ストリームの再生時において、制御部２２は、ストリームのダウンロード開始から第１の記憶部２３に少なくとも１つのサブセグメントが記憶された際に、復号部２５に復号を開始させる。復号部２５は、第１の記憶部２３又は第２の記憶部２４に記憶されたストリームのセグメントを順次復号し、復号されたデータを再生部２６に出力する。再生部２６は、復号部２５から出力されたデータを順次再生する。なお、制御部２２は、ストリームのダウンロード開始から第１の記憶部２３に少なくとも１つのサブセグメントが記憶された際に、復号部２５に復号を開始させるものとしたが、どの程度ストリームが記憶されてから再生を開始するかは、コンテンツ配信システムの設計者によって任意に設定可能である。
【００５２】
制御部２２は、リアルタイム再生可能な通信速度で第１の記憶部２３にストリームを記憶できている場合、すなわち、現在再生しているセグメントの再生終了時までに、次に再生するべきセグメントが第１の記憶部２３にダウンロードできている場合には、切り替え部２７を第１の記憶部２３に接続するように制御する。一方、ネットワークの一時不通等により第１の記憶部２３に記憶されているストリームによるリアルタイム再生が不可能となった場合、すなわち、現在再生しているセグメントの再生終了時点で、次に再生するべきセグメントが第１の記憶部２３にダウンロードできていない場合には、制御部２２は切り替え部２７を第２の記憶部２４に接続するように制御し、第１の記憶部２３に記憶された次に再生するべきセグメントに対応する第２の記憶部２４に記憶されているセグメントの復号・再生を実施する。第２の記憶部２４に格納されているビデオ１及びオーディオ１のストリームは優先的に取得しているため、第１の記憶部２３のストリームが十分に取得できない場合においても、既に第２の記憶部２４に格納されたストリームによって再生を中断させることなく、リアルタイムに再生することが可能となる。
また、第２の記憶部２４に記憶されているセグメントの復号・再生を実施している際も、第１の記憶部２３に記憶するストリームの取得要求は常に行う。そして、ネットワークの回線速度が改善し、第１の記憶部２３に記憶するストリームに対して、現在復号・再生を実施している第２の記憶部２４に記憶されているセグメントの次の時刻以降のセグメントがダウンロードできている状態（リアルタイム再生可能な状態）となったら制御部２２は切り替え部２７を第１の記憶部２３に接続するように制御する。このようにすることで、帯域状況に応じたストリーミング再生が可能となる。
制御部２２による切り替え部２７の切り替え制御の実現方法の一例としては次の通り。まず、第２の記憶部２４に記憶するセグメントのダウンロード完了後、ＭＰＤファイル内の対応ＵＲＬをダウンロード先のファイルパス（第２の記憶部２４内の格納したメモリアドレス）に書き換える。そして、制御部２２がＭＰＤファイルに含まれるビットレートの情報と、算出した通信速度の情報とに基づいて第１の記憶部２３に記憶するストリームを選択する処理を行う場合、通信速度が低くなると最低ビットレートのストリーミングを実施しようとする。このとき、既にＭＰＤファイル内の対応ＵＲＬがダウンロード先のファイルパスに書き換わっているため、ファイルパスを参照して第２の記憶部２４に記憶するセグメントを再生する。このようにすることで、制御部２２は第１の記憶部２３と第２の記憶部２４の切り替えを実現できる。本例ではＭＰＤファイルを書き換えるように説明したが、プレイヤが一時データとしてセグメントの対応ＵＲＬを記憶している場合、この一次データをダウンロード先のファイルパスに書き換えることで実現してもよい。もしくは、ＭＰＤファイル内の対応ＵＲＬをダウンロード先のファイルパス（第２の記憶部２４内の格納したメモリアドレス）に書き換える処理は行わず、ＭＰＤファイル内の対応ＵＲＬとダウンロード先のファイルパスを対応付けし、対応付けされたＵＲＬを参照した際は対応するファイルパスのセグメントを再生するようにしても同様に第１の記憶部２３と第２の記憶部２４の切り替えを実現できる。
【００５３】
なお、制御部２２は、ネットワークの一時不通等により第１の記憶部２３に記憶されているストリームのうち、現在再生しているセグメントの再生終了時点で、次に再生するべきセグメントがダウンロードできていない場合には、切り替え部２７を第２の記憶部２４に接続するようにしたが、クライアント装置２００の復号部２５の計算能力によっては、第２の記憶部２４のストリームによる再生がリアルタイムに間に合わない可能性がある。そこで、制御部２２は、第１の記憶部２３に格納されているストリームの残存再生時間が閾値以下になった場合に、切り替え部２７を制御して第２の記憶部２４と接続するように切り換えても良い。このように、制御部２２が第１の記憶部２３に記憶されているストリームに関する残存再生時間の閾値を有し、閾値以下となった場合に、第２の記憶部２４に記憶されているストリームを再生するように制御することで、より安定的にリアルタイム再生を実現することができる。
【００５４】
制御部２２は、選択したストリームの全てのダウンロード及び再生が完了した場合、又は、クライアント装置２００のユーザによって終了する処理が行われた場合に、処理を終了する。
【００５５】
以上のように、本実施の形態に係るコンテンツ配信システム、クライアント装置、サーバ装置及びコンテンツ配信方法は、サーバ装置が備える最低ビットレートで符号化されたストリームのビットレートよりも、ネットワークの通信速度の方が低い状況が続いたような場合であっても、クライアント装置側で再生が途切れないようコンテンツを再生することができる。
【００５６】
本実施の形態１に係るコンテンツ配信システムは、通信速度の算出を制御部２２が行うものとしたが、別の構成によって行うものとしてもよい。図７は、ネットワーク監視部を備えるコンテンツ配信システムの構成図である。図７に示すようにネットワーク監視部２９を用意して、ネットワーク監視部２９からダウンロード速度に関する情報を取得するようにしても良い。また、ネットワーク監視部２９は、サーバ装置１００が備えていてもよい。サーバ装置１００がネットワークの通信速度を意図的に制限しているような場合には、サーバ装置１００が備えるネットワーク監視部２９が有する通信速度の情報をクライアント装置２００に送信する。
【００５７】
実施の形態１に係るメディア情報ファイル記憶部１１は、第１の記憶部２３に記憶させるストリームのＭＰＤファイルと、第２の記憶部２４に記憶させるストリームのＭＰＤファイルとを記憶するものとしたが、これに限られず、第１の記憶部用のＭＰＤファイルを記憶する第１メディア情報記憶部１１ａと、第２の記憶部用のＭＰＤファイルを記憶する第２メディア情報記憶部１１ｂとに分かれていてもよい。図８は、実施の形態１に係る第１メディア情報記憶部及び第２メディア情報記憶部とを備えるコンテンツ配信システムの構成図である。図１のコンテンツ配信システムにおいて、第１の記憶部２３及び第２の記憶部２４に記憶するストリームの区別は、１つのＭＰＤファイルの情報を元に制御部２２が行うものであったが、図８に示すように、第１メディア情報記憶部１１ａと第２メディア情報記憶部１１ｂとに分けて構成することで、制御部２２が１つのＭＰＤファイルの情報を元に第１の記憶部２３及び第２の記憶部２４に記憶するストリームの区別を行う必要がなく、制御部２２の処理負荷を軽減することができる。このとき、第１メディア情報記憶部１１ａと第２メディア情報記憶部１１ｂに記憶されるＭＰＤファイルとを区別するための情報を各ＭＰＤファイルに追加するようにしても良い。例えば、第２メディア情報記憶部１１ｂのＭＰＤファイルには、優先的にダウンロードするストリームであることを示す情報を追加しておく。
【００５８】
本実施の形態に係るコンテンツ配信システムおいて、メディア情報記憶部１１は、サーバ装置１００が備えるものとしたが、サーバ装置１００以外の異なる外部サーバ（図示せず）が備えていてもよい。また、メディア情報記憶部１１は、クライアント装置２００が備えるものでもよい。
【００５９】
本実施の形態に係るコンテンツ配信システムにおいて、制御部２２は、第１の記憶部２３に記憶しているストリームのセグメントの中で最も先の時刻を示すセグメントの時刻以降の時刻を示すセグメントが第２の記憶部２４に常に１以上記憶されているように、第２の記憶部２４に記憶する最低ビットレートで符号化されたストリームを取得することとして説明したが、第１の記憶部２３に記憶しているストリームのセグメントの中で最も先の時刻を示すセグメントの時刻以降の時刻を示すセグメントが第２の記憶部２４に１以上、もしくは一定数（または一定時間）以上記憶されていれば、第２の記憶部２４に格納するストリームはダウンロードしない（ダウンロードを休止する）ようにしてもよい。この場合、第２の記憶部２４に記憶するストリームを優先的にダウンロードしつつも、第２の記憶部２４に記憶するストリームのダウンロード量を抑え、第１の記憶部２３に記憶するストリームの通信帯域をより多く確保することで、第１の記憶部２３に記憶するストリーム選択時に、より高いビットレートのストリームを選択することができ、より高品質な画像データ又は音声データを取得することができる。
さらに、制御部２２は、第２の記憶部２４に最低ビットレートではない特定のビットレートのストリームを記憶させるものとしても良い。この場合、最低ビットレートを記憶する場合よりストリームの取得速度は低下するものの、第１の記憶部２３に記憶しているストリームのセグメントの中で最も先の時刻を示すセグメントの時刻以降の時刻を示すセグメントが第２の記憶部２４に常に１以上、もしくは一定数（または一定時間）以上記憶されているように、第２の記憶部２４に記憶するセグメントをダウンロードするようにすることで、サーバ装置が備える最低ビットレートで符号化されたストリームのビットレートよりもネットワークの通信速度の方が低い状況が続いたような場合であっても、クライアント装置側で再生が途切れないようコンテンツを再生することができるとともに、再生時に第２の記憶部２４に記憶されたストリームの品質を向上させることができる。
【００６０】
本実施の形態に係るコンテンツ配信システムにおいて、制御部２２は、第１の記憶部２３に記憶させるストリームを選択する際に、異なるビットレートで符号化された複数のストリームのうち、通信速度に応じたビットレートのストリームを選択するものとしたが、第２の記憶部２４に記憶させるストリームのビットレートよりも高いビットレートのストリームであれば、１つのビットレートのストリームに固定して選択してもよい。
【００６１】
本実施の形態に係るコンテンツ配信システムにおいて、制御部２２は、第２の記憶部２４に最低ビットレート等の特定のビットレートで符号化されたストリームを記憶させるものとしたが、第１の記憶部２３に記憶させるストリームよりも低いビットレートのストリームであれば、必ずしも最低ビットレートでなくてもよい。例えば、制御部２２は、第２の記憶部２４に記憶させるストリームを通信速度に応じた適応ビットストリームにより選択してもよい。この例の場合、第１の記憶部２３に記憶するストリームと第２の記憶部２４に記憶するストリームとが一時的に同じビットレートとなっても構わない。このように、第２の記憶部２４に記憶するストリームを、サーバ装置１００に記憶されたストリームのうち、最低ビットレートよりも高いビットレートのストリームを第２の記憶部２４に記憶することで、再生時に第２の記憶部２４に記憶されたストリームの品質を向上させることができる。
【００６２】
本実施の形態に係るコンテンツ配信システムにおいて、制御部２２は、第１の記憶部２３にストリームを記憶する処理と、第２の記憶部２４にストリームを記憶する処理とを並行して行うものとしたが、これに限られず、第２の記憶部２４に低いビットレートのストリームを予め記憶しておいてもよい。例えば、制御部２２は、一旦、第１の記憶部２３にストリームを記憶する処理と、第２の記憶部２４にストリームを記憶する処理とを並行して行い、この第１の記憶部２３又は第２の記憶部２４のストリームを再生し、再生が完了した場合に、第２の記憶部２４に記憶されているストリームを保持しておく。再度、ユーザにより同一内容のコンテンツを再生するように操作された場合、制御部２２は、再度通信速度に応じて、ストリームを選択し、第１の記憶部２３に記憶しつつ、ネットワークの一時不通等により第１の記憶部２３に記憶されているストリームのうち、現在再生しているセグメントの再生終了時点で次に再生するべきセグメントがダウンロードできていない場合には、切り替え部２７を第２の記憶部２４に接続して、第第２の記憶部２４に記憶されているストリームを再生するようにしてもよい。このように、既に第２の記憶部２４に記憶されているストリームを用いることで、第２の記憶部２４にストリームを記憶させる処理を行う必要がないので、第２の記憶部２４にストリームを記憶させる処理に関わる処理負荷を削減でき、さらに、第１の記憶部２３にダウンロードするストリームの品質を向上させることができる。
【００６３】
なお、図１に示す本実施の形態に係るコンテンツ配信システムの各機能は、図９に示す各ハードウェア構成が予め記憶されたプログラムを実行することにより、実現される。図９は、実施の形態１に係るコンテンツ配信システムのハードウェア構成図である。図９において、サーバ装置１００は、メモリ１０１、処理装置１０２、送信機１０３、及び受信機１０４を備える。メモリ１０１は、メディア情報記憶部１１、コンテンツ格納部１２の機能を実現する。また、メモリ１０１は、処理装置１０２が実行するプログラムを記憶する。処理装置１０２は、メモリ１０１に記憶されたプログラムに基づいて制御部１４の機能を実行する。処理装置１０２は、例えば、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）に相当する。送信機１０３、及び受信機１０４は、送受信部１３の機能を実現する。一方、図９において、クライアント装置２００は、メモリ２０１、処理装置２０２、送信機１０３、受信機１０４、及び再生装置２０５を備える。メモリ２０１は、第１の記憶部２３及び第２の記憶部２４の機能を実現する。また、メモリ２０１は、処理装置２０２が実行するプログラムを記憶する。処理装置２０２は、メモリ２０１に記憶されたプログラムに基づいて解析部２１、制御部２２、及び復号部２５の機能を実現する。処理装置２０２は、例えば、ＣＰＵに相当する。送信機２０３、及び受信機２０４は、送受信部２０の機能を実現する。再生装置２０５は、再生部２６の機能を実現する。再生装置２０５は、例えば、音声を出力するスピーカー、又は映像を表示する表示装置に相当する。
【符号の説明】
【００６４】
１１  メディア情報記憶部、１２  コンテンツ格納部、１３  送受信部、２０  送受信部、２１  解析部、２２  制御部、２３  第１の記憶部、２４  第２の記憶部、２５  復号部、２６  再生部、２７  切り替え部、２９  ネットワーク監視部。
【図１】
2016225959.tif 000003
【図２】
2016225959.tif 000004
【図３】
2016225959.tif 000005
【図４】
2016225959.tif 000006
【図５】
2016225959.tif 000007
【図６】
2016225959.tif 000008
【図７】
2016225959.tif 000009
【図８】
2016225959.tif 000010
【図９】
2016225959.tif 000011