(57)【要約】【課題】アドバンスドンテンツのリソースデータを可能な限り十分に再生することができるようにする。【解決手段】ビデオストリーム４００のリソースデータのパケットを一時的に格納するリングバッファ６０１を用いる。リングバッファ６０１から読み出されたパケットは基本的にはプレイリストに応じてファイルキャッシュ３００に転送される。ここでファイルキャッシュ３００の記憶領域を確保できない場合、前記リングバッファ４００に格納されるパケットのパケットリストをパケットリスト格納部６０３に記憶する。パケットリストは、前記リソースデータを構成するパケットの前記リングバッファ上のポインタを含む。ファイルキャッシュ３００に格納できるようになったとき、リングバッファからファイルキャッシュにパケットを高速で転送できる。【選択図】図１
2008310879.tif 000002
【特許請求の範囲】
【請求項１】
所定単位データを取り込むデータ取り込手段と、
前記データ取り込手段からの前記所定単位データを一時的に格納するリングバッファと、
前記リングバッファからの前記所定単位データをアプリケーションに応じて格納するメモリ手段と、
前記メモリ手段に蓄積される前記所定単位データを処理するための前記アプリケーションを格納し、前記アプリケーションと前記所定単位データの識別リストを格納する第１の処理部と、
前記リングバッファのリードポインタ、ライトポインタ、リカバリポインタを有し、リングバッファを制御し、前記データ取り込手段で分離されたある所定単位データが前記リングバッファに格納されるとき、前記識別リストに照合することで、この所定単位データが前記メモリ手段に転送できない条件のものであるとき、この所定単位データのリストとして、前記リングバッファ上の少なくともポインタを記憶する第２の処理部（６００）と
有することを特徴とする情報記憶媒体の再生装置。
【請求項２】
前記所定単位データはパケットであり、前記データ取り込手段は前記パケットを分離するパケット分離処理部であり、
前記メモリ手段は、ファイルキャッシュであり、
前記第１の処理部は、前記ファイルキャッシュに蓄積されるパケットの各種リソースデータに適合可能なように、複数のアプリケーションを格納したアプリケーション格納部と、前記複数のアプリケーションでそれぞれ処理される複数のリソースデータのリストを格納する必要リソースデータリスト格納部を含むアプリケーション処理部であり、
前記第２の処理部は、前記リングバッファのリードポインタ、ライトポインタ、リカバリポインタを有し、リングバッファを制御するリングバッファ制御部と、前記パケット分離処理部で分離されたパケットが前記リングバッファに格納されるとき、このパケットのリソースデータが前記ファイルキャッシュに転送できない条件のものであるとき、このリソースデータのパケットリストとして、リングバッファ上のポインタを記憶するパケットリスト格納部を有するリソースデータロード処理部であることを特徴とする請求項１記載の情報記憶媒体の再生装置。
【請求項３】
前記パケットリスト格納部に記憶されるパケットリストは、
前記必要リソースデータリスト格納部に格納されている必要リソースデータのパケットであることを特徴とする請求項２記載の情報記憶媒体の再生装置。
【請求項４】
前記パケットリストには、ソースデータと照合を可能とする識別子が付与されていることを特徴とする請求項３記載の情報記憶媒体の再生装置。
【請求項５】
アプリケーション処理部は、必要とするリソースデータのリストに含まれる識別子と各リソースデータのパケットリストに含まれる識別子を照合し、識別子が合致する場合に対応するリソースデータのパケットをリングバッファからファイルキャッシュへロードさせることを特徴とする請求項２記載の情報記憶媒体の再生装置。
【請求項６】
前記リソースデータロード処理部は、前記リングバッファから前記ファイルキャッシュへのロードが完了すると、前記パケットリストを破棄することを特徴とする請求項２記載の情報記憶媒体の再生装置。
【請求項７】
前記リソースデータロード処理部は、前記リカバリポインタが、前記ファイルキャッシュで現在必要とされていないリソースデータのスタートパケットの格納位置を通過した場合、そのリソースデータのロードはキャンセルすることを特徴とする請求項２記載の情報記憶媒体の再生装置。
【請求項８】
前記リソースデータロード処理部は、前記リカバリポインタが、前記ファイルキャッシュで現在必要とされていないリソースデータのスタートパケットの格納位置を通過した場合、そのリソースデータのパケットリストは破棄することを特徴とする請求項２記載の情報記憶媒体の再生装置。
【請求項９】
パケット分離処理部と、
ファイルキャッシュと、
前記ファイルキャッシュに蓄積されるパケットの各種リソースデータに適合可能なように、複数のアプリケーションを格納したアプリケーション格納部と、前記複数のアプリケーションでそれぞれ処理される複数のリソースデータのリストを格納する必要リソースデータリスト格納部を含むアプリケーション処理部と、
少なくとも、前記ファイルキャッシュに前記パケットを供給するためのリングバッファと、前記リングバッファのリードポインタ、ライトポインタ、リカバリポインタを有し、リングバッファを制御するリングバッファ制御部を含むリソースデータロード処理部を有し、
前記リングバッファを制御する情報記憶媒体の再生方法において、
前記アプリケーション処理部とリソースデータロード処理部は、前記パケット分離処理部で分離されたパケットが前記リングバッファに格納されるとき、このパケットのリソースデータが前記ファイルキャッシュに転送できない条件のものであるとき、このリソースデータのパケットリストとして、リングバッファ上のポインタを記憶し、
前記ファイルキャッシュに前記リソースデータを転送可能となったとき、前記パケットリストのデータを利用して前記リングバッファのパケットを読み出すことを特徴とする情報記憶媒体の再生方法。
【請求項１０】
前記リソースデータロード処理部は、前記リングバッファから前記ファイルキャッシュへのロードが完了すると、前記パケットリストを破棄することを特徴とする請求項９記載の情報記憶媒体の再生方法。
【請求項１１】
前記リソースデータロード処理部は、前記リカバリポインタが、前記ファイルキャッシュで現在必要とされていないリソースデータのスタートパケットの格納位置を通過した場合、そのリソースデータのロードはキャンセルすることを特徴とする請求項９記載の情報記憶媒体の再生方法。
【請求項１２】
前記リソースデータロード処理部は、前記リカバリポインタが、前記ファイルキャッシュで現在必要とされていないリソースデータのスタートパケットの格納位置を通過した場合、そのリソースデータのパケットリストは破棄することを特徴とする請求項９記載の情報記憶媒体の再生方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は情報記憶媒体の再生装置とその再生方法に関するもので、例えばＨＤ（ハイディフィニション或いはハイデンティシー）＿ＤＶＤ（デジタルビデオディスク）のアドバンスド（Advanced)コンテンツを再生する装置及び方法として有効である。
【背景技術】
【０００２】
ＤＶＤプレーヤにおいては、ＤＶＤから読み出されたデータストリームをリングバッファに蓄積し、リングバッファから読み出したデータをデコーダに転送するという手法が採用される（例えば特許文献１）。このリングバッファは、データ読出しに必要な時間と、デコーダにおけるデコードに必要な時間との相違を補償するために用いられている。
【０００３】
最近、ＨＤ＿ＤＶＤが開発され、従来のＤＶＤよりも多様性に富み、リソースデータとしての種々の復号前コンテンツをプレイリストに応じてタイムライン上に配列して再生できるようになっている。タイムライン上に復号前コンテンツを配置するためのバッファとして、ファイルキャッシュが用いられる。タイムライン上の復号前コンテンツは、順次デコーダに送られる。
【０００４】
ここでＨＤ＿ＤＶＤにおいては、リソースデータとして、プライマリービデオ(Primary Video Player)、セカンダリービデオ(Secondary Video Player)、アドバンスドコンテンツ(Advanced content)などを再生できるように工夫されている。
【０００５】
また、アドバンスドコンテンツ再生中に、メニュー表示アプリケーションにより処理されるリソースデータ(ＰＮＧイメージファイルやＷＡＶ音声ファイル等がある。ＷＡＶ音声ファイルは、例えば映像解説アプリケーションにより処理されるリソースデータである。この発明では、上記したメニュー表示アプリケーションにより処理されるリソースデータの類に着目している。
【０００６】
ＨＤ＿ＤＶＤから読み出されたデータは、エラー訂正処理され復調された後、パックストリームとしてパケット分離部に導かれる。パケット分離部で分離されるパックの種類としては、ナビゲーションパック（ＮＶ＿ＰＣＫ）、メインビデオパック（ＶＭ＿ＰＣＫ），サブビデオパック（ＶＳ＿ＰＣＫ），メインオーディオパック（ＡＭ＿ＰＣＫ）、サブオーディオパック（ＡＳ＿ＰＣＫ），サブピクチャーパック（ＳＰ＿ＰＣＫ），アドバンスドコンテンツ（ＡＤＣ＿ＰＣＫ）等がある。
【０００７】
アドバンスドコンテンツが、動画・音声データと、これに多重化されるべきリソースデータを含む場合、動画・音声データの時間情報に基づくアプリケーション処理部と、リソースデータのパケット分離処理部との処理時間のずれを吸収する必要がある。このずれの吸収が適正に行なわれて初めて再生動画および再生音声に対して、適正なアドバンスドコンテンツの再生出力タイミングが得られる。
【０００８】
しかしながらＨＤ＿ＤＶＤ規格では、アドバンスドパックの分離されるタイミングと、アドバンスドアプリケーションがリソースデータの処理を開始するタイミングとのずれに関しては、何ら規定を行なっていない。これはハードウエアの容量及び処理スピードに上記タイミングが依存するためである。この結果、プレーヤによっては、プロバイダーが作成したアドバンスドコンテンツのリソースデータを十分に再生できない場合も考えられる。
【特許文献１】特開２００３−５９１８９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００９】
そこで発明の目的は、アドバンスドコンテンツのリソースデータを可能な限り十分に再生することができるようにした情報記憶媒体の再生装置とその再生方法を提供することを目的とする。
【課題を解決するための手段】
【００１０】
上記課題を解決するために、基本的には、所定単位データを取り込むデータ取り込手段と、前記データ取り込手段からの前記所定単位データを一時的に格納するリングバッファと、前記リングバッファからの前記所定単位データをアプリケーションに応じて格納するメモリ手段と、前記メモリ手段に蓄積される前記所定単位データを処理するための前記アプリケーションを格納し、前記アプリケーションと前記所定単位データの識別リストを格納する第１の処理部と、前記リングバッファのリードポインタ、ライトポインタ、リカバリポインタを有し、リングバッファを制御し、前記データ取り込手段で分離されたある所定単位データが前記リングバッファに格納されるとき、前記識別リストに照合することで、この所定単位データが前記メモリ手段に転送できない条件のものであるとき、この所定単位データのリストとして、前記リングバッファ上の少なくともポインタを記憶する第２の処理部とを有する。
【００１１】
上記した所定単位データを取り込むデータ取り込手段は、例えば所定単位データのパケットを分離するパケット分離処理部である。前記メモリ手段は、例えばファイルキャッシュである。また、第１の処理部は、前記ファイルキャッシュに蓄積されるパケットの各種リソースデータに適合可能なように、複数のアプリケーションを格納したアプリケーション格納部と、前記複数のアプリケーションでそれぞれ処理される複数のリソースデータのリストを格納する必要リソースデータリスト格納部を含むアプリケーション処理部とである。そして、第２の処理部は、前記リングバッファのリードポインタ、ライトポインタ、リカバリポインタを有し、リングバッファを制御するリングバッファ制御部と、前記パケット分離処理部で分離されたパケットが前記リングバッファに格納されるとき、このパケットのリソースデータが前記ファイルキャッシュに転送できない条件のものであるとき、このリソースデータのパケットリストとして、リングバッファ上のポインタを記憶するパケットリスト格納部を有するリソースデータロード処理部である。
【００１２】
即ち、ストリームのリソースデータのパケットを一時的に格納するリングバッファを用いる。リングバッファから読み出されたパケットは基本的にはプレイリストに応じてファイルキャッシュに転送される。ここでファイルキャッシュの記憶領域を確保できない場合、前記リングバッファに格納されるパケットのパケットリストをパックリストメモリに記憶する。このパケットリストは、前記リソースデータを構成するパケットの前記リングバッファ上のポインタを含む。
【発明の効果】
【００１３】
上記の手段によると、ファイルキャッシュの記憶容量に余裕ができたとき、上記パケットリストを利用して、リングバッファからファイルキャッシュに高速でリソースデータのパケットを転送することができる。また、ファイルキャッシュの容量が小さくても、有効にメモリを活用することができる。
【発明を実施するための最良の形態】
【００１４】
以下図面を参照して、この発明の実施の形態を説明する。図１はこの発明が適用されたＨＤ＿ＤＶＤプレーヤの構成図であり、特に本発明に関連のある部分を取り出して示している。
【００１５】
ＨＤ＿ＤＶＤ１００のデータは、光ヘッド装置を介して読み出され、エラー訂正された後、データアクセスマネージャ（図示せず）を介して読取られる。管理情報の中にあるプレイリスト２００は、ファイルキャッシュ３００に格納される。また、パケットストリーム４００は、パケット分離処理部５００に入力される。
【００１６】
パケット分離処理部５００で分離されたアドバンスドパケット（ＡＤＶ＿ＰＣＫ）は、リソースデータロード処理部６００のリングバッファ６０１に格納される。
【００１７】
リソースデータロード処理部６００は、リングバッファ制御部６０２を含む。またシステムメモリ上にパケットリスト格納部６０３を有する。リングバッファ制御部６０２は、リングバッファ６０１のリードポインタ、ライトポインタ、リカバリポインタを有し、これらのポインタを制御している。
【００１８】
リングバッファ６０１から読み出されたデータは、ファイルキャッシュ３００のリソースデータ格納部３０１に格納される。即ち、ファイルキャッシュ３００は、リソースデータ格納部３０１と、プレイリスト格納部３０２を有する。プレイリストに従って各リソースデータを格納するリソースデータ格納部３０２は、プレイリストに従って各リソースデータを格納するし、また出力する。
【００１９】
ファイルキャッシュ３００から出力されたリソースデータは、リソースデータ再生部７００に入力されてデコードされる。デコードされたリソースデータは、出力合成部８００に入力される。出力合成部８００は、デコードされたリソースデータと、ＡＶ再生部９００からのデコードされたＡＶデータとの合成処理を行い、ディスプレイ接続端子１０００に出力する。ＡＶ再生部９００は、先のパケット分離処理部５００にて分離されたメインビデオパック（ＶＭ＿ＰＣＫ），サブビデオパック（ＶＳ＿ＰＣＫ），メインオーディオパック（ＡＭ＿ＰＣＫ）、サブオーディオパック（ＡＳ＿ＰＣＫ），サブピクチャーパック（ＳＰ＿ＰＣＫ），などのＡＶデータをデコードする部分である。また、ナビゲーションパック（ＮＶ＿ＰＣＫ）は、制御部１００１に取り込まれて、各種の制御信号を得るための情報として利用される。
【００２０】
さらにこの装置には、アプリケーション処理部１００２が設けられている。アプリケーション処理部１００２は、各種のアプリケーションを格納したアプリケーション格納部１００３を有する。アプリケーション格納部１００３の各種アプリケーションは、制御部１００１からの制御情報に基づいて、ファイルキャッシュ３００におけるデータの処理手順を決めるために利用される。
【００２１】
さらにアプリケーション処理部１００２は、必要なリソースデータのリスト格納部１００４を有する。この必要なリソースデータのリスト格納部１００４は、リソースデータロード処理部６００の問い合わせに応答する部分である。
【００２２】
ＡＤＶ＿ＰＣＫがパケット分離処理部５００から分離されたとき、リソースデータロード処理部６００のリングバッファに格納される。リングバッファでは、ライトポインタを次の書き込みのために１パケット分ずらす処理が行われる。またこのパケットを読み込む際、このパケットがスタートパケットだった場合、リソースデータロード処理部６００は、アプリケーション処理部１００２に対して、このＡＤＶ＿ＰＣＫのデータは、必要かどうかを問い合わせる。
【００２３】
質問を受けたアプリケーション処理部１００２は、ＡＤＶ＿ＰＣＫのデータが、現在プレイリスト情報に基づいて、ファイルキャッシュ内で処理しているリソースデータに対応するデータであるかどうか、及びファイルキャッシュに空き容量があるかどうかを判断する。ＡＤＶ＿ＰＣＫのデータが、（１）現在処理しているリソースデータに対応するデータであるかどうかの判断は、ＡＤＶ＿ＰＣＫの属性データ(識別子(Advanced_identifier))に基づいて、判断することができる。（２）またファイルキャッシュ３００に空き容量があるかどうかは、ファイルキャッシュマネージャ（図示せず）が管理している管理情報から判断することができる。ファイルキャッシュマネージャはファイルキャッシュ６００の書き込みアドレス、読出しアドレスなどを管理している。アプリケーション処理部１００２は、判断結果として、空き容量があるかどうかの応答と、必要なリソースデータであるかどうか（つまり現在処理しているリソースデータに対応する続きのデータであるかどうか）の応答を行なう。
【００２４】
上記の判断の結果、まず、ファイルキャッシュ６００内で処理しているリソースデータ（Ｒ１）に関連した続きのデータ（Ｒ１next）であればファイルキャッシュ３００に転送する対象のデータとなる。次にリングバッファ６０１のリードポインタに基づき格納されているＡＤＶ＿ＰＣＫをファイルキャッシュ６００に書き込む。リードポインタを次の読出しのためにインクリメントする。このようにファイルキャッシュ３００に蓄積を開始後(必要とされているパックが得られた場合)は、リングバッファから常にファイルキャッシュ３００へ蓄積していく。ファイルキャッシュ３００には、最初のパックが得られた時点で、そのリソースデータを蓄積する領域が確保されている。リングバッファ６０１では、リードポインタを次の読出しのために次々とインクリメントする。
【００２５】
上記の判断の結果、ファイルキャッシュ６００内で処理しているリソースデータ（Ｒ１）とは関係のないリソースデータ（Ｒ２）である場合には、リソースデータ処理部６００は、ＡＤＶ＿ＰＣＫをリカバリポインタに基づいて、リングバッファ６０１に書き込む。また、システムメモリ上のパケットリスト格納部６０３に、当該ＡＤＶ＿ＰＣＫのアドレスを記述する。
【００２６】
この発明は、特にリソースデータロード処理部６００において、リングバッファ６０１の制御方法に特徴がある。
【００２７】
図２には、上記の装置の動作により、リソースデータ（Ｒ２）がリカバリされる様子を単純化して示している。今、例えばメニュー表示アプリケーションに基づきメニュー用のリソースデータ（Ｒ１）が時間軸上の時点ｔ１−ｔ３の区間Ｔ１で処理されるものとする。また、映像解説用のリソースデータ（Ｒ２）が、映像解説アプリケーションに基づいて、時点ｔ３−ｔ４の区間Ｔ２で処理されるものとする。しかし、リソースデータ（Ｒ２）のパケット分離処理が、時点２で開始され、区間Ｔ３がリソースデータ（Ｒ１）の処理期間にオーバーラップするものとする。
【００２８】
このような場合、区間Ｔ１では、ファイルキャッシュ３００はリソースデータ（Ｒ１）を処理している。このために、リソースデータ（Ｒ２）のパケットが分離されたとしても、アプリケーション処理部１００２は、不明なリソースデータであるとの応答をリソースデータ処理部６００に行う。
【００２９】
このときは、リソースデータロード処理部６００は、リソースデータ（Ｒ２）のパケットを、必要/不明にかかわらず、常にリングバッファ６０１にまず格納する。今、時点ｔ３になり、リソースデータ（Ｒ１）の処理が終わり、ファイルキャッシュ３００において、リソースデータ（Ｒ２）の処理が可能となったとする。すると、区間Ｔ３にリングバッファ６０１に蓄積されたリソースデータ（Ｒ２）のＡＤＶ＿ＰＣＫは、パケットリスト格納部６０３のパケットリストに基づいて、リングバッファ６０１から、ファイルキャッシュ３００に一挙に転送される。以後は、リソースデータ（Ｒ２）の再生が映像解説アプリケーションに基づいて実行される。また、パケットリストはクリアされる。
【００３０】
図３には、上記したパケット分離処理部５００の動作フローを示している。アドバンスドコンテンツの再生が開始されると（ステップＳＡ１）、ＡＤＶ＿ＰＣＫが分離されたか否かの判定が行なわれる（ステップＳＡ２）。ＡＤＶ＿ＰＣＫが分離された場合、ＡＤＶ＿ＰＣＫがリングバッファ６０１に格納される。またリングバッファ制御部６０２において、ライトポインタが進められる。
【００３１】
図４（Ａ）には、リングバッファ６０１の記憶領域のイメージを模式的に示し、図４（Ｂ）には、パケットリスト格納部６０３のデータ格納状態の例を示している。上記した区間Ｔ３に、一度読み込んだパケット領域（リカバリポインタＲＣＶ−ＰからリードポインタＲＰの間の領域）に、ＡＤＶ＿ＰＣＫとしてリソースデータ（Ｒ２）のパケット（＊が付加されたパケット）＊ＰＲ２，＊ＰＲ４、＊ＰＲ５が格納された様子を示している。これに応じて、パケットリスト格納部６０３には、各パケット＊ＰＲ２，＊ＰＲ４、＊ＰＲ５のアドレスとリソースデータ２Ｒの識別子が格納されている。例えば、リングバッファからパケットを読み出すとき、この識別子を用いて、対応リソースデータとの照合が可能である。図４（Ａ）にパケット＊ＰＮＲ１，＊ＰＮＲ２，＊ＰＮＲ４を示しているが、これは、未読み込みであり、後で（時点ｔ３以後：図２参照）リングバッファ６０１に格納されるパケットの様子を示している。
【００３２】
時点ｔ３以後は、リングバッファ６０１からファイルキャッシュ３００へのデータ転送が開始される。このとき、パケットリストが参照され、パケット＊ＰＲ２，＊ＰＲ４、＊ＰＲ５が順次ファイルキャッシュ３００に転送される。このときアプリケーション処理部１００２は、必要とするリソースデータのリストと各リソースデータのパケットリストを照合し、合致するリソースデータのパケットをリングバッファ６０１からファイルキャッシュ３００へロードさせる。つまりパケットのアドバンスド識別子と、必要リソースデータリストに上げられているリソースデータのアドバンスド識別子との照合を行ない、合したときにパケットの転送を許可する。
【００３３】
図５にはファイルキャッシュ３００の記憶領域の例を示し、上記パケット＊ＰＲ２，＊ＰＲ４、＊ＰＲ５が転送された直後の様子を示している。このとき、パケットリスト格納部６０３パケットリストは、クリアされる。
【００３４】
この後に分離されたリソースデータ（Ｒ２）のＡＤＶ＿ＰＣＫは、ライトポインタＷＰに基づいてリングバッファ６０１に格納される。また、ファイルキャッシュ６０１転送されるパケットは、リードポインタＲＰに基づいてリングバッファ６０１から読み出される。
【００３５】
図４（Ａ）、図５のパケット＊ＰＮＲ１，＊ＰＮＲ２，＊ＰＮＲ４は、時点ｔ３（図２参照）以後に分離されたパケットが格納された様子を示している。
【００３６】
上記したようにこの装置によると、リングバッファ６０１、リングバッファ制御部６０２（リカバリポインタＲＣＶ−Ｐ）と、パケットリスト格納部６０３を利用することにより、ファイルキャッシュメモリ３００の容量を大きくすることなく、種々のプロバイダーによるＡＤＶ＿ＰＣＫの処理に対応することができる。また、可能な限り種々のリソースデータを破棄することなく、再生することが可能となる。
【００３７】
またリソースデータのパケットリストがあるために、リングバッファからリソースデータを読み出す処理を高速化できる。上記の実施形態では、パケットリスト格納部６０３は、リソースデータ（Ｒ２）のパケットリストを格納した。しかし、さらに別のリソースデータ（Ｒ３），（Ｒ４）・・・・のパケットが再生されることもある。このような場合は、パケットリスト格納部６０３は、リソースデータ毎にパケットリストを生成することができる。
【００３８】
図６は、この発明装置の全体的な動作をまとめて示している。特にアプリケーション処理部１００２と、リソースデータのパケット分離処理部５００の処理時間上のずれを解決している。
【００３９】
今、複数のＰＮＧファイル、音声ファイルが格納されているリソースデータ（Ｒ１）（６４ＭＢ）を使用するメニュー表示アプリケーションと、複数のＰＮＧファイルが格納されているリソースデータ（Ｒ２）（２０ＭＢ）を使用する映像解説アプリケーションがあるとする。また、リソースデータを格納するファイルキャッシュ（６４ＭＢ）があるとする。また、ビデオストリームから分離されたＡＤＶ＿ＰＣＫを蓄積するためのリングバッファ６０１を用意する（制御には、リードポインタ、ライトポインタ、リカバリポインタを使用する)。
【００４０】
アドバンスドコンテンツ再生開始時（ステップＳＢ１）、ＨＤ＿ＤＶＤ  Ｄｉｓｃプレイリスト（Playlist）をファイルキャッシュ３００にロードする。このプレイリストをファイルキャッシュマネージャで解析し、アプリケーション１、アプリケーション２が必要なリソースデータ(リソースデータ（Ｒ１）、リソースデータ（Ｒ２）の識別子(Advanced_identifier(1、2))を、必要なリソースデータのリスト格納部１００４のリスト１００４に記憶する（ステップＳＢ２）。
【００４１】
アドバンスドコンテンツ再生中、ビデオストリームからパケット分離処理部５００を通じてリソースデータ1用のＡＤＶ＿ＰＣＫが分離されたら（ステップＳＢ３，ＳＢ４）、リングバッファ６０１に書き込み、リングバッファ６０１のライトポインタをパケットのサイズ分進める。
【００４２】
リングバッファ６０１にＡＤＶ＿ＰＣＫが格納されたら、読み込み処理をおこない、逐次ファイルキャッシュ３００への蓄積処理をおこなう。リングバッファのリードポインタおよびリカバリポインタをリングバッファから読み込んだＡＤＶ＿ＰＣＫのサイズ×ＡＤＶ＿ＰＣＫの個数分進める。
【００４３】
読み込み処理では、リソースデータロード処理部６００は、ＡＤＶ＿ＰＣＫがリソースデータＲ1のスタートパケットなら、ＡＤＶ＿ＰＣＫの識別子をアプリケーション処理部１００１に渡し、リソースデータＲ１が必要か問い合わせる。問い合わせた結果、必要な場合は、ファイルキャッシュ３００上にリソースデータＲ１を蓄積する領域を確保し、ファイルキャッシュ３００への蓄積を行なう（ステップＳＢ４，ＳＢ５，ＳＢ６，ＳＢ７，ＳＢ８、ＳＢ９，ＳＢ１０、ＳＢ１１の系路の処理）。また、読み込み処理では、ＡＤＶ＿ＰＣＫがリソースデータＲ1のエンドパケットなら（ステップＳＢ１２）、ファイルキャッシュへの蓄積後、リソースデータ1のロード完了処理をおこなう（ステップＳＢ１０，ＳＢ１１，ＳＢ１２、ＳＢ１３、ＳＢ１４、ＳＢ３の系路の処理）。
【００４４】
リソースデータＲ１のロードが完了したら、メニュー表示アプリケーションがリソースデータＲ１の処理を開始する。
【００４５】
映像解説アプリケーションは、メニュー表示アプリケーションがリソースデータＲ１の処理を完了したら、リソースデータＲ２の処理を開始する（図２の時点２から開始）。
【００４６】
メニュー表示アプリケーションがリソースデータＲ１を処理している最中、ビデオストリームからパケット分離処理部５００を通じてリソースデータＲ２のＡＤＶ＿ＰＣＫが分離される。分離されたＡＤＶ＿ＰＣＫは、リングバッファ６０１に格納される。リングバッファ６０１のライトポインタがパケットのサイズ分進められる。
【００４７】
読み込み処理では、ＡＤＶ＿ＰＣＫがリソースデータＲ２のスタートパケットなら、ＡＤＶ＿ＰＣＫのアドバンスド識別子（Advanced_identifier）をアプリケーション処理部１００２に渡し、リソースデータＲ２が必要か問い合わせる。問い合わせた結果、ファイルキャッシュ３００上にリソースデータＲ２のＡＤＶ＿ＰＣＫを蓄積する領域を確保できないため、必要であるが格納できないまたは不明であるとの応答がある。
【００４８】
この場合は、アプリケーション処理部１００２からリソースデータＲ２の要求があるまで、リソースデータＲ２用のパケットリストを作成し、リソースデータＲ２のＡＤＶ＿ＰＣＫのリングバッファ上でのポインタをパケットリストに記憶していく（ステップＳＢ７，ＳＢ１５，ＳＢ９，ＳＢ１６の処理系路）。
【００４９】
メニュー表示アプリケーションがリソースデータＲ1の処理を完了すると、アプリケーション処理部１００２は、リソースデータＲ1の領域を解放する。
【００５０】
リソースデータＲ1が開放されると、ファイルキャッシュ３００上にリソースデータＲ２のＡＤＶ＿ＰＣＫを蓄積する領域を確保できるようになる。このとき、アプリケーション処理部１００２より、リソースデータロード処理部６００に対して、リソースデータＲ２(Advanced_identifier(2))要求が行なわれる。
【００５１】
またこのときは、アプリケーション処理部１００２若しくはファイルキャッシュマネージャが、ファイルファイルキャッシュ３００上にリソースデータＲ２のＡＤＶ＿ＰＣＫを蓄積する領域を確保し、パケットリストに記憶されているリソースデータＲ２のＡＤＶ＿ＰＣＫ(一度読み込んだパケット領域に存在している)を、ファイルキャッシュ３００に蓄積する。蓄積後、パケットリストを破棄する（ステップＳＢ１０，ＳＢ１７、ＳＢ１８，ＳＢ１９、ＳＢ１１の処理系路）。パケットリストを使用することで、一度読み込んだパケット領域全体を検索することなく、ピンポイントで高速にリソースデータＲ２のＡＤＶ＿ＰＣＫをファイルキャッシュに読み込むことができる。
【００５２】
パケットリストに記憶したＡＤＶ＿ＰＣＫの蓄積が完了したら、通常通り、ビデオストリームからパケット分離処理部を通じて分離されたＡＤＶ＿ＰＣＫを蓄積していく。
【００５３】
リソースデータＲ２のロードが完了したら、映像解説アプリケーションがリソースデータＲ２の処理を開始する。
【００５４】
上記のリングバッファ（図４（Ａ））において、未読み込みパケット領域＋未書き込み領域(リードポインタ  −  ライトポインタ  −  リカバリポインタの領域)は、ビデオストリームのビットレートに対応できるサイズを設定する。一度読み込んだパケット領域(リカバリポインタ−リードポインタの領域)は、処理時間上のずれを吸収可能なサイズを設定する。一度読み込んだパケット領域の中のみ、一度読み込んだパケットを再度読み込むことができる。
【００５５】
リカバリポインタが一度読み込んだパケットを通過した場合、その一度読み込んだパケットは使用できない。これは新しくパケット分離処理部から分離したＡＤＶ＿ＰＣＫが上書きされるためである。このように、リカバリポインタが現在は必要とされていないリソースデータのスタートパケットを通過した場合は、そのリソースデータのロードはキャンセルするようにしている。
【００５６】
リカバリポインタが現在は必要とされていないリソースデータのスタートパケット（例えば図２の＊ＰＲ２）を通過したかどうかのチェックを行なう部分が、図６のステップＳＢ１４である。つまりリソースデータがリカバリ可能かどうかをチェックしている。このときは、リソースデータＲ２の一部が存在しないことであり、再生しても無駄である。したがって、このときはソースデータのロードはキャンセルするようにしている。そしてこのときのパケットリストは、破棄される。
【００５７】
なお、アプリケーション処理部１００２では、リソースデータリスト格納部１００４が中心となり動作し、必要とするリソースデータのリストに含まれる識別子と各リソースデータのパケットリストに含まれる識別子を照合し、両リストの識別子が合致する場合、対応するリソースデータのパケットをリングバッファからファイルキャッシュへロードさせる許可を出すようにしている。
【００５８】
またリソースデータロード処理部６００では、パケットリスト格納部６０３は、リングバッファから前記ファイルキャッシュへのロードが完了すると、前記パケットリストを破棄する。さらにまたリソースデータロード処理部６００では、リングバッファ制御部６０２は、リカバリポインタがファイルキャッシュで現在必要か不明なリソースデータのスタートパケットの格納位置を通過した場合、そのリソースデータのロードはキャンセルする。またリソースデータロード処理部６００では、リングバッファ制御部６０２は、リカバリポインタがファイルキャッシュで現在必要か不明なリソースデータのスタートパケットの格納位置を通過した場合、そのリソースデータのパケットリストも破棄している。
【００５９】
この発明は、ＤＶＤ再生装置に適用されている如く説明したが、これに限らずリングバッファを使用するメモリ手段に対しては、どのようなタイプのものでも利用できることは勿論のことである。
【００６０】
なお、この発明は、上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合せにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。更に、異なる実施形態に亘る構成要素を適宜組み合せてもよい。
【図面の簡単な説明】
【００６１】
【図１】この発明が適用されたＨＤ＿ＤＶＤプレーヤの一実施の形態を示す構成図である。
【図２】この発明の装置により処理されるリソースデータの処理タイミングの例を示す説明図である。
【図３】図１のパケット分離処理部の動作を示すフローチャートである。
【図４】図４（Ａ）は図１のリングバッファの動作を説明するために示した説明図であり、図４（Ｂ）は図１のパケットリスト格納部の例を示す説明図である。
【図５】図１のファイルキャッシュに格納されるパケットの例を示す説明図である。
【図６】図１の装置の全体的な動作例を説明するために示したフローチャートである。
【符号の説明】
【００６２】
１００・・・ＨＤ＿ＤＶＤ、２００・・・プレイリスト、３００・・・ファイルキャッシュ、４００・・・ビデオストリーム、５００・・・パケット分離処理部、６００・・・リソースデータロード処理部、６０１・・・リングバッファ、６０２・・・リングバッファ制御部、６０３・・・パケットリスト格納部、７００・・・リソースデータ再生部、８００・・・出力合成部、９００・・・ＡＶ再生部、１００２・・・アプリケーション処理部、１００４・・・必要なリソースデータのリスト格納部。
【図１】
2008310879.tif 000003
【図２】
2008310879.tif 000004
【図３】
2008310879.tif 000005
【図４】
2008310879.tif 000006
【図５】
2008310879.tif 000007
【図６】
2008310879.tif 000008