(57)【特許請求の範囲】
【請求項１】
コンテンツデータの再生開始前に、前記コンテンツデータの先頭を始点とする所定領域のデータを取得して、前記取得したデータから、コンテンツデータの複数の再生開始可能点の再生時刻、並びに、当該再生開始可能点の再生に必要なデータのコンテンツ内の位置及びデータ量を示すリストの領域を算出するインデックス情報領域判定部と、
前記リストから、表示中の画像より後に表示する画像の生成に必要なデータのコンテンツ内の領域を算出する次回表示画像用データ領域判定部と、
再生画像の表示更新の時間を示す再生画像表示更新間隔が経過するごとに、表示画像を、前記再生画像表示更新間隔と倍速数ｎとの積だけ再生時刻が隔たった画像に更新する再生制御部と、
（Ａ）予め定められた速度以上の順方向または逆方向再生中は、前記次回表示画像用データ領域判定部が算出した領域のデータのサーバからの取得を繰り返し、（Ｂ）再生開始前、または、予め定められた速度未満の順方向若しくは逆方向再生中は、前回取得したコンテンツデータの領域に対してデータ末方向に連続した領域のデータのサーバからの取得を繰り返すコンテンツデータ取得部と、
を備えるコンテンツ再生装置。
【請求項２】
請求項１に記載のコンテンツ再生装置であって、
前記インデックス情報領域判定部によって算出された領域のデータを取得するインデックス情報取得部と、
を備えるコンテンツ再生装置。
【請求項３】
請求項２に記載のコンテンツ再生装置であって、
前記インデックス情報領域判定部は、前記コンテンツデータの再生開始前に、前記コンテンツデータの先頭から、Data Object内のData Objectのサイズが記載された領域までのデータを少なくとも取得して、前記取得したデータに記載されたHeader ObjectのサイズとData Objectのサイズとの合計を前記リストの領域の始点として算出し、Index Objectのサイズを、前記リストの領域のサイズとして算出するコンテンツ再生装置。
【請求項４】
請求項１から３のいずれか１項に記載のコンテンツ再生装置であって、
前記次回表示画像用データ領域判定部は、前記リストにエントリされた再生開始可能点の中から、前記再生開始可能点の再生時刻が表示中の画像の次に表示する画像の再生時刻に最も近い再生開始可能点を選択して、当該再生開始可能点に対応する画像の情報が格納されたコンテンツ内の領域の始点と、前記領域のサイズとを算出し、
前記コンテンツデータ取得部は、前記次回表示画像用データ領域判定部が算出した前記領域のデータをサーバから取得し、
前記再生制御部は、前記コンテンツデータ取得部が取得したデータから画像を生成して、表示画像を前記画像に更新するコンテンツ再生装置。
【請求項５】
請求項１から３のいずれか１項に記載のコンテンツ再生装置であって、
前記次回表示画像用データ領域判定部は、前記リストにエントリされた再生開始可能点の中から、前記再生開始可能点の再生時刻が、表示中の画像の次に表示する画像の再生時刻より前で、且つ、前記再生時刻に最も近い第１の再生開始可能点と、前記第１の再生開始可能点の再生時刻より後で、且つ、前記第１の再生開始可能点の再生時刻に最も近い第２の再生開始可能点とを選択して、前記第１の再生開始可能点に対応する画像の情報から前記第２の再生開始可能点に対応する画像の情報までが格納されたコンテンツ内の領域の始点と、前記領域のサイズとを算出し、
前記コンテンツデータ取得部は、前記次回表示画像用データ領域判定部が算出した前記領域のデータをサーバから取得し、
前記再生制御部は、前記コンテンツデータ取得部が取得したデータから、表示中の画像の次に表示する画像の再生時刻に該当する画像を生成して、表示画像を前記画像に更新するコンテンツ再生装置。
【請求項６】
請求項１から３のいずれか１項に記載のコンテンツ再生装置であって、
前記次回表示画像用データ領域判定部は、
前記リストにエントリされた再生開始可能点の再生時刻の間隔が、前記再生画像表示更新間隔と倍速数ｎとの積以下の場合に、請求項４に記載の方法でコンテンツ内の領域の始点と前記領域のサイズとを算出し、
前記リストにエントリされた再生開始可能点の再生時刻の間隔が、前記再生画像表示更新間隔と倍速数ｎとの積を超える場合に、請求項５に記載の方法でコンテンツ内の領域の始点と前記領域のサイズとを算出するコンテンツ再生装置。
【請求項７】
請求項１から６のいずれか１項に記載のコンテンツ再生装置であって、
前記リスト取得中に検出した受信ビットレートと、コンテンツデータのヘッダに記載された最大ビットレートとからｎ１＝（受信ビットレート/最大ビットレート）を求め、当該装置のデマックスの処理可能最大ビットレートと前記最大ビットレートとからｎ２＝（デマックスの処理可能最大ビットレート/最大ビットレート）を求め、前記ｎ１及びｎ２のうち、より小さい方の値を前記倍速数ｎとするコンテンツ再生装置。
【請求項８】
請求項１から６のいずれか１項に記載のコンテンツ再生装置であって、
前記リスト取得中に検出した受信ビットレートと、コンテンツデータのヘッダに記載された最大ビットレートとからｎ１＝（受信ビットレート/最大ビットレート）を求め、当該装置のデマックスの処理可能最大ビットレートと前記最大ビットレートとからｎ２＝（デマックスの処理可能最大ビットレート/最大ビットレート）を求め、当該装置のビデオデコーダーの処理可能最大ビットレートと、ビデオデータのヘッダに記載されたビットレートとからｎ３＝（ビデオデコーダーの処理可能最大ビットレート/ビデオデータビットレート）を求め、前記ｎ１、ｎ２及びｎ３のうち、最も小さい値を前記倍速数ｎとするコンテンツ再生装置。
【請求項９】
請求項７または８に記載のコンテンツ再生装置であって、
前記コンテンツデータ取得部は、前記ｎ１が前記倍速数ｎを超え、再生速度がｎ１倍以下であるときに、前回取得したコンテンツデータの領域に対してデータ末方向に連続した領域のデータのサーバからの取得を繰り返すコンテンツ再生装置。
【請求項１０】
請求項１から９のいずれか１項に記載のコンテンツ再生装置であって、
画像の開始時刻と次の画像の表示開始時刻との時間差が、前記再生画像表示更新間隔より大きい場合に、前記再生画像表示更新間隔を増加させるコンテンツ再生装置。
【請求項１１】
請求項１から１０のいずれか１項に記載のコンテンツ再生装置であって、
前記コンテンツデータ取得部は、ビデオデータのヘッダに記載されたプロファイルがフレーム間双方向予測符号化を禁止するプロファイルである場合、または、ビデオデータのヘッダ内に、フレーム間双方向予測符号化を行うときにセットされるフラグがセットされていない場合に、前記次回表示画像用データ領域判定部によって算出された領域のデータをサーバから取得する処理を、取得中のフレームの再生時刻が次回表示画像の表示時刻以上となったときに、その次のフレームのスタートコードが検出されたパケット末において終了するコンテンツ再生装置。
【請求項１２】
請求項１から１０のいずれか１項に記載のコンテンツ再生装置であって、
前記コンテンツデータ取得部は、ＶＯＬヘッダに記載されたプロファイルがＭＰＥＧ−４のsimple objectである場合、または、ＶＯＬヘッダのlow_delayがセットされていない場合に、前記次回表示画像用データ領域判定部によって算出された領域のデータをサーバから取得する処理を、取得中のＶＯＰの再生時刻が次回表示画像の表示時刻以上となったときに、その次のＶＯＰスタートコードが検出されたパケット末において終了するコンテンツ再生装置。
【請求項１３】
請求項１から１０のいずれか１項に記載のコンテンツ再生装置であって、
前記コンテンツデータ取得部は、前記次回表示画像用データ領域判定部によって判定された領域のデータをサーバから取得する処理を、イントラ符号化されたことを示すフレームのヘッダを２回検出し、その後１回フレームのスタートコードを検出したとき、そのパケット末において終了するコンテンツ再生装置。
【請求項１４】
請求項１から１０のいずれか１項に記載のコンテンツ再生装置であって、
前記コンテンツデータ取得部は、前記次回表示画像用データ領域判定部によって判定された領域のデータをサーバから取得する処理を、I−ＶＯＰのヘッダを２回検出し、その後１回ＶＯＰスタートコードを検出したとき、そのパケット末において終了するコンテンツ再生装置。
【請求項１５】
請求項１から１０のいずれか１項に記載のコンテンツ再生装置であって、
前記コンテンツデータ取得部は、前記次回表示画像用データ領域判定部によって判定された領域のデータをサーバから取得する処理を、ＧＯＶヘッダまたはＧＯＰヘッダを２回検出し、その後２回ＶＯＰスタートコードまたはフレームのスタートコードを検出したとき、そのパケット末において終了するコンテンツ再生装置。
【請求項１６】
請求項１１から１５のいずれか１項に記載のコンテンツ再生装置であって、
前記次回表示画像用データ領域判定部は、前記リストが、前記再生開始可能点の再生に必要なデータのデータ量の情報を含んでいないとき、表示中の画像より後に表示する画像の生成に必要なデータのコンテンツ内の領域の始点のみを算出し、前記コンテンツデータ取得部は、データの取得処理を終了するまで、前記始点に続く領域のデータ取得を継続するコンテンツ再生装置。
【請求項１７】
コンテンツデータの再生開始前に、前記コンテンツデータの先頭を始点とする所定領域のデータを取得して、前記取得したデータから、コンテンツデータの複数の再生開始可能点の再生時刻、並びに、当該再生開始可能点の再生に必要なデータのコンテンツ内の位置及びデータ量を示すリストの領域を算出するインデックス情報領域判定ステップと、
前記リストから、表示中の画像より後に表示する画像の生成に必要なデータのコンテンツ内の領域を算出する次回表示画像用データ領域判定ステップと、
再生画像の表示更新の時間を示す再生画像表示更新間隔が経過するごとに、表示画像を、前記再生画像表示更新間隔と倍速数ｎとの積だけ再生時刻が隔たった画像に更新する再生制御ステップと、
（Ａ）予め定められた速度以上の順方向または逆方向再生中は、前記次回表示画像用データ領域判定ステップが算出した領域のデータのサーバからの取得を繰り返し、（Ｂ）再生開始前、または、予め定められた速度未満の順方向若しくは逆方向再生中は、前回取得したコンテンツデータの領域に対してデータ末方向に連続した領域のデータのサーバからの取得を繰り返すコンテンツデータ取得ステップと、
を備えるコンテンツ再生方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、Ｗｅｂサーバ上のコンテンツデータを取得して再生する携帯電話、ＰＤＡ、ＰＣ等の装置に関し、特殊再生の実現を図るものである。
【背景技術】
【０００２】
インターネット環境の整備や移動通信技術の進展に伴い、Ｗｅｂサーバ上の動画コンテンツを移動体端末で閲覧することが盛んに行われるようになって来ている。
【０００３】
映像・音声を多重化したマルチメディア情報をサーバから受信して端末で再生する場合、所望のマルチメディア情報を全て受信する前に再生を開始し、情報の受信と再生とを並行して実行する「ストリーミング再生」と呼ばれている方法を取ることにより、端末で必要な情報蓄積領域を少なくすることができる。
【０００４】
映像は、情報量を圧縮するため、フレーム情報を単独で符号化するイントラ符号化と、他のフレームとの差分を符号化する予測符号化とが行われて伝送される。受信側では、受信した画像データがイントラ符号化されている場合は、それを単独で復号化して画像を再生できるが、画像データが予測符号化されている場合は、差分の基になる画像データを復号化した後でなければ復号化も再生もできない。
【０００５】
下記特許文献１には、ビデオサーバから端末にマルチメディア情報をストリーミング伝送するシステムにおいて、早送りや巻き戻しといった特殊再生を可能にする方式が提案されている。このシステムでは、ビデオサーバが、イントラ符号化画像のパケット番号と、当該パケットの再生時刻と、当該パケットのストリーム先頭からの位置とを記述したテーブルを「再生開始可能点」に関する情報として保持している。そして、端末から再生時刻を指定してスキップが要求されたときに、ビデオサーバは、このテーブルから所望された再生時刻の最寄りの再生開始可能点を算出し、その再生開始可能点からのコンテンツデータを送信する。
【０００６】
また、下記特許文献２には、この場合に、無駄なデータの受信を避ける方式が提案されている。この方式では、端末がビデオサーバから、先ず、再生時刻を指定して再生開始可能点の情報を取得し、該当する画像データが、既に端末のバッファ内に取り込まれているか否かを判断する。そして、取り込まれていない場合にのみ、ビデオサーバに再生開始可能点からの画像データを要求する。
【特許文献１】特開２００２−１９９３４４号公報
【特許文献２】特開２００３−２８４０２５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、これらのシステムでは、サーバが、再生開始可能点に関する情報テーブルを保持し、端末からの要求を受けて、このテーブルを検索し、検索された点からデータ送信を開始する機能を有していなければならないが、リンク先ページのファイル名を指定するタグ＜ａ  ｈｒｅｆ＝“”＞や、画像を貼り付けるタグ＜ｉｍｇ  ｓｒｃ＝“”＞によってコンテンツデータのロケーションを示している通常のＷｅｂサーバには、このような機能はない。
【０００８】
本発明は、上記の事情に鑑みてなされたものであり、ＲＴＳＰ（Real Time Streaming Protocol）などのストリーミング用プロトコルに対応しない通常のＷｅｂサーバ等に置か
れたコンテンツデータを特殊再生することが可能なコンテンツ再生装置及びコンテンツ再生方法を提供することを目的としている。
【課題を解決するための手段】
【０００９】
本発明のコンテンツ再生装置は、コンテンツデータの再生開始前に、前記コンテンツデータの先頭を始点とする所定領域のデータを取得して、前記取得したデータから、コンテンツデータの複数の再生開始可能点の再生時刻、並びに、当該再生開始可能点の再生に必要なデータのコンテンツ内の位置及びデータ量を示すリストの領域を算出するインデックス情報領域判定部と、前記リストから、表示中の画像より後に表示する画像の生成に必要なデータのコンテンツ内の領域を算出する次回表示画像用データ領域判定部と、再生画像の表示更新の時間を示す再生画像表示更新間隔が経過するごとに、表示画像を、再生画像表示更新間隔と倍速数ｎとの積だけ再生時刻が隔たった画像に更新する再生制御部と、（Ａ）予め定められた速度以上の順方向または逆方向再生中は、次回表示画像用データ領域判定部が算出した領域のデータのサーバからの取得を繰り返し、（Ｂ）再生開始前、または、予め定められた速度未満の順方向若しくは逆方向再生中は、前回取得したコンテンツデータの領域に対してデータ末方向に連続した領域のデータのサーバからの取得を繰り返すコンテンツデータ取得部とを備えている。なお、前記再生開始可能点は、画像情報がイントラ符号化されており、前後の画像情報がなくても再生可能な点である。
【００１０】
このコンテンツ再生装置は、コンテンツを特殊再生する場合に必要な画像データを自ら判定してサーバから取得する。
【００１１】
また、本発明のコンテンツ再生装置は、インデックス情報領域判定部によって算出された領域のデータを取得するインデックス情報取得部とを備えている。
【００１２】
そのため、特殊再生に必要な画像データを判定するためのリストを、コンテンツデータから取得することができる。
【００１３】
また、本発明のコンテンツ再生装置のインデックス情報領域判定部は、コンテンツデータの再生開始前に、コンテンツデータの先頭から、Data Object内のData Objectのサイズが記載された領域までのデータを少なくとも取得して、前記取得したデータに記載されたHeader ObjectのサイズとData Objectのサイズとの合計を前記リストの領域の始点として算出し、Index Objectのサイズを、前記リストの領域のサイズとして算出する。
【００１４】
こうして、コンテンツデータに含まれるIndex Objectを、リストとして取得することができる。
【００１５】
また、本発明のコンテンツ再生装置の次回表示画像用データ領域判定部は、前記リストにエントリされた再生開始可能点の中から、再生開始可能点の再生時刻が表示中の画像の次に表示する画像の再生時刻に最も近い再生開始可能点を選択して、当該再生開始可能点に対応する画像の情報が格納されたコンテンツ内の領域の始点と、前記領域のサイズとを算出し（これを方法Ａと言う。）、コンテンツデータ取得部は、次回表示画像用データ領域判定部が算出した前記領域のデータをサーバから取得し、再生制御部は、コンテンツデータ取得部が取得したデータから画像を生成して、表示画像を前記画像に更新する。
【００１６】
そのため、所望の再生点に近い再生時刻を有するイントラ符号化画像を表示することのできる最小限のデータが取得され、そのイントラ符号化画像が、次の画像として表示される。
【００１７】
また、本発明のコンテンツ再生装置の次回表示画像用データ領域判定部は、前記リストにエントリされた再生開始可能点の中から、再生開始可能点の再生時刻が、表示中の画像の次に表示する画像の再生時刻より前で、且つ、前記再生時刻に最も近い第１の再生開始可能点と、第１の再生開始可能点の再生時刻より後で、且つ、第１の再生開始可能点の再生時刻に最も近い第２の再生開始可能点とを選択して、第１の再生開始可能点に対応する画像の情報から第２の再生開始可能点に対応する画像の情報までが格納されたコンテンツ内の領域の始点と、前記領域のサイズとを算出し（これを方法Ｂと言う。）、コンテンツデータ取得部は、次回表示画像用データ領域判定部が算出した前記領域のデータをサーバから取得し、再生制御部は、コンテンツデータ取得部が取得したデータから、表示中の画像の次に表示する画像の再生時刻に該当する画像を生成して、表示画像を前記画像に更新する。
【００１８】
そのため、所望の再生点の画像を表示することのできる最小限のデータが取得され、所望の再生点の画像が、次の画像として表示される。
【００１９】
また、本発明のコンテンツ再生装置の次回表示画像用データ領域判定部は、前記リストにエントリされた再生開始可能点の再生時刻の間隔が、再生画像表示更新間隔と倍速数ｎとの積以下の場合に、前記方法Ａを適用し、前記リストにエントリされた再生開始可能点の再生時刻の間隔が、再生画像表示更新間隔と倍速数ｎとの積を超える場合に、前記方法Ｂを適用する。
【００２０】
そのため、イントラ符号化画像だけの表示では所定の倍速数ｎが満たせない場合に、方法Ｂにより、所望の再生点の画像を表示することのできる最小限のデータが取得される。
【００２１】
また、本発明のコンテンツ再生装置は、前記リスト取得中に検出した受信ビットレートと、コンテンツデータのヘッダに記載された最大ビットレートとからｎ１＝（受信ビットレート/最大ビットレート）を求め、当該装置のデマックスの処理可能最大ビットレートと前記最大ビットレートとからｎ２＝（デマックスの処理可能最大ビットレート/最大ビットレート）を求め、前記ｎ１及びｎ２のうち、より小さい方の値を倍速数ｎとする。
【００２２】
また、本発明のコンテンツ再生装置は、前記ｎ１、ｎ２とともに、当該装置のビデオデコーダーの処理可能最大ビットレートと、ビデオデータのヘッダに記載されたビットレートとからｎ３＝（ビデオデコーダーの処理可能最大ビットレート/ビデオデータビットレート）を求め、前記ｎ１、ｎ２及びｎ３のうち、最も小さい値を倍速数ｎとする。
こうして、高速再生の倍速数ｎが装置の特性に基づいて自動的に設定される。
【００２３】
また、本発明のコンテンツ再生装置のコンテンツデータ取得部は、前記ｎ１が前記倍速数ｎを超え、再生速度がｎ１倍以下であるときに、前回取得したコンテンツデータの領域に対してデータ末方向に連続した領域のデータのサーバからの取得を繰り返す。
【００２４】
再生における倍速数ｎと切り離して、データ取得が行われる。
【００２５】
また、本発明のコンテンツ再生装置は、画像の表示開始時刻と次の画像の表示開始時刻との時間差が、再生画像表示更新間隔より大きい場合に、再生画像表示更新間隔を増加させる。
【００２６】
こうして、再生画像の枯渇を防止する。
【００２７】
また、本発明のコンテンツ再生装置のコンテンツデータ取得部は、ビデオデータのヘッダに記載されたプロファイルがフレーム間双方向予測符号化を禁止するプロファイルである場合、または、ビデオデータのヘッダ内に、フレーム間双方向予測符号化を行うときにセットされるフラグがセットされていない場合に、次回表示画像用データ領域判定部によって算出された領域のデータをサーバから取得する処理を、取得中のフレームの再生時刻が次回表示画像の表示時刻以上となったときに、その次のフレームのスタートコードが検出されたパケット末において終了する。
【００２８】
また、本発明のコンテンツ再生装置のコンテンツデータ取得部は、ＶＯＬヘッダに記載されたプロファイルがＭＰＥＧ−４のsimple objectである場合、または、ＶＯＬヘッダのlow_delayがセットされていない場合に、次回表示画像用データ領域判定部によって算出された領域のデータをサーバから取得する処理を、取得中のＶＯＰの再生時刻が次回表示画像の表示時刻以上となったときに、その次のＶＯＰスタートコードが検出されたパケット末において終了する。
【００２９】
また、本発明のコンテンツ再生装置のコンテンツデータ取得部は、次回表示画像用データ領域判定部によって判定された領域のデータをサーバから取得する処理を、イントラ符号化されたことを示すフレームのヘッダを２回検出し、その後１回フレームのスタートコードを検出したとき、そのパケット末において終了する。
【００３０】
また、本発明のコンテンツ再生装置のコンテンツデータ取得部は、次回表示画像用データ領域判定部によって判定された領域のデータをサーバから取得する処理を、Ｉ−ＶＯＰのヘッダを２回検出し、その後１回ＶＯＰスタートコードを検出したとき、そのパケット末において終了する。
【００３１】
また、本発明のコンテンツ再生装置のコンテンツデータ取得部は、次回表示画像用データ領域判定部によって判定された領域のデータをサーバから取得する処理を、ＧＯＶヘッダまたはＧＯＰヘッダを２回検出し、その後２回ＶＯＰスタートコードまたはフレームのスタートコードを検出したとき、そのパケット末において終了する。
【００３２】
このように、このコンテンツ再生装置では、再生用データの取得を最小限で打ち切る処理が行われるため、再生画像表示更新間隔が短い場合でも、必要な画像データを確実に取得することができる。
【００３３】
また、本発明のコンテンツ再生装置の次回表示画像用データ領域判定部は、前記リストが、再生開始可能点の再生に必要なデータのデータ量の情報を含んでいないとき、表示中の画像より後に表示する画像の生成に必要なデータのコンテンツ内の領域の始点のみを算出し、コンテンツデータ取得部は、データの取得処理を終了するまで、前記始点に続く領域のデータ取得を継続する。
【００３４】
従って、次回表示画像用データ領域判定部は、データ取得領域の始点だけを算出することとしても良い。
【００３５】
本発明のコンテンツ再生方法は、コンテンツデータの再生開始前に、前記コンテンツデータの先頭を始点とする所定領域のデータを取得して、前記取得したデータから、コンテンツデータの複数の再生開始可能点の再生時刻、並びに、当該再生開始可能点の再生に必要なデータのコンテンツ内の位置及びデータ量を示すリストの領域を算出するインデックス情報領域判定ステップと、前記リストから、表示中の画像より後に表示する画像の生成に必要なデータのコンテンツ内の領域を算出する次回表示画像用データ領域判定ステップと、再生画像の表示更新の時間を示す再生画像表示更新間隔が経過するごとに、表示画像を、再生画像表示更新間隔と倍速数ｎとの積だけ再生時刻が隔たった画像に更新する再生制御ステップと、（Ａ）予め定められた速度以上の順方向または逆方向再生中は、次回表示画像用データ領域判定ステップが算出した領域のデータのサーバからの取得を繰り返し、（Ｂ）再生開始前、または、予め定められた速度未満の順方向若しくは逆方向再生中は、前回取得したコンテンツデータの領域に対してデータ末方向に連続した領域のデータのサーバからの取得を繰り返すコンテンツデータ取得ステップとを備えている。なお、前記再生開始可能点は、画像情報がイントラ符号化されており、前後の画像情報がなくても再生可能な点である。
【００３６】
このコンテンツ再生方法は、コンテンツを特殊再生する場合に必要な画像データを自ら判定してサーバから取得する。
【発明の効果】
【００３７】
本発明のコンテンツ再生装置及びコンテンツ再生方法は、サーバが、通常のＷｅｂサーバのように、再生開始可能点に関する情報テーブルを利用したサービス機能を有していない場合でも、このサーバ上に置かれたコンテンツを対象として高速早送り、巻き戻し等の特殊再生を行うことができる。
【００３８】
また、取得する再生用データを最小限で打ち切る処理を行っているため、次の表示画像の多重分離、デコード、画像更新などの再生処理中に、前記画像より更に遅いタイミングで表示する画像のデータ取得が可能であり、データの取得を効率的に行うことができる。
【００３９】
その結果として、大量のデータ取得を必要とする画像更新間隔の短い高速再生を行うことも可能となる。また、データの先読みを行っているため、通信レートが短時間低下しても、再生データの枯渇を引き起こす可能性が低くなる。
【発明を実施するための最良の形態】
【００４０】
図２は、本発明の実施形態におけるコンテンツ再生装置の構成を示すブロック図である。このコンテンツ再生装置は、例えば携帯電話端末やＰＤＡ等の携帯端末やＰＣに設けられる。図２は、それらの装置のコンテンツデータ処理に係る部分の構成を示している。
【００４１】
このコンテンツ再生装置は、ユーザインタフェース２０１と、コンテンツデータの要求及び受信を行うデータ要求・受信部２０３と、受信したコンテンツデータを蓄積する受信データ用バッファ２０４と、再生開始可能点の再生時刻情報及び再生開始可能点の位置情報を含むインデックス情報を格納するインデックス情報記憶領域２０５と、コンテンツデータを音声データと映像データとに分離する多重分離部２０６と、多重分離部２０６において分離された、符号化された音声データを格納する音声データ用バッファ２０７と、多重分離部２０６において分離された、符号化された映像データを格納する映像データ用バッファ２０８と、符号化された音声データを復号する音声デコーダー２０９と、符号化された映像データを復号する映像デコーダー２１０と、音声デコーダー２０９が復号したデータを蓄積する音声用メモリ２１１と、映像デコーダー２１０が復号したデータを蓄積するフレームメモリ２１２と、音声／映像多重化ファイルのヘッダを解析する多重化ファイルヘッダ解析部２１３と、符号化された映像データのヘッダを解析する映像データヘッダ解析部２１４と、符号化された音声データのヘッダを解析する音声データヘッダ解析部２１５と、ユーザインタフェース２０１からの入力に応じて、前述の各機能ブロックを制御するコントローラ２０２とを少なくとも備える。なお、前記再生開始可能点は、画像情報がイントラ符号化されており、前後の画像情報がなくても再生可能な点である。
【００４２】
ユーザインタフェース２０１は、ボタンなどの入力装置、液晶ディスプレイ、スピーカーなどの出力装置、及びこれらの装置のドライバを含む。データ要求・受信部２０３は、ＨＴＴＰプロトコル（HyperText Transfer Protocol）を使用したデータの送受信機能を有する。
【００４３】
多重分離部２０６は、ＡＳＦ（Advanced System Format）やＭＰ４等の多重化ファイルからＭＰＥＧ−４等で符号化された映像データと、ＡＡＣ（Advanced Audio Coding）等で符号化された音声データとを分離する機能を有する。なお、前記多重分離部２０６は、ＭＰＥＧ−２  ＰＳ、ＭＰＥＧ−２  ＴＳ、ＷＭＶ（Windows Media Video）、ＡＶＩ（Audio Video still Images）などの、他の多重化フォーマットや、ＭＰＥＧ−２などの他の映像符号化方式や、ＡＭＲ（Audio/MODEM Riser）、ＭＰ３などの他の音声符号化フォーマットに対応するものであってもよい。
【００４４】
コントローラ２０２は、Ｗｅｂクライアントプログラムを備えており、このプログラムは、ヘッダ解析、多重化分離、音声データ及び映像データの復号、画像レイアウト、画像更新の制御を行う。
【００４５】
図６は、コントローラ２０２の機能をブロック図で示している。コントローラ２０２は、コンテンツデータのインデックス情報位置を識別するインデックス情報領域判定部２４、コンテンツデータからインデックス情報を取得するインデックス情報取得部２５、次回に表示する画像データのコンテンツ上のデータ位置を算出する次回表示画像用データ領域判定部２３、その画像データをサーバから取得するコンテンツデータ取得部２２、及び、再生を制御する再生制御部２１の各機能を実行する。
【００４６】
次に、このコンテンツ再生装置の動作について、ＡＳＦファイルフォーマットのコンテンツを再生する場合を例に取り、図１、図３、図４及び図５のフロー図を用いて説明する。ここでは、特殊再生として、高速再生を行う場合の手順を示している。
【００４７】
なお、ＡＳＦファイルは、図７（ａ）に示すように、Header Object、Data Object及びIndex Objectの領域で構成されている。また、Data Objectは、図７（ｂ）に示す領域で構成されている。Index Objectには、Data Objectのイントラ符号化された画像が格納された各Data Packetの位置、データ量、再生時刻等の情報が記述されている。
【００４８】
図１において、ユーザがＷｅｂページ上のリンク先を選択すると、コントローラ２０２は、データ要求・受信部２０３にリンク先のデータ取得を指示し、データ要求・受信部２０３は、データを先頭アドレスから取得し始める（ステップＳ１０１）。取得されたデータは、受信データ用バッファ２０４に蓄積される。
【００４９】
そして、本例では、ユーザがユーザインタフェース２０１を介して高速再生の開始を指示しているため、コントローラ２０２は、高速再生の倍速数を決定する（ステップＳ１０２）。決定の詳細な手順は図３に示されている。
【００５０】
ＡＳＦフォーマットでは、０バイト目から１３４バイト目のデータエリアが、Header Objectの先頭から、同Object内のFile Properties Object末までに当たる。File Properties Objectには、Data Objectに含まれるストリームの全般的な特性が規定されている。
【００５１】
コントローラ２０２は、インデックス情報領域判定部２４及びインデックス情報取得部２５としての処理を次のように行う。
【００５２】
０バイト目から１３４バイト目までのデータを取得し、その取得が完了すると（ステップＳ３０１でＹ）、コントローラ２０２は、そのコンテンツデータが該コンテンツ再生装置で再生可能かどうかを判断し（ステップＳ３０２）、再生が不可能であれば（ステップＳ３０２でＮ）、データの取得を中止して（ステップＳ３０３ａ）、空白ページを表示し（図１のステップＳ１０３でＮの判断の後、ステップＳ１０４ｂ）、処理を終了する。再生が可能であれば（ステップＳ３０２でＹ）、データ取得を継続する。
【００５３】
取得データ量がHeader ObjectのサイズにData Objectのヘッダサイズ（２４バイト）を加えた値に達したら（ステップＳ３０３ｂでＹ）、Data Objectのデータ取得を一時停止し（ステップＳ３０４）、Header Objectのサイズと、Data Objectのヘッダに記述されたData Objectのサイズとを加算してIndex Objectの先頭アドレスを求め、Index Objectの先頭アドレスからIndex Objectのサイズのデータを取得してインデックス情報記憶領域２０５に格納する（ステップＳ３０５）。また、このIndex Objectの取得中に、受信レートdownload_bitrateの検出を併せて行う。
【００５４】
Index Objectの取得が完了すると、コントローラ２０２は、次の方法で高速再生の倍速数（即ち、データ取得・再生方法を切り替える倍速数）ｎを決定する（ステップＳ３０６）。
【００５５】
式（１）で求められるn1と、式（２）で求められるn2とを比較し、そのうち、より小さい値を倍速数ｎに決定する。
n1=download_bitrate/content_bitrate（１）
n2=demux_bitrate/content_bitrate   （２)
【００５６】
ここで、content_bitrateはコンテンツデータのヘッダに記載された最大ビットレートであり、demux_bitrateは、多重分離部２０６におけるデマックスの処理可能最大ビットレートである。
【００５７】
なお、前記n1と、前記n2と、式（３）で求められるn3のうち、最も小さい値を倍速数ｎとしても良い。
n3=decode_bitrate/video_bitrate            （３) 
【００５８】
ここで、decode_bitrateは、映像デコーダー２１０の処理可能最大ビットレートであり、video_bitrateは、ビデオデータのヘッダに記載された最大ビットレートである。
【００５９】
また、前記n1がｎを超える場合は、ｎ倍以上の再生中であっても、再生速度がn1倍以下であれば、データ取得方法は切り替えず、再生方法のみ切り替えるようにしても良い。
【００６０】
上記の方法で倍速数ｎを決定したら、データ取得を再開し（ステップＳ３０７）、高速再生法決定処理を終了する。
【００６１】
図１に戻り、ステップＳ１０３でＹの判断の後、コントローラ２０２は、取得データのＡＳＦパケット内に記載された再生時刻が予め定められたプリバッファリング時間を越えたら（ステップＳ１０４ａ）、再生を開始する（ステップＳ１０５）。前記再生時刻は、Data Objectのペイロード内のReplicated Dataに記載されている。
【００６２】
コントローラ２０２は、再生制御部２１及びコンテンツデータ取得部２２としての処理を次のように行う。
【００６３】
再生開始（ステップＳ１０５）後は、最終パケットの再生が完了する（ステップＳ１０６でＹ）か、または、ユーザインタフェース２０１により再生停止が指示された（ステップＳ１０７でＹ）場合は、再生を停止し（ステップＳ１０８ｂ）、終了する。終了後、該コンテンツ再生装置の状態は、前記Ｗｅｂページ表示時の状態に戻る。
【００６４】
また、ｎ倍以上の高速再生が指示されていないときは（ステップＳ１０８ａでＮ）、ユーザインタフェース２０１によりｎ倍以上の高速再生が解除された直後であれば（ステップＳ１０９ａでＹ）、後述する次回表示画像データ取得処理を終了し（ステップＳ１１０ａ）、前回取得したデータ以降のデータを連続的に取得し、再生画像の自動更新（通常再生）を開始する（ステップＳ１１１ａ）。また、高速再生の解除直後でなければ（ステップＳ１０９ａでＮ）、通常再生を、最終パケットの再生が完了する（ステップＳ１０６）か、ユーザインタフェース２０１により再生停止が指示されるか（ステップＳ１０７）、あるいは、ユーザインタフェース２０１によりｎ倍以上の高速再生が指示されるまで、継続する。
【００６５】
一方、ユーザインタフェース２０１によりｎ倍以上の高速再生が指示された場合は（ステップＳ１０８ａでＹ）、コントローラ２０２は、再生制御部２１及びコンテンツデータ取得部２２としての次の処理を行う。
【００６６】
まず、速度変更が指示された直後は（ステップＳ１０９ｂでＹ）、以下の処理を実行する。
【００６７】
多重分離部２０６での分離や、音声デコーダー２０９及び映像デコーダー２１０での復号、コンテンツに記載された再生時刻に基づく再生画像の自動更新を停止し、データの取得も停止する（ステップＳ１１０ｂ）。
【００６８】
続いて、式（４）により、再生画像の表示更新間隔（即ち、再生画像の表示が更新される時間間隔）t_durationと倍速数ｎとを乗算して、ｎ倍速で表示を更新するときの更新前画像と更新後画像との再生時刻の間隔（即ち、更新前画像に設定されている通常再生時の再生時刻と更新後画像に設定されている通常再生時の再生時刻との時間差）t_intervalを計算する（ステップＳ１１１ｂ）。
t_interval=n×t_duration                      （４）
【００６９】
続いて、次回表示画像データ取得処理を開始する（ステップＳ１１２）。なお、次回表示画像データ取得処理が既に走っている場合は、その処理を終了してから開始する。
【００７０】
ここまでが、速度変更が指示された直後の処理である。尚、速度変更が指示されない場合は（ステップＳ１０９ｂでＮ）、ステップＳ１１０ｂ，Ｓ１１１ｂ，Ｓ１１２の処理は行なわれない。
【００７１】
次回表示画像データ取得処理の詳細については後述するが、この処理では、インデックス情報にエントリされたイントラ符号化画像データの再生時刻間隔に相当する「インデックス情報内に記載されたエントリ時間間隔index_entry_time_interval」が、更新前画像・更新後画像間の再生時刻間隔t_intervalより短いか長いかにより対応が違って来る。
【００７２】
即ち、表示中の更新前画像の再生時刻にt_intervalを加えて更新後画像の再生時刻目標値presentaion_time_targetが算出され、（index_entry_time_interval）≦（t_interval）である場合は、再生時刻目標値に最も近い再生時刻を有するイントラ符号化画像のデータ範囲が次回表示画像データとして取得される。また、（index_entry_time_interval）＞（t_interval）である場合は、再生時刻目標値より前で再生時刻目標値に最も近い再生時刻を有するイントラ符号化画像から、再生時刻目標値より後で再生時刻目標値に最も近い再生時刻を有するイントラ符号化画像までのデータ範囲が次回表示画像データとして取得される。
【００７３】
図１に戻り、ｎ倍以上の高速再生が指示されている場合は（ステップＳ１０８ａ）、引き続き、以下の処理を実行する。
【００７４】
次回表示画像データ取得処理によって取得されたデータのうち、未再生データが１つ以上存在し（ステップＳ１１３でＹ）、かつ前回の表示開始時刻から再生画像表示更新間隔t_durationが経過している場合は（ステップＳ１１４でＹ）、次回表示画像データ取得処理によって取得されたデータのうち、最も早いタイミングで取得され、かつ未再生なデータのpresentation_timeに最も近い画像の表示を開始する（ステップＳ１１５）。
【００７５】
このpresentation_timeについては後に詳述するが、（index_entry_time_interval）≦（t_interval）である場合は、次回表示画像データから復号されたイントラ符号化画像の再生時刻がpresentation_timeとされ、再生時刻目標値に最も近い再生時刻を有する前記イントラ符号化画像が表示される。また、（index_entry_time_interval）＞（t_interval）である場合は、再生時刻目標値がpresentation_timeとされ、次回表示画像データから復号された画像であって、再生時刻目標値の再生時刻を有する画像が表示される。
【００７６】
前回の表示開始時刻と前々回の表示開始時刻との差が、t_durationより大きい場合は（ステップＳ１１６でＹ）、t_durationを２倍とし、式（４）を用いてt_intervalを再計算する（ステップＳ１１７）。表示完了後、更新前画像データを破棄する（ステップＳ１１８）。前回の表示開始時刻と前々回の表示開始時刻との差が、t_durationより小さい場合は（ステップＳ１１６でＮ）、表示完了後、更新前画像データを破棄する（ステップＳ１１８）。
【００７７】
次に、次回表示画像データ取得処理の内容について述べる。図４は、次回表示画像データ取得処理の手順を詳述している。コントローラ２０２は、コンテンツデータ取得部２２としての処理を次のように行う。
【００７８】
まず、後述する取得データオフセット及び取得データサイズ算出処理を実行して、次回表示画像データのコンテンツ内の領域の始点offset_startと、前記領域のサイズget_sizeとを算出し（ステップＳ４０１）、前記処理で算出されたoffset_startを始点とし、サイズget_sizeのデータの取得を開始する（ステップＳ４０２）。続いて、インデックス情報内に記載されたエントリ時間間隔であるindex_entry_time_intervalがt_intervalより大きい（index_entry_time_interval）＞（t_interval）である場合は（ステップＳ４０３でＹ）、ＭＰＥＧ４で符号化されたビデオデータのprediction_typeがイントラ符号化を示す値に設定されているＶＯＰ（Video Object Plane）ヘッダを２回検出し、その後１回ＶＯＰスタートコードを検出した場合は（ステップＳ４０４ａでＹ）、データ取得を停止する（ステップＳ４０５ａ）。
【００７９】
そして、データ取得が完了していない又はデータ取得が停止されていない場合は（ステップＳ４０６でＮ）、ステップＳ４０３に戻り、本処理の終了が指示されていなければ（ステップＳ４０７でＮ）、ステップＳ４０１に戻る。これは取得データ量が多くなり過ぎるのを防ぐ処置である。
【００８０】
一方、ステップＳ４０３において、（index_entry_time_interval）≦（t_interval）である場合は（ステップＳ４０３でＮ）、offset_startを始点とし、サイズget_sizeのデータの取得を行い、prediction_typeがイントラ符号化を示す値に設定されているＶＯＰヘッダを検出されたか否か判定する（ステップＳ４０４ｂ）。該ヘッダを検出したと判定した場合（ステップＳ４０４ｂでＹ）、該ＶＯＰを含むＡＳＦパケットのData Objectのペイロード内のReplicated Dataに記載されたpresentation timeを、前述のpresentation_timeにセットする（ステップＳ４０５ｂ）。尚、ステップＳ４０４ｂにおいて、ＶＯＰヘッダを検出しなかった場合（ステップＳ４０４ｂでＮ）、ステップＳ４０５ｂの処理は行なわれない。
【００８１】
そして、データ取得完了又はデータ取得の停止後に（ステップＳ４０６でＹ）、本処理の終了が指示されていれば（ステップＳ４０７でＮ）、本処理を終了する。
【００８２】
この処理において、（index_entry_time_interval）≦（t_interval）に該当し（ステップＳ４０３でＮ）、ステップＳ４０４ｂ、Ｓ４０５ｂを実行した場合には、再生対象画像は全てI−ＶＯＰとなり、次回表示画像の再生時刻は、必ずしも再生時刻目標値presentaion_time_targetの直近のフレームの再生時刻とは一致しない。しかし、この場合は、取得サイズget_sizeが少ない。
【００８３】
一方、（index_entry_time_interval）＞（t_interval）のときは、次回表示画像の再生時刻が、再生時刻目標値presentaion_time_targetの直近となるが、しかし、この場合は、取得サイズget_sizeが多い。
【００８４】
前述の処理におけるステップＳ４０３の分岐条件は、再生時刻間隔のばらつきと取得データ量のどちらか一方が突出して大きくならないことを狙って設定した条件である。この条件は、他の条件、例えば、index_entry_time_intervalがt_intervalの１／２より大きいか否かとしてもよい。また、全ての場合について、ステップＳ４０４ａ、ステップＳ４０５ａを実行するようにしてもよく、全ての場合について、ステップＳ４０４ｂ、ステップＳ４０５ｂを実行するようにしてもよい。
【００８５】
また、ステップＳ４０４ａの条件は、ＧＯＶ（Group Of VOP）スタートコードを２回検出し、その後２回ＶＯＰスタートコードを検出した場合としてもよい。
【００８６】
この処理において、取得されるデータは、index_entry_time_intervalがt_intervalより大きい場合は、所望の再生点の画像を表示することの出来る最小限のデータであり、そうでない場合は、所望の再生点に近いイントラ符号化されたＶＯＰを表示することの出来る最小限のデータである。後者は前者よりもデータ取得量をより小さくすることができるが、index_entry_time_intervalが大きくなればなるほど再生速度が不正確となる。index_entry_time_intervalの値にかかわらず、全ての場合に前者の処理としてもよく、また、index_entry_time_intervalがt_intervalと予め定められた１より小さい定数との積より大きい場合のみ前者の処理としてもよい。
【００８７】
また、ＶＯＬヘッダが示すVideo Object TypeがＭＰＥＧ−４のsimple Objectであるか、またはlow_delayがセットされていない場合は、Ｂ−ＶＯＰがないコンテンツであることが明白なので、この場合は、ＡＳＦパケットのData Objectのペイロード内のReplicated Dataに記載されたpresentation timeが再生点以上となったら、その次のＶＯＰスタートコードが検出されたパケットの末において、データの取得を打ち切ってもよい。
【００８８】
また、取得中のＶＯＰヘッダのmodulo_time_baseとvop_time_increment、最も最近取得されたＧＯＶヘッダのtime_code、ＶＯＬ（Video Object Layer）ヘッダのvop_time_increment_resolutionを用いて、式（５）で計算した再生時刻が再生点以上となったら、その次のＶＯＰスタートコードが検出されたパケットの末において、データの取得を打ち切ってもよい。
vop_presentation_time
=asf_offset+time_code+modulo_time_base
+vop_time_increment×vop_time_increment/vop_time_increment_resolution     （５）
【００８９】
ここで、asf_offsetは、ＡＳＦパケットの、コンテンツ先頭のＶＯＰが格納されたペイロードに記載された再生時刻である。
【００９０】
なお、次回表示画像データ取得処理は、該コンテンツ再生装置が、自装置内に、取得したデータを格納する領域を確保できた場合のみ動作するようにし、確保できない場合は、処理を一時停止状態とする。また、ここでは、データの取得を再生の進行状況に依存せずに行う例を示したが、次に表示する画像の多重分離、デコード、画像更新などの再生処理中に、さらに次のデータの取得をするという形でもよい。
また、上記は動画フォーマットがＭＰＥＧ−４である場合の例であるが、例えばＭＰＥＧ−１やＭＰＥＧ−２であれば、前記ＶＯＰをピクチャ（フレーム）、前記ＧＯＶをＧＯＰ（Group of Pictures）とすればよい。
【００９１】
次に、ステップ４０１の取得データオフセット及び取得データサイズ算出処理の内容について、図５のフロー図により説明する。コントローラ２０２は、次回表示画像用データ領域判定部２３としての処理を次のように行う。
【００９２】
まず、式（６）により、次回表示画像の再生時刻目標値presentation_time_targetを計算する（ステップＳ５０１）。
presentation_time_target=now_presentation_time_target+t_interval      （６）
【００９３】
ここで、now_presentation_time_targetは、ｎ倍高速再生が指示されてから初めて画像が更新されるまでの間は表示中の画像の再生時刻であり、それ以外の場合は、前回画像更新時の再生時刻目標値である。
【００９４】
次に、インデックス情報の検索開始エントリ番号start_entry_numを式（７）により求め、インデックス情報内に記載されたエントリ番号start_entry_numに対応するＡＳＦのパケット番号を、取得開始パケット番号start_packet_numにセットする（ステップＳ５０２）。なお、ＡＳＦのパケット番号は、先頭を０として数えることにする。
start_entry_num=presentation_time_target/index_entry_time_interval+1  （７）
index_entry_time_intervalがt_intervalを超えている（index_entry_time_interval）＞（t_interval）の場合は（ステップＳ５０３でＹ）、検索対象のエントリ番号num_eをstart_entry_numから一つカウントアップし（ステップＳ５０４ａ）、next_packet_numにカウントアップしたエントリ番号num_eに当たるＡＳＦのパケット番号をセットし、next_packet_countにカウントアップしたエントリ番号num_eにおけるパケットカウント（パケット数）をセットし（ステップＳ５０５）、next_packet_numがstart_packet_numを超えるまで、検索対象のエントリ番号num_eを１ずつカウントアップする（ステップＳ５０６でＮ、ステップＳ５０７ｂ）。
【００９５】
next_packet_numがstart_packet_numを超えたら（ステップＳ５０６でＹ）、取得開始位置offset_startを式（８）により求め、さらに、取得サイズget_sizeを、式（９）により求める（ステップＳ５０７ａ）。
offset_start=start_packet_num×packet_size+packet0_offset                      (８)
get_size=(next_packet_num-start_packet_num+next_packet_count)×packet_size    （９）
【００９６】
ここで、packet_size はコンテンツのヘッダに記載されたＡＳＦのパケット長、packet0_offset はＡＳＦの先頭パケットの開始位置、next_packet_numはエントリ番号num_eにあたるパケット番号、next_packet_countはエントリ番号num_eにおけるパケットカウントである。
【００９７】
一方、ステップＳ５０３において、index_entry_time_intervalがt_intervalを超えていない（index_entry_time_interval）≦（t_interval）の場合は（ステップＳ５０３でＮ）、next_packet_numにインデックス情報内に記載されたpresentation_time_target直近のパケット番号をセットし、next_packet_countにインデックス情報内に記載されたpresentation_time_target直近のパケットカウントをセットする（ステップＳ５０４ｂ）。続いて、取得開始位置offset_startを式（８）により求め、さらに、取得サイズget_sizeを、式（９）により求める（ステップＳ５０７ａ）。最後に、本データブロックのpresentation_timeにpresentation_time_targetをセットする(ステップＳ５０８)。
【００９８】
データブロックは、ステップＳ４０１で算出されたエリアのデータであり、presentation_timeは、各データブロックを再生する際に表示する画像の再生時刻である。本発明の実施形態に係るコンテンツ再生装置は、各データブロックごとに、このpresentation_time、及び、該装置内のデータ格納領域を記憶する。
【００９９】
なお、ステップＳ４０３の条件は、別の条件としても構わないが、ステップＳ５０３の条件と同一のものとする。
【０１００】
また、ここではインデックス情報が、再生開始可能点の、再生時刻及びコンテンツ内の位置及び該再生開始可能点を再生するのに必要なデータ量のリストである場合について述べたが、このうちデータ量については、情報そのものが存在しないか、または、該再生装置が利用しなくてもよい。この場合は、取得開始位置offset_startのみを式（８）により求めて、取得サイズget_sizeは求めず、該再生装置がデータをサーバから取得する処理を、前述のようにヘッダに記載された情報を元に、打ち切るようにする。
【０１０１】
以上に述べた方法により、サーバが、通常のＷｅｂサーバのように、再生開始可能点に関する情報テーブルも持たず、テーブルを検索して要求された位置からのデータ送信を行う機能も持たない場合でも、このサーバ上に置かれたコンテンツの高速再生が可能となる。
【０１０２】
また、再生用データを最小限で打ち切る処理を行っているため、次の表示画像の多重分離、デコード、画像更新などの再生処理中に、前記画像より更に遅いタイミングで表示する画像のデータの取得が可能となるため、データの取得が効率的に行え、結果として、大量のデータ取得を必要とする画像更新間隔の短い高速再生が可能となる。また、データの先読みを行っているため、通信レートが短時間低下しても、再生データの枯渇を引き起こす可能性が低くなる。
【０１０３】
以上、本発明の各種実施形態を説明したが、本発明は前記実施形態において示された事項に限定されず、明細書の記載、並びに周知の技術に基づいて、当業者がその変更・応用することも本発明の予定するところであり、保護を求める範囲に含まれる。
【産業上の利用可能性】
【０１０４】
本発明は、Ｗｅｂサーバ等に保持されたコンテンツをストリーミング再生する携帯電話、ＰＤＡ、ＰＣ等の各種端末に適用して、コンテンツの特殊再生を可能にすることができ、各種端末の有用性を高めることができる。
【図面の簡単な説明】
【０１０５】
【図１】本発明の実施形態におけるコンテンツ再生装置の基本シーケンスを説明するためのフローチャート
【図２】本発明の実施形態におけるコンテンツ再生装置の概略構成を示す図
【図３】本発明の実施形態におけるコンテンツ再生装置の高速再生法決定処理を説明するためのフローチャート
【図４】本発明の実施形態におけるコンテンツ再生装置の次回表示画像データ取得処理を説明するためのフローチャート
【図５】本発明の実施形態におけるコンテンツ再生装置の取得データオフセット及び取得データサイズ算出処理を説明するためのフローチャート
【図６】本発明の実施形態におけるコンテンツ再生装置のコントローラの機能を示すブロック図
【図７】ＡＳＦファイルの構成を示す図
【符号の説明】
【０１０６】
２１  再生制御部
２２  コンテンツデータ取得部
２３  次回表示画像用データ領域判定部
２４  インデックス情報領域判定部
２５  インデックス情報取得部
２０１  ユーザインタフェース
２０２  コントローラ
２０３  データ要求・受信部
２０４  受信データ用バッファ
２０５  インデックス情報記憶領域
２０６  多重分離部
２０７  音声データ用バッファ
２０８  映像データ用バッファ
２０９  音声デコーダー
２１０  映像デコーダー
２１１  音声用メモリ
２１２  フレームメモリ
２１３  多重化ファイルヘッダ解析部
２１４  映像データヘッダ解析部
２１５  音声データヘッダ解析部
【図１】
0004740690.tif 000002
【図２】
0004740690.tif 000003
【図３】
0004740690.tif 000004
【図４】
0004740690.tif 000005
【図５】
0004740690.tif 000006
【図６】
0004740690.tif 000007
【図７】
0004740690.tif 000008