(57)【要約】【課題】      動画データの再生開始に要する時間を短縮すること。【解決手段】  ネットワークを介して送信される動画データを受信して、動画データを再生する動画再生装置は、格納部に格納されている第１動画データと第１動画データに付加されているヘッダ部の情報とを解析する解析部と、ヘッダ部の情報の解析結果に基づき第１動画データの後に続く第２動画データを取得可能なネットワーク上の格納先を判定する判定部と、第２動画データの格納先から第２動画データを取得する取得部と、第１動画データの再生終了とともに、取得部で取得した第２動画データの再生を行う再生部とを備える。【選択図】  図１
2007295038.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを介して送信される動画データを受信して、前記動画データを再生する動画再生装置であって、
格納手段に格納されている第１動画データと前記第１動画データに付加されているヘッダ部の情報とを解析する解析手段と、
前記解析手段による前記ヘッダ部の情報の解析結果に基づき前記第１動画データの後に続く第２動画データを取得可能な前記ネットワーク上の格納先を判定する判定手段と、
前記判定手段により判定された前記第２動画データの格納先から前記第２動画データを取得する取得手段と、
前記第１動画データの再生終了とともに、前記取得手段で取得した前記第２動画データの再生を行う再生手段と
を備えることを特徴とする動画再生装置。
【請求項２】
前記ヘッダ部に前記第２動画データを取得可能な接続先の情報が複数含まれている場合、前記判定手段は、前記ネットワークを介した各接続先への通信状況を判定することを特徴とする請求項１に記載の動画再生装置。
【請求項３】
前記通信状況の判定に基づき、前記判定手段は接続先を切り替えることを特徴とする請求項１または２に記載の動画再生装置。
【請求項４】
前記解析手段は、前記第１動画データの解析に基づくビットレートと、前記判定手段による前記各接続先への通信状況の判定結果とに基づいて、前記第２動画データの取得開始時刻を決定することを特徴とする請求項１に記載の動画再生装置。
【請求項５】
前記取得手段は、前記判定手段により切り替えられた接続先から、前記第２動画データの取得開始時刻に、前記第２動画データを取得することを特徴とする請求項１または４に記載の動画再生装置。
【請求項６】
通信プロトコルとして、ＨＴＴＰ及びＲＴＰを利用することを特徴とする請求項１乃至５のいずれか１項に記載の動画再生装置。
【請求項７】
前記再生手段は、ISO Base Media File Formatのファイル形式で構成された前記第１及び第２動画データを再生することが可能であることを特徴とする請求項１乃至６のいずれか１項に記載の動画再生装置。
【請求項８】
ネットワークを介して送信される動画データを受信して、前記動画データを再生する動画再生方法であって、
格納手段に格納されている第１動画データと前記第１動画データに付加されているヘッダ部の情報とを解析する解析工程と、
前記解析工程による前記ヘッダ部の情報の解析結果に基づき前記第１動画データの後に続く第２動画データを取得可能な前記ネットワーク上の格納先を判定する判定工程と、
前記判定工程により判定された前記第２動画データの格納先から前記第２動画データを取得する取得工程と、
前記第１動画データの再生終了とともに、前記取得工程で取得した前記第２動画データの再生を行う再生工程と
を備えることを特徴とする動画再生方法。
【請求項９】
前記ヘッダ部に前記第２動画データを取得可能な接続先の情報が複数含まれている場合、前記判定工程は、前記ネットワークを介した各接続先への通信状況を判定することを特徴とする請求項８に記載の動画再生方法。
【請求項１０】
前記通信状況の判定に基づき、前記判定工程は接続先を切り替えることを特徴とする請求項８または９に記載の動画再生方法。
【請求項１１】
前記解析工程は、前記第１動画データの解析に基づくビットレートと、前記判定工程による前記各接続先への通信状況の判定結果とに基づいて、前記第２動画データの取得開始時刻を決定することを特徴とする請求項８に記載の動画再生方法。
【請求項１２】
前記取得工程は、前記判定工程により切り替えられた接続先から、前記第２動画データの取得開始時刻に、前記第２動画データを取得することを特徴とする請求項８または１１に記載の動画再生方法。
【請求項１３】
通信プロトコルとして、ＨＴＴＰ及びＲＴＰを利用することを特徴とする請求項５乃至１２のいずれか１項に記載の動画再生方法。
【請求項１４】
前記再生工程は、ISO Base Media File Formatのファイル形式で構成された前記第１及び第２動画データを再生することが可能であることを特徴とする請求項８乃至１３のいずれか１項に記載の動画再生方法。
【請求項１５】
請求項８乃至１４のいずれか１項に記載の動画再生方法をコンピュータに実行させることを特徴とするプログラム。
【請求項１６】
請求項１５に記載のプログラムを格納したことを特徴とするコンピュータ可読の記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、動画データを再生する技術に関するものである。
【背景技術】
【０００２】
近年、高速インターネット接続サービスや家庭内の有線及び無線ネットワークの利用が急速に普及している。デジタルデータ化された動画コンテンツを家庭内のサーバに蓄積し家庭内ネットワークを通して別の機器で閲覧したり、インターネット上の動画配信サービスから動画コンテンツを受信し閲覧する利用方法が広まりつつある。更に、動画コンテンツを外出先でインターネットを介して携帯型再生機器（再生機器）にデータ転送して閲覧することも可能となっている。これらの動画像の閲覧をユーザーが快適に行うには、実際に再生表示される動画像が高画質に表示されるだけではなく、ユーザーが再生機器を操作して閲覧指示を出すと短時間に動画コンテンツの再生が開始されることが望まれる。
【０００３】
ネットワーク上の動画コンテンツを再生機器にダウンロードして再生する場合、再生機器がローカルファイルとして保持する動画コンテンツを再生する場合と比べてデータ転送に要する時間の分、再生開始のタイミングが遅延する。再生開始の遅延を解消するため、動画コンテンツの全データの転送を待たずに、部分的に再生可能となる程度の動画データを再生機器のバッファに蓄積し、蓄積した動画データをデコードして再生するストリーミング再生が行われている。
【０００４】
ストリーミング再生により、部分的な動画データのデコードと再生を行いつつ、続いて再生されることになる部分動画データの転送を行うことで、データ転送に要する時間を隠蔽し、継ぎ目のない再生を実現することができる。更に再生が終了した部分動画データを適時破棄する等の方法を併用することでデータ容量の大きな動画データを一度に全て保持する必要がなくなるため、記憶容量の少ない携帯型再生機器でもストリーミング再生が可能となっている。
【０００５】
ストリーミング再生に関する従来技術として、例えば、特許文献１に示されるものがある。
【特許文献１】特開２００４−０８０１４５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかし、再生開始する動画コンテンツの最初の部分に関しては、データ転送に要する時間は、再生により隠蔽できないため、再生を指示してから再生開始までの待ち時間は依然として発生するという問題がある。
【０００７】
データ転送時間は、利用するネットワークのデータ転送速度と、転送する動画コンテンツの符号化方式と単位時間あたりの符号量に大きく依存する。近年、高速インターネットや高速無線通信方式が普及しデータ転送速度が毎年高くなる状況ではあるが、それと同時に閲覧される動画コンテンツの解像度やデータ転送レートも大きくなり、加えて利用者数も増加している。解像度と転送レートの増大はネットワークの輻輳やサーバ負荷の増大を招くだけでなく、再生開始までの転送データの蓄積量の増大につながることになる。また、利用者の増加もネットワークの輻輳とサーバへの処理負荷を増やすことになる。
【０００８】
したがって、ネットワークの高速化はネットワークの利用を広く確実に確保できる利用状況のみでしか有効ではなく、動画コンテンツの動画データの転送と再生に関する問題を解決する方法とはならない。
【０００９】
そこで、本発明は従来技術の問題点を鑑みて、動画データの再生開始に要する時間を短縮することを可能にする映像再生技術の提供を目的とする。
【課題を解決するための手段】
【００１０】
上記目的を達成するべく、本発明に係る動画再生装置は、ネットワークを介して送信される動画データを受信して、前記動画データを再生する動画再生装置であって、
格納手段に格納されている第１動画データと前記第１動画データに付加されているヘッダ部の情報とを解析する解析手段と、
前記解析手段による前記ヘッダ部の情報の解析結果に基づき前記第１動画データの後に続く第２動画データを取得可能な前記ネットワーク上の格納先を判定する判定手段と、
前記判定手段により判定された前記第２動画データの格納先から前記第２動画データを取得する取得手段と、
前記第１動画データの再生終了とともに、前記取得手段で取得した前記第２動画データの再生を行う再生手段と
を備えることを特徴とする。
【００１１】
あるいは、本発明に係る動画再生方法は、ネットワークを介して送信される動画データを受信して、前記動画データを再生する動画再生方法であって、
格納手段に格納されている第１動画データと前記第１動画データに付加されているヘッダ部の情報とを解析する解析工程と、
前記解析工程による前記ヘッダ部の情報の解析結果に基づき前記第１動画データの後に続く第２動画データを取得可能な前記ネットワーク上の格納先を判定する判定工程と、
前記判定工程により判定された前記第２動画データの格納先から前記第２動画データを取得する取得工程と、
前記第１動画データの再生終了とともに、前記取得工程で取得した前記第２動画データの再生を行う再生工程と
を備えることを特徴とする。
【発明の効果】
【００１２】
本発明によれば、動画データの再生開始に要する時間を短縮することが可能になる。
【発明を実施するための最良の形態】
【００１３】
＜第１実施形態＞
以下、本発明の実施形態を添付図面の参照により説明する。図１は、本発明の第１実施形態に係る好適な動画コンテンツ送受信システムの構成を示す図である。図１に示されるように、動画コンテンツ送受信システムは、送信サーバ装置（１０１、１５０、１５１）と再生装置１０２及びそれらを通信回線で接続するネットワーク１０３を有する。ネットワーク１−３の通信プロトコルとしては、ＨＴＴＰ(Hyper Text Transfer Protocol)及びＲＴＰ(Real-time Transport Protocol)を利用することが可能である。
【００１４】
再生装置１０２のコンテンツデータ一時記憶部１１７は映像及び音声データを含む動画コンテンツデータ（以下、単に「コンテンツデータ」ともいう。）を格納する。格納されたコンテンツデータはコンテンツデータ解析部１１６により、コンテンツデータのフォーマット構造が解析される。コンテンツデータ解析部１１６は、解析したフォーマット構造に基づきコンテンツデータに含まれる符号化データを読み出し、デコード用バッファ１１３に格納する。デコード処理部１１４は、読み出された符号化データを復号化し、画像処理部１２１は復号化されたデータをＤ／Ａ変換する。Ｄ／Ａ変換されたデータは表示装置１２２に表示されコンテンツデータが再生される。これらの処理は、ＲＯＭ１２０に格納されたプログラム等によりＣＰＵ１１８の制御の下に実行される。この際、処理に必要なデータ格納領域はメモリ１１９から適宜提供される。
【００１５】
次に、再生装置１０２におけるデータ処理の具体的な手順について説明する。まず、再生装置１０２は、データ入力部１２３（例えば、CD-ROM、DVD-ROM等のリムーバブルメディア等）を介して、動画コンテンツの先頭部分のデータを入力し、入力したデータをコンテンツデータ一時記憶部１１７に格納する。動画コンテンツの先頭部分のデータは、ネットワークコントローラ１１２の制御の下、通信回路１１１及びネットワーク１０３を介して送信サーバ装置１０１からダウンロードして、コンテンツデータ一時記憶部１１７に格納することも可能である。
【００１６】
コンテンツデータ一時記憶部１１７に格納された先頭部分のデータは、動画コンテンツ全体のデータではなく、一部のデータである。コンテンツデータ一時記憶部１１７の記憶容量としては、動画コンテンツの先頭部分のデータを格納できる記憶領域が確保されればよい。例えば、記憶容量の小さい携帯型の再生装置であっても、本発明の本実施形態を適用することは可能である。
【００１７】
予め、再生装置１０２に格納されている先頭部分のデータに続くコンテンツデータは、例えば、インターネットなどのネットワーク１０３を介して、再生装置１０２と接続が可能な送信サーバ装置１０１等に格納されているものとする。コンテンツデータ一時記憶部１１７に格納されている先頭部分のデータと、送信サーバ装置１０１等のコンテンツデータ記憶部１１０に格納されているコンテンツデータとにより、１つの動画コンテンツの全体を構成することが可能である。
【００１８】
コンテンツデータ一時記憶部１１７に格納されている動画コンテンツの先頭部分のデータには、先頭部分のデータに続くコンテンツデータの格納場所を示す格納情報（例えば、ＵＲＬ情報）が少なくとも１つ格納されているものとする。コンテンツデータ解析部１１６は格納情報を解析し、先頭部分のデータに続くコンテンツデータの格納場所を特定することができる。また、複数の格納情報が含まれている場合、複数の格納場所をそれぞれ特定することができるものとする。ネットワークコントローラ１１２は、コンテンツデータ解析部１１６が特定した格納場所について、それぞれ再生装置１０２との間の通信状況を評価する。例えば、ネットワークコントローラ１１２は、通信速度や通信の安定性等を評価して、最も再生に良いと判断される接続先（最もダウンロード速度（通信速度）の高速な通信系列）を選択する。
【００１９】
再生装置１０２のデコード処理部１１４が先頭部分のデータの再生処理を開始すると、ネットワークコントローラ１１２は、接続先の選択結果に基づいて先頭部分のデータに続くコンテンツデータを取得（ダウンロード）する。コンテンツデータの取得は、先頭部分のデータの再生処理と並列に実行される。このため、先頭部分のデータに続くコンテンツデータの取得に要する時間が待ち時間として顕在化することなくなる。すなわち、コンテンツデータの再生時において、コンテンツデータの取得のためにユーザが待たされるという遅延時間を無くすことが可能になる。
【００２０】
次に、動画コンテンツの再生手順について説明する。本発明の実施形態に好適なファイルフォーマットの例として、ISO Base Media File Format(ISO/IEC 14496 Part12)について説明する。ISO Base Media File Formatは、その拡張子から一般にＭＰ４ファイルと呼ばれることから、以下簡単のため、このフォーマット形式のファイルを「ＭＰ４ファイル」と呼ぶことにする。
【００２１】
ＭＰ４ファイル(ftyp)は、一般には図２の２０１に示すようなデータ構造となっている。大きく分けて符号化データが格納されたコンテンツデータ部（mdat）２０８と、符号化データに付随する時間情報や位置情報などのいわゆるメタデータを格納したヘッダ部（moov）２０２とから構成される。ヘッダ部２０２には、例えば、先頭部分のデータに続くコンテンツデータの格納場所を示す格納情報が更に含まれる。
【００２２】
本実施形態では、符号化されたコンテンツデータよりもサイズ的に小さなデータであるメタデータの全ては、動画コンテンツの先頭部分のコンテンツデータと共に再生装置１０２のコンテンツデータ一時記憶部１１７に格納されているものとする。
【００２３】
通常のＭＰ４ファイルの再生処理において、コンテンツデータ解析部１１６は、ヘッダ部２０２のメタデータ中に格納されているコンテンツデータの格納場所を示す情報を参照する。更に、接続先にあるデータのオフセット情報や、実際に読み出す個別の符号化データのサイズ情報などを元に、デコード用に用意されたデコード用バッファ１１３などに符号化データを書き出す。
【００２４】
本実施形態において、コンテンツデータ部２０８の先頭部分のコンテンツデータは、大きなタイムラグ無しに読み出しが可能なコンテンツデータ一時記憶部１１７に格納されている。先頭部分のコンテンツデータに続く動画コンテンツの符号化データの格納先は、コンテンツデータ解析部１１６によるメタデータ中に含まれる格納情報の解析により特定することが可能である。例えば、送信サーバ装置１０１のコンテンツデータ記憶部１１０に格納されていることが特定された場合、再生装置１０２は送信サーバ装置１０１から先頭部分のデータに続くコンテンツデータを取得することができる。
【００２５】
先頭部分のデータに続くコンテンツデータの格納場所を示す格納情報が複数ある場合、再生装置１０２は、いずれかの格納場所を選択してコンテンツデータを取得することが可能である。各ＵＲＬ情報により特定される格納場所には、同一のコンテンツデータが格納されているものとする。再生装置１０２から各ＵＲＬで特定される送信サーバ装置までの通信状況により、再生装置１０２は、どの格納場所からコンテンツデータを取得するか選択することができる。ここで、通信状況としては、ネットワーク１０３の通信負荷、各送信サーバ装置との接続の有無、各送信サーバ装置が動作中であるか等が考慮される。例えば、送信サーバ装置１０１との間で再生装置１０２が通信できない場合、その他の送信サーバ装置１５０または１５１と通信して、後続のコンテンツデータを取得することも可能である。また、再生装置１０２は、通信負荷を考慮して、コンテンツデータの転送に最も時間のかからない送信サーバ装置（１０１、１５０、１５１）を選択することも可能である。
【００２６】
再生装置１０２は、送信サーバ装置（１０１等）と接続する時点で、各ＵＲＬに特定される接続先までの通信速度や通信安定性などにより、最適と判断した送信サーバ装置からコンテンツデータを取得することが可能である。再生装置１０２は、通信負荷（通信速度や通信安定性など）を判断しながら動的にコンテンツデータの取得先を変更することができるものとする。例えば、再生装置１０２は、コンテンツデータのダウンロード速度が最も速い接続先を最適な接続先と判断することが可能である。再生装置１０２における接続先の選択については後に図１０を参照して詳細に説明するので、ここでは詳細な説明は省略する。
【００２７】
次に、符号化データ（コンテンツデータ）の格納場所を指示する仕組みについて、ＭＰ４ファイル形式の概念図である図２を参照しながら説明する。ＭＰ４ファイル形式において、ファイルに記録されるデータは「ＢＯＸ」と呼ばれるデータ構造により記述され、ＢＯＸを単位としてファイル２０１に各情報が記録される。コンテンツ全体のプレゼンテーションは「ムービー」、コンテンツを構成するメディアストリームのプレゼンテーションは「トラック」と呼ばれる。ヘッダ部（moov）２０２には、映像／音声データ全体を論理的に取り扱うビデオトラック２０３と音声のデータ全体を論理的に取り扱うオーディオトラック２０７が含まれている。ビデオトラック２０３とオーディオトラック２０７の基本的な構成内容は、ほとんど同等のものとなっている。
【００２８】
ビデオトラック２０３に含まれるデータは、例えば、コンテンツデータ部（mdat）２０８の符号化データ（コンテンツデータ）を復号化するためのデコーダの構成情報や動画像の矩形サイズなどの情報が含まれている。また、コンテンツデータのそれぞれのフレームデータ（サンプル、あるいは映像データの場合、ピクチャと呼ばれることもある）のサイズを示すサンプルサイズ２０５、それぞれのフレームデータのデコード時間が含まれている。更に、ビデオトラック２０３に含まれるデータとしては、プレゼンテーション時間を示すタイムスタンプ２０６、ファイル上の位置を示すオフセット２０４等が記録されている。コンテンツデータが格納されている場所を示す格納情報は、ヘッダ部（moov）２０２内にある「Data Reference Box」（dref）（３０１）というBOXに格納され、その記述は図３のように例示される。「Data Reference Box」中の「DataEntryBox」は、URL情報を示す場合、「DataEntryUrlBox」（３０２）の形式で記述される。ＭＰ４ファイル形式では「DataEntryUrlBox」（３０２）中に複数のデータの格納場所を登録することが可能であるが、同一時刻に再生処理されるコンテンツデータはただ１つしか示すことはできない。
【００２９】
そのため、「DataEntryUrlBox」（３０２）を、例えば「DataEntryUrlBox2」（３０３）のように拡張することで、同一時刻に再生処理が可能なコンテンツデータを複数のデータ格納場所を示す情報（系列）により記述する。「DataEntryUrlBox」（３０２）内の「entry_count」（３０４）で系列毎に、いくつのデータの格納場所を登録するかという要素数（エントリ）を設定する。エントリ毎にコンテンツデータの格納先に接続する期間（時間）を示す接続期間情報「duration」（３０５）とコンテンツデータの接続先を示す接続先情報「location」（３０６）を設定する。更に、接続先情報「location」（３０６）が異なることによって接続するコンテンツデータの格納先の絶対位置を補正する接続位置補正情報「offset_delta」（３０７）を設定する。「Data Reference Box」のentry_count（３０８）は系列の総数を表し、その総数分に対応した「DataEntryUrlBox2」（３０３）が記述されることになる。
【００３０】
再生装置１０２は再生処理を行う際、「Data Reference Box」（３０１）のentry_count（３０８）で示されるコンテンツデータの系列の内、任意の系列からコンテンツデータの格納先に接続することが可能である。そして、どの系列からデータの格納場所に接続しても同一のコンテンツデータを取得することが可能である。接続先情報「location」（３０６）が接続期間情報「duration」（３０５）に応じて変化する場合、ネットワークの通信状況等に応じてより条件の良い系列（送信サーバ装置１０１等）からコンテンツデータを取得することが可能である。ＭＰ４ファイルフォーマットでは、「ムービー」と「トラック」それぞれに、１秒を何分割かした最小の単位として時間を表現する「タイムスケール」という値が設定されている。例えば、タイムスケールが１０００であれば、そのタイムスケールで表される時間はミリ秒単位ということになる。図３の接続期間情報「duration」（３０５）は、エントリ毎にデータの格納場所に接続する期間（時間）を示す情報であるが、「ムービー」と「トラック」どちらのタイムスケールで表現しても効果としては同様である。
【００３１】
次に、図３の「DataEntryUrlBox2」において複数の系列が存在し、かつ、各々の系列が、任意の接続期間情報「duration」（３０５）毎に接続先情報「location」（３０６）が変化する場合の例を図４の参照により説明する。
【００３２】
図４において、コンテンツデータの格納場所を示す情報は３系列ある。系列１は、ローカルディスク、送信サーバ装置（以下、単に「サーバ」ともいう。）Ａ、サーバＤ、サーバＡと４つのエントリを有する。系列２は、ローカルディスク、サーバ、サーバＥと３つのエントリ、そして、系列３は、ローカルディスク、サーバＣと２つのエントリを有する。各系列において、最初のエントリはいずれもローカルディスク（コンテンツデータ一時記憶部１１７）を示す同一のＵＲＬを示している。各系列にエントリされているデータ（例えば、「サーバＡ：６００」）は、接続先情報「location」と接続期間情報「duration」を示しているものとする。説明を簡単化するために、ここでは、接続位置補正情報「offset_delta」（３０７）は省略し、タイムスケールは「１」としている。
【００３３】
図４の系列３の場合、サーバＣへの接続期間は「３５４０（秒）」である。系列２では、３５４０（秒）分の接続期間が、サーバＢで「９００（秒）」、サーバＥで「２６４０（秒）」と振り分けられている。系列１では、３５４０（秒）分の接続期間を、サーバＡで「６００（秒）」、サーバＤで「１８００（秒）」、サーバＡで「１１４０（秒）」と振り分けられている。
【００３４】
図４の場合、最初にエントリされているローカルディスクから矢印（４０１〜４０５）で示すように、サーバＡ、サーバＣ、サーバＥ、サーバＤ、サーバＡのようにコンテンツデータの接続先が切り替えられる。
【００３５】
図５Ａは、コンテンツデータの接続先が切り替えられた場合、各サーバのコンテンツデータへのアクセス（接続）を例示的に示す図である。各送信サーバ装置に格納されているコンテンツデータに再生装置１０２が接続した部分のデータが斜線で示されている。
【００３６】
ローカルディスクに格納されているデータにｔ０〜ｔ１（秒）接続した後、接続先はサーバＡに切り替えられる（接続期間はｔ１〜ｔ２（秒））。再生装置１０２のネットワークコントローラ１１２は、サーバＡに時刻ｔ１から始まるコンテンツデータの送信を要求し、サーバＡから時刻ｔ１〜ｔ２（秒）のコンテンツデータをダウンロード（取得）する。再生装置１０２とサーバＡとの接続は、再生装置１０２とサーバＡとの間の通信状況に応じて切り替えられる。尚、接続先の切り替えの具体的な処理は、図１０を参照して後に詳細に説明するので、ここでは説明を省略する。
【００３７】
ネットワークコントローラ１１２は、サーバＣと接続して時刻ｔ２から始まるコンテンツデータの送信を要求し、サーバＡから取得したコンテンツの終了時刻ｔ２に連続するコンテンツデータ（時刻ｔ２〜ｔ３）を取得する。ネットワークコントローラ１１２は、サーバＥと接続して時刻ｔ３から始まるコンテンツデータの送信を要求し、サーバＣから取得したコンテンツの終了時刻ｔ３に連続するコンテンツデータ（時刻ｔ３〜ｔ４）を取得する。次に、ネットワークコントローラ１１２は、サーバＤと接続して時刻ｔ４から始まるコンテンツデータの送信を要求し、サーバＥから取得したコンテンツの終了時刻ｔ４に連続するコンテンツデータ（時刻ｔ４〜ｔ５）を取得する。ネットワークコントローラ１１２はサーバＡと接続して時刻ｔ５から始まるコンテンツデータの送信を要求し、サーバＤから取得したコンテンツの終了時刻ｔ５に連続するコンテンツデータ(時刻ｔ５〜ｔ６)を取得し、コンテンツ全体のデータの取得を終了する。
【００３８】
再生装置１０２のネットワークコントローラ１１２が取得したコンテンツデータは、デコード処理部１１４により復号化され、再生される。
【００３９】
尚、ネットワークコントローラ１１２は、図５Ａの場合、連続した再生時刻のデータを各サーバから取得しているが、図５Ｂに示す時刻ｔ２〜ｔ２ａのように、部分的に重複するようにデータを取得することも可能である。部分的に重複するデータの取得により、ネットワーク１０３の通信状況の変動によりデータの送信が生じた場合でも、中断することなく再生を連続して行うことが可能になる。
【００４０】
図５Ａの例では、取得するデータの連続性を確保するために、再生の終了時刻と再生の開始時刻とを一致させているが、本発明の趣旨はこの例に限定されるものではない。例えば、図５Ｃに示すようにコンテンツデータが複数のフレーム（５０１〜６０６）から構成されているような場合、フレーム単位に取得するデータを特定するようにしてもよい。また、コンテンツデータがフレームの集合体であるブロック５０６、５０７により構成される場合、再生装置１０２のネットワークコントローラ１１２は、ブロック単位に取得するべきデータを要求することかできる。例えば、ブロック５０６が再生装置１０２のネットワークコントローラ１１２から要求された場合、送信サーバ装置は、ブロック５０６に含まれるフレーム１、フレーム２及びフレーム３のコンテンツデータを順次送信する。ブロック５０６に続くブロック５０７が更に要求された場合、送信サーバ装置は、ブロック５０７に含まれるフレーム４及びフレーム５を再生装置１０２側に送信し、フレーム３に続くフレーム４のコンテンツデータの再生により再生処理の連続性を確保できる。
【００４１】
同じコンテンツデータを供給可能な送信サーバ装置（Ａ〜Ｅ）が複数存在する場合、再生装置１０２は、各送信サーバ装置との通信状況を監視する。そして、再生装置１０２は、必要に応じて最も通信状況が良い送信サーバ装置に切り替えてコンテンツデータを取得することが可能である。送信サーバ装置１０１との通信制御は、再生装置１０２のネットワークコントローラ１１２によって制御される。通信回路１１１及びネットワーク１０３を介して、再生装置１０２は各送信サーバ装置（Ａ〜Ｅ等）との間で、コンテンツデータの取得の他、通信制御に必要な制御コード等の通信を行うことが可能である。また、再生装置１０２の送信サーバ管理部１１５は、各送信サーバ装置（Ａ〜Ｅ等）との通信状況を管理する。ネットワークコントローラ１１２は、送信サーバ管理部１１５の通信状況の管理結果に従い、最も通信状況が良い送信サーバ装置に切り替えてコンテンツデータを取得する。すなわち、再生装置１０２のコンテンツデータ一時記憶部１１７に最初に格納されているデータから読み取られた格納情報（複数のＵＲＬ情報を含む）は、送信サーバ管理部１１５で管理される。そして、各送信サーバ装置との通信状況の変化は、ネットワークコントローラ１１２によって制御されている通信回路１１１を通じて取得される。通信状況の変化を示すデータは送信サーバ管理部１１５にて管理され、ネットワークコントローラ１１２は、通信状況が良い送信サーバ装置に切り替えてコンテンツデータを取得する。
【００４２】
尚、送信サーバ装置を切り替える際、ネットワークコントローラ１１２は、切り替え時に映像の遅延（一時停止）が発生しないように、デコード処理部１１４で使用する符号化データを先読みしてデータを取得することも可能である。
【００４３】
本実施形態に係る送信サーバ装置１０１の構成は図１の１０１に示すようになっており、ネットワーク１０３との接続は、ネットワークコントローラ１０８によって制御される通信回路１０９を通して行われる。また、コンテンツデータ記憶部１１０に格納されたコンテンツデータは、再生装置１０２からのリクエストに従ってコンテンツデータ送信処理部１０４にて送信するデータが生成され、再生装置１０２に送信される。
【００４４】
ＣＰＵ１０５の全体的な制御の下、ＲＯＭ１０７に格納された制御プログラム（ファームウェア）により送信サーバ装置の処理が実行される。送信サーバ装置の処理に必要なメモリはメモリ１０６から適宜提供される。
【００４５】
次に、本実施形態に係る再生装置が、コンテンツデータの再生を行う際の、全体の処理の流れを図１０のフローチャートを参照して説明する。
【００４６】
再生処理が開始されると、ステップＳ１００１において、再生装置１０２のコンテンツデータ解析部１１６は、予めコンテンツデータ一時記憶部１１７に格納してあるコンテンツデータを解析する。
【００４７】
ステップＳ１００８において、コンテンツデータ解析部１１６は、再生するコンテンツデータのビットレートを解析する。
【００４８】
一方、ステップＳ１００２において、コンテンツデータ解析部１１６は、ヘッダ部２０２に記述されているコンテンツデータの格納先を示す格納情報の系列数を取得する。例えば、図４に示す場合、系列数は「３」として取得される。
【００４９】
ステップＳ１００３においいて、ネットワークコントローラ１１２は、コンテンツデータ解析部１１６が取得した各系列について、それぞれのダウンロード速度を測定する。ここで、格納情報の系列により特定される各送信サーバ装置（Ａ〜Ｅ等）と再生装置１０２との間の通信状況に基づいて、ネットワークコントローラ１１２は、各送信サーバ装置との間のダウンロード速度の測定が可能である。
【００５０】
ステップＳ１００４において、ネットワークコントローラ１１２は、測定されたダウンロード速度のうち、最も再生に良いと判断される接続先（最もダウンロード速度（通信速度）の高速な通信系列）を選択する。ステップＳ１００５において、ネットワークコントローラ１１２は、先のステップＳ１００４で選択された接続先が現在設定されている接続先のダウンロード速度よりも高速のデータのダウンロードが可能か否かを判定する。この判定結果に基づき、現状の設定よりもダウンロード速度が高速な接続先がある場合（Ｓ１００５−Ｙｅｓ）、処理をステップＳ１００６に進め、ネットワークコントローラ１１２は、通信回路１１１を制御して、接続先の切り替えを行う。
【００５１】
一方、ステップＳ１００５の判定で、現状の設定よりもダウンロード速度が高速な接続先がない場合（Ｓ１００５−Ｎｏ）、処理をステップＳ１００７に進め、現状の接続先の設定でコンテンツデータのダウンロードを開始する。
【００５２】
ステップＳ１０１０において、再生装置１０２のコード処理部１１４は、コンテンツデータ一時記憶部１１７に格納されたコンテンツデータの全ての再生が終了したか判定する。コンテンツデータの全ての再生が終了した場合（Ｓ１０１０−Ｙｅｓ）、処理は終了する。一方、コンテンツデータの全ての再生が終了していない再生途中の場合（Ｓ１０１０−Ｎｏ）、処理はステップＳ１００３に戻される。
【００５３】
ステップＳ１００３において、系列毎のダウンロード速度の測定をネットワークコントローラ１１２が再び実行する。そして、ステップＳ１００４において、ネットワークコントローラ１１２は、再び測定されたダウンロード速度のうち、最もダウンロード速度（通信速度）の高速な接続先を選択する。
【００５４】
ステップＳ１００５において、ネットワークコントローラ１１２は、先のステップＳ１００４で選択された接続先が現在設定されている接続先のダウンロード速度よりも高速のデータのダウンロードが可能か否かを再び判定する。この判定結果に基づき、現状の設定よりもダウンロード速度が高速な接続先がある場合（Ｓ１００５−Ｙｅｓ）、処理をステップＳ１００６に進め、ネットワークコントローラ１１２は、通信回路１１１を制御して、接続先の切り替えを行う。一方、ステップＳ１００５の判定で、現状の設定よりもダウンロード速度が高速な接続先がない場合（Ｓ１００５−Ｎｏ）、処理をステップＳ１００７に進める。
【００５５】
ステップＳ１００９において、ＣＰＵ１１８は、測定されたダウンロード速度と、先のステップＳ１００８で解析されたコンテンツデータのビットレートとに基づいて、次のコンテンツデータのダウンロード開示時間を計算する。
【００５６】
デコード処理部１１４は、タイマ１３０を用いてコンテンツデータの再生時間を管理することが可能であり、コンテンツデータの再生の進行と、ダウンロード開始時間とに基づいて、次のコンテンツデータを要求する。この要求に基づいて、ＣＰＵ１１８は、次のコンテンツデータのダウンロード開始タイミングを決定し、ネットワークコントローラ１１２は、この決定に基づいて、送信サーバ装置にコンテンツデータの送信を要求する。例えば、図５Ａに示すように、サーバＡから取得したコンテンツデータの再生が時刻ｔ２で終了する場合、ネットワークコントローラ１１２は、サーバＣに対して時刻ｔ２に連続するコンテンツデータの送信を要求する。
【００５７】
再生装置１０２のネットワークコントローラ１１２からの送信要求に応じて、送信サーバ装置は、対応するコンテンツデータを再生装置１０２に送信する。
【００５８】
接続先の選択と、コンテンツデータのダウンロードとを、コンテンツデータの全ての再生が終了するまで繰り返し行う。ステップＳ１００３からＳ１０１０の処理は一定時間間隔で繰り返し行うことが可能であり、通信状況に応じてコンテンツデータを取得するための接続先の切り替えが制御される。
【００５９】
以上説明したように、本実施形態に拠れば、動画データの再生開始に要する時間を短縮することが可能になる。
【００６０】
あるいは、本実施形態に拠れば、再生処理を行うにあたって先頭の符号化データを再生装置のローカルディスク上に格納することにより、データを取得するための待ち時間を要することなく再生処理を開始することが可能になる。
【００６１】
あるいは、符号化データを取得可能な送信サーバ装置が複数ある場合には、より通信状況の良い送信サーバ装置を選択して符号化データを取得することで、より安定した再生処理が可能になる。
【００６２】
あるいは、ローカルディスクから送信サーバ装置、或は送信サーバ装置から他の送信サーバ装置へデータの取得先を切り替える場合でも、データの先読み処理を行うことで、一時停止することなく再生処理を行うことが可能になる。
【００６３】
＜第２実施形態＞
次に、コンテンツデータが、送信サーバ装置１０１から、ＲＴＰ（Real-Time Transport Protocol）を使用して送信される実施形態について説明する。本実施形態では、第１実施形態の「Data Reference Box」において、以下にように１つ目のエントリがローカルディスクのＵＲＬを示し、２つ目のエントリがＲＴＰでのデータ送信を行う送信サーバ装置のＵＲＬが示されているものとする。
【００６４】
エントリ１ ・・・ file://ローカルディスク/start.mp4
エントリ２ ・・・ rtsp://***.***.***.***/###/content.mp4
この場合、まず先頭部分のコンテンツデータはコンテンツデータ一時記憶部１１７にある「start.mp4」から読み込まれる。それに続くコンテンツデータは、例えば、送信サーバ装置１０１上にある「content.mp4」を指定することによって、送信サーバ装置１０１から、ＲＴＰを使用してstart.mp4に続くコンテンツデータが再生装置１０２に送信される。
【００６５】
また、第１実施形態と同様にコンテンツデータ一時記憶部１１７にあるコンテンツの先頭データに続くコンテンツデータの送信元は、複数の系列が指定されていても良い。その場合、「DataEntryUrlBox」の内容を、図３で示した「DataEntryUrlBox2」のように更に系列数分のエントリを持つように拡張することで実現可能である。
【００６６】
図６は複数の系列にそれぞれ設定されているデータの格納場所を例示的に示す図である。この場合、各系列に設定されている要素数（エントリ）は２であり、エントリ１はいずれも同じ格納先であるローカルディスク上のファイルstart.mp4が指定されている。エントリ２は各々異なった送信サーバ装置（１、２、３）にあるコンテンツデータファイルcontent.mp4が指定されている。この様な構成により、再生装置１０２はローカルディスクにある分のコンテンツデータの再生を完了した後は、例えば、最も通信状況の良い送信サーバ装置１０１を選択してデータ送信を受けることが可能である。
【００６７】
本実施形態では、２つ目のエントリにＲＴＰを使用したコンテンツ送信元を指定すれば良い。接続先情報「location」に送信サーバ装置１０１のＵＲＬを指定する場合は、ＲＴＰで送信する性質上、期間（時間）指定とファイルオフセットの指示は無用である。そのため、接続期間情報「duration」と接続位置補正情報「offset_delta」は指定する必要は無い。ＲＴＰによるコンテンツデータの送信のエントリであることを識別するフラグを「DataEntryUrlBox2」に設けることにより、コンテンツデータ解析部１１６はＲＴＰによるコンテンツデータの送信のエントリであることを識別可能である。
【００６８】
コンテンツデータの送信元が１つの場合、ＭＰ４ファイル形式の標準のＢＯＸである「Data Reference Box」と「DataEntryUrlBox」の組み合わせと同様の構成でコンテンツデータの格納先を示すことが可能である。一方、コンテンツデータの格納先が複数ある場合は、第１実施形態で示した「DataEntryUrlBox2」のような拡張により、再生装置１０２は、必要に応じて送信元を切り替えてコンテンツデータを受信することが可能になる。
【００６９】
本実施形態に拠れば、動画データの再生開始に要する時間を短縮することが可能になる。
【００７０】
本実施形態に拠れば、再生処理に際して先頭のコンテンツデータを再生装置のローカルディスク上に格納することで、データを取得するための待ち時間を要することなく再生処理を開始することが可能になる。
【００７１】
あるいは、コンテンツデータを取得可能な送信サーバ装置が複数ある場合には、より通信状況の良い送信サーバ装置を選択して符号化データを取得することで、より安定した再生処理が可能になる。
【００７２】
あるいは、ローカルディスクから送信サーバ装置、或は送信サーバ装置から他の送信サーバ装置へデータの取得先を切り替える場合でも、データの先読み処理を行うことで、一時停止することなく再生処理を行うことが可能になる。
【００７３】
＜第３実施形態＞
次に本発明の第３実施形態として、再生装置１０２側に予め保管されているコンテンツデータが、ＭＰ４ファイルの形式の一つであるMovieFragment形式である場合の実施形態について説明する。図７は、MovieFragment形式のＭＰ４ファイルのデータ構造を説明する図である。MovieFragment形式のＭＰ４ファイル７０１は、図２に示したＭＰ４ファイル２０１に対して、（mvex）７０２、（moof）７０５、（mdat）７０６が追加された構成となっている。
【００７４】
（mvex）７０２は、MovieFragment形式による拡張部分の情報を示す情報である。また、「Movie_Fragment_BOX」（moof）７０５と、「Media_Data_BOX」（mdat）７０６とは、対を成すコンテンツデータ部である。また、MovieFragment形式のＭＰ４ファイル７０１は、コンテンツのヘッダ情報およびコンテンツデータを任意の時間単位で分割することができる。分割された「フラグメント」はファイルの先頭から時系列順に記録することが可能である。コンテンツ全体の属性情報を含む先頭の（moov）２０２には、（mdat）２０８に含まれるデータに関する情報を保持する他、フラグメント部分を含む全体の再生時間などの情報を格納する（mvex）７０２が配置されている。
【００７５】
ここで、参照番号２０８で示される（mdat）は、「Media_Data_BOX」を示し、参照番号７０２で示される（mvex）は、「Movie_Extends_BOX」を示すものとする。
【００７６】
次に出現する「Movie_Fragment_BOX」（moof）７０５はフラグメント部分のヘッダ情報であり、「Media_Data_BOX」（mdat）７０６に含まれるデータに関する情報を保持する。「Movie_Fragment_BOX」（moof）７０５と「Media_Data_BOX」（mdat）７０６の組み合わせが以下同様に追加されていく形で構成される。
【００７７】
MovieFragment形式のＭＰ４ファイルでは、前述のように「Movie_BOX」（moov）２０２の中にMovieFragment形式による拡張情報を格納している「Movie_Extends_BOX」（mvex）７０２が存在する。（mvex）７０２に含まれるデータは、ムービー全体の再生時間(duration)７０３の他、フラグメント部分に含まれるコンテンツデータのサンプルサイズやサンプル毎の再生時間等のデフォルト情報７０４を設定することが可能である。
【００７８】
（mvex）７０２にデフォルト値を設定することにより、後に続く「Movie_Fragment_BOX」(moof)７０５内のサンプル情報でデフォルト値を使用する場合、サンプル毎の値の設定を省略することができる。このようにMovieFragment形式では、メタデータとそれに対応するコンテンツデータを1つのブロックとして、複数のブロックが時系列順に連結したファイル構造とすることができる。
【００７９】
次にMovieFragment形式のＭＰ４ファイルを用いた本発明の第３実施形態を説明する。第１及び第２実施形態２と同様に再生装置１０２側には、再生するコンテンツデータのうち、先頭部分のデータがコンテンツデータ一時記憶部１１７に予め格納されているものとする。先頭部分のコンテンツデータに続くコンテンツデータはネットワーク上の送信サーバ装置１０１から送信されるものとする。この時、再生装置１０２側に予め格納されているコンテンツデータには、先頭のヘッダ部である（moov）２０２と、それに対応する（mdat）２０８に、それ以降のコンテンツデータの格納先を指定する情報が含まれる。
【００８０】
具体的には、例えば、（mvex）７０２内に、後に続く(moof)７０５のＵＲＬを示すＢＯＸを追加する。ここで追加するＢＯＸは、例えば、図８に示すように、「MoofReferenceBox」(mref)８０１ような構成を備えている。「MoofReferenceBox」(mref)８０１は本実施形態を実現するために独自に定義したＢＯＸである。(mref)８０１の「entry_count」８０２は(moof)７０５とそれに対応する「Media_Data_BOX」（mdat）７０６の組を最小の単位として分割されたコンテンツデータの数を示している。更に、接続先情報「location」８０３は「entry_count」（ｉ）番目の「Movie_Fragment_BOX」が存在するURL情報を示している。また「size」８０４は、そのURLに格納された連続する全ての(moof)７０５とそれに対応する（mdat）７０６を加えたサイズ情報を示している。接続先情報「location」８０３で示されるURLには(moof)７０５とそれに対応する（mdat）７０６がファイルシステム上、連続した形で存在している。
【００８１】
つまり、この「MoofReferenceBox」の内容を簡単に記すと図９のような、ＵＲＬと、サイズ（バイト）の情報を含むデータ構成となる。
【００８２】
図８に示す独自ＢＯＸを持つコンテンツの再生処理を開始すると、先頭の（moov）２０２とそれに対応する「Media_Data_BOX」２０８は、通常のMovieFragment形式のＭＰ４ファイルと同様の再生処理が行なわれる。その後、続けて「MoofReferenceBox」８０１のＵＲＬ情報により接続される「Movie_Fragment_BOX」７０５とそれに対応する「Media_Data_BOX」７０６の再生処理が続けて行なわれる。
【００８３】
尚、再生装置１０２に予め格納されている先頭部分のコンテンツデータは、先頭の（moov）２０２とそれに対応する（mdat）２０８だけではなく、(moof)７０５とそれに対応する（mdat）７０６も連続したデータとして格納されていても良い。
【００８４】
本実施形態に拠れば、動画データの再生開始に要する時間を短縮することが可能になる。
【００８５】
本実施形態に拠れば、再生処理を行うにあたって先頭の符号化データを再生装置のローカルディスク上に格納することにより、データを取得するための待ち時間を要することなく再生処理を開始することが可能になる。
【００８６】
あるいは、符号化データを取得可能な送信サーバ装置が複数ある場合には、より通信状況の良い送信サーバ装置を選択して符号化データを取得することで、より安定した再生処理が可能になる。
【００８７】
あるいは、ローカルディスクから送信サーバ装置、或は送信サーバ装置から他の送信サーバ装置へデータの取得先を切り替える場合でも、データの先読み処理を行うことで、一時停止することなく再生処理を行うことが可能になる。
【００８８】
＜他の実施形態＞
なお、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システムあるいは装置に供給することによっても、達成されることは言うまでもない。また、システムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読出し実行することによっても、達成されることは言うまでもない。
【００８９】
この場合、記憶媒体から読出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【００９０】
プログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク，ハードディスク，光ディスク，光磁気ディスク，ＣＤ−ＲＯＭ，ＣＤ−Ｒ，不揮発性のメモリカード，ＲＯＭなどを用いることができる。
【００９１】
また、コンピュータが読出したプログラムコードを実行することにより、前述した実施形態の機能が実現される。また、プログラムコードの指示に基づき、コンピュータ上で稼働しているＯＳ（オペレーティングシステム）などが実際の処理の一部または全部を行い、その処理によって前述した実施形態が実現される場合も含まれることは言うまでもない。
【図面の簡単な説明】
【００９２】
【図１】本発明の第１実施形態に係る好適な動画コンテンツ送受信システムの構成を示す図である。
【図２】ＭＰ４ファイルの構成を説明する図である。
【図３】ＭＰ４ファイルのData Reference Boxを説明する図である。
【図４】コンテンツデータの接続順を説明する図である。
【図５Ａ】コンテンツデータの接続先が切り替えられた場合、各サーバのコンテンツデータへのアクセス（接続）を例示的に示す図である。
【図５Ｂ】送信サーバ装置から再生装置が取得する部分的に重複するデータの取得を説明する図である。
【図５Ｃ】送信サーバ装置から再生装置が取得するデータの構成を例示的に説明する図である。
【図６】複数の系列にそれぞれ設定されているデータの格納場所を例示的に示す図である。
【図７】MovieFragment形式のＭＰ４ファイルのデータ構造を説明する図である。
【図８】「MoofReferenceBox」(mref)を説明する図である。
【図９】「MoofReferenceBox」(mref)に基づくデータ構成を例示する図である。
【図１０】本発明の本実施形態に係る再生装置が、コンテンツデータの再生を行う際の、全体の処理の流れを説明する図である。
【図１】
2007295038.tif 000003
【図２】
2007295038.tif 000004
【図３】
2007295038.tif 000005
【図４】
2007295038.tif 000006
【図５Ａ】
2007295038.tif 000007
【図５Ｂ】
2007295038.tif 000008
【図５Ｃ】
2007295038.tif 000009
【図６】
2007295038.tif 000010
【図７】
2007295038.tif 000011
【図８】
2007295038.tif 000012
【図９】
2007295038.tif 000013
【図１０】
2007295038.tif 000014