(57)【要約】      （修正有）【課題】コンテンツの改竄チェックによる待ち時間増加を極力ユーザに感じさせない再生装置を提供する。【解決手段】ディスクが挿入されると、まず、ディスクマウント処理を行う（Ｓ３０ａ）。次に、プログラムファイルおよびイメージデータファイルを、光ディスクから読み出し（Ｓ３０ｂ）、イメージ管理部に対し、初期化コマンドを送信する（Ｓ３０ｃ）。イメージ管理部では圧縮イメージデータのデコードを開始、並行して、改竄チェック部に対し、コンテンツ検証を指示する（Ｓ３０ｄ）。改竄チェック部では、光ディスクからのハッシュユニットを使用して、検証を行う。検証が成功すると（Ｓ３０ｅでＹｅｓ）、デコード終了を待ち（Ｓ３０ｆ）、通常のタイトル再生処理を開始する（Ｓ３０ｇ）。検証に失敗した場合（Ｓ３０ｅでＮｏ）、デコード結果を破棄し（Ｓ３０ｈ）、検証が失敗したこと、すなわち、再生できないことをユーザに通知する（Ｓ３０ｉ）。【選択図】図７
2009048525.tif 000002
【特許請求の範囲】
【請求項１】
コンテンツデータ、プログラムを取得するデータ取得部と、
前記コンテンツデータの改竄の有無を検証するコンテンツ検証部と、
前記取得したプログラムを実行するプログラム実行部と、
前記取得したコンテンツを再生するコンテンツ再生部と、
前記プログラムは、実行に時間を要する第１のステップ群とそれ以外の第２のステップ群とのうち前記第１のステップ群を、コンテンツ検証処理と並行して実行する制御を行う制御部と
を有することを特徴とするコンテンツ再生装置。
【請求項２】
前記データ取得部は、
少なくとも前記プログラムが使用する画像データ、音声データ、動画データのうちの少なくともいずれか１つを補助データとして取得し、
前記補助データのデコード部と、デコード済みの前記補助データを管理する管理部と、を備え、
前記第１のステップ群は、前記補助データのデコード部によりデコードされることを特徴とする請求項１に記載のコンテンツ再生装置。
【請求項３】
前記データ取得部による前記補助データの取得処理を、前記コンテンツ検証処理よりも前に行うことを特徴とする請求項２に記載のコンテンツ再生装置。
【請求項４】
前記データ取得部は、コンテンツ検証処理の前にデコードを行う補助データのリストを取得し、
前記第１のステップ群でデコードされる補助データは、前記リストに記載された補助データであることを特徴とする請求項２に記載のコンテンツ再生装置。
【請求項５】
前記コンテンツ検証部による検証結果をユーザに通知する通知部を備えることを特徴とする請求項１に記載のコンテンツ再生装置。
【請求項６】
前記データ取得部は、コンテンツ検証前に実行する第１のプログラムとコンテンツ検証後に実行する第２のプログラムを区別するための情報を取得し、
前記プログラム実行手段は、前記第１のプログラムをコンテンツ検証前に実行することを特徴とする請求項１に記載のコンテンツ再生装置。
【請求項７】
コンテンツデータ、プログラムを取得するデータ取得ステップと、
前記コンテンツデータの改竄の有無を検証するコンテンツ検証ステップと、
前記取得したプログラムを実行するステップと、
前記取得したコンテンツを再生するコンテンツ再生ステップと、を有し、
前記プログラムは、実行に時間を要する第１のステップ群とそれ以外の第２のステップ群とのうち前記第１のステップ群を、コンテンツ検証と並行して実行する制御を行うことを特徴とするコンテンツ再生方法。
【請求項８】
請求項７に記載ステップを、コンピュータに実行するためのプログラム。
【請求項９】
請求項８に記載のプログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項１０】
プログラムおよびコンテンツを記録するとともに、さらに前記プログラムを前記コンテンツの検証前に実行開始するか否かを示す情報を記録したことを特徴とする記録媒体。
【請求項１１】
請求項１０に記載の記録媒体であって、
前記コンテンツ検証前に実行するプログラムには、データを取得する処理をコンピュータに実行させるためのプログラムが含まれており、
前記データを取得する処理は、プログラムの処理の先頭部分に含まれており、データ取得完了時にその旨を通知する処理を実行させるプログラムを含んでいることを特徴とする記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンテンツ再生装置に関し、特に、コンピュータソフトウエアによってビデオ再生を制御する再生装置に関するものである。
【背景技術】
【０００２】
Ｂｌｕ−ｒａｙ  Ｄｉｓｃ（ＢＤ）やＨＤ  ＤＶＤといった次世代ビデオディスク規格に基づくコンテンツおよびプレーヤが市場に出てきている。
【０００３】
これらの規格においては、コンテンツの著作権を保護するための仕組みとして、ＡＡＣＳ（Ａｄｖａｎｃｅｄ  Ａｃｃｅｓｓ  Ｃｏｎｔｅｎｔ  Ｓｙｓｔｅｍ）と呼ばれる新しい著作権保護システムが採用されている。ＡＡＣＳでは、従来の不正コピー防止機能に加え、コンテンツ改竄を検出し、その再生を停止するための機能が備えられている。
【０００４】
図１０を参照しながら、ＡＡＣＳにおけるコンテンツ改竄検出機能について説明する。図１０に示すように、コンテンツ改竄検出においては、（ａ）コンテンツ証明書、（ｂ）コンテンツハッシュテーブル、（ｃ）コンテンツ、を使用する。（ｃ）コンテンツは、改竄検出の対象である。（ｃ）コンテンツ中の事前にランダムに選んだ複数の固定長のブロックをハッシュユニットと呼ぶ。なお、図示しないが、すべてのハッシュユニットの位置情報も用意されている。（ｂ）コンテンツハッシュテーブルは、上記ハッシュユニットのハッシュ値を格納したテーブルである。（ａ）コンテンツ証明書は、（ｂ）コンテンツハッシュテーブルのハッシュ値を格納したものであり、（ａ）コンテンツ証明書自体が改竄されていないことを検証できるよう、公開鍵暗号に基づく電子署名が含まれている。
【０００５】
改竄されていないかどうかの検証は、まず、前述のハッシュユニットの位置情報を用い、（ｃ）コンテンツからランダムに選んだハッシュユニットを読み出し、それぞれのハッシュ値を計算し、（ｂ）コンテンツハッシュテーブルの値と比較する。一致しなれば（ｃ）コンテンツが改竄されていると見なし再生を停止する。
【０００６】
さらに（ｂ）コンテンツハッシュテーブル自体が改竄されていないかどうかを検証するため、（ａ）コンテンツ証明書自体を、電子署名を用いて検証した上で、（ｂ）コンテンツハッシュテーブルのハッシュ値を計算したものと、（ａ）コンテンツ証明書に含まれるハッシュダイジェストとを比較する。一致しなければ、（ｂ）コンテンツハッシュテーブルが改竄されているものと見なし再生を停止する。
【０００７】
ＡＡＣＳのルールでは、これらの処理をコンテンツ再生前、あるいは、コンテンツ再生開始後の最初の３０秒あるいは３００秒（ハッシュユニットの選び方により異なる）の間に行うことを求めている。
【０００８】
【特許文献１】特開２００７−７９９８９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００９】
前述のように、コンテンツ改竄検出機能により、改竄されたコンテンツの流通を防ぐことが可能になる。
【００１０】
しかしながら、ＢＤやＨＤ  ＤＶＤのような光ディスクメディアにおいて、ハッシュユニットの読み出しは、ピックアップの移動を伴うため、数秒単位の時間を要する。この時間の間、コンテンツは何も表示されないため、ユーザを待たせることになる。
【００１１】
さらに、ＢＤやＨＤ  ＤＶＤのコンテンツでは、リッチで高品質なユーザインタフェースを提供するために、大量の高解像度イメージデータを使用する。それらのイメージデータには、Ｐｏｒｔａｂｌｅ  Ｎｅｔｗｏｒｋ  Ｇｒａｐｈｉｃｓ（ＰＮＧ）といった圧縮フォーマットを用いており、そのデコード処理に対して数秒単位の時間を要するため、従来のＤＶＤに比べ、ユーザは実際のコンテンツ再生が始まるまで長時間待たされることになる。
【００１２】
コンテンツ改竄検出をコンテンツ再生開始後に行うことで、待ち時間を短縮することも考えられるが、ハッシュユニットの読み出しをビデオ再生と時分割で行う必要があり、ビデオ再生が途切れさせないためにバッファメモリ量の増大や制御の複雑化など、弊害が大きい。
【００１３】
本発明の目的は、コンテンツ改竄検出機能およびイメージデコードの処理時間を、見た目上短縮することのできる再生装置を提供することにある。
【課題を解決するための手段】
【００１４】
本発明の一観点によれば、コンテンツデータ、プログラムを取得するデータ取得部と、前記コンテンツデータの改竄の有無を検証するコンテンツ検証部と、前記取得したプログラムを実行するプログラム実行部と、前記取得したコンテンツを再生するコンテンツ再生部と、前記プログラムは、実行に時間を要する第1のステップ群とそれ以外の第2のステップ群とのうち前記第1のステップ群を、コンテンツ検証処理と並行して実行する制御を行う制御部と、を有することを特徴とするコンテンツ再生装置が提供される。
【００１５】
上記の構成により、コンテンツ検証に伴うユーザの待ち時間増加を見た目上減らすことができる。
【００１６】
前記データ取得部は、少なくとも前記プログラムが使用する画像データ、音声データ、動画データのうちの少なくともいずれか１つを補助データとして取得し、前記補助データのデコード部と、デコード済みの前記補助データを管理する管理部と、を備え、前記第1のステップ群は、前記補助データのデコード部によりデコードされることが好ましい。上記構成により、補助データのデコード時間を見かけ上短縮することができる。
【００１７】
前記データ取得部による前記補助データの取得処理を、前記コンテンツ検証処理よりも前に行うことを特徴とする。
【００１８】
上記の構成により、コンテンツ検証処理に伴うコンテンツデータの取得と補助データの取得が同時に発生しないため、両者の排他制御やシーク処理等が不要であり、コンテンツ検証処理をスムーズに行うことが可能である。
【００１９】
さらに、前記データ取得部は、コンテンツ検証前に実行する第１のプログラムとコンテンツ検証後に実行する第２のプログラムを区別するための情報を取得し、前記プログラム実行手段は、前記第１のプログラムをコンテンツ検証前に実行することを特徴とする。
【００２０】
上記の構成により、コンテンツ独自の圧縮方式や暗号化方式を使用することが可能になる。また、コンテンツ検証中のアニメーション表示等、様々な処理が可能になる。
【００２１】
本発明の他の観点によれば、コンテンツデータ、プログラムを取得するデータ取得ステップと、前記コンテンツデータの改竄の有無を検証するコンテンツ検証ステップと、前記取得したプログラムを実行するステップと、前記取得したコンテンツを再生するコンテンツ再生ステップと、を有し、前記プログラムは、実行に時間を要する第１のステップ群とそれ以外の第２のステップ群とのうち前記第１のステップ群を、コンテンツ検証と並行して実行する制御を行うことを特徴とするコンテンツ再生方法が提供される。上記の構成により、コンテンツ検証中に任意の処理を実行することが可能になる。
【００２２】
また、本発明に係る記録媒体は、プログラムおよびコンテンツを記録するとともに、さらに前記プログラムを前記コンテンツの検証前に実行開始するか否かを示す情報を記録したことを特徴とする記録媒体が提供される。
【００２３】
上記の構成により、コンテンツ検証処理に伴うコンテンツデータの取得と補助データの取得が同時に発生しないため、両者の排他制御やシーク処理等が不要であり、コンテンツ検証処理をスムーズに行うことが可能である。
【発明の効果】
【００２４】
本発明によれば、コンテンツ検証処理をスムーズに行うことが可能である。
【発明を実施するための最良の形態】
【００２５】
以下、本発明の実施の形態によるコンテンツ再生技術について図面を参照しながら説明を行う。まず、本発明の第１の実施の形態による再生技術について説明する。尚、本実施の形態では、ビデオディスクプレーヤを利用しる再生技術について説明するが、本発明はこれに限定されず、ＰＣ（Personal Computer）等、再生装置の形態を問わない。
【００２６】
＜システム構成＞
図１は、本実施の形態によるビデオディスクプレーヤ１の一構成例を示す機能ブロック図である。
ビデオディスクプレーヤ１は、光ディスク１０に記録されているＡＶデータを再生することができる装置である。図１に示すように、ビデオディスクプレーヤ１は、ディスク読み出し部２０と、全体を制御する全体制御部（ＣＰＵ）３０と、改竄チェック部４０と、プログラム実行部５０と、イメージ管理部６０と、イメージデコード部７０と、ビデオ再生部８０と、バッファメモリ９０と、合成部１００と、を備えている。実線の矢印はデータの流れを示し、破線軸の矢印は制御信号の向きを表している。
【００２７】
ディスク読み出し部２０は、全体制御部３０等の指示により、光ディスク１０から各種ファイルを読み出す。全体制御部３０は、電源投入後の初期化、ディスクローディング、ディスクイジェクト、タイトル切り替え等、全体的な制御を司る。プログラム実行部４０は、光ディスク１０にプログラムが記録されている場合に、その記録されたプログラムを実行する。プログラムを実行することによって、ビデオ再生部８０、ディスク読み出し部２０を制御する。また、プログラムの実行によって生成されたビットマップデータを合成部１００に送る。
【００２８】
イメージ管理部６０は、全体制御部３０およびプログラム実行部５０からの指示に従って、光ディスク１０から読み出した圧縮イメージデータのデコード制御およびデコード後の非圧縮イメージデータの管理を行う。
【００２９】
イメージデコード部７０は、圧縮イメージデータのデコード処理を行う。扱う圧縮フォーマットはＰＮＧ，ＧＩＦ、ＪＰＥＧ等である。
【００３０】
ビデオ再生部８０は、全体制御部３０あるいはプログラム実行部５０の指示に従い、ディスク読み出し部２０によって読み出されたＡＶデータをデコードし、非圧縮ビデオデータおよび非圧縮オーディオデータ（図示せず）に変換する。非圧縮ビデオデータは合成部１００に送られる。
【００３１】
バッファメモリ９０は、再生対象のタイトルが使用するプログラムやイメージデータを保持するためのバッファメモリである。タイトル再生前にディスク読み出し部２０を通じて読み出し、バッファメモリ９０に保持しておくことで、ビデオ再生中にプログラムやイメージデータを光ディスク１０から読み出すことによるビデオ再生処理が途切れるのを防ぐことが可能である。
【００３２】
合成部１００は、ビデオ再生部８０から送られる非圧縮ビデオデータ、プログラム実行部５０によって生成されるビットマップデータを重畳合成し、外部映像出力へと送る。
【００３３】
＜ファイル構成＞
光ディスク中のＡＶデータやプログラム等は、ファイルシステムを通じてファイルとしてアクセスすることが可能である。
図２は、光ディスク１０中のファイル・ディレクトリ構造を示す図である。以下、簡単にファイルの説明を行う。
【００３４】
ＡＶデータファイルＦ１はＡＶデータを格納したファイルである。プレイリストファイルＦ２は、プレイリストおよびＡＶデータに関する属性情報を格納したファイルである。尚、プレイリストとは、どのＡＶデータのどこからどこまでをどのような順序で再生するかに関する情報である。
【００３５】
プログラムファイルＦ４は、コンパイル済みのＪａｖａクラスファイル群およびプログラムが使用するイメージデータファイル等をまとめたものであり、ＪＡＲ（Ｊａｖａ  ＡＲｃｈｉｖｅ）フォーマットを使用する。
【００３６】
イメージデータファイルＦ３は、ＰＮＧ、ＧＩＦ，ＪＰＥＧのいずれかの圧縮フォーマットを使用した圧縮イメージデータを格納する。前述のように、プログラムファイル内にも格納することができるが、プログラムファイル外にも置くことが可能である。
【００３７】
タイトル情報ファイルＦ５は、光ディスク１０中の各タイトルに関する情報を格納したファイルである。格納されている情報としては、各タイトルが使用するプログラムファイルの参照情報がある。
【００３８】
インデックスファイルＦ６は、ディスク挿入時に自動再生するファイルやタイトル番号とタイトル情報ファイルの対応付け情報を格納するファイルである。
【００３９】
＜プログラム実行部＞
図３は、上記プログラム実行部５０の詳細な構成例を示す機能ブロック図である。適宜図１を参照しながら説明を行う。図３に示すように、プログラム実行部５０は、バス５０ａ、ディスク読み出し部２０とのＩ／Ｆ５０ｂと、プログラム保持部５０ｃ、インタプリタ部５０ｄ、再生制御部とのＩ／Ｆ５０ｅ、グラフィックスエンジン５０ｆ、を含んで構成される。
【００４０】
ディスク呼び出し部２０を介して読み出されたプログラムは、バッファメモリ９０に保持される。インタプリタ部５０ｄはバッファメモリ９０に保持されたプログラムを先頭から順に実行していく。プログラム中にグラフィックス描画処理が含まれていた場合は、グラフィックエンジン５０ｆを通じて描画を行い、描画結果を合成部１００中の図示しないフレームバッファに格納する。
【００４１】
また、ＡＶ再生の開始、終了、特殊再生等を行うようなロジックがプログラムに含まれていた場合は、再生制御部とのＩ／Ｆ５０ｅを通じてビデオ再生部８０を制御する。
【００４２】
＜イメージ管理部＞
図４は、図１に示すイメージ管理部６０の詳細な構成例を示す機能ブロック図である。図４に示すように、イメージ管理部６０は、バス６０ａ、デコード済みイメージ保持部６０ｂ、イメージ管理制御部６０ｃ、全体制御部とのＩ／Ｆ６０ｄ、イメージデータ管理テーブル６０ｅ、プログラム実行部とのＩ／Ｆ６０ｆ、イメージデコード部とのＩ／Ｆ６０ｇで構成される。
【００４３】
イメージ管理部６０は、前述のように全体制御部３０およびプログラム実行部５０からの指示に従って、光ディスク１０から読み出した圧縮イメージデータのデコード制御およびデコード後の非圧縮イメージデータの管理を行う。
【００４４】
以下に図５を参照しながら、イメージ管理部６０におけるイメージデコード処理シーケンスについて説明する。図５は、イメージ管理部６０におけるイメージデコード処理の流れを示すフローチャート図である。イメージ管理処理がデコードコマンドにより開始されると、まず、指示されたデコードコマンドが初期化コマンドかどうかを調べる（Ｓ２０ａ）。初期化コマンドであれば（Ｙｅｓ）、圧縮イメージファイルをバッファメモリ９０からロードし（Ｓ２０ｂ）、イメージデコード部７０にデコードを指示する（Ｓ２０ｃ）。デコードが終了すると、デコード結果をデコード済みイメージ保持部６０ｂに格納し（Ｓ２０ｄ）、ファイル名およびデコード済みイメージのアドレス情報のセットをイメージ管理テーブルに登録する（Ｓ２０ｅ）。ここで、イメージデータ管理テーブル６０ｅは、圧縮イメージファイル名とデコード済みイメージのアドレス情報の組を管理しているテーブルであり、Ｓ２０ｅによって登録される。
【００４５】
Ｓ２０ａにおいて、初期化コマンドでなく、通常のデコードコマンドの場合は（Ｎｏ）、指定された圧縮イメージデータファイルがデコード済みかどうかを調べるため、イメージデータ管理テーブル６０ｅを参照する（Ｓ２０ｆ、Ｓ２０ｇ）。データ管理テーブル６０ｅにおいて、もし、デコード済みでなければ（Ｎｏ）、圧縮イメージファイルをバッファメモリ９０からロードし（Ｓ２０ｈ）、イメージデコード部７０にデコードを指示する（Ｓ２０ｉ）。その上で、デコード済みイメージデータをコマンド発行元に転送する（Ｓ２０ｊ）。
【００４６】
一方、デコード済みの場合は（Ｙｅｓ）、イメージデータ管理テーブル６０ｅを参照し、デコード済みイメージデータのアドレスを取得し（Ｓ２０ｋ）、そのアドレスにあるデコード済みイメージデータをコマンド発行元に転送する（Ｓ２０ｊ）。
【００４７】
尚、ファイルに格納された圧縮イメージデータでなく、メモリに格納された圧縮イメージデータをデコードする場合もあるが、その場合は、Ｓ２０ｈ〜Ｓ２０ｊのステップのみを実行する。
【００４８】
＜全体処理＞
次いで、図６を参照しながら、ビデオディスクプレーヤ１の全体的な処理シーケンスについて説明する。図６は、ビデオディスクプレーヤ１による全体の流れを示すフローチャート図である。まず、電源投入に伴い初期化を行う（Ｓ１０ａ）。次に、ディスク挿入を検出し（Ｓ１０ｂ）、ディスク再生処理を行う（Ｓ１０ｃ）。尚、ディスク再生処理については後述する。ディスク再生が終了すると、ディスク排出処理を行い（Ｓ１０ｄ）、電源が切られた際には（Ｓ１０ｅでＹｅｓ）、終了処理を行う（Ｓ１０ｆ）。電源が切られるまでは（（Ｓ１０ｅでＮｏ）、Ｓ１０ｂからＳ１０ｄまでの処理を繰り返す。
【００４９】
＜再生処理＞
続いて、図７を参照しながら、全体制御部３０における再生処理について説明する。図７は、全体制御部３０における処理フローを示すフローチャート図である。ディスクが挿入されると、まず、ディスクマウント処理を行う（Ｓ３０ａ）。ここでは、光ディスク１０のファイルシステム情報を、ディスク読み出し部２０を経由して読み出し、光ディスク１０に格納されたデータをファイルとして扱うことができるようにする。
【００５０】
次に、イメージデータ読み出し処理を行う（Ｓ３０ｂ）。ここでは、プログラムファイルおよびイメージデータファイルを、ディスク読み出し部２０を経由して光ディスク１０からバッファメモリ９０に読み出す。さらに、プログラムファイルについては、ＪＡＲファイル（図２参照）を展開して、中に格納されている個々のイメージデータファイルＦ３を抜き出す。
【００５１】
次に、イメージ管理部６０に対し、上記イメージデータファイルＦ３群を対象として、初期化コマンドを送信する（Ｓ３０ｃ）。前述のように、イメージ管理部６０ではこのコマンド受理に伴い、圧縮イメージデータのデコードを開始する。
【００５２】
ここで、デコード処理と並行して、改竄チェック部４０に対し、コンテンツ検証を指示する（Ｓ３０ｄ）。これに伴い、改竄チェック部４０では、図１０にも記載されるように、ディスク読み出し部２０を経由して、光ディスク１０からのハッシュユニットの読み出しを行い、検証を行う。
【００５３】
検証が成功すると（Ｓ３０ｅでＹｅｓ）、デコード終了を待ち（Ｓ３０ｆ）、通常のタイトル再生処理を開始する（Ｓ３０ｇ）。仮に検証に失敗した場合（Ｓ３０ｅでＮｏ）、デコード結果を破棄し（Ｓ３０ｈ）、不正なコンテンツである可能性があるため、検証が失敗したこと、すなわち、再生できないことをユーザに通知する（Ｓ３０ｉ）。
【００５４】
尚、図７においては、デコード完了を待っているが（Ｓ３０ｆ）、一旦デコードを打ち切って、タイトル再生を開始してもよい。
【００５５】
タイトル再生処理については、一般的なものであるため、ここでは説明を省略する。但し、本実施の形態による再生処理においては、前述のように、圧縮イメージデータファイル自体はすでにデコードが完了しているため、実行中のプログラムがイメージデータをデコードしようとした際には、デコード済みのデータを使用するため、デコードに伴う待ち時間がないという点に特徴がある。
【００５６】
図８を参照しながら、上記の関係を説明する。図８は、ディスク挿入からプログラム実行までの機能ブロック間の読み出し関係を示すシーケンス図である。
【００５７】
時刻Ｔ１１−Ｔ１２（Ｘ４）が、図７のステップＳ３０ｂ（イメージデータ読み出し）、Ｔ１２がステップＳ３０ｃ（イメージ管理部６０にデコード開始を指示）、Ｔ１４がステップＳ３０ｄ（改竄チェック部４０に検証を指示）、Ｔ１７以降がＳ３０ｇ（タイトル再生指示）に対応する。また、Ｔ２０−Ｔ２１（Ｘ８）がプログラムからの圧縮イメージデコード処理に該当する。図８に示されるように、改竄チェック処理区間（Ｔ１４―Ｔ１５：Ｘ１）とイメージデコード処理区間（Ｔ１３−Ｔ１６：Ｘ２）とを並行していることがわかる。イメージ管理部は、Ｔ２０からＴ２１の間で短時間にイメージデコードを行う（Ｘ８）。これは、予めＴ１３からＴ１６までの期間（Ｘ３）でイメージデコード部７０がデコードを行った部分をイメージ管理部６０に移しておくことで、ディスク読み出し後には、短時間でデコードが完了する。すなわち、本実施の形態による再生処理の特徴は、処理時間はかかるがイメージデコード処理Ｘ２においては、光ディスク１０へのディスクアクセスが発生しないことを利用して、同様に処理時間はかかるがディスクアクセスが発生する改竄チェック処理と並列して処理を行うようにすることで、見かけ上、イメージデコード処理（Ｔ２０−Ｔ２１）を短縮することができる。
【００５８】
また、上述のように、イメージ管理部６０を設け、デコード済みのイメージデータの管理を行っていることから、既存のコンテンツを書き換えることなく、見た目上の高速化が可能となっている。すなわち、改竄チェック処理時間にデコード時間が隠されており、ディスク読み出し処理の後では、処理時間が短縮されている。
【００５９】
尚、本実施の形態では、プログラムファイル内およびプログラムファイル外の圧縮イメージファイルをすべてデコードしているが、光ディスク１０内にタイトル再生開始前にデコードすべき圧縮イメージファイルのリストを持たせておき、そのリスト中の圧縮イメージファイルのみ改竄チェックと並行してデコードすることにより、再生開始までに時間短縮に寄与しない、圧縮イメージファイルの読み込みおよびデコードを避けることができる。尚、タイトル再生開始前にデコードすべき圧縮イメージファイルをプレーヤに伝える方法は、プレーヤがそれを特定できるのであれば何でもよい。例えば、特定のディレクトリに格納する、特定の名称のＪＡＲファイル等にまとめる、ファイル名に特定の文字列を含むようにする等が考えられる。
【００６０】
尚、本実施の形態では、Ｊａｖａ言語やＥＣＭＡＳｃｒｉｐｔ等の汎用プログラム言語を使用することを想定しているが、ＨＴＭＬ等のマークアップ言語を使用した場合でも同様の効果があることは言うまでもない。
【００６１】
また、本実施の形態では、暗号化した圧縮イメージファイルに対応した説明を行っていないが、イメージデコード部１６０あるいはバッファメモリ１８０の直前に暗号復号処理を追加すれば容易に対応可能であることは言うまでもない。
【００６２】
次に、本発明の第２の実施の形態による再生技術について図面を参照しながら説明を行う。
本発明の第２の実施の形態について、図９を参照しながら説明する。尚、説明の便宜上、第１の実施の形態において示した部材と同一の機能を有する部材には、同一の符号を付し、その説明を省略する。また、第１の実施の形態において定義した用語については、特に断らない限り、本実施の形態においてもその定義に則って用いるものとする。
【００６３】
第２の実施の形態と第１の実施の形態との違いは、改竄チェック中に圧縮イメージファイルのデコードを行う代わりに、圧縮イメージファイルのデコード等を行う特別なプログラムを実行する点である。このことにより、例えば圧縮イメージファイルにコンテンツ独自の暗号をかけ、不正に利用させないようにすることが可能となる。あるいはコンテンツに特化した独自の圧縮方式をかけ、より圧縮率を高めることも可能となる。
【００６４】
＜システム構成＞
第１の実施の形態と共通であるため、説明を省略する。
【００６５】
＜ファイル構成＞
第１の実施の形態と共通であるが、インデックスファイルに、タイトル再生前に起動するプログラムを指定するフィールドが追加されている点が異なる。以下、上記フィールドで指定されるプログラムのことを、タイトル再生前実行プログラムと称する。タイトル再生前実行プログラムは、処理に必要なデータを最初にすべて光ディスク１０から読み出し、読み出し終わったらそれを通知するような処理構成になっている。
後述するように、ビデオディスクプレーヤ１は、このフィールドを参照して、改竄チェック処理前にタイトル再生前実行プログラムを読み出し、実行を開始する。
【００６６】
＜プログラム実行部＞
第１の実施の形態と共通であるため、説明を省略する。
【００６７】
＜イメージ管理部＞
第１の実施の形態と共通であるため、説明を省略する。
【００６８】
＜全体処理＞
第１の実施の形態と共通であるため、説明を省略する。
【００６９】
＜再生処理＞
図９を参照しながら、全体制御部３０における再生処理について説明する。図９は、全体制御部３０における処理の流れを示すフローチャート図である。図９に示すように、ディスクが挿入されると、まず、ディスクマウント処理を行う（Ｓ４０ａ）。ここでは、光ディスク１０のファイルシステム情報を、ディスク読み出し部２０を経由して読み出し、光ディスク１０に格納されたデータをファイルとして扱うことができるようにする。
次に、インデックスファイルを光ディスク１０から読み出し、タイトル再生前実行プログラムを光ディスク１０から、バッファメモリ９０に読み出す（Ｓ４０ｂ）。
次に、プログラム実行部５０に対して、タイトル再生前実行プログラムの実行を指示する（Ｓ４０ｃ）。前述のように、タイトル再生前実行プログラムは、最初に光ディスクから必要なデータをすべて読み出し、それが終わったことを通知するようになっているため、それを待つ（Ｓ４０ｄ）。尚、タイトル再生前実行プログラム実行時に、プログラム実行部５０からイメージデータ管理部６０へ送られるデコードコマンドは初期化コマンドとして扱う。
【００７０】
ここで、タイトル再生前実行プログラムの実行と並行して、改竄チェック部４０に対し、コンテンツ検証を指示する（Ｓ４０ｅ）。これに伴い、改竄チェック部４０では背景技術に記載されたように、ディスク読み出し部２０を経由して、光ディスク１０からのハッシュユニットの読み出しを行い、検証を行う。
【００７１】
検証が成功すると（Ｓ４０ｆでＹｅｓ）、プログラム実行終了を待ち（Ｓ４０ｇ）、通常のタイトル再生処理を開始する（Ｓ４０ｈ）。仮に検証に失敗した場合（Ｓ４０ｆでＮｏ）、デコード結果を破棄し（Ｓ４０ｉ）、不正なコンテンツである可能性があるため、再生できないことをユーザに通知する（Ｓ４０ｊ）。
【００７２】
本実施の形態のように改竄チェックと並行してプログラムを実行できるようにすることで、第1の実施の形態と同様、時間短縮が可能であることに加え、コンテンツ独自の圧縮方式や暗号化方式を使用することが可能になるという利点がある。
【００７３】
さらに、タイトル再生前実行プログラムの最初に、まとめて光ディスク１０からのデータ読み出しを行い、それを待って改竄チェックを行うことにより、ハッシュユニットの読み出し中にプログラムが使用するファイルの読み出しが発生することがなく、両者の排他制御やシーク処理等が不要であり、改竄チェック処理をスムーズに行うことが可能である。
【００７４】
尚、本実施の形態では、タイトル再生前実行プログラムをインデックスファイル内の特定のフィールドで指定しているが、本発明はそれに限定されない。プレーヤがそれを特定できるのであれば何でもよい。例えば、特定のディレクトリに格納する、特定の名称のＪＡＲファイル等にまとめる、ファイル名に特定の文字列を含むようにする、等が考えられる。
【００７５】
また、タイトル再生前実行プログラムは、ＡＶデータファイルを再生する以外であれば、何を行っても良い。例えば、プログラム実行部５０で生成したアニメーションを画面に表示してもよい。これにより改竄チェックの待ち時間をユーザに感じさせにくくすることができる。ただし、この場合には、タイトル再生前実行プログラム実行時に、プログラム実行部５０からイメージデータ管理部６０へ送られるデコードコマンドは通常のデコードコマンドとして扱う。
【００７６】
なお、上記第１及び第２の実施の形態では、圧縮イメージファイルのデコードを対象としているが、本発明はそれに限定されない、例えば、圧縮ビデオファイルや圧縮オーディオファイルのデコードにも適用可能なことは言うまでもない。また、デコード以外にも、公開鍵暗号を用いた電子証明の検証や通信のネゴシエーション等、処理に時間を要する処理であれば適用可能である。
【００７７】
なお、上記第１及び第２の実施の形態では、コンテンツは光ディスクから読み出されることを前提としているが、本発明の適用範囲はそれに限定されない。例えばコンテンツは放送やネットワークを通じて入手されるものであっても適用可能である。
【００７８】
最後に、図１のビデオディスクプレーヤ１の各ブロックは、ハードウェアロジックによって構成してもよいし、以下のようにＣＰＵを用いてソフトウェアによって実現してもよい。すなわち、ビデオディスクプレーヤ１は、各機能を実現する制御プログラムの命令を実行するＣＰＵ（central processing unit）、上記プログラムを格納したＲＯＭ（read only memory）、上記プログラムを展開するＲＡＭ（random access memory）、上記プログラムおよび各種データを格納するメモリ等の記憶装置（記録媒体）などを備えている。そして、本発明の目的は、上述した機能を実現するソフトウェアであるビデオディスクプレーヤ１の制御プログラムのプログラムコード（実行形式プログラム、中間コードプログラム、ソースプログラム）をコンピュータで読み取り可能に記録した記録媒体を、上記ビデオディスクプレーヤ１に供給し、そのコンピュータ（またはＣＰＵやＭＰＵ）が記録媒体に記録されているプログラムコードを読み出し実行することによっても、達成可能である。
【００７９】
上記記録媒体としては、例えば、磁気テープやカセットテープ等のテープ系、フロッピー（登録商標）ディスク／ハードディスク等の磁気ディスクやＣＤ−ＲＯＭ／ＭＯ／ＭＤ／ＤＶＤ／ＣＤ−Ｒ等の光ディスクを含むディスク系、ＩＣカード（メモリカードを含む）／光カード等のカード系、あるいはマスクＲＯＭ／ＥＰＲＯＭ／ＥＥＰＲＯＭ／フラッシュＲＯＭ等の半導体メモリ系などを用いることができる。
【００８０】
また、ビデオディスクプレーヤ１を通信ネットワークと接続可能に構成し、上記プログラムコードを通信ネットワークを介して供給してもよい。この通信ネットワークとしては、特に限定されず、例えば、インターネット、イントラネット、エキストラネット、ＬＡＮ、ＩＳＤＮ、ＶＡＮ、ＣＡＴＶ通信網、仮想専用網（virtual private network）、電話回線網、移動体通信網、衛星通信網等が利用可能である。また、通信ネットワークを構成する伝送媒体としては、特に限定されず、例えば、ＩＥＥＥ１３９４、ＵＳＢ、電力線搬送、ケーブルＴＶ回線、電話線、ＡＤＳＬ回線等の有線でも、ＩｒＤＡやリモコンのような赤外線、Ｂｌｕｅｔｏｏｔｈ（登録商標）、８０２．１１無線、ＨＤＲ、携帯電話網、衛星回線、地上波デジタル網等の無線でも利用可能である。なお、本発明は、上記プログラムコードが電子的な伝送で具現化された、搬送波に埋め込まれたコンピュータデータ信号（伝送媒体）の形態でも実現され得る。
【産業上の利用可能性】
【００８１】
本発明の再生装置は、ビデオ再生と汎用プログラム言語実行環境を組み合わせたビデオプレーヤーなどに好適に利用することができる。
【図面の簡単な説明】
【００８２】
【図１】本発明の第1の実施の形態における概略構成例を示すブロック図である。
【図２】本発明の第1の実施の形態におけるファイル・ディレクトリ構成を示す説明図である。
【図３】本発明の第1の実施の形態におけるプログラム実行部の概略構成を示すブロック図である。
【図４】本発明の第1の実施の形態におけるイメージ管理部の概略構成を示すブロック図である。
【図５】本発明の第1の実施の形態におけるイメージ管理部における処理の流れを示すフローチャート図である。
【図６】本発明の第1の実施の形態における全体の流れを示すフローチャート図である。
【図７】本発明の第1の実施の形態における、全体制御部のディスク再生処理の流れを示すフローチャート図である。
【図８】本発明の第1の実施の形態における、ディスク挿入からプログラム実行までの構成要素間の呼び出し関係を示すシーケンス図である。
【図９】本発明の第２の実施の形態における、全体制御部のディスク再生処理の流れを示すフローチャート図である。
【図１０】コンテンツ改竄検出のためのデータ構成概略例を示す図である。
【符号の説明】
【００８３】
１    ビデオディスクプレーヤ
１０    光ディスク
２０    ディスク読み出し部
３０    全体制御部
４０    改竄チェック部
５０    プログラム実行部
６０    イメージ管理部
６０    ＡＶデコード部
７０    イメージデコード部
８０    ビデオ再生部
９０    バッファメモリ
１００    合成部
【図１】
2009048525.tif 000003
【図２】
2009048525.tif 000004
【図３】
2009048525.tif 000005
【図４】
2009048525.tif 000006
【図５】
2009048525.tif 000007
【図６】
2009048525.tif 000008
【図７】
2009048525.tif 000009
【図８】
2009048525.tif 000010
【図９】
2009048525.tif 000011
【図１０】
2009048525.tif 000012