(57)【特許請求の範囲】
【請求項１】
映像コンテンツのストリームの入力を受けるデータ取得部と、
前記映像コンテンツのストリームから動画像ストリームと音声ストリームとを取得するストリーム処理部と、
前記動画像ストリームを復号し、復号動画像フレームを得る動画像復号部と、
時刻情報に基づき前記復号動画像フレームの出力を調整する第１の動作と、前記時刻情報と無関係に前記復号動画像フレームを出力する第２の動作とを実行する画像出力部と、
前記音声ストリームを復号し、復号音声データを得る音声復号部と、
前記復号音声データを出力する音声出力部と、
を備え、
前記ストリーム処理部は、ユーザ操作に応じて前記映像コンテンツのストリームから前記音声ストリームを取得し、
前記画像出力部は、前記復号音声データが前記音声出力部に入力された時点で動作を前記第１の動作から前記第２の動作に切り替えることを特徴とする映像コンテンツ再生装置。
【請求項２】
前記画像出力部は、前記音声出力部が前記復号音声データの出力を開始した時点で動作を前記第２の動作から前記第１の動作に切り替えることを特徴とする請求項１に記載の映像コンテンツ再生装置。
【請求項３】
前記画像出力部は、前記第２の動作において前記復号動画像フレームの時刻情報を記憶し、
前記音声出力部は、前記復号動画像フレームの時刻情報を参照して前記復号音声データの出力開始を決定することを特徴とする請求項１または２に記載の映像コンテンツ再生装置。
【請求項４】
前記音声出力部は、前記復号音声データの出力開始時刻と前記復号動画像フレームの時刻情報の差分を算出し、
前記画像出力部は、前記第１の動作において前記復号動画像フレームの時刻情報を前記差分により補正することを特徴とする請求項３に記載の映像コンテンツ再生装置。
【請求項５】
前記画像出力部に入力される前記復号動画像フレームの時刻情報の間隔が所定の値を超える場合にのみ、前記第１の動作から前記第２の動作への切り替えを行うことを特徴とする請求項１乃至４のいずれか１項に記載の映像コンテンツ再生装置。
【請求項６】
複数の映像コンテンツを一覧表示する際に、前記画像出力部は、音声を出力する対象の映像コンテンツについてのみ前記第１の動作から前記第２の動作への切り替えを行うことを特徴とする請求項１乃至４のいずれか１項に記載の映像コンテンツ再生装置。
【請求項７】
映像コンテンツのサムネールを表示する映像コンテンツ再生装置の制御方法であって、
映像コンテンツのストリームの入力を受けるデータ取得ステップと、
前記映像コンテンツのストリームから動画像ストリームと音声ストリームとを取得するストリーム処理ステップと、
前記動画像ストリームを復号し、復号動画像フレームを得る動画像復号ステップと、
時刻情報に基づき前記復号動画像フレームの出力を調整する第１の動作と、前記時刻情報と無関係に前記復号動画像フレームを出力する第２の動作とを実行する画像出力ステップと、
前記音声ストリームを復号し、復号音声データを得る音声復号ステップと、
前記復号音声データを出力する音声出力ステップと、
を有し、
前記ストリーム処理ステップにおいて、ユーザ操作に応じて前記映像コンテンツのストリームから前記音声ストリームを取得し、
前記画像出力ステップにおいて、前記音声出力ステップにおいて前記復号音声データが入力された時点で動作を前記第１の動作から前記第２の動作に切り替えることを特徴とする映像コンテンツ再生装置の制御方法。
【請求項８】
前記画像出力ステップにおいて、前記音声出力ステップにおいて前記復号音声データの出力を開始した時点で動作を前記第２の動作から前記第１の動作に切り替えることを特徴とする請求項７に記載の映像コンテンツ再生装置の制御方法。
【請求項９】
前記画像出力ステップにおいて、前記第２の動作において前記復号動画像フレームの時刻情報を記憶し、
前記音声出力ステップにおいて、前記復号動画像フレームの時刻情報を参照して前記復号音声データの出力開始を決定することを特徴とする請求項７または８に記載の映像コンテンツ再生装置の制御方法。
【請求項１０】
前記音声出力ステップにおいて、前記復号音声データの出力開始時刻と前記復号動画像フレームの時刻情報の差分を算出し、
前記画像出力ステップにおいて、前記第１の動作において前記復号動画像フレームの時刻情報を前記差分により補正することを特徴とする請求項９に記載の映像コンテンツ再生装置の制御方法。
【請求項１１】
請求項７乃至１０のいずれか１項に記載の映像コンテンツ再生装置の制御方法をコンピュータに実行させるためのプログラム。
【請求項１２】
請求項１１に記載のプログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の映像コンテンツの中からサムネール表示により所望の映像コンテンツの選択を可能にする映像コンテンツ再生装置及びその制御方法、プログラム、記録媒体に関する。
【背景技術】
【０００２】
従来、映像コンテンツを記録媒体に記録するレコーダ装置等では、多数の映像コンテンツを一覧表示するために、該映像コンテンツを代表する静止画像として映像コンテンツの動画像１フレームを縮小表示することが行われている。このような映像コンテンツを代表する画像は、一般にサムネールと呼ばれている。複数の映像コンテンツが記録されている場合には、複数のサムネールを一画面に一覧表示して、この一覧表示によりユーザに所望の映像コンテンツを選択させることを可能にしている。
【０００３】
一方で、近年の記録媒体の大容量化や通信回線の高速化を背景に、記録媒体に記録される、またはネットワークを介してアクセス可能とされる映像コンテンツの量は、確実に増加している。このように映像コンテンツの数が多くなった場合、所望のコンテンツにアクセスするためには、静止画によるサムネール表示では不十分である。なぜなら、多数の映像コンテンツを記録した状態では、視聴前からすべての映像コンテンツの内容を個別に把握しているとは限らず、視聴前において映像コンテンツに関する漠然としたイメージ以上の知識を持っていないことも多いからである。このような場合の例としては、ユーザ自身が個別に録画設定をしなくても好みに応じて自動的に録画された映像コンテンツを視聴する場合や、個人により作成された映像コンテンツを視聴する場合などが該当する。このようなときに目的の映像コンテンツを効率的に検索するためには、一覧表示において映像コンテンツの内容を端的に表してる動画像、すなわち動画サムネールを見ながら探すようにすることが有効である。
【０００４】
動画サムネールによる一覧表示の例を図１０に示す。このように複数の映像コンテンツを表示する場合には、検索用途であることから、各映像コンテンツの音声は必ずしも出力する必要はないといえるが、選択した映像コンテンツについては音声を出力することにより、ユーザの利便性が向上するともいえる。その場合には、選択された映像コンテンツに関して、ユーザの操作後、即座に動画像との同期を取って音声を出力することが望ましい。このような動画像と音声の同期（ＡＶ同期）を実現するためには、一般的には動画像データと音声データそれぞれに付加された時刻情報に基づき、両者の処理タイミングを調整することが行われている。結果的に、出力時点で両者の同期が取れていればよいため、処理過程のいずこかで同期を取ればよい。例えば、特許文献１では、記録媒体から映像コンテンツのストリームを読み出す時点で、ストリームの入力タイミングと同様なタイミングで出力する方法（タイムスタンプに基づく読み出し方法）と、バッファ内のデータ量に合わせて入力を調整する読み出し方法とを切り換えることで、各デコーダにデータを入力する前の段階でＡＶ同期を実現している。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００６−１１５２４５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
タイムスタンプに基づく読み出し方法は、データ記録先のアドレスに基づき記録媒体に対してランダムアクセスが必要となるため、データを記録媒体から読み出す場合には適用が容易になるが、ネットワーク上の映像ストリームを受信しながら再生する場合には適用が難しいという面がある。なぜなら、受信側となる端末だけでなく、送信側となるサーバに対しても、タイムスタンプに基づく読み出しを実現する機構を組み込まなければならないからである。一般に普及しているサーバでは、例えばＨＴＴＰが使用されており、この場合には、再生端末はデータ取得の要求後、サーバが送信するデータを受信することになる。サーバ側にプロトコルが実装されていない限り、バッファ内のデータ量を監視しながら読み出す方法しか採ることができず、デコード前に動画像と音声の時刻情報を合わせることは困難である。結局、映像コンテンツのデータを読み出す時点ではなく、出力までの間にＡＶ同期を行うことが現実的となる。
【０００７】
ところで、動画サムネールの一覧表示では、複数映像コンテンツに対する処理量が、割り当てられたリソース量に対して大きい場合には、動画コンテンツにて定められた表示レート（動画像のフレームレート）での再生が困難であり、その代替としてスロー再生、スキップ再生を実行せざるを得ないことがある。特にスキップ再生では、動画像のフレーム間隔が広がる傾向がある。例えば図１１に示すように、ユーザの操作があった時点（時刻ｔｃ秒）で表示している動画像のフレームｆ１と、復号中のフレームｆ２と、映像コンテンツのストリームから分離処理中のフレームｆ３があり、例えばそれぞれの時刻情報の間隔がそれぞれ２秒であったとすると、ｆ３の表示時刻はｔｃ＋４となる。映像コンテンツのストリーム読み出しに利用するバッファにおいては、フレームｆ３周辺のデータが格納されており、ｔｃの時点で読み出し可能な音声データはｔｃ＋４秒付近のものとなる。音声データの復号が早期に終了しても、ユーザの操作後、音声が出力されるまでの時間が長くなってしまう。
【０００８】
本発明は、このような実情を鑑みてなされたものであり、映像コンテンツへのアクセス方法（記録装置へのアクセス、ネットアクセス）や動画サムネールの再生方法（通常再生と低負荷のスキップ、スロー再生）に係わらず、ユーザの操作後迅速に動画像と音声の同期処理を行い、音声出力を開始することで、操作に対する応答性を高め、ユーザの利便性を向上させた映像コンテンツ再生装置及びその制御方法、プログラム、記録媒体を提供する。
【課題を解決するための手段】
【０００９】
本発明の映像コンテンツ再生装置は、映像コンテンツのストリームの入力を受けるデータ取得部と、前記映像コンテンツのストリームから動画像ストリームと音声ストリームとを取得するストリーム処理部と、前記動画像ストリームを復号し、復号動画像フレームを得る動画像復号部と、時刻情報に基づき前記復号動画像フレームの出力を調整する第１の動作と、前記時刻情報と無関係に前記復号動画像フレームを出力する第２の動作とを実行する画像出力部と、前記音声ストリームを復号し、復号音声データを得る音声復号部と、前記復号音声データを出力する音声出力部と、を備え、前記ストリーム処理部は、ユーザ操作に応じて前記映像コンテンツのストリームから前記音声ストリームを取得し、前記画像出力部は、前記復号音声データが前記音声出力部に入力された時点で動作を前記第１の動作から前記第２の動作に切り替えることを特徴とする。
【００１０】
前記画像出力部は、前記音声出力部が前記復号音声データの出力を開始した時点で動作を前記第１の動作から前記第２の動作に切り替えるようにしてもよい。
【００１１】
前記映像出力部は、前記第２の動作において前記復号動画像フレームの時刻情報を記憶し、前記音声出力部は、前記復号動画像フレームの時刻情報を参照して前記復号音声データの出力開始を決定するようにしてもよい。
【００１２】
前記音声出力部は、前記復号音声データの出力開始時刻と前記復号動画像フレームの時刻情報の差分を算出し、前記画像出力部は、前記第１の動作において前記復号動画像フレームの時刻情報を前記差分により補正するようにしてもよい。
【００１３】
前記画像出力部に入力される前記復号動画像フレームの時刻情報の間隔が所定の値を超える場合にのみ、前記第１の動作から前記第２の動作への切り替えを行うようにしてもよい。
【００１４】
複数の映像コンテンツを一覧表示する際に、前記画像出力部は、音声を出力する対象の映像コンテンツについてのみ前記第１の動作から前記第２の動作への切り替えを行うようにしてもよい。
【００１５】
本発明の映像コンテンツ再生装置の制御方法は、映像コンテンツのサムネールを表示する映像コンテンツ再生装置の制御方法であって、映像コンテンツのストリームの入力を受けるデータ取得ステップと、前記映像コンテンツのストリームから動画像ストリームと音声ストリームとを取得するストリーム処理ステップと、前記動画像ストリームを復号し、復号動画像フレームを得る動画像復号ステップと、時刻情報に基づき前記復号動画像フレームの出力を調整する第１の動作と、前記時刻情報と無関係に前記復号動画像フレームを出力する第２の動作とを実行する画像出力ステップと、前記音声ストリームを復号し、復号音声データを得る音声復号ステップと、前記復号音声データを出力する音声出力ステップと、を有し、前記ストリーム処理ステップにおいて、ユーザ操作に応じて前記映像コンテンツのストリームから前記音声ストリームを取得し、前記画像出力ステップにおいて、前記音声出力ステップにおいて前記復号音声データが入力された時点で動作を前記第１の動作から前記第２の動作に切り替えることを特徴とする。
【００１６】
前記画像出力ステップにおいて、前記音声出力ステップにおいて前記復号音声データの出力を開始した時点で動作を前記第１の動作から前記第２の動作に切り替えるようにしてもよい。
【００１７】
前記映像出力ステップにおいて、前記第２の動作において前記復号動画像フレームの時刻情報を記憶し、前記音声出力ステップにおいて、前記復号動画像フレームの時刻情報を参照して前記復号音声データの出力開始を決定するようにしてもよい。
【００１８】
前記音声出力ステップにおいて、前記復号音声データの出力開始時刻と前記復号動画像フレームの時刻情報の差分を算出し、前記画像出力ステップにおいて、前記第１の動作において前記復号動画像フレームの時刻情報を前記差分により補正するようにしてもよい。
【００１９】
本発明のプログラムは、上記映像コンテンツ再生装置の制御方法をコンピュータに実行させるためのプログラムである。
【００２０】
本発明の記録媒体は、上記プログラムを記録したコンピュータ読み取り可能な記録媒体である。
【発明の効果】
【００２１】
本発明によれば、映像コンテンツへのアクセス方法（記録装置へのアクセス、ネットアクセス）や動画サムネールの再生方法（通常再生と低負荷のスキップ、スロー再生）に係わらず、ユーザの操作後迅速に動画像と音声の同期処理を行い、音声出力を開始することで、操作に対する応答性を高め、ユーザの利便性を向上させることができる。
【図面の簡単な説明】
【００２２】
【図１】本発明の実施の形態に係る映像コンテンツ再生装置の構成例を示すブロック図である。
【図２】本発明の実施の形態に係る映像コンテンツ再生装置を適用したシステム構成例を示す図である。
【図３】本発明の実施の形態に係る映像コンテンツ再生装置の動作における状態遷移を示す図である。
【図４】本発明の実施の形態に係る映像コンテンツ再生装置の動作例を示すフローチャートである。
【図５】本発明の実施の形態に係る映像コンテンツ再生装置の動作例を示す模式図である。
【図６】本発明の実施の形態に係る映像コンテンツ再生装置における表示時刻の変化を示す図である。
【図７】本発明の実施の形態に係る映像コンテンツ再生装置の動作例を示すフローチャートである。
【図８】本発明の実施の形態に係る映像コンテンツ再生装置の音声出力部の動作例を示すフローチャートである。
【図９】本発明の実施の形態に係る映像コンテンツ再生措置の動作を説明するための図である。
【図１０】本発明の実施の形態に係る一覧表示の画面例を示す図である。
【図１１】各処理における処理タイミングの時間差の一例を示す図である。
【発明を実施するための形態】
【００２３】
以下、本発明の実施形態について、図面を参照しながら説明する。図１は、本発明の実施形態に係る映像コンテンツ再生装置１００の構成例を示すブロック図である。ここでは一例として、同時に処理する映像コンテンツのストリーム数を４としている。
【００２４】
映像コンテンツ再生装置１００は、映像コンテンツのストリームを取得するデータ取得部１０１と、映像コンテンツのストリームデータの解析および多重分離を行うストリーム処理部１０２と、動画像データを復号する動画像復号部１０３と、動画像復号部１０３の動作を制御する復号制御部１０４と、音声データを復号する音声復号部１０６と、複数の動画像の出力タイミングを調整する画像出力部１０５と、音声を出力する音声出力部１０７と、前記の各部を制御する制御部１０８とを備える。
【００２５】
本発明の構成要素である各部は、例えば、マイクロプロセッサ、メモリ、バス、インターフェイス、周辺機器などから構成されるハードウェアと、これらのハードウェア上にて実行可能なソフトウェアにより実現される。上記ハードウェアの一部または全部を、集積回路／ＩＣ（Integrated Circuit）として搭載することができ、その場合、上記ソフトウェアは上記メモリに記憶しておけばよい。また、本発明の構成要素の各部のすべてをハードウェアで構成してもよく、その場合についても同様に、そのハードウェアの一部または全部を、集積回路／ＩＣチップセットとして搭載することも可能である。
【００２６】
図示はしないが、データ取得部１０１、ストリーム処理部１０２、動画像復号部１０３、画像出力部１０５、音声復号部１０６および音声出力部１０７の各部は、入力される処理対象データを記憶するバッファ領域がメモリ上に割り当てられる。これらのバッファ領域は、構成上まとめて一箇所に配置されてもよいが、便宜上、各部の中に設けられているものとして扱い、内部バッファと呼ぶことにする。
【００２７】
データ取得部１０１は、映像コンテンツのストリームデータを外部のデバイスから入手するための手段である。データ取得部１０１は、例えば、記録メディア内に置かれた動画ファイルへのアクセスや、ネットワークを介したサーバへのリクエストによりストリームデータを取得する。
【００２８】
ストリーム処理部１０２は、データ取得部１０１からストリームデータを読み出して、そのヘッダを解析し、解析した結果に基づき、ストリームデータに多重化された動画像ストリームデータ、および音声ストリームデータを取得する。ストリーム処理部１０２は、取得した動画像ストリームデータを動画像復号部１０３に出力し、音声ストリームデータを音声復号部１０６に出力する。ここで、動画像ストリームは処理対象となっているストリームデータ数だけ処理され、音声ストリームデータはそのうちのいずれか１つのみが処理されるものとする。動画像／音声の各フレームには、提示されるべき時刻を示す時刻情報が付随しており、ストリーム処理部１０２は、動画像ストリームデータまたは音声ストリームデータを出力する際に、前記時刻情報を付加する（所定数のサンプルから構成される音声データの集合をフレームと呼ぶ）。
【００２９】
動画像復号部１０３は、入力された動画像ストリームデータから、動画像の１フレームを復号する。動画像ストリームデータに付加された時刻情報は、当該復号動画像フレームを表示するタイミング（表示時刻）を指定するものであり、復号フレームと合わせて画像出力部１０５に出力される。動画像復号部１０３は、また、復号処理の終了が前記表示時刻に対してどの程度遅延しているかを示す遅延量を算出し、遅延量を復号制御部１０４に出力する。動画像復号部１０３は、復号制御部１０４の制御により復号時の動作が変更可能であり、復号動作によってはフレームの時刻情報を書き換えて出力する。
【００３０】
復号制御部１０４は、復号処理に遅延が発生しているか否かを動画像復号部１０３から入力される遅延量に基づいて判定し、遅延発生時には、単位時間当たりの処理量を減らす方向に動画像復号部１０３の動作を制御する（ここで動画像復号部１０３の動作を再生モードと呼ぶ）。また、複数の映像コンテンツの中から他に優先して再生すべき映像コンテンツの指定を制御部１０８から受けた場合には、その時点における再生モードによらず、当該映像コンテンツが通常レートでの再生となるように制御する。通常レートとは、映像コンテンツのストリームデータの再生レート（フレームレート）を指す。
【００３１】
画像出力部１０５は、入力された動画像フレームを表示デバイス上に表示するための出力処理を行う。動画像フレームに付加された時刻情報に基づき表示タイミングを調整する動作（第１の動作）と、時刻情報と無関係に動画像フレームを処理する動作（第２の動作）のいずれかを行う。外部出力の際は、フレームのデータ形式、カラーフォーマットなどを必要に応じて変換する。例えば、フレームがＹ、Ｕ、Ｖの色空間データで、表示がＲ、Ｇ、Ｂ色空間であるとき、ＹＵＶからＲＧＢに変換する。
【００３２】
音声復号部１０６は、入力された音声ストリームデータから、音声の１フレームを復号する。この繰り返しにより、音声復号部１０６は、音声ストリームデータから動画サムネールと合わせて出力するための一連の音声フレームを得る。音声出力部１０７は、音声復号部１０６から入力された音声データを出力する。画像出力部１０５と音声出力部１０７は、各自の内部の状態を共有し、音声出力時に対となる動画像のフレーム出力と同期させる機能を有する。
【００３３】
制御部１０８は、複数の映像コンテンツから１つの映像コンテンツを優先指定する。優先指定は、例えば、制御部１０８が外部から取得する制御情報や、ユーザ操作により操作デバイスが生成する操作情報に基づき行われる。
【００３４】
以上のように、映像コンテンツ処理装置１００は、複数の映像コンテンツを処理し、同時に表示することが可能である。例えば、図２に示すように、記録装置（記録媒体とその読み取り装置）、通信装置、操作デバイス、ディスプレイ、スピーカを接続することで、ディスプレイ上に図１０に示すように複数の映像コンテンツを表示し、そのうちの選択された１つの映像コンテンツについて付随する音声をスピーカから出力することができる。
【００３５】
図３に映像コンテンツ再生装置１００の動作における内部状態の遷移例を示す。図３（ａ）において、起動後は初期状態である。この例では、処理すべき映像コンテンツが指定されて動画サムネールの表示を開始すると、内部状態は優先指定なしの再生状態に遷移する。この状態では、映像コンテンツをすべて非優先として音声を表示しない。画面の表示例は図３（ｂ）のようになる。映像コンテンツ再生装置１００は、負荷が処理能力より小さければ通常再生を維持し、負荷が処理能力を超えたら、発生した遅延量に応じてスロー再生、またはスキップ再生を実行する。この状態で優先指定がなされると、優先指定ありの再生状態に遷移する。この状態では、１つの映像コンテンツが優先して処理され、音声が出力される。画面の表示例は図３（ｃ）のようになる。この状態で優先指定を解除すると、優先指定なしの再生状態に遷移し、優先指定の映像コンテンツを変更すると、優先指定ありの状態は変化しないで優先して処理される映像コンテンツが変わる。画面の表示例は図３（ｄ）のようになる。
【００３６】
図４は、映像コンテンツの再生に係る動作を示すフローチャートである。このフローチャートは、図３における優先指定なしの再生状態におけるデータ取得部１０１、ストリーム処理部１０２、動画像復号部１０３の動作を示すものである。
【００３７】
ステップＳＴ４０１において、制御部１０８は、再生すべき映像コンテンツを特定し、ストリーム処理部１０２に対して映像コンテンツを指定する。例えば、記録メディア内にファイルとして記録されている映像コンテンツを読み出す、または、ネットワーク上のサーバにアクセスして利用可能な映像コンテンツ名を取得する。さらに、内部クロックを利用してカウントされるシステムタイマーの値（システム時刻）を初期化する。
【００３８】
ステップＳＴ４０２において、ストリーム処理部１０２は、映像コンテンツのストリームを解析し、動画像と音声ストリームについての情報を取得する。ここで取得できる情報は、動画像の場合、解像度、フレームレート、符号化方式、ストリームデータ中のどの位置から動画像の１フレーム分のデータ取得ができるかを示すオフセット値、表示のための時刻情報などである（以下、動画像フレームの表示タイミングを示す時刻情報を表示時刻と呼ぶ）。
【００３９】
ステップＳＴ４０３において、制御部１０８は、再生すべき映像コンテンツのデータの処理がすべて終了したかどうかを判定し、終了している場合は動作を終了し、終了していない場合はステップＳＴ４０４に進む。
【００４０】
ステップＳＴ４０４において、ストリーム処理部１０２は、ストリーム解析終了後の映像コンテンツのストリームデータから動画像ストリームデータを取り出し、この動画像ストリームデータに付加された時刻情報を必要に応じて加工し、元の時刻情報とともに動画像ストリームデータに付加して動画像復号部１０３に出力する。
【００４１】
ステップＳＴ４０５において、動画像復号部１０３は、表示時刻の書き換えが必要かどうかを判定し、必要な場合はステップＳＴ４０６に進み、必要ない場合はステップＳＴ４０７に進む。
【００４２】
ステップＳＴ４０６において、動画像復号部１０３は、復号制御部１０４により指定された再生モードに基づき、入力された時刻情報を書き換える。ここで、再生モードは、通常再生、スロー再生、スキップ再生のいずれかの動作を示す。例えば、スロー再生における再生速度が通常再生の２倍であるとき、前に入力された表示時刻と現在の表示時刻の差を２倍して、前に出力した表示時刻に加算して出力する。
【００４３】
ステップＳＴ４０７において、動画像復号部１０３は、動画像データの復号処理を行うか否かを判定し、行わない場合はステップＳＴ４０３に戻り、行う場合はステップＳＴ４０８に進む。
【００４４】
ステップＳＴ４０８において、動画像復号部１０３は、動画像ストリームデータを復号する。動作モードが通常再生、およびスロー再生の場合、ストリーム処理部１０２から入力された順に復号する。スキップ再生の場合には、復号処理の前に動画像ストリームデータを調べ、その符号化タイプを取得する。ここで、符号化タイプとは、動画像１フレームのストリームデータが当該フレームのストリームデータのみで復号できるか（イントラフレーム）、それとも他のフレームの情報を利用するか（インターフレーム）を指す。スキップ再生では、例えば、符号化タイプがイントラフレームのストリームデータのみを復号する。または、他のフレームの復号時に参照されないフレームのストリームデータのみを復号する。
【００４５】
ステップＳＴ４０９において、動画像復号部１０３は、復号処理終了後、システム時刻を取得して表示時刻に対する遅延量を算出し、ステップＳＴ４０３に戻る。
【００４６】
復号制御部１０４は、図４のフローチャートで示される動作とは独立して動作し、動画像復号部１０３からの遅延量を監視する。遅延量から遅延が発生していると判定した場合、各動画像復号部１０３の動作モードを通常→スロー→スキップの順に負荷の軽い方向へ変更し、遅延が発生せず十分に処理に余裕があると判定した場合には、逆に負荷の大きい方向へ変更する。遅延の発生は、例えば、遅延量がしきい値を超えた場合や、所定時間において遅延量が増加し続ける場合に起きているとする。
【００４７】
画像出力部１０５は、各動画像復号部１０３からの動画像フレームと時刻情報の出力に合わせて、表示のための出力タイミングを調整する。例えば、取得したシステム時刻と復号後の動画像フレームの表示時刻とを比較した結果、システム時刻と表示時刻の差が所定のしきい値以下の場合、または、表示時刻がシステム時刻に対して遅れている場合には、復号フレームを出力する。
【００４８】
表示時刻とシステム時刻について、図５および図６を用いて説明する。ここで、再生処理の開始時に制御部１０８がシステム時刻をＴ０に初期化したとする。ストリーム処理部１０２は、ストリームデータに付けられた表示時刻ｔｖ（ｉ）からＴｖ（ｉ）を導出する。ここで、ｉは動画像のフレーム番号、ｄは表示時刻を一定時間だけ遅らせるためのオフセット値である。表示時刻Ｔｖ（ｉ）は、システム時刻Ｔ０を基準とした実際の表示時刻である。
【００４９】
ストリーム処理部１０２は、２つの表示時刻ｔｖ（ｉ）、Ｔｖ（ｉ）を動画像ストリームに付加して動画像復号部１０３に出力する。動画像復号部１０３は、再生制御の実行により、Ｔｖ（ｉ）をＴｖ’（ｉ）に書き換える。復号済みの動画像フレームにｔｖ（ｉ）と書き換えたＴｖ’（ｉ）を付加して画像出力部１０５へ出力する。復号処理終了時のシステム時刻をＴ１とすると、動画像復号部１０３は、Ｔｖ’（ｉ）−Ｔ１を遅延量として出力する。動画像復号部１０３は、画像出力部１０５に表示時刻としてＴｖ’（ｉ）を出力する。
【００５０】
図６（ａ）の場合、Ｔ１＜Ｔｖ’（ｉ）であり、画像出力部１０５は、システム時刻がＴｖ’ （ｉ）になった時点で復号フレームを出力する。
【００５１】
図６（ｂ）は、復号処理終了時のシステム時刻Ｔ２＞Ｔｖ’（ｉ）で遅延が起きている場合の例を示す。この場合には、画像出力部１０５は、動画像復号部１０３から復号フレームが入力された直後に復号フレームを出力する。なお、ストリームデータに付けられた２つの表示時刻は、画像出力部１０５に記憶され、優先指定時に音声ストリームとの同期に利用される。
【００５２】
図３における優先指定ありの再生状態では、１つの映像コンテンツを優先として音声を出力する。この場合、ステップＳＴ４０４で動画像ストリームデータだけでなく音声ストリームデータを取得し、音声復号部１０６で復号処理を実行する。さらに、復号制御部１０４は、他の映像コンテンツの状態にかかわらず、優先指定された映像コンテンツを処理する動画像復号部１０３の動作モードを通常再生とする。
【００５３】
図７は、優先指定なしから優先指定ありへの状態遷移時の処理の流れを示すフローチャートである。処理が開始すると、ステップＳＴ７０１において、制御部１０８は、優先指定された映像コンテンツのストリームを処理するストリーム処理部１０２（以下、優先指定されたストリーム処理部と呼ぶ）に対して音声ストリームデータの取得を指示すると共に、復号制御部１０４には、当該映像コンテンツの動画像ストリームの全フレームを処理するように指示する。
【００５４】
ステップＳＴ７０２において、優先指定されたストリーム処理部１０２は、すでに処理した動画像ストリームのうち最も近い過去に処理した動画像ストリームの表示時刻を取得する。
【００５５】
ステップＳＴ７０３において、優先指定されたストリーム処理部１０２は、ステップＳＴ７０２で取得した表示時刻に基づき、取得すべき音声ストリームの表示時刻を決定する。ここで扱う表示時刻は、画像出力部１０５にて扱われる最終的な表示時刻Ｔｖ’（ｉ）とは異なり、動画像ストリームデータに付随して映像コンテンツのストリームデータに多重化されている値ｔｖ（ｉ）である。動画像ストリームの表示時刻ｔｖ（ｉ）に基づき、例えば、最も近い音声ストリームの表示時刻を算出し、これをｔａ（ｊ）とする。
【００５６】
ステップＳＴ７０４において、ストリーム処理部１０２は、表示時刻ｔａ（ｊ）を持つ音声ストリームデータを内部バッファから探索し、該当する音声ストリームデータが内部バッファ内に見つかれば音声取り出し可能と判断してステップＳＴ７０５に進み、該当する音声ストリームデータが内部バッファ内に見つからなければ音声取り出し不可能と判断して、再度ステップＳＴ７０４において、内部バッファのデータが更新された時点で、音声ストリームデータを内部バッファから探索する。条件に適合した音声ストリームが探索できた時点では、必ずしも動画像と音声の間に同期がとれているとは限らない。ストリーム処理部１０２は、後にステップＳＴ７０５において音声ストリームデータを音声復号部１０６に対して出力するに際し、表示時刻ｔａ（ｊ）を添付する。
【００５７】
ステップＳＴ７０５において、優先指定されたストリーム処理部１０２は、動画像ストリームおよび音声ストリームデータの双方を内部バッファから取得する。一方、優先指定のないストリーム処理部１０２は、以前（優先指定なしの再生情報）と同じ動作を続ける。取得後の動画像ストリームは、対応する動画像復号部１０３の内部バッファに送られ、音声ストリームデータは、音声復号部１０６の内部バッファに送られ、適宜復号される。
【００５８】
ステップＳＴ７０６において、音声出力部１０７は、復号後の動画像ストリームと音声ストリームの同期をとるために、優先指定後の最初の復号音声データを受け取った時点で、当該音声データが出力可能かどうかを判定し、出力可能な場合はステップＳＴ７０８に進み、出力可能でない場合はステップＳＴ７０７に進む。
【００５９】
ステップＳＴ７０８において、動画像と音声を同期して出力し、処理を終了する。
【００６０】
ステップＳＴ７０７において、動画像のみの出力を継続し、ステップＳＴ７０５に戻る。
【００６１】
音声出力部１０７の具体的な動作を、図８のフローチャートを用いて説明する。
【００６２】
ステップＳＴ８０１において、音声出力部１０７は、内部バッファを監視し、復号済みのデータが存在するか否かを調べ、存在する場合はステップＳＴ８０２に進む。
【００６３】
ステップＳＴ８０２において、音声出力部１０７は、優先指定後最初の復号音声データを受け取ったことを画像出力部１０５へ通知する。
【００６４】
ステップＳＴ８０３において、音声出力部１０７は、当該音声データに対応する出力済み動画像フレームの表示時刻ｔｖ（ｉ）およびＴｖ’（ｉ）を画像出力部１０５から取得する。
【００６５】
ステップＳＴ８０４において、音声出力部１０７は、取得した動画像フレームの表示時刻を参照し、音声出力の可否を判断する。すなわち、音声出力部１０７は、音声の表示時刻ｔａ（ｊ）と動画像の表示時刻ｔｖ（ｉ）を比較し、例えば、表示時刻ｔａ（ｊ）と表示時刻ｔｖ（ｉ）の差が所定のしきい値の範囲内であれば音声出力可能と判定する。音声出力可能な場合はステップＳＴ８０５に進み、音声出力が可能でない場合はステップＳＴ８０３に戻る。
【００６６】
ステップＳＴ８０５において、音声出力部１０７は、音声データの出力を開始する。
【００６７】
ステップＳＴ８０６において、音声出力部１０７は、音声データの出力を開始した時のシステム時刻と、画像出力部１０５から取得した表示済み動画像フレームの表示時刻Ｔｖ’（ｉ）の差分を、表示時刻のオフセットとして算出する。
【００６８】
ステップＳＴ８０７において、音声出力部１０７は、算出したオフセットを画像出力部１０５へ出力し、音声出力を通知し、動作を終了する。
【００６９】
画像出力部１０５は、音声出力部１０７から音声データ取得と音声データ出力の２つの通知を受け取る。優先指定後は、前述のように、時刻情報に合わせて表示のための動画像フレーム出力タイミングを調整する動作を行い、最初に音声データ取得の通知を受けた時点で、優先ストリームの動画像については、その表示時刻Ｔｖ’（ｉ）にかかわらず、受け取った時点で即時出力を行うように動作を変更する。これ以降、音声出力部１０７から音声出力通知を受け取るまでこの動作を続ける。このときの動画像フレームの表示時刻ｔｖ（ｉ）およびＴｖ’（ｉ）を記憶しておき、図８のステップＳＴ８０３について説明したように、音声出力部１０７からの問い合わせに対して出力する。
【００７０】
優先指定以外の動画像については、これまで通り時刻情報に合わせた出力を行う。図９に処理例を示す。
【００７１】
図９（ａ）では、動画像フレームＶ１を出力中にユーザにより優先指定の操作がなされ、このときストリーム処理部１０２では、動画像ストリームデータＶ７を処理中である。この状態でストリーム処理部１０２は、音声ストリームＡ５から取得を開始する。
【００７２】
図９（ｂ）は、図９（ａ）からΔｔだけ経過後の状態を示しており、復号された音声データＡ５が音声出力部１０７に入力されたときで、画像出力部１０５は動画像フレームＶ６の出力待ちの状態である。ここで画像出力部１０５は、時刻情報に合わせて表示のための動画像フレーム出力タイミングを調整する動作から、時刻情報を考慮しない動作へと切り替わる。図９（ｂ）では、Ｖ６を即時に出力し、ｔｖ（６）およびＴｖ’（６）を記憶する。音声出力部１０７は、ｔｖ（６）を参照し、ｔａ（７）と比較する。もし、音声データＡ７が出力できるならば、Ｖ６の表示時刻Ｔｖ’（６）とシステム時刻ｔの差分Ｔｄを算出する。画像出力部１０５は、Ｖ７以降の動画像フレームについては、その時刻Ｔｖ’（ｉ）からＴｄを引いた時刻で出力タイミングを調整する。
【００７３】
動画像と音声の同期を図っている間は、動画像については時刻情報に関係なく出力がされるようになり、一般には出力タイミングが早まることになる。ただし、早まる時間の変動量は、動画像フレームの間隔に依存し、例えばスキップ再生のようにフレーム間隔が広がったときには大きく変動するが、通常の再生レートであればほとんど変動しない。スキップ再生では元々フレーム間隔が広いため、表示時刻を早めてもユーザが知覚する違和感は少なくて済む。ユーザにより音声出力が選択された時点で音声処理を開始しつつ、音声出力までの時間を常に短くすることができる。
【００７４】
なお、前述の実施例では、動画像と音声の同期を図っている間に実行する第２の動作は、時刻情報に関係なく即時に動画像フレームを出力するようにしているが、動画像の表示をせずに、単に動画像フレームのデータを内部バッファから読み捨てるようにしてもよいし、フレーム間の時刻の間隔が所定の値を超える場合にのみ、時刻情報に関係なく即時に出力する（または出力せずに読み捨てる）ようにしてもよい。
【００７５】
本発明の実施形態の機能を実現するソフトウェアのプログラムコードを記録した記録媒体を装置に供給し、マイクロプロセッサまたはＤＰＳによりプログラムコードが実行されることによっても、本発明の目的が達成される。この場合、ソフトウェアのプログラムコード自体が本実施形態の機能を実現することになり、プログラムコードを記録した記録媒体は本発明を構成することになる。
【００７６】
以上、本発明の実施形態について説明したが、本発明の映像コンテンツ再生装置およびその制御方法、プログラム、記録媒体は、上記の実施形態に限定されるものではなく、本発明の要旨を逸脱しない範囲内において、種々の変更を加えうることは勿論である。
【産業上の利用可能性】
【００７７】
本発明は、映像コンテンツ再生装置およびその制御方法、プログラム、記録媒体に利用可能である。
【符号の説明】
【００７８】
１００  映像コンテンツ再生装置
１０１  データ取得部
１０２  ストリーム処理部
１０３  動画像復号部
１０４  復号制御部
１０５  画像出力部
１０６  音声復号部
１０７  音声出力部
１０８  制御部
【図１】
0005596473.tif 000002
【図２】
0005596473.tif 000003
【図３】
0005596473.tif 000004
【図４】
0005596473.tif 000005
【図５】
0005596473.tif 000006
【図６】
0005596473.tif 000007
【図７】
0005596473.tif 000008
【図８】
0005596473.tif 000009
【図９】
0005596473.tif 000010
【図１０】
0005596473.tif 000011
【図１１】
0005596473.tif 000012