(57)【要約】  アプリケーションの構築要求に応じて仮想パッケージを生成する。このように仮想パッケージを生成した後、仮想ファイルシステム２３は、８.３形式のファイルパスと、ロングファイル形式のファイルパスとの対応付けが示されたマージ管理情報ファイルを基にして、８.３形式で保存されたリムーバブルメディア上のファイルを、ロングファイル形式の別名でアクセスさせる。
2008099647.tif 000002
【特許請求の範囲】
【請求項１】
第１の記録媒体又は第２の記録媒体に記録されたファイルに基づく再生処理を行う再生装置であって、
アプリケーションプログラムが、第１の記録媒体のファイルパスを用いたファイルアクセスを要求した場合、第２の記録媒体に記録されているファイルであって、当該ファイルパスにてアクセスできるものをサーチするサーチ手段と、
前記ファイルパスにてアクセスできるファイルが存在する場合、当該ファイルを第２の記録媒体から読み出す読出手段とを備え、
前記サーチ手段によるサーチは、参照情報に基づいてなされ、
前記参照情報は、
第１の記録媒体におけるファイルパスと、第２の記録媒体に記録されたファイルであって、当該ファイルパスからアクセスすることができるものとの対応付けを示し、
前記第２の記録媒体は、再生装置からの取り外しが可能なリムーバブル型記録媒体であり、
リムーバブル型記録媒体におけるファイルの所在は、
第１の記録媒体に付加された複数種別の識別子を、リムーバブル型記録媒体特有のファイルシステムの形式に応じて変換することで得られるファイルパスを用いて特定される
ことを特徴とする再生装置。
【請求項２】
前記リムーバブル型記録媒体のファイルシステムの形式とは、ディレクトリ名、及び、ファイル名を８文字以下に制限し、ファイル名の拡張子を３文字以下に制限した８.３形式である
ことを特徴とする請求項１記載の再生装置。
【請求項３】
前記第１の記録媒体に付加された複数種別の識別子とは、
第１の記録媒体に付加された証明書の識別子、組織の識別子、媒体の識別子であり、
前記リムーバブル型記録媒体には、
証明書識別子に対応するディレクトリ、組織識別子に対応するディレクトリ、媒体識別子に対応するディレクトリセットが存在し、
組織識別子に対応するディレクトリは、証明書識別子に対応するディレクトリの下位に存在し、
媒体識別子に対応するディレクトリセットは、組織識別子に対応するディレクトリの下位に存在し、
媒体識別子に対応するディレクトリセットは、階層化された複数のサブディレクトリからなり、
前記参照情報及びファイルは、  
階層化された複数のサブディレクトリのうち、最下層にあたるサブディレクトリに配置されている、請求項１記載の再生装置。
【請求項４】
前記媒体識別子に対応するディレクトリセットは、４つのサブディレクトリに階層化されており、
第１の記録媒体に付加された媒体識別子は、最大３２文字の文字列であり、
媒体識別子に対応するディレクトリセットを構成するサブディレクトリのそれぞれには、媒体識別子を構成する最大３２文字の文字列を４分割することで得られた、８文字以下のディレクトリ名が付加されている、請求項３記載の再生装置
【請求項５】
前記媒体識別子には、上位の桁が０(ゼロ)になっているものがあり、
当該媒体識別子に対応するディレクトリセットをサブディレクトリには、０(ゼロ)の数字がディレクトリ名として付与されているものがあり、
前記アプリケーションプログラムは、０(ゼロ)を省略した形式のファイルパスを読出手段に出力することで、媒体識別子に対応するディレクトリセットを構成するサブディレクトリに存在する、参照情報の取得を読出手段に命じ、
前記読出手段は、０(ゼロ)を省略した形式のファイルパスを、前記リムーバブル型記録媒体のファイルパスに変換して、変換後のファイルパスに基づき、参照情報の取得を行う
ことを特徴とする請求項４記載の再生装置。
【請求項６】
前記第１の記録媒体のファイルパスは、
２５５文字以下に制限されたディレクトリ名、及び、ファイル名を用いて表現されたファイルパスである  請求項１記載の再生装置。
【請求項７】
前記サーチ手段によるサーチは、
第１の記録媒体のファイルパスをアプリケーションプログラムから受け付けて、当該ファイルパスに対応するリムーバブル型記録媒体のファイルパスが参照情報に記述されているか否かを判定する処理を含み、
要求に係る第１の記録媒体のファイルパスからアクセスすることができるファイルが、参照情報に存在しない場合、そのファイルパスから所在を特定することができる、第１の記録媒体におけるファイルを読み出す
ことを特徴とする請求項１記載の再生装置。
【請求項８】
再生装置に組込まれ、第１の記録媒体又は第２の記録媒体に記録されたファイルに基づく再生処理を制御するシステムLSIであって、
アプリケーションプログラムが、第１の記録媒体のファイルパスを用いたファイルアクセスを要求した場合、第２の記録媒体に記録されているファイルであって、当該ファイルパスにてアクセスできるものをサーチするサーチ手段と、
前記ファイルパスにてアクセスできるファイルが存在する場合、当該ファイルを第２の記録媒体から読み出すよう、制御を行う制御手段とを備え、
前記サーチ手段によるサーチは、参照情報に基づいてなされ、
前記参照情報は、
第１の記録媒体におけるファイルパスと、第２の記録媒体に記録されたファイルであって、当該ファイルパスからアクセスすることができるものとの対応付けを示し、
前記第２の記録媒体は、再生装置からの取り外しが可能なリムーバブル型記録媒体であり、
リムーバブル型記録媒体におけるファイルの所在は、
第１の記録媒体に付加された複数種別の識別子を、リムーバブル型記録媒体特有のファイルシステムの形式に応じて変換することで得られるファイルパスを用いて特定される
ことを特徴とするシステムLSI。
【請求項９】
第１の記録媒体又は第２の記録媒体に記録されたファイルに基づく再生処理をコンピュータ上で行う再生方法であって、
コンピュータ上で動作するアプリケーションプログラムが、第１の記録媒体のファイルパスを用いたファイルアクセスを要求した場合、第２の記録媒体に記録されているファイルであって、当該ファイルパスにてアクセスできるものをサーチするサーチステップと、
前記ファイルパスにてアクセスできるファイルが存在する場合、当該ファイルを第２の記録媒体から読み出す読出ステップとを有し、
前記サーチステップによるサーチは、参照情報に基づいてなされ、
前記参照情報は、
第１の記録媒体におけるファイルパスと、第２の記録媒体に記録されたファイルであって、当該ファイルパスからアクセスすることができるものとの対応付けを示し、
前記第２の記録媒体は、コンピュータからの取り外しが可能なリムーバブル型記録媒体であり、
リムーバブル型記録媒体におけるファイルの所在は、
第１の記録媒体に付加された複数種別の識別子を、リムーバブル型記録媒体特有のファイルシステムの形式に応じて変換することで得られるファイルパスを用いて特定される
ことを特徴とする再生方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、仮想パッケージの技術分野に属する発明である。
【背景技術】
【０００２】
仮想パッケージとは、BD-ROM等のリードオンリー型の記録媒体に記録されているデータと、ハードディスク等のリライタブル型の記録媒体に記録されているデータとを動的に組み合わせて、仮想的なパッケージを構築することにより、リードオンリー型記録媒体の内容拡張を図る技術である。このような技術では、書き換え可能なハードディスクに記録しているデータを更新することで、BD-ROMを頒布した後も、作品内容の変更の余地を残すことができる。例えば、映画作品のプロバイダは、作品本編を記録したBD-ROMを頒布した後も、公開前の他の作品の予告編デジタルストリームをネットワークを介して提供することで、BD-ROMの頒布時期にかかわらず、ユーザに対して常に最新の作品を宣伝することが出来る。【０００３】
仮想パッケージについての先行技術としては、以下の特許文献１、２、３に記載されているものがある。
【特許文献１】特開２００６-１０９４９４号公報
【特許文献２】特開２００７-２０２１１号公報
【特許文献３】特開２００６-３３０６７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ところで、仮想パッケージ構築のための追加版となるデータを、ダウンロードで取得するにあたって、追加データを格納したファイルの格納先は、再生装置に内蔵されたハードディスクが選ばれるのが一般的である。ところがダウンロードが再生装置以外のパソコン等を用いて行われる場合、様々なリムーバブル型記録媒体が、ダウンロードの格納先に選ばれることがある。ここで、リムーバブル型記録媒体とは、SDメモリーカード、メモリースティック、コンパクトフラッシュ(TM)、スマートメディア、マルチメディアカード等、可搬性がある記録媒体である。パソコンでダウンロードしたファイルをリムーバブル型記録媒体に書き込んで、このリムーバブル型記録媒体を再生装置に装着することで、仮想パッケージを再生するような利用形態は、今後増えると予想される。【０００５】
BD-ROMに記録されたデータの追加版にあたるデータを、パソコンでダウンロードしてリムーバブル型記録媒体に記録する場合を考える。BD-ROMに記録されたファイルは、Long File Name(LFN)形式が採用されているので、１０文字、２０文字といったファイル名や、５文字、６文字といった拡張子名をもつ。しかし、リムーバブル型記録媒体に記録するにあたっては、ファイル名が最大８文字、ディレクトリ名が最大８文字、拡張子が最大３文字に制限されることが多い。これは、リムーバブル型記録媒体におけるファイルシステムからの制限である。【０００６】
リムーバブル型記録媒体には、かかる制限があるため、追加版にあたるデータを格納したファイルに、BD-ROMにおけるファイル名と同様のファイル名を付与する訳にはいかない。ここで、短かく省略したファイル名を付けて、リムーバブル型記録媒体に記録することが考えられるが、ユーザが自分の都合のために勝手な省略を採用すれば、８文字以下のファイル名のファイルのどれが、LFNのファイル名に関連しているかの対応がとれない。【０００７】
特に、BD-ROM規格の場合、LFNのディレクトリ名を構成する文字やファイル名を構成する文字は、特定の意味をもっていることが多い。また、構成する全ての文字が揃っていないと、他の記録媒体との混同が生じたり、著作権保護のための暗号化、復号化処理、認証処理が正常に行えないこともある。たとえリムーバブル型記録媒体への記録のためとはいえ、一部の文字を省略したようなファイル名を採用することは、規格における互換性に支障を招く恐れや、似たような記録媒体との混同を招く恐れ、著作権保護のための暗号化処理、復号化処理、認証処理に支障を招く恐れがある。【０００８】
従って、リムーバブル型記録媒体がパソコンから取り出されて再生装置に装填された際、対応する追加データを格納したファイルをリムーバブル型記録媒体から取り出すことができず、仮想パッケージの生成が不可能になる恐れがある。
また、ユーザが視聴しようとするBD-ROMは、通常、一枚とは限らず、再生装置には、様々なBD-ROMが装填されることが考えられる。そのような状況下において、パソコンが、短縮したファイル名やディレクトリ名を勝手に付与して、追加データを格納したファイルをリムーバブル型記録媒体に記録した上で再生装置に供給すれば、当該リムーバブル型記録媒体中のファイルが、どのリードオンリー型記録媒体に対応するのかという対応が、一層不明確になり、正しく仮想パッケージを構築することは期待できなくなる。【０００９】
本発明の目的は、リムーバブル型記録媒体におけるファイル名、ディレクトリ名の文字数が制限されていたとしても、リムーバブル型記録媒体に記録されているファイルを正しく利用して仮想パッケージを構築することができる再生装置を提供することである。
【課題を解決するための手段】
【００１０】
上記課題を解決するため、本発明にかかる再生装置は、第１の記録媒体又は第２の記録媒体に記録されたファイルに基づく再生処理を行う再生装置であって、アプリケーションプログラムが、第１の記録媒体のファイルパスを用いたファイルアクセスを要求した場合、第２の記録媒体に記録されているファイルであって、当該ファイルパスにてアクセスできるものをサーチするサーチ手段と、前記ファイルパスにてアクセスできるファイルが存在する場合、当該ファイルを第２の記録媒体から読み出す読出手段とを備え、前記サーチ手段によるサーチは、参照情報に基づいてなされ、
前記参照情報は、第１の記録媒体におけるファイルパスと、第２の記録媒体に記録されたファイルであって、当該ファイルパスからアクセスすることができるものとの対応付けを示し、前記第２の記録媒体は、再生装置からの取り外しが可能なリムーバブル型記録媒体であり、リムーバブル型記録媒体におけるファイルの所在は、第１の記録媒体に付加された複数種別の識別子を、リムーバブル型記録媒体特有のファイルシステムの形式に応じて変換することで得られるファイルパスを用いて特定されることを特徴としている。
【発明の効果】
【００１１】
上述したように、上記再生装置における参照情報には、第２の記録媒体であるリムーバブル型記録媒体におけるファイルパスと、第１の記録媒体におけるファイルパスとの対応がとられているため、この参照情報を参照して、リムーバブル型記録媒体におけるファイルをアクセスすれば、たとえリムーバブル型記録媒体におけるディレクトリ名、ファイル名が８文字以下に制限されていたとしても、リムーバブル型記録媒体から正しい追加のデータを読み出すことができる。【００１２】
リムーバブル型記録媒体に記録されているファイルが、どの第１の記録媒体に対応しているかは、このリムーバブル型記録媒体におけるファイルパスを参照することで、判別することができる。従って、たとえ様々な第１の記録媒体が再生装置に装填されたとしても、リムーバブル型記録媒体中のファイルに対応する第１の記録媒体が、再生装置に装填されている場合のみ、参照情報を参照したファイルアクセスを実現するよう制限を課すことができる。【００１３】
パソコンが、短縮したファイル名やディレクトリ名を付与した上でファイルをリムーバブル型記録媒体に記録して、当該リムーバブル型記録媒体を再生装置に供給したとしても、再生装置側では、リムーバブル型記録媒体中のファイルが、どの第１の記録媒体に対応するのかという対応を正しくとってから、仮想パッケージを構築することができる。リムーバブル型記録媒体中のファイルに対応する第１の記録媒体が、正しく装填されている場合のみ、仮想パッケージを構築するという制限を課すことが可能なので、仮想パッケージの利用範囲が大きく広がるという可能性がある。【００１４】
尚、予め断っておくが、本明細書で述べる文字とは、ASCII文字のことであり、１文字当たりのビット長は、４ビットとなる。ASCIIコードとは、128種類の英文字、数字、記号を７ビットで表現したコンピュータ用のコード体系である。従って、ファイル名、ディレクトリ名はそれぞれ、８文字(＝３２ビット／４ビット)以下に制限され、拡張子名は３文字(＝１２ビット／４ビット)以下に制限されることになる。【００１５】
仮にJISコード等、１文字当たりのビット数が異なる文字を採用する場合、リムーバブル型記録媒体におけるファイル名、ディレクトリ名はそれぞれ、３２ビットを、１文字当たりのビット長で割った文字数以下に制限される。
・また、任意的であるが、上述した再生装置の発明特定事項に、以下の発明特定事項を加え、再生装置を具体的な構成にすることにより、更なる効果をもたらすことができる。【００１６】
前記リムーバブル型記録媒体のファイルシステムの形式とは、ディレクトリ名、及び、ファイル名を８文字以下に制限し、ファイル名の拡張子を３文字以下に制限した８.３形式である。
リムーバブル型記録媒体のファイルシステムが、いわゆるFAT型ファイルシステムであり、ディレクトリ名、ファイル名が厳しく制限されていたとしても、第１の記録媒体のファイルパスを用いた別名でのファイルアクセスを実行することができる。【００１７】
・また、任意的であるが、上述した再生装置の発明特定事項に、以下の発明特定事項を加え、再生装置を具体的な構成にすることにより、更なる効果をもたらすことができる。
前記第１の記録媒体に付加された複数種別の識別子とは、
第１の記録媒体に付加された証明書の識別子、組織の識別子、媒体の識別子であり、
前記リムーバブル型記録媒体には、
証明書識別子に対応するディレクトリ、組織識別子に対応するディレクトリ、媒体識別子に対応するディレクトリセットが存在し、
組織識別子に対応するディレクトリは、証明書識別子に対応するディレクトリの下位に存在し、
媒体識別子に対応するディレクトリセットは、組織識別子に対応するディレクトリの下位に存在し、
媒体識別子に対応するディレクトリセットは、階層化された複数のサブディレクトリからなり、
前記参照情報及びファイルは、階層化された複数のサブディレクトリのうち、最下層にあたるサブディレクトリに配置されている。【００１８】
仮想パッケージの構築にあたって、第１の記録媒体に付加された証明書の識別子、組織の識別子、媒体の識別子を用いた認証を実現する場合であっても、これらの識別子と、厳密に対応をとる形で、ファイルはリムーバブル型記録媒体に記録されることになる。そのため、たとえユーザが多くの第１の記録媒体を所持していて、それらの第１の記録媒体が頻繁に差し替えられたとしても、正しい第１の記録媒体が再生装置に装填されている場合のみ、第１の記録媒体のファイルパスを用いた別名でのファイルアクセスが実現されて、仮想パッケージが構築されることになる。【００１９】
・また、任意的であるが、上述した再生装置の発明特定事項に、以下の発明特定事項を加え、再生装置を具体的な構成にすることにより、更なる効果をもたらすことができる。
前記媒体識別子に対応するディレクトリセットは、４つのサブディレクトリに階層化されており、
第１の記録媒体に付加された媒体識別子は、最大３２文字の文字列であり、
媒体識別子に対応するディレクトリセットを構成するサブディレクトリのそれぞれには、媒体識別子を構成する最大３２文字の文字列を４分割することで得られた、８文字以下のディレクトリ名が付加されている。【００２０】
第１の記録媒体固有の媒体識別子のビット長が、長いものであったとしても、かかる識別子を構成する文字のうち、意味のあるものを省略することなく、第１の記録媒体固有の媒体識別子と、リムーバブル型記録媒体上のディレクトリとの対応を図るので、リムーバブル型記録媒体におけるディレクトリは、第１の記録媒体固有の媒体識別子と厳密に対応がとれたものとなる。  【００２１】
・また、任意的であるが、上述した再生装置の発明特定事項に、以下の発明特定事項を加え、再生装置を具体的な構成にすることにより、更なる効果をもたらすことができる。
前記媒体識別子には、上位の桁が０(ゼロ)になっているものがあり、
当該媒体識別子に対応するディレクトリセットをサブディレクトリには、０(ゼロ)の数字がディレクトリ名として付与されているものがあり、
前記アプリケーションプログラムは、０(ゼロ)を省略した形式のファイルパスを読出手段に出力することで、媒体識別子に対応するディレクトリセットを構成するサブディレクトリに存在する、参照情報の取得を読出手段に命じ、
前記読出手段は、０(ゼロ)を省略した形式のファイルパスを、前記リムーバブル型記録媒体のファイルパスに変換して、変換後のファイルパスに基づき、参照情報の取得を行う。【００２２】
アプリケーションは、０(ゼロ)の上位桁を省略したファイルパスを用いて、媒体固有の媒体識別子に対応するディレクトリセットをアクセスすることができるので、I/O処理を簡潔に行うことができる。  
・また、任意的であるが、上述した再生装置の発明特定事項に、以下の発明特定事項を加え、再生装置を具体的な構成にすることにより、更なる効果をもたらすことができる。【００２３】
前記第１の記録媒体のファイルパスは、２５５文字以下に制限されたディレクトリ名、及び、ファイル名を用いて表現されたファイルパスである。
アプリケーションは、最大２５５文字のファイル名、最大２５５文字のディレクトリ名を用いて、第１の記録媒体のファイルパスを用いた別名でのファイルアクセスを実行することができるので、アプリケーションは、パソコンのプラットフォーム上で動作する場合と、同じファイルパスを用いて、リムーバブル型記録媒体上のファイルをアクセスすることができる。  【００２４】
・また、任意的であるが、上述した再生装置の発明特定事項に、以下の発明特定事項を加え、再生装置を具体的な構成にすることにより、更なる効果をもたらすことができる。
前記サーチ手段によるサーチは、
第１の記録媒体のファイルパスをアプリケーションプログラムから受け付けて、当該ファイルパスに対応するリムーバブル型記録媒体のファイルパスが参照情報に記述されているか否かを判定する処理を含み、
要求に係る第１の記録媒体のファイルパスからアクセスすることができるファイルが、参照情報に存在しない場合、そのファイルパスから所在を特定することができる、第１の記録媒体におけるファイルを読み出す。【００２５】
リムーバブル型記録媒体のファイルパスを用いた別名でのアクセスは、アプリケーションから受け付けた第１の記録媒体のファイルパスが、参照情報に存在するかどうかのサーチを行い、対応するリムーバブル型記録媒体のファイルパスが参照情報に存在する場合になされることになる。第１の記録媒体のファイルパスを用いた別名でのファイルアクセスは、かかるサーチでヒットがあったことを前提にしてなされるので、サーチの対象となる参照情報を別のものに置き換えれば、同じ第１の記録媒体のファイルパスであっても、異なるファイルが、リムーバブル型記録媒体から読み出されることになる。このように、アプリケーションから発行される第１の記録媒体のファイルパスが同一のものであっても、参照情報の差し替えにて、異なるファイルの読み出しが可能になり、「リムーバブル型記録媒体のどのファイルをアプリケーションに読み出させるか」という制御を、参照情報の記載から簡単に制御することができる。
【図面の簡単な説明】
【００２６】
【図１】第１実施形態におけるシステム図
【図２】第１実施形態におけるBD-ROMの内部構成を示す図
【図３】第１実施形態におけるBD-ROMが対象としているソフトウェアのレイヤモデルを示す図
【図４】第１実施形態における２つのモードの動的な再生制御にて作成される映画作品を示す図
【図５】第１実施形態における再生装置の内部構成を示す図
【図６】リムーバブルメディアであるSDメモリカードの内部構成を示す図
【図７】（ａ）二重化FATの内部構成を示す図  （ｂ）ディレクトリエントリの共通のデータ構造を示す図
【図８】00001.m2tをクラスタサイズに合わせて5つに分割し、各分割部分を、クラスタ503,504,505,50A,50Cに格納する状態を想定した図
【図９】00001.m2tが複数のクラスタに記録されている場合のディレクトリエントリ及びFATについての設定例を示す図
【図１０】第１実施形態におけるリムーバブルメディアのディレクトリ構成を示す図
【図１１】第１実施形態における仮想パッケージを示す図
【図１２】第１実施形態におけるBD-Jモジュールの具体的な構成を示す図
【図１３】第１実施形態におけるindex.bdmvファイルとタイトルの関係を示す図
【図１４】リムーバブルメディアへのダウンロードの処理手順を示すフローチャート
【図１５】追加コンテンツデータファイルのダウンロード処理の処理手順を示すフローチャート
【図１６】第１実施形態における仮想パッケージ構築の処理手順を示すフローチャート
【図１７】Java(TM)アプリケーションが仮想パッケージ構築/更新要求を発行し、仮想パッケージが更新されるまでの、時間的な処理の流れを示す図
【図１８】第２実施形態におけるリムーバブルメディアのディレクトリ構成を示す図
【図１９】第２実施形態におけるDiscIDディレクトリへのアクセスを示す図
【図２０】１ディレクトリ名として扱われているDiscIDディレクトリを４ディレクトリに分割する処理手順を示すフローチャート
【図２１】第３実施形態におけるBD-ROM挿入から再生開始までのフローチャート
【図２２】第３実施形態における仮想パッケージ構築判断処理のフローチャート
【図２３】第３実施形態におけるBD-ROM挿入時の画面表示例を示す図
【図２４】第３実施形態におけるリムーバブルメディアを利用した再生中の状態を示す図
【図２５】第３実施形態におけるBD-ROM挿入から再生開始までのフローチャート
【図２６】第３実施形態におけるリムーバブルメディアを利用した再生確認画面の一例を示す図
【図２７】第３実施形態における再生中にリムーバブルメディアを挿入した場合の処理のフローチャート
【図２８】第３実施形態における再生中にリムーバブルメディアを挿入した場合の画面表示例を示す図
【図２９】第３実施形態における再生中にリムーバブルメディアを挿入した場合の処理のフローチャート
【図３０】第３実施形態における再生中にリムーバブルメディアが取り出された場合の処理のフローチャート
【図３１】第３実施形態における再生中にリムーバブルメディアが取り出された場合の画面表示例を示す図
【符号の説明】
【００２７】
１００  BD-ROM
１０１  WWWサーバ
１０２  再生装置
１０３  テレビ
１０４  リムーバブルメディア
１  BDドライブ 
２  トラックバッファ
３  デマルチプレクサ
４  ビデオデコーダ
５  ビデオプレーン
６  オーディオデコーダ
７  グラフィクスメモリ
８  グラフィクスプレーン
９  グラフィクスデコーダ
１０  加算器
１１  静的シナリオメモリ
１２  動的シナリオメモリ
１３  HDMVモジュール
１４  BD-Jモジュール
１５  UO検知モジュール
１６  モード管理モジュール
１７  ディスパッチャ
１８  レンダリングエンジン
２０  AV再生ライブラリ
２１  ネットワークインターフェース
２２  Build-Inメディア
２３  仮想ファイルシステム
３１  Java(TM)アプリケーション
３２  メディア再生モジュール
３９  仮想ファイルシステム管理モジュール
３４  ファイルI/Oモジュール
３５  ネットワークモジュール
３６  アプリケーションマネージャ
３７  DiscID確認モジュール
３８  リムーバブルメディア検知モジュール
４０  DiscIDディレクトリ変換部
【発明を実施するための最良の形態】
【００２８】
（第１実施形態）
以下本発明の実施の形態について、図面を参照しながら説明する。
以降、再生装置の実施形態について説明する。先ず始めに、本発明に係る再生装置の実施行為のうち、使用行為についての形態を説明する。図１は、再生装置１０２の、使用行為についての形態を示す図である。本図に示すように、再生装置１０２は、第１の記録媒体の一例であるBD-ROM１００、WWWサーバ１０１、テレビ１０３、第２の記録媒体の一例であるリムーバブルメディア１０４と共にユーザによる使用に供される。【００２９】
BD-ROM１００は、映画作品が記録された記録媒体である。
WWWサーバ１０１は、映画配給者の公式サイトを運営するサーバ装置であり、BD-ROM１００に記録された映画作品の部分的な置き換えや追加を実現するコンテンツ(追加コンテンツデータファイル)を、インターネット等を介してユーザに供給する。
再生装置１０２は、テレビ１０３と共に、ホームシアターシステムを構築して、BD-ROM１００を再生する。【００３０】
テレビ１０３は、映画作品の再生映像を表示したり、メニュー等を表示することで、対話的な操作環境をユーザに提供する。
リムーバブルメディア１０４は、再生装置に装填され、映画配給者のWWWサーバ１０１から配信されたコンテンツの受け皿として利用される。そのため、ネットを通じてダウンロードされ、リムーバブルメディア１０４に格納されたコンテンツと、BD-ROM１００に記録されたコンテンツとを組み合わせて、BD-ROM１００のコンテンツを拡張/更新をすることができる。かかるリムーバブルメディア１０４を装填するという目的のため、再生装置１０２には、SDメモリーカード、メモリースティック、コンパクトフラッシュ(TM)、スマートメディア、マルチメディアカード等のリムーバブルメディア１０４を挿入する挿入口を備える。【００３１】
以上が本発明に係る再生装置の使用形態についての説明である。続いて本発明に係る再生装置が再生の対象としている、記録媒体について説明する。本発明に係る再生装置により、再生されるのは、光記録媒体であるBD-ROM１００である。
図２は、BD-ROM（以降、「BD」と称する場合もある）の構成を示した図である。本図の第１段目に、BD-ROM１００を示し、第２段目は、BD-ROMの内周から外周に向けて螺旋状に形成された記録領域を、横方向に引き伸ばして直線状に描いている。この第２段目に示すように、記録領域は、内周の「リード・イン」と、外周の「リード・アウト」と、「論理アドレス空間」とを有している。また、リード・インの内側にはBCA（Burst  Cutting  Area）と呼ばれるドライブでしか読み出せない特別な領域がある。この領域はアプリケーションから読み出せないため、例えば著作権保護技術などに利用されることがよくある。【００３２】
「論理アドレス空間」は、ファイルシステムのための領域管理情報を先頭にして、各種映像データが記録されている。“ファイルシステム”とは、UDFやISO９６６０などのことであり、本実施形態では、Extention2.3形式のファイルシステムを採用する。このファイルシステムを介すれば、論理アドレス空間に記録されているデータをディレクトリ、ファイル構造を使って読み出すことができる。このファイルシステムにおけるファイルの配置位置は、２５５文字以下のディレクトリ名と、２５５文字以下のファイル名とを組合せたファイルの経路情報(ファイルパスと呼ばれる)で特定される。【００３３】
本図の第３段目は、第２段目におけるファイルシステムを前提にして構築された、ディレクトリ構成・ファイル構成を示す。本図に示すように、BD-ROMのルートディレクトリ（ROOT）直下には、bd.certファイルと、BDMVディレクトリとが置かれている。
bd.cert（ファイル名固定）は仮想パッケージのために追加されたコンテンツをBD-ROM上のデータとマージする際に、署名検証に用いられる証明書（以下、マージ証明書）である。マージ証明書とは、BD-ROMにおけるマージ管理情報を格納したファイル(マージ管理情報ファイル)の認証に利用する証明書であり、プロバイダが公開する公開鍵を含む。マージ証明書のファイル形式は、例えば、X.５０９を利用することができる。X.５０９の詳細な仕様は、国際電信電話諮問委員会より発行されている、CCITT Recommendation X.509 (1988), "The Directory -  Authentication Framework"に記載されている。本図における引き出し線f1は、bd.certファイルの用途を示している。この引き出し線に示すように、bd.certファイルは、証明書固有のID(CertIDと呼ばれる)を導きだすという用途に用いられる。【００３４】
BDMVディレクトリはBD-ROMで扱うAVコンテンツや管理情報などのデータが記録されているディレクトリである。BDMVディレクトリの配下には、「PLAYLISTディレクトリ」、「CLIPINFディレクトリ」、「STREAMディレクトリ」、「BDJOディレクトリ」、「JARディレクトリ」と呼ばれる５つのサブディレクトリが存在し、BDMVディレクトリには、index.bdmv，MovieObject.bdmvの２種類のファイルが配置されている。【００３５】
STREAMディレクトリは、いわばデジタルストリーム本体となるファイルを格納しているディレクトリであり、拡張子M2TSが付与されたファイル(xxx.m2ts[“xxx”は可変、拡張子”m2ts”は固定])が存在する。
PLAYLISTディレクトリには、拡張子mplsが付与されたファイル(xxx.mpls[“xxx”は可変、拡張子”mpls”は固定])が存在する。【００３６】
CLIPINFディレクトリには、拡張子clpiが付与されたファイル(xxx.clpi [“xxx”は可変、拡張子”clpi”は固定])が存在する。
JARディレクトリには、拡張子jarが付与されたファイル(xxx.jar[“xxx”は可変、拡張子”jar”は固定])が存在する。
BDJOディレクトリには、拡張子bdjoが付与されたファイル(xxx.bdjo[“xxx”は可変、拡張子”bdjo”は固定])が存在する。【００３７】
＜拡張子”m2ts”が付与されたファイル＞
拡張子”m2ts”が付与されたファイルは、M P E G - T S ( T r a n s p o r t S t r e a m )形式のデジタルAVストリームであり、ビデオストリーム、1つ以上のオーディオストリーム、1つ以上のグラフィクスストリームを多重化することで得られる。ビデオストリームは映画の動画部分を、オーディオストリームは映画の音声部分を、グラフィクスストリームは、映画の字幕をそれぞれ示している。【００３８】
拡張子”clpi”が付与されたファイルは、デジタルAVストリームのそれぞれに1対1に対応する管理情報である。管理情報故に、Clip情報は、デジタルAVストリームの符号化形式、フレームレート、ビットレート、解像度等の情報や、GOPの先頭位置を示すEP＿mapをもっている。
＜拡張子”mpls”が付与されたファイル＞
拡張子”mpls”が付与されたファイルは、プレイリスト情報を格納したファイルである。プレイリスト情報は、主たる経路情報、従たる経路情報、マーク情報を含む。【００３９】
1)主たる経路情報は、AVストリームの再生時間軸のうち、In＿Timeとなる時点と、Out＿Timeとなる時点の組みを1つ以上定義することにより、論理的な再生区間を定義する情報であり、AVストリームに多重化されているエレメンタリストリームのうち、どれの再生を有効とするかを規定するストリーム番号テーブルを有しており、AVストリーム内のエレメンタリストリームのうち、どれの再生を許可し、どれの再生を許可しないかを規定する役割をもつ。【００４０】
2)マーク情報は、開始時間情報及び終了時間情報の組みにて指定されたAVストリームの一部分のうち、チャプターとなる時点の指定を含む。
3)従たる経路情報は、前記AVストリームと同期して再生すべきエレメンタリストリームの指定と、そのエレメンタリストリームの再生時間軸における開始時間情報及び終了時間情報の組みとを含む。Java(TM)アプリケーションが、このプレイリスト情報を再生するJMFプレーヤインスタンスの生成をJava(TM)仮想マシンに命じることで、AV再生を開始させることができる。JMFプレーヤインスタンスとは、JMFプレーヤクラスを基にして仮想マシンのヒープメモリ上に生成される実際のデータのことである。【００４１】
AVストリームと、プレイリスト情報との組みは、“タイトル”という再生単位を構成する。BD-ROMにおけるAV再生は、このタイトルを一単位としてなされる。
＜拡張子”jar”が付与されたファイル＞
拡張子”jar”が付与されたファイルは、Java(TM)アーカイブファイルであり、Java(TM)仮想マシンを用いて動的なシナリオ制御を行うJava(TM)アプリケーションのクラスファイルが存在する。このクラスファイルにて定義されるJava(TM)アプリケーションは、Xletインターフェイスを通じて制御されるJava(TM) Xletである。Xletインターフェイスは、"loaded","paused"、"active","destroyed"といった4つの状態をもつ。本明細書でいうアプリケーションとは、こうしてBD-ROM等の記録媒体に記録されているクラスファイルについてのインスタンスのことをいう。【００４２】
＜拡張子“bdjo”が付与されたファイル＞
拡張子“bdjo”が付与されたファイルは、BD-Jオブジェクトを格納したファイルである。BD-Jオブジェクトは、PlayList情報により示されるAVストリームと、アプリケーションとの関連付けにより、タイトルを定義する情報である。BD-Jオブジェクトは、“アプリケーション管理テーブル”と、そのタイトルにおいて再生可能なPlayList一覧を示す。アプリケーション管理テーブル(AMT)とは、“アプリケーションシグナリング”を実現するテーブルである。“アプリケーションシグナリング”とは、BD-ROMにおける“タイトル”をアプリケーションの生存区間として管理し、アプリケーションの起動及び終了を司る制御をいう。ここで生存区間とは、BD-ROMに記録されたコンテンツ全体の時間軸において、仮想マシンのヒープメモリ上でアプリケーションが生存し得る区間を示す。“生存”とは、そのアプリケーションが、ヒープメモリに読み出され、仮想マシンによる実行が可能になっている状態をいう。アプリケーション管理テーブルは、アプリケーションの識別子(アプリケーションID)とそのアプリケーションに属するJava(TM) アーカイブファイルのIDを羅列することでこのタイトルを生存区間とするアプリケーションを示す。つまり、一つのアプリケーションは一つ以上の Java(TM) アーカイブファイルで構成される。【００４３】
＜index.bdmv(ファイル名固定)＞
index.bdmv(ファイル名固定)は、BD-ROM全体に関する管理情報であり、再生装置へのディスク挿入後に、index.bdmvが最初に読み出されることで、再生装置においてディスクが一意に認識される。加えて、index.bdmv にはBD-ROMにおいて再生可能となる複数のタイトルと、個々のタイトルを規定するBD-Jオブジェクトとを対応付けて示すテーブルが含まれる。引き出し線f2は、index.bdmvの内部構成をクローズアップして示している。この引出線に示すように映画作品のプロバイダを特定する識別子であるorganizationID(32ビット)や、プロバイダが提供するBD-ROMのそれぞれに割り当てられた識別子であるdiscID(128ビット)等の情報を持つ。【００４４】
MovieObject.bdmv（ファイル名固定）は、HDMVモード（後述）での各タイトル再生で、再生進行を動的に変化させるためのシナリオが記述されたシナリオプログラムが含まれる。
図３は、再生制御のレイヤモデルを示した図である。図３の第１層は、物理層であり、処理対象たるストリーム本体の供給制御である。この第１層に示すように、処理対象たるストリームは、BD-ROMだけではなく、Build-Inメディアやリムーバブルメディア、ネットワークといったあらゆる記録媒体、通信媒体を供給源としている。ここでBuild-Inメディアとは、HDD（ハードディスクドライブ）など、再生装置に予め組み込まれた記録媒体である。一方、リムーバブルメディアは、SDメモリーカード、メモリースティック、コンパクトフラッシュ(TM)、スマートメディア、マルチメディアカード等、可搬性がある記録媒体である。これらBuild-Inメディア、リムーバブルメディアは何れも、再生装置がローカルに利用する記録媒体であり、“ローカルストレージ”との総称で呼ばれる。これらローカルストレージ、ネットワークといった供給源に対する制御（ディスクアクセス、カードアクセス、ネットワーク通信）が第１層の制御である。【００４５】
第２層は、AVデータのレイアである。第１層で供給されたストリームを、どのような復号化方式を用いて復号するのかを規定しているのがこの第２層である。
第３層（BD管理データ）は、ストリームの静的なシナリオを規定するレイアである。静的なシナリオとは、ディスク制作者によって予め規定された再生経路情報、ストリーム管理情報であり、これらに基づく再生制御を規定しているのがこの第３層である。【００４６】
第４層（BD再生プログラム）は、ストリームにおける動的なシナリオを実現するレイヤである。動的なシナリオは、AVストリームの再生手順、及び、その再生に関する制御手順のうち少なくとも一方を実行するプログラムである。動的なシナリオによる再生制御は、装置に対するユーザ操作に応じて変化するものであり、プログラム的な性質をもつ。ここでの動的な再生制御には、２つのモードがある。２つのモードのうち1つは、AV機器特有の再生環境で、BD-ROMに記録された動画データを再生するモード（HDMVモード）であり、もう1つはBD-ROMに記録された動画データの付加価値を高めるモード（BD-Jモード）である。図３において第４層には、HDMVモードとBD-Jモードの２つのモードが記述されている。HDMVモードは、DVDライクな再生環境での再生モードであり、再生進行を動的に変化させるためのシナリオが記述されたシナリオプログラムが動作する。もう一つのBD-Jモードは、Java(TM)仮想マシンを主体とした再生モードであり、Java(TM)アプリケーションから再生制御を行う。【００４７】
図４は、２つのモードの動的な再生制御にて作成される映画作品を示す図である。図４（a）は、HDMVモードで動的な再生制御を定義することにより、作成される映画作品の一場面を示す図である。HDMVモードはDVD再生装置が解釈可能なコマンドと良く似たコマンドで再生制御を記述することができるので、DVDと同じような再生制御、つまり、メニューに対する選択により再生が進行するような再生制御を定義することができる。【００４８】
図４（b）は、BD-Jモードで動的な再生制御を定義することにより、作成される映画作品である。BD-JモードはJava(TM)仮想マシンが解釈可能なJava(TM)言語で制御手順を記述することができる。この再生制御がアドベンチャーゲームのGUIを構成するものであるなら、BD-Jモードにあっては、ゲームのスコア(図中のSCORE:10000)やインジゲータ(LIFE:3)、ボタン部材(質問する、退室する)と、動画とを組み合わせたような合成映像をユーザに提示することができる。【００４９】
以上が、BD-ROM１００についての説明である。続いて、再生装置１０２の詳細について、説明する。
図５は、再生装置の大まかな機能構成を示すブロック図である。図５に示すように、再生装置１０２は、BDドライブ１、トラックバッファ２、デマルチプレクサ３、ビデオデコーダ４、ビデオプレーン５、オーディオデコーダ６、グラフィクスメモリ７、グラフィクスプレーン８、グラフィクスデコーダ９、加算器１０、静的シナリオメモリ１１、動的シナリオメモリ１２、HDMVモジュール１３、BD-Jモジュール１４、UO探知モジュール１５、モード管理モジュール１６、ディスパッチャ１７、AV再生ライブラリ２０、ネットワークインターフェース２１、リムーバブルメディアドライブ・Build-Inメディアドライブ２２、仮想ファイルシステム２３から構成される。本再生装置は、オペレーティングシステムシステムとしてLinuxを採用しており、本再生装置のハードウェア及びソフトウェアは、このLinuxを通じて制御される。【００５０】
BDドライブ１は、BD-ROMのローディング/イジェクトを行い、BD-ROMに対するアクセスを実行する。本BD-ROM再生装置は、オペレーションシステムとしてLinuxを採用しているので、“/mount point BD/BDAV”とのコマンドを発行することにより、BDドライブ１に、BDAVディレクトリを割り当てる。
トラックバッファ２は、FIFOメモリであり、BD-ROMから読み出されたACCESS UNITが先入れ先出し式に格納される。【００５１】
デマルチプレクサ３は、BDドライブ１にローディングされているBD-ROM、または、リムーバブルメディアドライブ、Build-Inメディアドライブ２２上に保存されているトランスポートストリームの多重分離を行い、GOPを構成するビデオフレームと、オーディオフレームとを得てビデオフレームをビデオデコーダ４に出力し、オーディオフレームをオーディオデコーダ６に出力する。グラフィクスストリームはグラフィクスメモリ７に格納する。デマルチプレクサ３による多重分離は、TSパケットをPESパケットに変換するという変換処理を含む。【００５２】
ビデオデコーダ４は、デマルチプレクサ３から出力されたビデオフレームを復号して非圧縮形式のピクチャをビデオプレーン５に書き込む。
ビデオプレーン５は、非圧縮形式のピクチャを格納しておくためのメモリである。
オーディオデコーダ６は、デマルチプレクサ３から出力されたオーディオフレームを復号して、非圧縮形式のオーディオデータを出力する。【００５３】
グラフィクスメモリ７は、デマルチプレクサ３から読み出されたグラフィクスストリーム、あるいは、仮想ファイルシステム２３を介してBD-ROMまたはリムーバブルメディアドライブ、Build-Inメディアドライブ２２から読み出された画像ファイルを格納しておくバッファである。
グラフィクスプレーン８は、一画面分の領域をもったメモリであり、展開されたグラフィクスストリームが配置される。【００５４】
グラフィクスデコーダ９は、グラフィクスメモリ７に格納されたグラフィクスストリームを展開してグラフィクスプレーン８に書き込む。グラフィクスストリームのデコードにより、各種メニュー、グラフィクスが画面上に現れることになる。
加算器１０は、ピクチャプレーン５に格納された非圧縮形式のピクチャデータに、グラフィクスプレーン８に展開されたイメージを合成して出力する。図４（b）に示した合成画像は、この加算器１０が、グラフィクスプレーン８内のグラフィクスと、ビデオプレーン５内のピクチャとを合成することで出力される。【００５５】
静的シナリオメモリ１１は、カレントのPLやカレントのストリーム管理情報を格納しておくためのメモリである。カレントPLとは、BD-ROMまたは、リムーバブルメディアドライブ、Build-Inメディアドライブ２２に記録されている複数プレイリスト情報のうち、現在処理対象になっているものをいう。カレントストリーム管理情報とは、BD-ROMまたは、リムーバブルメディアドライブ、Build-Inメディアドライブ２２に記録されている複数のClip情報のうち、現在処理対象になっているものをいう。【００５６】
動的シナリオメモリ１２は、カレント動的シナリオを格納しておき、HDMVモジュール１３、BD-Jモジュール１４による処理に供されるメモリである。カレント動的シナリオとは、BD-ROMまたは、リムーバブルメディアドライブ、Build-Inメディアドライブ２２に記録されているMovieオブジェクト,BD-Jオブジェクトのうち、現在実行対象になっているものをいう。【００５７】
HDMVモジュール１３は、HDMVモードの実行主体となるDVD仮想プレーヤであり、動的シナリオメモリ１２に読み出されたカレントのシナリオプログラムを実行する。
BD-Jモジュール１４は、Java(TM)プラットフォームであり、Java(TM)仮想マシン、コンフィグレーション、プロファイルからなる。BD-Jモジュール１４は、動的シナリオメモリ１２に読み出されたJava(TM)クラスファイルからカレントのJava(TM)オブジェクトを生成し、実行する。Java(TM)仮想マシンは、Java(TM)言語で記述されたJava(TM)オブジェクトを、再生装置におけるCPUのネィティブコードに変換して、CPUに実行させる。
UO探知モジュール１５は、リモコンや再生装置のフロントパネルといった入力機器に対してなされたユーザ操作を検知して、モード管理モジュール１６に通知する。この通知は、これらの入力機器に対応するデバイスドライバ内の割込みハンドラが発生する割込みに従い、UO（User  Operation）を生成して、モード管理モジュール１６に出力することでなされる。UOとは、リモコンやフロントパネルに設けられたキーマトッリクスによるキー押下を検知した際、発生するイベント(UOイベント)であり、押下されたキーに対応したキーコードを含んでいる。具体的には、リモコンやフロントパネルに対応するデバイスドライバの割込みハンドルが、キーマトリックスに対するキーセンスでキー押下を検出した際、そのキー押下に基づき割込み信号を発生することで、UOイベントは、生成される。【００５８】
モード管理モジュール１６は、BD-ROMまたは、リムーバブルメディアドライブ、Build-Inメディアドライブ２２から読み出されたIndex.bdmvを保持して、モード管理及び分岐制御を行う。モード管理モジュール１６によるモード管理とは、動的シナリオをどのHDMVモジュール１３、BD-Jモジュール１４に実行させるかという、モジュールの割り当てである。【００５９】
ディスパッチャ１７は、UOから、現在の再生装置におけるモードに適切なUOのみを選んで、そのモードを実行するモジュールに受け渡す。例えばHDMVモードの実行中に、上下左右、アクティベートといったUOを受け付けた場合、HDMVモードのモジュールにこれらのUOを出力するというのがディスパッチャ１７の処理である。
AV再生ライブラリ２０はHDMVモジュール１３、BD-Jモジュール１４からの関数呼び出しに応じて、AV再生機能、プレイリストの再生機能を実行する。AV再生機能とは、DVDプレーヤ、CDプレーヤから踏襲した機能群であり、再生開始、再生停止、一時停止、一時停止の解除、静止画機能の解除、再生速度を即値で指定した早送り、再生速度を即値で指定した巻戻し、音声切り替え、字幕切り替え、アングル切り替えといった処理である。プレイリスト再生機能とは、このAV再生機能のうち、再生開始や再生停止をプレイリスト情報に従って行うことをいう。【００６０】
ネットワークインターフェース２１は、ネットワーク接続のためのプロトコルスタックを実行するものであり、ネットワーク上のサーバコンピュータが具備しているドライブを、ネットワークドライブとして、再生装置に認識させる。そして、ネットワークドライブからデータをダウンロードしたり、データをアップロードすることができる。このネットワークインターフェイス２１は、インターネット上に公開されたBD-ROM追加コンテンツのダウンロードに用いられる。BD-ROM追加コンテンツとは、オリジナルのBD-ROMにないコンテンツで、例えば追加の副音声、字幕、特典映像、アプリケーションなどである。BD-Jモジュール１４は、ネットワークインターフェース２１を制御することにより、インターネット上に公開された追加コンテンツをBuild-Inメディアドライブもしくはリムーバブルメディア１０４にダウンロードすることができる。【００６１】
Build-Inメディアドライブ・リムーバブルメディアドライブ２２は、ダウンロードしてきた追加コンテンツやアプリケーションが使うデータなどの保存に用いられる。追加コンテンツの保存領域はBD-ROM毎に分かれており、またアプリケーションがデータの保持に使用できる領域はアプリケーション毎に分かれている。また、ダウンロードした追加コンテンツをどのようにBD-ROM上のデータとマージするかを示す規則、つまりマージ規則が記載されたマージ管理情報も、このリムーバブルメディアドライブ、Build-Inメディアドライブ２２に保存される。【００６２】
本実施形態では、追加コンテンツデータファイル格納のためのディレクトリであるBUDAディレクトリを、リムーバブルメディアドライブに装填されたリムーバブルメディア１０４に割り当てる。本BD-ROM再生装置は、オペレーションシステムとしてLinuxを採用しているので、“/mount point SD/BUDA”とのコマンドを発行することにより、リムーバブルメディア１０４に、BUDAディレクトリを割り当てる。一方Built-inメディアは、録画用の記録領域として使用するものとする。【００６３】
仮想ファイルシステム２３は、追加コンテンツと共に、リムーバブルメディアドライブ、Build-Inメディアドライブ２２にダウンロードされたマージ管理情報を元に、Build-Inメディア、もしくは、リムーバブルメディアに格納された追加コンテンツとBD-ROM上のコンテンツとをマージさせた、仮想的なBD-ROM（仮想パッケージ）を構築する。HDMVモジュール１３やBD-Jモジュール１４からは、仮想パッケージとオリジナルBD-ROMを区別なく参照することができる。仮想パッケージ再生中、再生装置はBD-ROM上のデータとBuild-Inメディアもしくはリムーバブルメディア上のデータの両方を用いて再生制御を行うことになる。以上が再生装置の構成要素である。【００６４】
本実施形態では、追加コンテンツデータファイルの格納のためのリムーバブルメディアとしてSDメモリカードを採用する。
SDメモリカードは、長さ32.0 mm、幅24.0 mm、厚さ2.1 mmといった大きさ（切手サイズの大きさ）のカード型記録媒体である。ユーザはこのSDメモリカードを指先で把持することができる。SDメモリカードには、再生装置との接続のための９本のコネクタが設けられており、側面には、記憶内容の上書きを許可するか禁止するかを操作者が設定することができるプロテクトスイッチが設けられている。SDメモリカードは、NAND型EEPROMである「不揮発メモリ」、再生装置から発せられるコマンドに従って、不揮発メモリに対するデータ書き込み、不揮発メモリからのデータ読み出し、データ消去を行う「アクセス制御部」、不揮発メモリから読み出されたデータを書き換える際、データの一時格納に用いられる「ワークメモリ」を含む。【００６５】
SDメモリカードには、FAT16を採用したものと、FAT32を採用したものとがある。FAT16は、クラスタ1つ当たりに割り当てられるエントリー長が16ビットであり、2Gバイトの記録領域をアクセス対象にしている。FAT32は、クラスタ1つ当たりに割り当てられるエントリー長が32ビットであり、32Gバイトの記録領域をアクセス対象にしている。このFAT32を採用したSDメモリカードは、特に“SDHCメモリカード”と呼ばれる。【００６６】
以降、このリムーバブルメディアについて説明する。図６は、リムーバブルメディアであるSDメモリカードの内部構成を示す図である。本図の左側に、リムーバブルメディアであるSDメモリカードを示し、中側に、FAT型ファイルシステムに準じた記録領域の内部構成を示す。このFAT型ファイルシステムの記録領域は、「MasterBootRecord」,「PartitionTable」,「システム領域」及び「ユーザ領域」からなる。【００６７】
「MasterBootRecor」は、自身に後続する領域が"物理的な一つの媒体（物理媒体）"であることを再生装置に認識させるための標識である。本図では、記録領域にマスタブートレコードが1つだけ存在するので、記録領域において1つの物理媒体が再生装置により認識され得るが、仮に記録領域にマスタブートレコードを2つ配せば、2つの物理媒体が再生装置により認識される。【００６８】
「パーティションテーブル」は、パーティションに関する情報が記述されたテーブルである。
「システム領域」は、「パーティションブートセクタ」、「二重化FAT」、「Rootディレクトリエントリ」が記録されている。
「ユーザ領域」は、クラスタを最小単位にして、ファイルが格納される領域であり、「BUDAディレクトリエントリ」、「CertIDディレクトリエントリ」、「OrganizationIDディレクトリエントリ」、「DiscIDディレクトリエントリ」、「マージ管理情報ファイル」、「署名情報ファイル」、「追加コンテンツデータファイル」が記録されている。【００６９】
以降、二重化FATについて説明する。
「二重化ファイルアロケーションテーブル(FAT)」は、ISO/IEC 9293に準拠した2つのFATからなる。図７（ａ）は、二重化FATの内部構成を示す図である。各FATは、各クラスタに対応づけられた複数のFATエントリーからなる。各FATエントリーは、対応するクラスタが使用中であるか、未使用であるかを示すものであり、対応するクラスタが未使用であれば、そのファイルエントリーには、"0"が設定され、対応するクラスタが使用中であれば、クラスタ番号が設定される。このクラスタ番号は、対応するクラスタが読み出された場合、次にどのクラスタを読み出せばよいかといったクラスタ間のリンク関係を示す。図７（ａ）の破線の引き出し線ff1は、FATに含まれる複数のFATエントリー002,003,004,005・・を示す。このFATエントリーに付与された数値「002,003,004,005・・」は、各FATエントリーがどのクラスタに対応づけられているか、つまり、各FATエントリーが対応づけられているクラスタのクラスタ番号を示す。【００７０】
続いて、ディレクトリエントリについて説明する。ディレクトリエントリには、システム領域に存在する「Rootディレクトリエントリ」、ユーザ領域に存在する「BUDAディレクトリエントリ」、「CertIDディレクトリエントリ」、「OrganizationIDディレクトリエントリ」、「DiscIDディレクトリエントリ」といったものがあるが、これらは何れも、図７（ｂ）に示す共通のデータ構造を有する。図７（ｂ）は、ディレクトリエントリの共通のデータ構造を示す図である。本図に示すように「ディレクトリエントリ」は、ASCII文字８文字以下に制限された「ディレクトリ名」と、「作成時刻」と、「作成日付」と、当該ディレクトリに存在するファイルについての「ファイルエントリー」を含む。各ファイルエントリーは、ASCII文字８文字以下に制限された「ファイル名」と、ASCII文字３文字以下に制限された「ファイル拡張子」と、ファイルの先頭部が格納されている「ファイル最初のクラスタ番号」と、そのファイルについての「ファイル属性」と、ファイルが更新された「更新時刻」と、ファイルの「更新日付」と、ファイルのデータ長である「ファイル長」とを含む。【００７１】
SDメモリカードにおけるディレクトリ名及びファイル名は、こうしたディレクトリエントリに記述される。そしてこのディレクトリエントリのうち、Rootディレクトリエントリは、二重化FATと共に、原則として、1つのクラスタ内に配置して、まとめて管理せねばならないので、ディレクトリ名及びファイル名を長くするのは現実的ではない。具体的には、その文字数は、ASCII文字８文字以内、拡張子もASCII文字３文字以内に制限されている。このように、ディレクトリ名、ファイル名が制限されたファイルシステム形式を、“８.３形式”と呼んでいる。【００７２】
ここで、DiscIDディレクトリに、追加コンテンツデータファイルをする場合、FAT及びディレクトリエントリがどのように設定されるかについて説明する。説明の題材に選ぶ追加コンテンツデータファイルは、AVClipを格納した“00001.m2t”というファイルである。図８は、00001.m2tをクラスタサイズに合わせて5つに分割し、各分割部分を、クラスタ503,504,505,50A,50Cに格納する状態を想定した図である。【００７３】
図８の第２段目から第７段目は、映像、音声を示すエレメンタリストリームが、AVClipにおいてどのように多重化されているかを模式的に示す図である。AVClipは、デジタル化された映像、デジタル化された音声を(第７段目)、PESパケットからなるエレメンタリストリームに変換し(第６段目)、更にTSパケットに変換して(第５段目)、これらを多重化することで構成される。【００７４】
ここで、ビデオストリームは、本図の第７段目に示すように複数のピクチャから構成されるが、これらピクチャと、Access Unitとの関係は、１Access Unit ＝ １ピクチャである。オーディオストリームも、複数のオーディオフレームから構成されるが、これらオーディオフレームと、Access Unitとの関係も、１オーディオフレーム ＝ １Access Unitである。またBD-ROMでは、１PESパケット ＝ １フレームに制限されている。つまり、動画がフレーム構造であれば、１PESパケット ＝ １ピクチャであり、フィールド構造である場合、１PESパケット＝２ピクチャとなる。これらのことから、本図の第７段目に示すPESパケットは、第７段目におけるピクチャやオーディオフレームを、１対１の比率で格納している。【００７５】
以上のAVClipは、第４段目に示すような“STC Sequence”から構成される。“STC Sequence”とは、デコード時刻、表示時刻を表すMPEG2-TSの時間軸であり、AVストリームのシステム基準時刻であるSTC(System Time Clock)の不連続点(system time-base discontinuity)が存在しない区間をいう。STCの不連続点はデコーダがSTCを得るために参照するPCR(Program Clock Reference)を運ぶPCRパケットの不連続情報(discontinuity＿indicator)がONである点である。【００７６】
第３段目から第１段目は、AVClipを構成するTSパケットがどのような過程を経てBD-ROMに書き込まれるかを示す。本図の第１段目にAVClipを構成するTSパケットを示す。
AVClipを構成する188バイトのTSパケットは、4バイトのTS＿extra＿header(図中のハッチング部)が付されて、192バイト長のSourceパケットになる。このTS＿extra＿headerは、当該TSパケットのデコーダ入力時刻情報を示すArrival＿Time＿Stampを含む。【００７７】
AVClipを構成するSourceパケットは、第３段目に示すような1つ以上の“ATC＿Seuqence”を構成する。“ATC＿Seuqence”とは、AVClipに記されているATSの時間軸を構成するSourceパケットの配列であって、そのArrival＿Time＿Stampが参照しているArrival＿Time＿Clockに、不連続点(no arrival time-base discontinutiy)が存在しないものをいう。いいかえれば、そのArrival＿Time＿Stampが参照しているArrival＿Time＿Clockに、連続性が存在するSourceパケット列を“ATC＿Seuqence”という。ATSは以下のようにTSパケットの先頭につけられ、デコーダへの転送時刻を示す。【００７８】
かかるATC＿SeuqenceがAVClipになり、第２段目に示すように00001.m2tというファイル名でBD-ROMに記録される。
かかるAVClipは、通常のコンピュータファイル同様、クラスタサイズに分割され、BD-ROM上の領域に記録される。第１段目はAVClipがどのようにリムーバブルメディア１０４に記録されるかを模式的に示す。上述したようにデータ領域の最小アクセス単位はクラスタであるので、00001.m2tは、クラスタサイズを最小単位にしてデータ領域に格納せねばならない。00001.m2tは、先ずクラスタサイズに分割されて、各クラスタに書き込まれる。【００７９】
00001.m2tが分割格納されると、ディレクトリエントリ及びFATは、図９のように設定されねばならない。
図９は、00001.m2tが複数のクラスタに記録されている場合のディレクトリエントリ及びFATについての設定例を示す図である。本図において00001.m2tの先頭部分がクラスタ503に記録されている場合、DiscIDディレクトリディレクトリエントリにおける「最初のクラスタ番号」には、その先頭部分が格納されているクラスタについてのクラスタ番号503が記載される。以降、00001.m2tの後続する部分は、クラスタ504、クラスタ505に格納されていることがわかる。00001.m2tの先頭部分を格納しているクラスタ503には、FATエントリー503(504)が対応しているが、このFATエントリーは、00001.m2tファイルの後続する部分を格納しているクラスタ504を示すものである。またこれに後続している部分を格納しているクラスタ504,505には、FATエントリー504(505),FATエントリー505(50A)が対応しているが、これのFATエントリーは、00001.m2tファイルの次の後続する部分を格納しているクラスタ505,50Aを示すものである。このように、DiscIDディレクトリディレクトリエントリにおける最初のクラスタ番号と、FATエントリーとを辿ってゆくことにより、リムーバブルメディア１０４に格納されたAVClipは読み出され、再生に供されることになる。【００８０】
以上のようなファイルシステムを前提にして、構築されるディレクトリについて説明する。
図１０は、リムーバブルメディア上のディレクトリ構成を示す図である。リムーバブルメディア上には、追加コンテンツ領域ルートディレクトリであるBUDAディレクトリ、CertIDディレクトリ、OrganizationIDディレクトリ、DiscIDディレクトリが存在する。このDiscIDディレクトリには、マージ管理情報ファイル「bumf.xml」、署名情報ファイル「bumf.sf」、追加コンテンツデータファイル「00001.mpl」「mo.bdm」「00001.m2t」が存在する。【００８１】
追加コンテンツ領域ルートディレクトリ(BUDAディレクトリ)は、リムーバブルメディアのルートディレクトリの直下に存在し、追加コンテンツ領域のルートを示すディレクトリで、ディレクトリ名は、８文字以内の固定値（BD＿BUDA）である。
「CertIDディレクトリ」はBD-ROM上のマージ証明書(bd.cert)から導き出されるIDを名前に持つディレクトリで、マージ証明書のSHA-1ダイジェスト値160ビットのうち、先頭32ビットを16進表記で表した８文字の名前のディレクトリである。【００８２】
「OrganizationIDディレクトリ」は、BD-ROM上のBD管理情報(index.bdmv)に記載されている、映画作品のプロバイダを特定する32ビットの識別子(OrganizationID)を16進表記で表した８文字の名前のディレクトリである。
「DiscIDディレクトリ」は、４階層のサブディレクトリからなる。これら４階層のサブディレクトリは、最大８文字のディレクトリ名が付与される。各サブディレクトリには、BD-ROMを特定する128ビットの識別子(DiscID)を先頭から32ビットずつ４分割し、それぞれを16進表記で表した８文字の名前が割り当てられている。このDiscIDは、BD-ROM上のBD管理情報(index.bdmv)に記載されているので、index.bdmvをオープンすることでDiscIDは、取得することができる。例えば、本図における、「12345678」「90abcdef」「12345678」「90abcdef」という4つのディレクトリ名は、「1234567890abcdef1234567890abcdef」という32文字(１２８ビット)のDiscIDを、下位の桁から８文字(３２ビット)ずつ分割することで得られたものである。DiscIDを構成する文字のうち、意味のあるものを省略することなく、DiscIDと、８.３形式との対応を図るので、４階層のサブディレクトリは、DiscIDと厳密に対応がとれたものとなる。【００８３】
DiscIDディレクトリの配下には、「マージ管理情報ファイル」、「署名情報ファイル」、「追加コンテンツデータファイル」が存在する。これらのファイルは、仮想パッケージ生成の中核を担うものであり、以降、これらのファイルの内容を詳細に説明する。
「マージ管理情報ファイル」は、リムーバブルメディア上の追加コンテンツデータファイルのファイルパスと、仮想パッケージにおける別名アクセスのためのファイルパスとの対応付けを示す情報であり、bumf.xmlというファイル名でDiscIDディレクトリに保存される。このマージ管理情報ファイルが特徴的であるのは、リムーバブルメディアにおけるファイルパス、つまりFAT型ファイルシステムを前提にしているため、リムーバブルメディアにおけるディレクトリ名及びファイル名が８.３形式に準じている点である。このように、８.３形式に準じたファイルパスが、仮想パッケージにおけるLFNのファイルパスとが対応付けられている。この仮想パッケージのファイルパスは、BD-ROMのディレクトリ構造に準じている。何故なら仮想パッケージは、リムーバブルメディア上のファイルを、あたかもBD-ROMに格納されているものと同様に扱うものだからである。かかるBD-ROMのファイルシステム形式は、LFNに対応したものなので、このマージ管理情報ファイルを参照することにより、リムーバブルメディア上の追加コンテンツデータファイルは、８.３形式でありながら、２５５文字以下のファイル名を用いて別名でアクセスされることになる。マージ管理情報ファイルは、８.３形式で記録されている各種ファイルに対して、２５５文字以下のファイル名による、“別名アクセス”を実現させるものである。【００８４】
図１１（ａ）は、マージ管理情報の内部構成を示す図である。本図におけるマージ管理情報では、00001.mpl、mo.bdm、00001.m2tという3つの追加コンテンツデータファイルについて、リムーバブルメディア上のファイルパスと、仮想パッケージ上のファイルパスとの対応付けがなされている。リムーバブルメディア上のファイルパスは、８.３形式に準じている。【００８５】
本図におけるファイルパスの記述について具体的に説明する。リムーバブルメディアにおける“12345abc/12345678/90abcdef/12345678/90abcdef/00001.mpl”という８.３形式のファイルパスには、BDMV/PLAYLIST/00001.mplsという仮想パッケージ上のLFN形式のファイルパスが対応付けられている。この一例は、前図のものに準じており、CertIDディレクトリから追加コンテンツデータファイルへのパスが明記されている。【００８６】
リムーバブルメディアにおける、“12345abc/12345678/90abcdef/12345678/90abcdef/mo.bdm”という８.３形式のファイルパスには、BDMV/MovieObject.bdmvという仮想パッケージ上のLFN形式のファイルパスが対応付けられている。
リムーバブルメディアにおける“12345abc/12345678/90abcdef/12345678/90abcdef/00001.m2t”という８.３形式のファイルパスには、BDMV/STREAM/000001.m2tsという仮想パッケージ上のLFN形式のファイルパスが対応付けられている。【００８７】
図１１（ｂ）は、マージ管理情報の内容を元にして、BD-ROMコンテンツと、リムーバブルメディア上の追加コンテンツをマージする様子を示している。
左側は、BD-ROMの格納内容を示し、中側はリムーバブルメディアの格納内容を示す。右側は、仮想パッケージの格納内容を示す。マージ管理情報ファイルは、図１１（ａ）のように設定されているので、リムーバブルメディアにおける格納内容のうち、BUDAディレクトリ配下の12345abc/12345678/90abcdef/12345678/90abcdefに存在する3つの追加コンテンツデータファイル、つまり、mo.bdm、00001.mpl、00001.m2tのそれぞれを、矢印g1,g2,g3に示すように、マージ管理情報ファイルに記述されている仮想パッケージのディレクトリ構成に組み合わせる。以上のような、リムーバブルメディアのファイルを、マージ管理情報ファイルに記述されているディレクトリ構成に組合せることを“マージ”という。【００８８】
こうしたマージによって、mo.bdmは、BDMVディレクトリに存在する“MovieObject.bdmv”という別名のファイル名でアクセスされることになる。
また00001.mplは、BDMVディレクトリ配下のPLAYLISTディレクトリに存在する“00001.mpls”という別名のファイル名でアクセスされることになる。
00001.m2tは、BDMVディレクトリ配下のSTREAMディレクトリに存在する“00001.m2ts”という別名のファイル名でアクセスされることになる。【００８９】
上述したような別名アクセスが可能になるので、mo.bdm、00001.mpl、00001.m2tのそれぞれは、BDMVにMovieObject.bdmv、BDMV/PLAYLIST/00001.mpls、BDMV/STREAM/000001.m2tsに存在するものとして扱うことができる。
「署名情報ファイル」は、マージ管理情報ファイルに対するプロバイダの電子的な署名を示すファイルであり、bumf.sfというファイル名でDiscIDディレクトリに保存される。電子的な署名は、一般的に改竄防止が必要な情報に対してハッシュ値を計算し、ハッシュ値をなんらかの秘密鍵を用いて暗号化したものを用いる。改竄防止が必要な情報としては、具体的には、追加コンテンツデータファイルのファイル名や追加コンテンツデータファイルをBuild-Inメディアに記録するにあたってのファイルパスが挙げられる。かかるファイルパスはLFN形式であり、マージ管理情報ファイルに記載されているので、マージ管理情報ファイルに記載されたファイルパスに対して、ハッシュ値は算出されることになる。また、本署名情報ファイルでは、BD-ROM上にあるマージ証明書中の公開鍵に対応する秘密鍵を利用して、マージ管理情報ファイルのハッシュ値が暗号化されている。【００９０】
「追加コンテンツデータファイル」は、BD-ROMに記録されたオリジナルのコンテンツに対し、追加/更新を実現するファイル群であり、リムーバブルメディア上に8.3形式（ファイル名８文字以内、拡張子３文字以内）のファイル名で保存される。DiscIDディレクトリについては、文字を省略することなく、全ての文字がDiscIDディレクトリにおけるディレクトリ名に現れるように変換を行ったが、追加コンテンツデータファイルについては、一部の文字をリムーバブルメディアにおけるファイル名に使用することで、ファイル名の短縮を図っている。これは、追加コンテンツデータファイルにおけるファイル名は、本来、BD-ROM上のファイル名であり、“５桁の数値＋数種類の拡張子”という何通りかのパターンのものに限られているので、ファイル名を構成する文字を一部省略したとしても、混同が生じる等の不都合が発生する可能性は極めて低いこと等の理由による。【００９１】
図１０に示した3つの追加コンテンツデータファイルのうち、「00001.mpl」はプレイリスト情報を格納したものであり、「mo.bdm」は、Movieオブジェクトを格納したものである。「00001.m2t」は、AVClipを格納したものである。これら以外にも、BD-ROMにて記録され、ユーザに供給することができるファイルであるなら、BD-ROMに記録されるべき他のファイルを追加コンテンツデータファイルの対象として選ぶことができる。index.bdmvやClip情報を格納したファイル(拡張子がclpiのファイル)、Javaアーカイブファイル(拡張子がJarのファイル)、BD-Jオブジェクトを格納したファイル(拡張子がbdjoのファイル)を、追加コンテンツデータファイルの対象として選ぶことができる。【００９２】
図１２は、図５に示すBD-Jモジュールのより具体的な構成を示すとともに、BD-Jモジュールによりネットワーク上から追加コンテンツファイルをBuild-Inメディア上もしくはリムーバブルメディア上にダウンロードする様子を示す図である。BD-Jモジュール１４はメディア再生モジュール３２、ファイルI/Oモジュール３４、ネットワークモジュール３５、アプリケーションマネージャ３６、仮想ファイルシステム管理モジュール３９から構成される。尚、本図におけるAV再生ライブラリ２０、ネットワークI/F２１、Build-Inメディアドライブ・リムーバブルメディアドライブ２２、仮想ファイルシステム２３は、図５に示したものと同一であり、メディア再生モジュール３２〜仮想ファイルシステム管理モジュール３９の説明のために便宜的に記載している。【００９３】
メディア再生モジュール３２はJava(TM)アプリケーション３１に対し、メディア再生制御のためのAPIを提供している。Java(TM)アプリケーション３１がメディア再生制御APIを呼び出すと、メディア再生モジュールは対応するAV再生ライブラリ２０の関数を呼び出し、AV再生制御を行う。
ファイルI/Oモジュール３４は、Java(TM)アプリケーション３１からのBuild-Inメディアもしくはリムーバブルメディアへのアクセス要求の処理を行う。【００９４】
このアクセス要求が、追加コンテンツデータファイルの書き込みである場合、Java(TM)アプリケーション３１はファイルI/Oモジュールを用いて、追加コンテンツファイルをBuild-Inメディア上もしくはリムーバブルメディア上の適切な位置に配置することが出来る。また、不要となった追加コンテンツファイルを削除したり、追加コンテンツファイルを直接編集することも可能である。仮想パッケージ上へのアクセスもこのファイルI/Oモジュール３４を通して行う。ただし、仮想パッケージ上へのアクセスは読み取り専用となり、ファイルI/Oモジュール３４からの書き込みはできない。【００９５】
そのアクセス要求が追加コンテンツデータファイルの読み出しである場合、アプリケーションプログラム３１からは、BD-ROMに対するLFN形式のファイルパスが引き渡されるので、リムーバブルメディアに記録されているファイルであって、LFNのファイルパスにてアクセスできるものがリムーバブルメディアに存在するかどうかのサーチを行う。
このサーチは、当該LFNのファイルパスが、マージ管理情報ファイルにおいて、“別名のファイルパス”として記述されているかどうかを判断することでなされる。【００９６】
そうしたサーチにより、そのLFNのファイルパスにて別名でアクセスできる追加コンテンツデータファイルがリムーバブルメディアに存在することが明らかになった場合、マージ管理情報ファイルに記載された８.３形式のファイルパスに従い、その追加コンテンツデータファイルをリムーバブルメディアから読み出す。こうしたサーチを行うので、発明の開示に記載した、サーチ手段は、このファイルI/Oモジュール３４に対応することになる。【００９７】
そのLFNのファイルパスにて別名アクセスできる追加コンテンツデータファイルがリムーバブルメディアに存在しない場合、そのLFNのファイルパスにてアクセスすることができる追加コンテンツデータファイルを、BD-ROMから読み出す。そのLFNのファイルパスにてアクセスすることができる追加コンテンツデータファイルが、BD-ROMにも存在しないのなら、エラー処理を行う。【００９８】
ネットワークモジュール３５は、Java(TM)アプリケーション３１に対し、ネットワーク制御のためのAPIを提供している。Java(TM)アプリケーション３１からのネットワーク制御要求に従い、ネットワークインターフェース２１を使って、ネットワーク接続を行う。Java(TM)アプリケーション３１はネットワークモジュール３５を用いて、公開されている追加コンテンツを検索、及びBuild-Inメディア/リムーバブルメディアにダウンロードすることが可能である。【００９９】
アプリケーションマネージャ３６は、BD-ROM上に記録されたアプリケーション管理情報を元にJava(TM)アプリケーションの起動・終了を管理する。また、アプリケーションマネージャがディスパッチャ１７から受け取ったUOイベントを、現在動作中のJava(TM)アプリケーション３１に渡すといった処理も行う。
DiscID確認モジュール３７は、挿入されたBD-ROMのDiscIDを確認する。DiscID確認モジュール３７により取得されたDiscIDの値は仮想ファイルシステム２３が仮想パッケージを構築する際に用いられる。【０１００】
リムーバブルメディア検知モジュール３８は、リムーバブルメディアの挿入・取り出しのモニタリングを行う。リムーバブルメディアの挿入・取り出しが行われると、仮想ファイルシステム２３に挿入・取り出し通知を行う。
仮想ファイルシステム管理モジュール３９は、Java(TM)アプリケーション３１からの仮想パッケージ構築/更新要求を受け取り、その要求内容を仮想ファイルシステム２３へ伝達する。Java(TM)アプリケーションは仮想パッケージを構築/更新する場合、新たなマージ管理情報ファイル及び署名情報ファイルを指定して構築/更新要求を発行する。仮想ファイルシステム２３は仮想ファイルシステム管理モジュール３９を通じて仮想パッケージ構築/更新要求を受け付けると、新たに指定された署名情報ファイルを用いて、新たなマージ管理情報ファイルの署名検証を行った後、古いマージ管理情報ファイル、署名情報ファイルを新しいマージ管理情報ファイル、署名情報ファイルに置き換えて、仮想パッケージを再構築する。マージ管理情報ファイル、署名情報ファイルの置き換えはタイトル切り替え時に行われる。次にタイトルについての説明を行う。【０１０１】
図１３はindex.bdmvファイルとタイトルの関係を示す図である。タイトルとはアプリケーションとAVストリームを組にした再生単位であり、index.bdmvファイルにはディスク上のタイトル構成が記載されており、ディスク上の各タイトルと、対応するアプリケーション（BD-JモードタイトルであればJava(TM)アプリケーション、HDMVモードタイトルであればシナリオプログラム）の参照関係を管理している。また、特殊なタイトルとして「FirstPlay」と「Top Menu」が存在する。「First Play」はBD起動時に自動的に再生されるタイトルであり、主にBDの利用規約表示などに用いられる。「Top Menu」はリモコンのメニューキーを押したときやタイトル再生が終了したときに再生され、主にタイトルの選択や、字幕/音声の言語選択を行うことに用いられる。このindex.bdmvファイルが仮想パッケージ更新により内容が変化した場合、仮想パッケージ更新前と更新後で、タイトル構成が異なることになる。【０１０２】
以降、BD-ROM装填時における、各構成要素の処理について説明する。
BD-ROMが再生装置に挿入されるとDiscID確認モジュール３７は、bd.certから、CertIDディレクトリを割り出し、次にindex.bdmvに記載されているDiscID、OrganizationIDを確認し、Build-Inメディア上にある対応するDiscIDディレクトリを決定する。仮想ファイルシステム２３は、挿入されたBD-ROMに対応するDiscIDディレクトリにある署名情報ファイルを利用してマージ管理情報ファイルが改竄されていないことを確認した後、マージ管理情報の内容に基づきDiscIDディレクトリに格納されている追加コンテンツファイルがBD-ROM上コンテンツにマージされ、仮想パッケージを作成する。【０１０３】
仮想パッケージは仮想的に存在し、実際には一部がBuild-Inメディアもしくはリムーバブルメディア上のファイル、その他がBD-ROM上のファイルで構成されたパッケージとなる。ただし、アプリケーションレイヤ（図３の第４層）である、HDMVモジュール１３やBD-Jモジュール１４からは、あたかも全てのファイルがBD-ROM上にあるかのように参照させ、仮想ファイルシステム２３がアプリケーションレイヤ（図３の第４層）からのBD-ROM上への参照をモニタリングし、参照先のファイルへのパスが、マージ管理情報に記載されている仮想パッケージのファイルパスと一致していれば、対応するファイルパスに記載されているBuild-Inメディア上のファイルに参照先の変更を行う。すなわち、実際には、Build-Inメディアもしくはリムーバブルメディア上に保存されているファイルが８.３形式のファイル名であったとしても、アプリケーションレイヤからは、ロングファイル名として扱うことが可能になる。図１４は、リムーバブルメディアへのダウンロードの処理手順を示すフローチャートである。Build-InメディアであるリムーバブルメディアのBUDAの配下に、160ビットのCertIDのうち、先頭32ビットをディレクトリ名としたCertIDディレクトリをクリエイトする(ステップＳ１)。そのCertIDディレクトリの配下に、今度はOrganizationIDのディレクトリ名にしたOrganizationIDディレクトリをクリエイトする(ステップＳ２)。その後、128ビットのDiscIDを３２ビット毎に4つの文字列に分割して、４つの文字列をそれぞれディレクトリ名とした４階層のDiscIDディレクトリを、OrganizationIDディレクトリの配下にクリエイトする(ステップＳ３)。【０１０４】
以上の処理で、リムーバブルメディアのためのディレクトリ構成を構築した後、マージ管理情報ファイル、署名情報ファイルをダウンロードして、DiscIDディレクトリのうち、最下層に格納する(ステップＳ４)。続いて、ファイル名を８.３形式に変更しつつ、追加コンテンツデータファイルのダウンロードを行う(ステップＳ５)。こうして追加コンテンツデータファイルのダウンロードがなされれば、マージ管理情報ファイルにおけるファイル名、ディレクトリ名の変更に伴い、署名情報ファイルを変更する(ステップＳ６)。つまりプロバイダ側では、改竄防止のため、ファイルパスが変更される前の、Build-InメディアにおけるLFN形式に対応したファイルパスに対してハッシュ値を算出しており、そうして算出したハッシュ値を署名情報ファイルに記述している。再生装置は、ハッシュ値の算出対象となったファイルパスを、LFNから８.３形式に変更しているので、この変更に伴い、署名情報ファイル内のハッシュ値を再計算にする必要がある。そのような、ファイルパス変更に追随して、ハッシュ値の再計算を行っているのが、このステップＳ６である。【０１０５】
図１５は、追加コンテンツデータファイルのダウンロード処理の処理手順を示すフローチャートである。本フローチャートは、追加コンテンツデータファイルを構成するそれぞれの追加コンテンツデータファイルについて、ステップＳ１３〜ステップＳ２２の処理を繰り返すループ構造になっている。ここで複数の追加コンテンツデータファイルのうち、処理対象となるものを追加コンテンツデータファイルiとする。【０１０６】
また、リムーバブルメディアに記録するにあたって、追加コンテンツデータファイルに付与されるファイル名のファイルボディ(ここでファイルボディとは、ファイル名のうち、拡張子を除いた部分の文字列をいう)を“ファイルボディB”と呼び、追加コンテンツデータファイルに付与されるファイル名の拡張子を“拡張子E”と呼ぶ。
ステップＳ１３は、追加コンテンツデータファイルiのファイル名におけるファイルボディiが、８文字以内であるかの判定である。ファイルボディが８文字以内なら追加コンテンツデータファイルiのファイルボディを、ファイルボディBとする。８文字以内でないなら、ステップＳ１５を実行する。ステップＳ１５は、追加コンテンツデータファイルiのファイルボディが全て数字であるか／アルファベットを含むかについての判定である。【０１０７】
もし、“全て数字”であるなら、ステップＳ１６において追加コンテンツデータファイルiのファイルボディの下８桁の数字をファイルボディBとする。追加コンテンツデータファイルiのファイルボディが“全てアルファベット”であるなら、ステップＳ１７においてアルファベットの大文字からイニシャル文字を生成して、そのイニシャル文字を、小文字にしたものをファイルボディBに採用する。【０１０８】
ステップＳ１８は、追加コンテンツデータファイルiのファイル名における拡張子が３文字以内であるか否かの判定である。３文字以内であるなら、追加コンテンツデータファイルiの拡張子を拡張子Eとする(ステップＳ１９)。３文字以内でないなら、追加コンテンツデータファイルiの拡張子の上から３桁の文字を拡張子Eとする(ステップＳ２０)。以上の処理の後、ファイルボディBと、拡張子Eとの組合せ(フローチャートでは、“ファイル名B.E”と記載している)を用いて、追加コンテンツデータファイルのリムーバブルメディアにおけるファイルパスを生成し(ステップＳ２１)、マージ管理情報ファイルにおけるローカルストレージのファイルパスを、新たに生成した８.３形式のファイル名に置き換える(ステップＳ２２)。【０１０９】
図１６はタイトル切り替え時に新旧マージ管理情報ファイルを置き換えて、仮想パッケージの再構築を行うための処理手順を示すフローチャートである。BD-Jモード用のタイトルが再生され（ステップS３１）、タイトル再生中にJava(TM)アプリケーションは仮想パッケージ更新要求を行う（ステップS３２）。
仮想パッケージ更新要求時に与える引数の値は、新マージ管理情報ファイルの位置を示すファイルパス、新マージ管理情報ファイルに対応する署名情報ファイルの位置を示すファイルパスである。【０１１０】
仮想ファイルシステム２３が仮想パッケージ更新要求を受けると、仮想ファイルシステム２３の状態を「更新準備中」とし、指定された新マージ管理情報ファイルが、書き換えられないように、読み取り専用属性に変更する（ステップS３３）。そして、仮想パッケージ更新要求時に指定された署名情報ファイルを用いて、新マージ管理情報ファイルの署名検証を行う（ステップS３４）。【０１１１】
ステップS３４の署名検証に失敗した場合（ステップS３５でNo）、仮想ファイルシステム２３は仮想パッケージ更新要求を中断し、新マージ管理情報ファイルの属性を読み取り専用から仮想パッケージ更新要求前の元の属性に戻し、Java(TM)アプリケーションに対して、仮想パッケージ更新要求拒否通知イベントを投げる（ステップS３９）。
ステップS１０４の署名検証に成功した場合（ステップS３５でYes）、仮想ファイルシステム２３は新マージ管理情報ファイルが参照しているBuild-Inメディア/リムーバブルメディア上のファイルの存在チェックを行い、それらのファイルをJava(TM)アプリケーションから読み取り専用となるように属性を変更する（ステップS３６）。【０１１２】
新マージ管理情報ファイルから参照されていて仮想パッケージ構築に必要なファイルがBuild-Inメディア/リムーバブルメディア上に存在しなかった場合（ステップS３７）、仮想ファイルシステム２３は仮想パッケージ更新処理を中断し、ステップS３３及びステップS３６で属性を変更したファイルを仮想パッケージ更新要求前の元の属性に戻し、Java(TM)アプリケーションに対して、仮想パッケージ更新要求拒否通知イベントを投げる（ステップS３９）。【０１１３】
新マージ管理情報ファイルから参照されていて仮想パッケージ構築に必要なファイルがBuild-Inメディア/リムーバブルメディア上に全て存在していると確認でき、さらにそれらのファイルの属性をJava(TM)アプリケーションから読み取り専用に変更する処理が完了すると（ステップS３７でYes）、仮想ファイルシステム２３は仮想ファイルシステムの状態を「更新準備完了」とし、Java(TM)アプリケーションに対して、更新準備完了通知イベントを投げる。【０１１４】
仮想ファイルシステム２３の状態が「更新準備完了」となった後、タイトル切り替えが発生するのを待つ（ステップS３８）。タイトル切り替えが発生すると、切り替え前のタイトルで起動していたJava(TM)アプリケーションは終了する（ステップS４０）。その後、旧マージ管理情報ファイルが存在すれば、新マージ管理情報ファイルで上書きし、新旧マージ管理情報ファイルの置き換えを行う（ステップS４１）。仮想パッケージ更新前がオリジナルのBD-ROMで再生されており、旧マージ管理情報ファイルがもともと存在しなかった場合は、旧マージ管理情報ファイルを上書きする代わりに、新マージ管理情報ファイルは、挿入されているBD-ROMのDiscIDに対応するDiscIDディレクトリの下に移動され、正規のマージ管理情報ファイル名にリネームされる。同様に、署名情報ファイルについても新旧ファイルの置き換え、移動を行う。【０１１５】
新旧マージ管理情報ファイル、署名情報ファイルの置き換えもしくはファイルの移動を終えた後、新マージ管理情報ファイルを元に仮想パッケージを再構築する（ステップS４２）。
仮想パッケージ再構築後、旧マージ管理情報ファイルから参照されていたが、新マージ管理情報ファイルからは参照されていないBuild-Inメディア/リムーバブルメディア上のファイルは読み取り専用属性が解除され、Java(TM)アプリケーションから読み書き可能になる。新マージ管理情報ファイル及び、新マージ管理情報ファイルが参照しているBuild-Inメディア/リムーバブルメディア上のファイルに関しては読み取り専用属性のままとなる。【０１１６】
仮想パッケージの再構築を終えると、新たに構築した仮想パッケージを用いて、切り替え先のタイトル再生を開始する（ステップS３１）。再生中の仮想パッケージに対応するマージ管理情報ファイル及び、そのマージ管理情報ファイルが参照しているBuild-Inメディア/リムーバブルメディア上のファイルは、仮想パッケージ再生中、常に読み取り専用属性となり、Java(TM)アプリケーションからは編集、削除することができない。【０１１７】
図１７は、Java(TM)アプリケーションが仮想パッケージ構築/更新要求を発行し、仮想パッケージが更新されるまでの、時間的な処理の流れを示す図である。
第１段目は、タイトルの再生時間軸であり、第２段目はアプリケーション#1の動作時間軸である。第３段目は、アプリケーション#2の動作時間軸であり、第４段目は、仮想ファイルシステムの状態遷移を示す時間軸である。【０１１８】
本図の初期状態として想定するのは、新しいマージ管理情報ファイル、署名情報ファイルの格納が完了した状態である。つまり、追加コンテンツに加え、現在の仮想パッケージ構築に利用されているマージ管理情報ファイル、署名情報ファイルとは別に新たにマージ管理情報ファイル、署名情報ファイルをインターネット上のサーバからダウンロードして得て、Build-Inメディア上もしくはリムーバブルメディア上に格納した状態を初期状態として想定する。【０１１９】
タイトル#1の再生中の時点t1において、Java(TM)アプリケーション３１は、仮想ファイルシステム管理モジュール３９が提供するAPIを通して仮想ファイルシステム２３に仮想パッケージ構築/更新を要求したものとする。図中のrequestUpdating("/org#1/disc#1/new.xml","/org#1/disc#1/new.sf")は、この仮想パッケージ構築要求となるAPI呼出しである。この仮想パッケージ構築要求の引数"/org#1/disc#1/new.xml","/org#1/disc#1/new.sf"は、Build-Inメディア/リムーバブルメディア上に格納されている新マージ管理情報ファイル、署名情報ファイルの位置を指定したファイルパスである。時点t1は、この更新要求がなされた時点を示す。【０１２０】
時点t1は、Java(TM)アプリケーション３１からの仮想パッケージ構築/更新要求を受け取って、その状態を「更新準備中」に遷移する時点である。
ここで、「更新準備中」とは、指定された新マージ管理情報ファイル及び、新マージ管理情報ファイルが参照しているBuild-Inメディア/リムーバブルメディア上のファイルを読み取り専用に属性を変更する処理を含む。【０１２１】
かかる処理の他、仮想パッケージ更新要求時にJava(TM)アプリケーション３１から指定された署名情報ファイルを用いて、新マージ管理情報ファイルの署名検証を行い、さらに新マージ管理情報ファイルのファイル格納位置情報に記載されているファイルが全て指定の位置に存在するかのチェックを行う。
時点t2は、ファイル存在のチェックが終わった後、仮想ファイルシステムの状態を「更新準備完了」とする時点を示す。こうして状態を遷移させれば、Java(TM)アプリケーションに対して、更新準備完了通知イベントを投げる。新マージ管理情報ファイルの署名検証、もしくはファイル格納位置情報に記載されているファイルの存在チェックに失敗した場合、仮想ファイルシステム２３は更新要求を拒否し、仮想ファイルシステム管理モジュール３９を通じて更新要求拒否通知イベントをJava(TM)アプリケーション３１に対して投げ、仮想ファイルシステム２３の状態を「更新準備中」となる前の状態（「仮想パッケージ再生状態」もしくは「BD-ROM再生状態」）に戻す。「仮想パッケージ再生状態」とは、BD-ROMが再生装置にロードされ、仮想ファイルシステム２３により仮想パッケージとして再生中であり、保留中の仮想パッケージ更新要求がない状態を指す。「BD-ROM再生状態」とは、BD-ROMが再生装置にロードされ、そのままオリジナルのBD-ROMとして再生中であり、同じく保留中の仮想パッケージ更新要求がない状態を指す。【０１２２】
時点t3は、仮想ファイルシステム２３の状態が「更新準備完了」となった後の時点を示す。タイトル切り替えが発生すると、仮想ファイルシステム２３は仮想パッケージ更新要求時に指定された新マージ管理情報ファイルを用いて、旧マージ管理情報ファイル（現在の仮想パッケージ構築に利用されているマージ管理情報ファイル）を上書きすることにより、旧マージ管理情報ファイルを新マージ管理情報ファイルに置き換える。【０１２３】
仮想パッケージ更新前がオリジナルのBD-ROMの再生中であり、旧マージ管理情報ファイルがもともと存在しなかった場合は、旧マージ管理情報ファイルを上書きする代わりに、新マージ管理情報ファイルを、挿入されているBD-ROMのDiscIDに対応するDiscIDディレクトリの下に移動する。こうすることで新マージ管理情報は、正規のマージ管理情報ファイル名(bumf.xml)にリネームされる。署名情報ファイルもマージ管理情報ファイル同様に新旧署名情報ファイルの置き換えを行う。新旧マージ管理情報ファイル、署名情報ファイルの置き換え、もしくは新マージ管理情報ファイル、署名情報ファイルの移動が終わった後、仮想ファイルシステム２３は、挿入されているBD-ROMのDiscIDに対応するDiscIDディレクトリの下に格納されている新マージ管理情報を元に仮想パッケージを再構築し、仮想パッケージのファイル構成を更新する。【０１２４】
時点t4は、  かかる更新を終えた時点であり、Build-Inメディアドライブ・リムーバブルメディアドライブ２２は、“仮想パッケージ再生状態”になる。仮想パッケージを更新した後も、仮想パッケージ再生状態である期間は、新マージ管理情報ファイル及び、新マージ管理情報ファイルのファイル格納位置情報が指し示すBuild-Inメディア/リムーバブルメディア上のファイルは読み取り専用に属性のままとなる。ただし、旧マージ管理情報ファイルから参照されていて、新マージ管理情報ファイルから参照されていないファイルは読み取り専用属性が解除され、Java(TM)アプリケーションから読み書き可能になる。【０１２５】
以上のように本実施形態によれば、リムーバブルメディアに対して、８.３形式までのファイル名しかサポートしていないファイルシステムで構成された再生装置においても、リムーバブルメディアを利用した仮想パッケージ構築を行うことができる。また、リムーバブルメディアにおける追加コンテンツ領域のルートディレクトリを固定することで、再生装置間の互換性を保つことができる。具体的には、ある再生装置がリムーバブルメディアに追加コンテンツデータを記録した後、当該リムーバブルメディアを別の再生装置に装填したとしても、その再生装置は、リムーバブルメディアに記録された追加コンテンツデータを利用することができる。【０１２６】
尚、ステップＳ７では、アルファベットのイニシャルを生成することで、LFNから８.２形式への変更を図ったが、対象となるファイル名に応じて、他の生成法を採用してもよい。例えば、先頭から８文字を抜き出すことにより、８.２形式への変更を図ってもよい。
（第２実施形態）
本実施形態は、DiscIDの上位に存在する“0”の桁の扱いに関する。MHP(Multimedia Home Platform)上で動作するアプリケーションは、MHP固有のIDを使用する際、上位桁の“0”を省略する。DiscIDでも、上位桁の“0”については、省略することが望ましいので、本実施形態におけるJava(TM)アプリケーションは、そのような、上位桁の“0”を省略したDiscIDを用いて、仮想パッケージの構築を命じる。【０１２７】
そのように、上位桁の0を省略する場合、リムーバブルメディアにおけるディレクトリ構成は、図２８に示すものとなる。
図２８は、第２実施形態におけるリムーバブルメディア上のディレクトリ構成を示す図である。OrganizationIDディレクトリ, DiscIDディレクトリは、index.bdmvに示される32ビットのOrganizationID, 128ビットのDiscIDを１６進表記で表したディレクトリ名となる。【０１２８】
これらのうちDiscIDは先頭の０を省略することにより、全体のパス長を短くしている。ただし、先頭の８文字が全て０になる場合、ディレクトリ名は“０”1文字となる。また、DiscIDディレクトリにおいて、先頭ではなく、途中に０が続く場合は、省略してはならない。すなわち、DiscID=00000000123456781234567812345678の場合、DiscIDのディレクトリ構成は0/12345678/12345678/12345678と先頭の０を省略可能であるが、DiscID=12345678000000001234567812345678の場合は、省略せずに12345678/00000000/12345678/12345678となる。省略の対象は、DiscIDに限らず、CertIDディレクトリも同様に先頭の０を省略してもよい。【０１２９】
図２９は、第２実施形態におけるJava(TM)アプリケーションからDiscIDディレクトリへのアクセスを示す図である。DiscIDディレクトリはindex.bdmvに記載されている128ビットのDiscIDを示し、４階層のディレクトリ構成となっているが、Java(TM)アプリケーションからはあたかも、１ディレクトリとしてアクセスを行う。例えば、DiscIDディレクトリ構成が0/0/abc/12345678の場合、マージ管理情報ファイルの取得にあたって、Java(TM)アプリケーションはabc12345678の１ディレクトリとしてアクセスを行う。【０１３０】
ファイルI/Oモジュール３４はDisc IDディレクトリへのアクセスを検知すると、DiscIDディレクトリ変換部４０に、４ディレクトリ構成のDiscIDディレクトリへのパス変換を行わせる。DiscIDディレクトリ変換部４０はDiscIDディレクトリが１ディレクトリとして扱われたファイルパスを受け取ると、１ディレクトリ名として扱われているDiscIDディレクトリを４ディレクトリに分割する。【０１３１】
図２０は、１ディレクトリ名として扱われているDiscIDディレクトリを４ディレクトリに分割する処理手順を示すフローチャートである。ステップＳ４１では、DiscIDを３２ビットに区切って、３２ビットのディレクトリ名をn個生成する。ステップＳ４２は、ステップＳ４１で生成したディレクトリ名の個数nが4個であるか否かの判定であり、4個であれば、ステップＳ４３において生成した4個のディレクトリ名から特定される、4階層のDiscIDのファイルパスを得る。4個でなければ、ステップＳ４４において“0”のディレクトリ名を“4-n”生成して、ディレクトリ名を４つにする。【０１３２】
以上のように本実施例によれば、リムーバブルメディア上に保存するファイルのパス名を短縮することができる。また、Java(TM)アプリケーションは、４ディレクトリ構成となるDiscIDディレクトリを１ディレクトリとして扱うことができ、I/O処理を簡潔に行うことができる。
(第３実施形態)
本実施形態は、第１実施形態に示したようなディレクトリ構造で、リムーバブルメディアに追加コンテンツデータファイルが格納されている場合の、BD-ROM装填時における、処理手順の改良である。【０１３３】
図２１は、リムーバブルメディアを考慮したBD-ROM挿入から再生開始までのフローチャートである。まず、BD-ROMが挿入されると、リムーバブルメディアがすでに挿入済みかどうかの判断を行う（ステップS２０１）。リムーバブルメディアが挿入されていなければ、リムーバブルメディアを無効にして再生を開始する（ステップS２０７）。リムーバブルメディアが無効と判断された場合、Build-Inメディア上の追加コンテンツファイルを用いて仮想パッケージが構築可能かどうかの判断を行っても良い。Build-Inメディア上の追加コンテンツで仮想パッケージが構築可能であれば、Build-Inメディア上の追加コンテンツとBD-ROM上のデータで仮想パッケージを構築して再生を開始する。【０１３４】
ステップS２０１においてリムーバブルメディアがすでに挿入済みと判断された場合は、ユーザに対してリムーバブルメディアを有効にするかどうかの問い合わせを行う（ステップS２０２）。事前に、再生装置のユーザ設定で予め「リムーバブルメディアを優先する」という設定を行っていれば、ステップS２０２によるユーザへの問い合わせは省略しても良い。また、再生装置として「リムーバブルメディアを優先する」という設定が決まっている場合も同様に、ステップS２０２のユーザへの問い合わせは省略可能である。【０１３５】
ステップＳ２０３は、リムーバブルメディアを有効にすることにユーザの承認があったかどうかの判定である。ユーザがリムーバブルメディアを有効にするという選択を行えば、ステップＳ２０３はYesになり、ステップＳ２０４において挿入されているリムーバブルメディアを有効にする。リムーバブルメディアが有効であるという状態は、具体的には、リムーバブルメディアに、BUDAディレクトリ、CertIDディレクトリ、OrganizationIDディレクトリ、DiscIDディレクトリといったディレクトリ構造が存在していて、これらのうち、DiscID内の追加コンテンツデータファイルに対するアクセスが可能になっており、Java(TM)アプリケーションからファイルI/Oモジュール３４を通してリムーバブルメディア上のファイルが読み書き可能であることを指す。【０１３６】
ステップS２０４でリムーバブルメディアを有効にした後、リムーバブルメディア上のデータを用いて仮想パッケージが構築可能かどうかの判断を行う（ステップS２０５）。仮想パッケージが構築不可能であれば、リムーバブルメディアを有効にしたままBD-ROM上のデータのみで再生を行う。ステップS２０５で仮想パッケージが構築可能と判断されれば、リムーバブルメディア上の追加コンテンツを用いて仮想パッケージを構築し（ステップS２０６）、仮想パッケージにて再生を開始する。【０１３７】
図２２は仮想パッケージが構築可能か判断するフローチャートである。まず、挿入されているBD-ROMのDiscIDをIndex.bdmvから読み出して、内容を確認する（ステップS３０１）。DiscIDの読み出し及び確認は仮想ファイルシステム２３がDiscID確認モジュール３７を通して、DiscIDの値を取得することでなされる。なお、DiscIDの確認は仮想ファイルシステム２３が直接BD-ROMにアクセスして行ってもよい。【０１３８】
挿入されたBD-ROMのDiscIDの確認が終わると、そのDiscIDに対応する４階層のDiscIDディレクトリがリムーバブルメディアに存在するかどうかのサーチを行い、マージ管理情報ファイル、署名情報ファイルが存在するか否かを判定する（ステップS３０２）。このとき、リムーバブルメディアが有効であればリムーバブルメディア上のDiscIDディレクトリを探し、リムーバブルメディアが無効であればBuild-Inメディア上のDiscIDディレクトリを探す。マージ管理情報ファイルもしくは署名情報ファイルが挿入されたDiscIDに対応するDiscIDディレクトリに存在しなければ、仮想パッケージ構築不可と判断する。【０１３９】
ステップS３０２で対応するマージ管理情報ファイル、署名情報ファイルが存在すると判断した場合、マージ管理情報ファイル、署名情報ファイルを読み取り専用属性に変更し（ステップS３０３）、署名情報ファイルを用いて、マージ管理情報ファイルの署名検証を行う（ステップS３０４）。署名検証に失敗すれば、仮想パッケージ構築不可と判断する（ステップS３０５でNo）。【０１４０】
署名検証に成功すれば(ステップS３０５でYes)、マージ管理情報ファイルのファイル格納位置情報に記載されている各ファイルが存在するかどうかのチェックを行い、それらのファイルを読み取り専用属性に変更する（ステップS３０６）。ステップＳ３０７は、変更が成功したか否かの判定である。ファイル格納位置情報に記載されているファイルが全て揃っておらず、仮想パッケージ構築が不可であるならステップＳ３０７はNoとなる。ファイル格納位置情報に記載されているファイルが全て揃っており、かつそれらのファイルの属性を読み取り専用に変更できればステップＳ３０７がYesとなって、仮想パッケージ構築可能と判断する（ステップS３０８）。【０１４１】
図２３はステップS２０３においてユーザにリムーバブルメディアを有効にするかどうかの確認を行う画面表示の一例である。この図では出力画面上及び再生装置上の表示パネルにリムーバブルメディアが挿入されたことを示している。もちろんどちらか一方のみの表示でもよい。
また出力画面上には有効にするか無効にするかの選択ボタンを表示しており、ユーザに対して出力画面上のボタンを選択させるようにしている。これは、あらかじめリモコン上のキーのうち、有効・無効を示すキーを決めておくことで、画面上で選択するのではなく、リモコン上のキーで有効・無効を選択することも考えられる。また、所定の時間を経過してもキー入力がなければ、リムーバブルメディアを有効にする、もしくは無効にするとしてもよい。【０１４２】
再生装置にはリムーバブルメディアを検知したことを示すランプ、リムーバブルメディアが有効であることを示すランプ、リムーバブルメディア上のデータで仮想パッケージ再生中であることを示すランプを備えている。リムーバブルメディアを検知したことを示すランプは、リムーバブルメディアの有効/無効関係なく、リムーバブルメディアが挿入中であれば光ってリムーバブルメディアが挿入中であることを示す。【０１４３】
リムーバブルメディアが有効であることを示すランプはリムーバブルメディアが挿入中でかつ有効であれば光って変化する。仮想パッケージとしてデータが利用中であるかどうかは、このランプには関係ない。
リムーバブルメディア上のデータで仮想パッケージ再生中であることを示すランプは、リムーバブルメディアが挿入中で、かつ有効であり、さらに仮想パッケージとして利用中であれば光って変化する。【０１４４】
ステップS２０３においては、リムーバブルメディアが挿入され、まだ有効化されていない状態であるため、リムーバブルメディアを検知したことを示すランプのみが光る。ステップS２０４でリムーバブルメディアが有効化されると、リムーバブルメディアが有効であることを示すランプが光り、ステップS２０６でリムーバブルメディアを利用して仮想パッケージが構築されると、図２４に示すようにリムーバブルメディア上のデータで仮想パッケージ再生中であることを示すランプが光る。なお、これらの３つのランプは一つのランプにまとめて色を変える、点滅速度を変えるなどして３種類の状態の違いを示すことも考えられる。また、光ランプではなく、再生装置上の表示モニタにこれらの状態を示してもよい。また、この実施例ではリムーバブルメディアの状態を示すものとして光ランプを例に説明しているが、光ランプ以外の表示デバイスを使用してもよい。【０１４５】
図２５は図２１のフローチャートに仮想パッケージとして再生するか否かの問い合わせを加えたフローチャートである。図２１のフローチャートでは、ユーザがリムーバブルメディアを有効にするという選択を行えば、仮想パッケージが構築可能であれば必ず仮想パッケージを構築していた。図２５のフローチャートでは、ステップS４０１を追加し、仮想パッケージを構築するか否かをユーザに問い合わせ、リムーバブルメディアが有効であり、仮想パッケージが構築可能であっても、ユーザの選択によっては仮想パッケージにて再生を行わないようにしている。【０１４６】
ステップS４０１におけるユーザ問い合わせも、ステップS２０３同様、事前に再生装置のユーザ設定で予め「仮想パッケージを優先する」という設定を行っていれば、ステップS４０１によるユーザへの問い合わせは省略して、仮想パッケージを構築しても良い。また、再生装置として「仮想パッケージを優先する」という設定が決まっている場合も同様に、ステップS４０１のユーザへの問い合わせは省略可能である。【０１４７】
図２６はステップS４０１においてユーザにリムーバブルメディアを使った仮想パッケージを有効にするかどうかの確認を行う画面表示の一例である。図２３同様、出力画面上及び再生装置上の表示パネルにリムーバブルメディアが利用可能であることを示しているが、もちろんどちらか一方のみの表示でもよい。
また、出力画面上にはリムーバブルメディアを利用するかどうかの選択ボタンを表示しており、ユーザに対して出力画面上のボタンを選択させるようにしているが、図２３同様、あらかじめリモコン上のキーのうち、利用・拒否を示すキーを決めておくことで、画面上で選択するのではなく、リモコン上のキーで利用・拒否を選択することも考えられる。また、所定の時間を経過してもキー入力がなければ、リムーバブルメディアを利用して仮想パッケージを再生する、もしくはリムーバブルメディアを再生に利用しないとしてもよい。【０１４８】
図２７は再生中にリムーバブルメディアが挿入された場合の処理を示すフローチャートである。再生中にリムーバブルメディアが挿入され、リムーバブルメディアを検知した場合、ユーザに対してリムーバブルメディアが検知されたことを示す表示を行い、リムーバブルメディアを有効にするかどうかの問い合わせを行う（ステップS５０１）。ステップＳ５０２は、この問合せに対する承認があったかどうかを判定するステップである。ユーザがリムーバブルメディアを有効にしないという選択を行えば、リムーバブルメディアを無効にして、そのまま再生を継続する（ステップS５０７）。ユーザがリムーバブルメディアを有効にするという選択を行えば、リムーバブルメディアを有効にし（ステップS５０３）、次にリムーバブルメディアを利用して仮想パッケージが構築可能かの判断を行う（ステップS５０４）。仮想パッケージが構築可能かの判断は図２２に示すフローチャートの処理で決定する。仮想パッケージが構築可能ではないと判断されると（ステップS５０５でNo）、仮想パッケージを構築せず、そのまま再生を継続する。仮想パッケージが構築可能の場合(ステップＳ５０５でYes)、仮想パッケージを構築し（ステップS５０６）、BD-ROMの再生を再起動する。ここでBD-ROMの再起動とは、現在の再生を停止し、仮想パッケージを構築した後に「First  Play」タイトルもしくは「Top  Menu」タイトル、もしくは仮想パッケージ構築前に再生していたタイトルの最初から再生することを指す。【０１４９】
ステップS５０１、５０２における、ユーザへのリムーバブルメディアに有効にするかどうかの問い合わせは、ステップS２０２同様、事前に、再生装置のユーザ設定で予め「リムーバブルメディアを優先する」という設定を行っていれば、ステップS２０３によるユーザへの問い合わせは省略しても良い。また、ステップS５０５で仮想パッケージ構築可能と判断された後、ステップS４０１同様、ユーザへリムーバブルメディアを利用して仮想パッケージを構築するかどうかの問い合わせを行っても良い。【０１５０】
なお、すでにBuild-Inメディア上のデータを利用した仮想パッケージ再生中に、リムーバブルメディアが挿入され、そしてリムーバブルメディアを有効にした場合は、仮想パッケージ構築の有無にかかわらず、一旦BD-ROMの再起動を行ってBuild-Inメディアを無効にしてもよい。
図２８はステップS５０２においてユーザにリムーバブルメディアを有効にするかどうかの確認を行う画面表示の一例である。基本的には図２３で説明した内容と同じであるが、異なる点はすでにAV再生が行われていることである。図２８ではAV再生を一時停止して、ユーザからの入力を待っているが、AV再生を再生しながら、ユーザからの入力を待っていてもよい。【０１５１】
図２９はリムーバブルメディア挿入後、仮想パッケージ構築判断を先に行った後にユーザへの問い合わせを行う処理のフローチャートである。図２７のフローチャートとの違いは、ユーザへの問い合わせの前に仮想パッケージ構築判断を済ませている点である。ステップS５０４は、仮想パッケージが構築可能であるかどうかの判定であり、ステップＳ５０５は、仮想パッケージデータが有効であるか否かの判定である。ステップＳ５０４、S５０５で仮想パッケージ構築不可であり、仮想パッケージデータが有効でないと判断された場合は、ユーザに対してリムーバブルメディアを有効にするかどうかの問い合わせだけを行う(ステップＳ５０１)。【０１５２】
仮想パッケージ構築可であり、仮想パッケージデータが有効であると判断された場合は、ステップＳ５０８においてユーザへ仮想パッケージとしてリムーバブルメディアを利用するかどうかの問い合わせを行い、ステップＳ５０９に移行するステップＳ５０９は、仮想パッケージ構築に、ユーザによる承認がなされたかどうかの判定であり、承認がなされなかった場合、ステップＳ５１０において次にリムーバブルメディアを有効にするかどうかの問い合わせを行う。仮想パッケージとしての利用するとユーザが選択した場合は、リムーバブルメディアを有効にした後、ステップＳ５０６において仮想パッケージの構築を行う。【０１５３】
図３０はリムーバブルメディア有効状態で再生中にリムーバブルメディアが取り出された場合の処理のフローチャートである。リムーバブルメディア有効状態で再生中にリムーバブルメディアが取り出されると（ステップS６０１）、まずリムーバブルメディアを利用した仮想パッケージで再生中かどうかを判断する（ステップS６０２）。仮想パッケージにリムーバブルメディアを利用していなければ、リムーバブルメディアを無効化し（ステップS６０３）、再生を継続する。【０１５４】
リムーバブルメディアを利用した仮想パッケージで再生中であれば、再生を中断し（ステップS６０４）、ユーザに対してリムーバブルメディアが取り出されたことを示す表示を行い、リムーバブルメディアを再挿入して再生を再開するか、再生を停止しリムーバブルメディアなしで再生をやり直すかの問い合わせを行う（ステップS６０５）。ステップＳ６０６は、問合せに対する判定である。再びリムーバブルメディアが挿入されれば、ステップＳ６０７において、中断していた再生を再開する。所定の時間内にリムーバブルメディアが挿入されなかったり、再生を停止するという選択をユーザが行なった場合は、ステップＳ６０８においてリムーバブルメディアを利用せずにBD-ROMの再起動を行う。【０１５５】
なお、ステップS６０３でリムーバブルメディアを無効化した後、もしくはステップS６０５でユーザが再生停止を選択した後は、Build-Inメディアを有効化し、Build-Inメディア上データで仮想パッケージが構築できるかの判断を行っても良い。Build-Inメディア上のデータで仮想パッケージを構築できると判断した場合は、Build-Inメディア上のデータで仮想パッケージを構築し、BD-ROM再起動を行う。また、仮想パッケージを構築可能であれば、Build-Inメディア上のデータで仮想パッケージを構築するかユーザに判断させてもよい。【０１５６】
ステップS６０５は、事前に再生装置のユーザ設定で予め「利用中のリムーバブルメディアが取り出された時は再生を停止する」という設定を行っていれば、ステップS６０５によるユーザへの問い合わせは省略し、現在の再生を停止して、BD-ROMの再起動を行っても良い。また、再生装置として「利用中のリムーバブルメディアが取り出された時は再生を停止する」という設定が決まっている場合も同様に、ステップS６０５のユーザへの問い合わせは省略可能である。なお、再生を停止した後、自動的にBD-ROMの再起動を行わずに、停止したままの状態でユーザからの操作（再生ボタン押下など）を待っていてもよい。【０１５７】
また、リムーバブルメディアが挿入されたときに、リムーバブルメディア上のデータをBuild-Inメディアにコピーして、Build-Inメディア上にコピーされたデータを利用して仮想パッケージを再生することも考えられる。この場合は、リムーバブルメディアは無効状態となっているため、ステップS６０１でリムーバブルメディアが取り出されても、再生が中断されず、リムーバブルメディアが無効と判断され、ステップS６０３に遷移して再生が継続される。【０１５８】
図３１はステップS６０５においてユーザにリムーバブルメディアを再挿入して再生を再開するか、リムーバブルメディアを利用した再生を終了するかどうかの確認を行う画面表示の一例である。この図では出力画面上及び再生装置上の表示パネルにリムーバブルメディアが取り出されたことを示しているが、もちろんどちらか一方のみの表示でもよい。  また出力画面上には再生を終了するかどうかの選択ボタンを表示しており、ユーザに対して出力画面上のボタンを選択させるようにしている。これは、あらかじめリモコン上のキーのうち、終了を示すキーを決めておくことで、画面上で選択するのではなく、リモコン上のキーで終了を選択することも考えられる。また、所定の時間を経過してもキー入力がなければ、再生を終了するとしてもよい。【０１５９】
なお、本実施の形態ではリムーバブルメディア利用中は、リムーバブルメディア有効ランプで、リムーバブルメディア利用中であることをユーザに知らせているが、リムーバブルメディア利用中は物理的に抜けないように保護してもよい。
(備考)
以上、本願の出願時点において、出願人が知り得る最良の実施形態について説明したが、以下に示す技術的トピックについては、更なる改良や変更実施を加えることができる。各実施形態に示した通り実施するか、これらの改良・変更を施すか否かは、何れも任意的であり、実施する者の主観によることは留意されたい。【０１６０】
＜利用できる文字コード＞
各実施形態では、ファイル名、ディレクトリ名、拡張子名がASCIIコードで構成されている一例について説明したが、ファイル名、ディレクトリ名が、ASCIIコード以外の文字コード、つまり、JIS漢字コード、SHIFT-JIS漢字コード、Unicodeで表現されている場合、リムーバブルメディアにおけるファイル名、ディレクトリ名は、３２ビットを１文字当たりのビット長で割ることで得られる文字数に制限される。【０１６１】
Unicodeとは、全世界のほとんどの文字を１６ビットのコードで表現して、1つのコード体系で、多国語処理を可能にしようとするコード体系である。このUnicodeを用いて、ファイル名、ディレクトリ名が表現されているのならば、リムーバブルメディアに記録されるにあたってのファイル名、ディレクトリ名は、２文字以下(＝３２ビット／１６ビット)に制限されることになる。【０１６２】
上記以外にも、ファイル名、ディレクトリ名を表現するための文字コードとして、BIG5キャラクタコード、GB18030-2000キャラクタコード、EUC-KRキャラクタコードを用いてもよい。
＜マージ管理情報ファイルの記載のバリエーション＞
マージ管理情報ファイルでは、インターネットにおけるURLをリムーバブルメディアのファイルパスと対応付けてもよい。【０１６３】
またLAN,WAN等を前提としたディレクトリサービスにおいて、リソースを特定するためのファイルパスを、リムーバブルメディアのファイルパスと対応付けてもよい。例えば、ITU-T勧告のX.500シリーズ勧告によるディレクトリサービスであって、世界的なネームサービスを実現するもののディレクトリ情報をマージ管理情報ファイルに記載し、リムーバブルメディアのファイルパスと対応付けてもよい。【０１６４】
この場合、再生装置のネットワークインターフェイスは、LDAP(Light weight Directory Access Protoocol)をサポートするのが望ましい。LDAPのバージョン３では、UTF-8が適用され、UniCodeをバイト列に置き換えるという変換を実現するので、例えば日本語を用いたファイルパスと、リムーバブルメディアのファイルパスとの対応付けをマージ管理情報ファイル上で実現することができる。【０１６５】
＜再生装置の類型＞
対象となる再生装置は、記録媒体を再生する再生機能のみを持つ再生装置であっても、録画機能をもつ再生装置であってもよい。
＜プログラミング言語のバリエーション＞
上記実施形態では、仮想マシンのプログラミング言語としてJava(TM)を利用したが、Java(TM)ではなく、UNIX(TM)OSなどで使われているB-Shellや、Perl Script、ECMAScriptなど他のプログラミング言語であっても良い。【０１６６】
＜仮想パッケージ生成にあたっての、基本となるデータ＞
各実施形態では、第１の記録媒体の一例としてBD-ROMに記録されたデータに基づき仮想パッケージを構築する場合について説明したが、BD-ROM用データが、リライタブル型記録媒体に記録されているような場合でも、このBD-ROM用データを基にして仮想パッケージを構築してもよい。【０１６７】
ここで、仮想パッケージ生成の対象となるリライタブル型記録媒体にはBD-RやBD-REがある。また、仮想パッケージ生成の対象となる記録媒体は、CD-ROM、CD-R、CD-RW、DVD-ROM、DVD-R、DVD-RW、DVD-RAM、DVD+R、DVD+RW等の他の光ディスクであってもよい。
＜SDメモリカードに対する記録＞
各実施形態で採用した“SDメモリカード”は、消去可能ブロックという単位で書き換えがなされ、また、この書き込みにあたっては、消去可能ブロックの記録内容を消去して、一旦、白紙の状態に戻す必要がある。この消去可能ブロックは、例えば１６Ｋバイトというデータサイズを有しており、その書き換えは、数十万回が限度であるという物理的特性を有している。【０１６８】
一方、FAT形ファイルシステムにおいてファイルは、1つ以上のクラスタから構成される。このクラスタは、１６Ｋバイト、３２Ｋバイト、６４Ｋバイトといったデータサイズを有しておりいるので、またSDメモリカード上のファイルシステムでは、クラスタの境界は、消去可能ブロックの境界と一致させておくことが望ましい。
この場合、“ファイル＝1つ以上のクラスタ＝消去可能ブロック”という関係が成立する訳で、エントリー領域の状態が変化した際、書き換えるべきファイルの数を減らすことは、そのまま消去可能ブロックの書き換え回数を減らすことに直結し、かかる書き換え回数を減らすことで、SDメモリカードの長寿命化を図ることができる。【０１６９】
加えて、図１０に示したファイル、ディレクトリエントリのうちBD-ROM固有のもの、つまり、DiscIDディレクトリのディレクトリエントリや、マージ管理情報ファイル「bumf.xml」、署名情報ファイル「bumf.sf」、追加コンテンツデータファイル「00001.mpl」「mo.bdm」「00001.m2t」は、1つ以上の消去可能ブロック内に丁度収まるよう、記録処理を行うことが望ましい。【０１７０】
このような記録処理により、マージ管理情報ファイルや署名情報ファイル、追加コンテンツデータファイルの更新にあたって、書き換えがなされる消去可能ブロックの数を最小にすることができる。
同じく、Rootディレクトリエントリや二重化FATも、1つ以上の消去可能ブロック内に丁度収まるよう、記録処理を行うことが望ましい。このような記録処理により、追加コンテンツデータファイルの更新にあたって、書き換えがなされる消去可能ブロックの数を最小にすることができる。【０１７１】
＜システムLSI化＞
図５に示した再生装置を構成するハードウェアのうち、機構的な構成要素(BDドライブ１)、大容量のメモリによって実装される構成要素(ビデオプレーン５、グラフィクスプレーン８)を除いた、論理素子を主要部とする部分を、1つのシステムLSIとして構成することが望ましい。何故なら、論理素子を主要部とする部分は、高密度に集積化することができるからである。【０１７２】
システムLSIとは、高密度基板上にベアチップを実装し、パッケージングしたものをいう。複数個のベアチップを高密度基板上に実装し、パッケージングすることにより、あたかも1つのLSIのような外形構造を複数個のベアチップに持たせたものも、システムLSIに含まれる(このようなシステムLSIは、マルチチップモジュールと呼ばれる。)。
ここでパッケージの種別に着目するとシステムLSIには、QFP(クッド フラッド アレイ)、PGA(ピン グリッド アレイ)という種別がある。QFPは、パッケージの四側面にピンが取り付けられたシステムLSIである。PGAは、底面全体に、多くのピンが取り付けられたシステムLSIである。【０１７３】
これらのピンは、他の回路とのインターフェイスとしての役割を担っている。システムLSIにおけるピンには、こうしたインターフェイスの役割が存在するので、システムLSIにおけるこれらのピンに、他の回路を接続することにより、システムLSIは、再生装置の中核としての役割を果たす。
かかるシステムLSIは、再生装置は勿論のこと、TVやゲーム、パソコン、ワンセグ携帯等、映像再生を扱う様々な機器に組込みが可能であり、本発明の用途を多いに広げることができる。【０１７４】
上述したようなシステムLSIは、再生装置の機能を実現するものなので、システムLSIは、Uniphierアーキテクチャに準拠させるのが望ましい。
Uniphierアーキテクチャに準拠したシステムLSIは、以下の回路ブロックから構成される。
・データ並列プロセッサDPP
これは、複数の要素プロセッサが同一動作するSIMD型プロセッサであり、各要素プロセッサに内蔵されている演算器を、1つの命令で同時動作させることで、ピクチャを構成する複数画素に対するデコード処理の並列化を図る。【０１７５】
・命令並列プロセッサIPP
これは、命令RAM、命令キャッシュ、データRAM、データキャッシュからなる「Local Memory Contoroller」、命令フェッチ部、デコーダ、実行ユニット、レジスタファイルからなる「Processing Unit部」、複数アプリケーションの並列実行をProcessing Unit部に行わせる「Virtual Multi Processor Unit部」で構成される。【０１７６】
・CPUブロック
これは、ARMコア、外部バスインターフェイス(Bus Control Unit:BCU)、DMAコントローラ、タイマー、ベクタ割込コントローラといった周辺回路、UART、GPIO(General Purpose Input Output)、同期シリアルインターフェイスなどの周辺インターフェイスで構成される。先に述べたコントローラは、このCPUブロックとしてシステムLSIに実装される。【０１７７】
・ストリームI/Oブロック
これは、USBインターフェイスやATA Packetインターフェイスを介して、外部バス上に接続されたドライブ装置、ハードディスクドライブ装置、SDメモリカードドライブ装置とのデータ入出力を行う。
・AVI/Oブロック
これは、オーディオ入出力、ビデオ入出力、OSDコントローラで構成され、テレビ、AVアンプとのデータ入出力を行う。【０１７８】
・メモリ制御ブロック
これは、外部バスを介して接続されたSD-RAMの読み書きを実現するブロックであり、各ブロック間の内部接続を制御する内部バス接続部、システムLSI外部に接続されたSD-RAMとのデータ転送を行うアクセス制御部、各ブロックからのSD-RAMのアクセス要求を調整するアクセススケジュール部からなる。【０１７９】
具体的な生産手順の詳細は以下のものになる。まず各実施形態に示した構成図を基に、システムLSIとすべき部分の回路図を作成し、回路素子やIC,LSIを用いて、構成図における構成要素を具現化する。
そうして、各構成要素を具現化してゆけば、回路素子やIC,LSI間を接続するバスやその周辺回路、外部とのインターフェイス等を規定する。更には、接続線、電源ライン、グランドライン、クロック信号線等も規定してゆく。この規定にあたって、LSIのスペックを考慮して各構成要素の動作タイミングを調整したり、各構成要素に必要なバンド幅を保証する等の調整を加えながら、回路図を完成させてゆく。【０１８０】
回路図が完成すれば、実装設計を行う。実装設計とは、回路設計によって作成された回路図上の部品(回路素子やIC,LSI)を基板上のどこへ配置するか、あるいは、回路図上の接続線を、基板上にどのように配線するかを決定する基板レイアウトの作成作業である。
こうして実装設計が行われ、基板上のレイアウトが確定すれば、実装設計結果をCAMデータに変換して、NC工作機械等の設備に出力する。NC工作機械は、このCAMデータを基に、SoC実装やSiP実装を行う。SoC(System on chip)実装とは、1チップ上に複数の回路を焼き付ける技術である。SiP(System in Package)実装とは、複数チップを樹脂等で1パッケージにする技術である。以上の過程を経て、本発明に係るシステムLSIは、各実施形態に示した再生装置の内部構成図を基に作ることができる。【０１８１】
尚、上述のようにして生成される集積回路は、集積度の違いにより、IC、LSI、スーパーLSI、ウルトラLSIと呼称されることもある。
FPGAを用いてシステムLSIを実現した場合は、多数のロジックエレメントが格子状に配置されており、LUT(Look Up Table)に記載されている入出力の組合せに基づき、縦・横の配線をつなぐことにより、各実施形態に示したハードウェア構成を実現することができる。LUTは、SRAMに記憶されており、かかるSRAMの内容は、電源断により消滅するので、かかるFPGAの利用時には、コンフィグ情報の定義により、各実施形態に示したハードウェア構成を実現するLUTを、SRAMに書き込ませる必要がある。
【産業上の利用可能性】
【０１８２】
本発明を構成する再生装置は、各実施形態に示した内部構成を用いて工業的に生産することができるので、製造産業において利用される可能性がある。
【図１】
2008099647.tif 000003
【図２】
2008099647.tif 000004
【図３】
2008099647.tif 000005
【図４】
2008099647.tif 000006
【図５】
2008099647.tif 000007
【図６】
2008099647.tif 000008
【図７】
2008099647.tif 000009
【図８】
2008099647.tif 000010
【図９】
2008099647.tif 000011
【図１０】
2008099647.tif 000012
【図１１】
2008099647.tif 000013
【図１２】
2008099647.tif 000014
【図１３】
2008099647.tif 000015
【図１４】
2008099647.tif 000016
【図１５】
2008099647.tif 000017
【図１６】
2008099647.tif 000018
【図１７】
2008099647.tif 000019
【図１８】
2008099647.tif 000020
【図１９】
2008099647.tif 000021
【図２０】
2008099647.tif 000022
【図２１】
2008099647.tif 000023
【図２２】
2008099647.tif 000024
【図２３】
2008099647.tif 000025
【図２４】
2008099647.tif 000026
【図２５】
2008099647.tif 000027
【図２６】
2008099647.tif 000028
【図２７】
2008099647.tif 000029
【図２８】
2008099647.tif 000030
【図２９】
2008099647.tif 000031
【図３０】
2008099647.tif 000032
【図３１】
2008099647.tif 000033
【手続補正書】
【提出日】平成20年7月23日(2008.7.23)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
第１のファイルシステム形式に準拠したファイルパスおよびファイル名を用いてファイルを配置した第１の記録媒体又は前記第１のファイルシステム形式とは異なるファイルシステム形式であって、第２のファイルシステム形式に準拠したファイルパスおよびファイル名を用いてファイルを配置した第２の記録媒体に記録されたファイルに基づく再生処理を行う再生装置であって、
アプリケーションプログラムが、前記第１の記録媒体における第１のファイルシステム形式のファイルパスを用いたファイルアクセスを要求した場合、前記第２の記録媒体に記録されているファイルであって、当該第１のファイルシステム形式のファイルパスを用いたファイルアクセスの要求に応じてアクセスすることができるファイルをサーチするサーチ手段と、
前記ファイルパスにてアクセスできるファイルが存在する場合、当該ファイルを前記第２の記録媒体から読み出す読出手段とを備え、
前記サーチ手段によるサーチは、前記アプリケーションプログラムが前記第１のファイルシステムの形式を用いてアクセスを要求したファイルへのファイルパスを前記第２のファイルシステムの形式に準拠したファイルパスに変換するための参照情報に基づいてなされ、
前記参照情報は、前記第２の記録媒体に記録されており、前記第１の記録媒体における第１のファイルシステムの形式のファイルパスと、前記第１のファイルシステムの形式のファイルパスに対応付けられた前記第２の記録媒体における第２のファイルシステムの形式のファイルパスを示すことにより、前記第１のファイルシステム形式に準拠するファイルパスを用いたファイルアクセスの要求に応じてアクセスすることができる前記第２の記録媒体に記録されたファイルを示し、
前記第２の記録媒体は、再生装置からの取り外しが可能なリムーバブル型記録媒体であり、
前記第１の記録媒体の管理情報に含まれる複数の識別子のうち、その長さが前記第２のファイルシステム形式に準拠しない識別子については、前記第２のファイルシステム形式に準拠する長さに分割し、前記分割した識別子およびその長さが前記第２のファイルシステム形式に準拠する識別子を用いて前記リムーバブル型記録媒体におけるファイルへのファイルパスを構成し、前記構成したファイルパスを用いて前記リムーバブル型記録媒体におけるファイルが特定される
ことを特徴とする再生装置。
【請求項２】
前記リムーバブル型記録媒体のファイルシステムの形式とは、ディレクトリ名、及び、ファイル名を８文字以下に制限し、前記ファイル名の拡張子を３文字以下に制限した８．３形式である
ことを特徴とする請求項１記載の再生装置。
【請求項３】
前記第１の記録媒体の管理情報に含まれる複数の識別子とは、
前記第１の記録媒体の管理情報に含まれる組織の識別子、媒体の識別子であり、
更に前記第１の記録媒体は証明書を含み、
前記リムーバブル型記録媒体には、
前記証明書から算出される前記証明書の識別子に対応するディレクトリ、前記組織の識別子に対応するディレクトリ、前記媒体の識別子に対応するディレクトリセットが存在し、
前記組織の識別子に対応するディレクトリは、前記証明書の識別子に対応するディレクトリの下位に存在し、
前記媒体の識別子に対応するディレクトリセットは、前記組織の識別子に対応するディレクトリの下位に存在し、
前記媒体の識別子に対応するディレクトリセットは、前記媒体の識別子の長さを前記第２のファイルシステム形式に準拠する長さに分割し、前記分割した識別子をそれぞれ用いて構成した階層構造を有する複数のサブディレクトリであり、
前記参照情報及びファイルは、
前記階層化された複数のサブディレクトリのうち、最下層にあたるサブディレクトリに配置されている、請求項１記載の再生装置。
【請求項４】
前記媒体の識別子に対応するディレクトリセットは、４つのサブディレクトリに階層化されており、
前記第１の記録媒体に付加された媒体の識別子は、最大３２文字の文字列であり、
前記媒体の識別子に対応するディレクトリセットを構成するサブディレクトリのそれぞれには、前記媒体の識別子を構成する最大３２文字の文字列を４分割することで得られた、８文字以下のディレクトリ名が付加されている、請求項３記載の再生装置
【請求項５】
前記媒体の識別子には、上位の桁が０（ゼロ）になっているものがあり、
当該媒体の識別子に対応するディレクトリセットをサブディレクトリには０（ゼロ）の数字がディレクトリ名として付与されているものがあり、
前記アプリケーションプログラムは、０（ゼロ）を省略した形式のファイルパスを読出手段に出力することで、前記媒体の識別子に対応するディレクトリセットを構成するサブディレクトリに存在する、参照情報の取得を読出手段に命じ、
前記読出手段は、０（ゼロ）を省略した形式のファイルパスを、前記リムーバブル型記録媒体のファイルパスに変換して、変換後のファイルパスに基づき、前記参照情報の取得を行う
ことを特徴とする請求項４記載の再生装置。
【請求項６】
前記第１の記録媒体のファイルパスは、
２５５文字以下に制限されたディレクトリ名、及び、ファイル名を用いて表現されたファイルパスである請求項１記載の再生装置。
【請求項７】
前記サーチ手段によるサーチは、
前記第１の記録媒体における前記第１のファイルシステムの形式を用いたファイルパスを前記アプリケーションプログラムから受け付けて、前記第１のファイルシステムの形式を用いたファイルパスに対応するリムーバブル型記録媒体のファイルパスが前記参照情報に記述されているか否かを判定する処理を含み、
前記アプリケーションプログラムからのファイルアクセスの要求に係る前記第１の記録媒体のファイルパスからアクセスすることができるファイルが、前記参照情報に存在しない場合、前記第１のファイルシステムの形式を用いたファイルパスから所在を特定することができる、第１の記録媒体におけるファイルを読み出す
ことを特徴とする請求項１記載の再生装置。
【請求項８】
第１のファイルシステム形式に準拠したファイルパスおよびファイル名を用いてファイルを配置した第１の記録媒体又は前記第１のファイルシステム形式とは異なるファイルシステム形式であって、第２のファイルシステム形式に準拠したファイルパスおよびファイル名を用いてファイルを配置した第２の記録媒体に記録されたファイルに基づく再生処理を行うシステムＬＳＩであって、
アプリケーションプログラムが、前記第１の記録媒体における第１のファイルシステム形式のファイルパスを用いたファイルアクセスを要求した場合、前記第２の記録媒体に記録されているファイルであって、当該第１のファイルシステム形式のファイルパスを用いたファイルアクセスの要求に応じてアクセスすることができるファイルをサーチするサーチ手段と、
前記ファイルパスにてアクセスできるファイルが存在する場合、当該ファイルを前記第２の記録媒体から読み出す読出手段とを備え、
前記サーチ手段によるサーチは、前記アプリケーションプログラムが前記第１のファイルシステムの形式を用いてアクセスを要求したファイルへのファイルパスを前記第２のファイルシステムの形式に準拠したファイルパスに変換するための参照情報に基づいてなされ、
前記参照情報は、前記第２の記録媒体に記録されており、前記第１の記録媒体における第１のファイルシステムの形式のファイルパスと、前記第１のファイルシステムの形式のファイルパスに対応付けられた前記第２の記録媒体における第２のファイルシステムの形式のファイルパスを示すことにより、前記第１のファイルシステム形式に準拠するファイルパスを用いたファイルアクセスの要求に応じてアクセスすることができる前記第２の記録媒体に記録されたファイルを示し、
前記第２の記録媒体は、再生装置からの取り外しが可能なリムーバブル型記録媒体であり、
前記第１の記録媒体の管理情報に含まれる複数の識別子のうち、その長さが前記第２のファイルシステム形式に準拠しない識別子については、前記第２のファイルシステム形式に準拠する長さに分割し、前記分割した識別子およびその長さが前記第２のファイルシステム形式に準拠する識別子を用いて前記リムーバブル型記録媒体におけるファイルへのファイルパスを構成し、前記構成したファイルパスを用いて前記リムーバブル型記録媒体におけるファイルが特定される
ことを特徴とするシステムＬＳＩ。
【請求項９】
第１のファイルシステム形式に準拠したファイルパスおよびファイル名を用いてファイルを配置した第１の記録媒体又は前記第１のファイルシステム形式とは異なるファイルシステム形式であって、第２のファイルシステム形式に準拠したファイルパスおよびファイル名を用いてファイルを配置した第２の記録媒体に記録されたファイルに基づく再生処理をコンピュータ上で行う再生方法であって、
アプリケーションプログラムが、前記第１の記録媒体における第１のファイルシステム形式のファイルパスを用いたファイルアクセスを要求した場合、前記第２の記録媒体に記録されているファイルであって、当該第１のファイルシステム形式のファイルパスを用いたファイルアクセスの要求に応じてアクセスすることができるファイルをサーチするサーチステップと、
前記ファイルパスにてアクセスできるファイルが存在する場合、当該ファイルを前記第２の記録媒体から読み出す読出ステップとを備え、
前記サーチステップによるサーチは、前記アプリケーションプログラムが前記第１のファイルシステムの形式を用いてアクセスを要求したファイルへのファイルパスを前記第２のファイルシステムの形式に準拠したファイルパスに変換するための参照情報に基づいてなされ、
前記参照情報は、前記第２の記録媒体に記録されており、前記第１の記録媒体における第１のファイルシステムの形式のファイルパスと、前記第１のファイルシステムの形式のファイルパスに対応付けられた前記第２の記録媒体における第２のファイルシステムの形式のファイルパスを示すことにより、前記第１のファイルシステム形式に準拠するファイルパスを用いたファイルアクセスの要求に応じてアクセスすることができる前記第２の記録媒体に記録されたファイルを示し、
前記第２の記録媒体は、コンピュータからの取り外しが可能なリムーバブル型記録媒体であり、
前記第１の記録媒体の管理情報に含まれる複数の識別子のうち、その長さが前記第２のファイルシステム形式に準拠しない識別子については、前記第２のファイルシステム形式に準拠する長さに分割し、前記分割した識別子およびその長さが前記第２のファイルシステム形式に準拠する識別子を用いて前記リムーバブル型記録媒体におけるファイルへのファイルパスを構成し、前記構成したファイルパスを用いて前記リムーバブル型記録媒体におけるファイルが特定される
ことを特徴とする再生方法。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】０００３
【補正方法】変更
【補正の内容】
【０００３】
様々なＢＤ−ＲＯＭが装填されることが考えられる。そのような状況下において、パソコンが、短縮したファイル名やディレクトリ名を勝手に付与して、追加データを格納したファイルをリムーバブル型記録媒体に記録した上で再生装置に供給すれば、当該リムーバブル型記録媒体中のファイルが、どのリードオンリー型記録媒体に対応するのかという対応が、一層不明確になり、正しく仮想パッケージを構築することは期待できなくなる。
［０００９］
本発明の目的は、リムーバブル型記録媒体におけるファイル名、ディレクトリ名の文字数が制限されていたとしても、リムーバブル型記録媒体に記録されているファイルを正しく利用して仮想パッケージを構築することができる再生装置を提供することである。
課題を解決するための手段
［００１０］
上記課題を解決するため、本発明にかかる再生装置は、第１のファイルシステム形式に準拠したファイルパスおよびファイル名を用いてファイルを配置した第１の記録媒体又は前記第１のファイルシステム形式とは異なるファイルシステム形式であって、第２のファイルシステム形式に準拠したファイルパスおよびファイル名を用いてファイルを配置した第２の記録媒体に記録されたファイルに基づく再生処理を行う再生装置であって、アプリケーションプログラムが、前記第１の記録媒体における第１のファイルシステム形式のファイルパスを用いたファイルアクセスを要求した場合、前記第２の記録媒体に記録されているファイルであって、当該第１のファイルシステム形式のファイルパスを用いたファイルアクセスの要求に応じてアクセスすることができるファイルをサーチするサーチ手段と、前記ファイルパスにてアクセスできるファイルが存在する場合、当該ファイルを前記第２の記録媒体から読み出す読出手段とを備え、
前記サーチ手段によるサーチは、前記アプリケーションプログラムが前記第１のファイルシステムの形式を用いてアクセスを要求したファイルへのファイルパスを前記第２のファイルシステムの形式に準拠したファイルパスに変換するための参照情報に基づいてなされ、前記参照情報は、前記第２の記録媒体に記録されており、前記第１の記録媒体における第１のファイルシステムの形式のファイルパスと、前記第１のファイルシステムの形式のファイルパスに対応付けられた前記第２の記録媒体における第２のファイルシステムの形式のファイルパスを示すことにより、前記第１のファイルシステム形式に準拠するファイルパスを用いたファイルアクセスの要求に応じてアクセスすることができる前記第２の記録媒体に記録されたファイルを示し、
前記第２の記録媒体は、再生装置からの取り外しが可能なリムーバブル型記録媒体であり、
前記第１の記録媒体の管理情報に含まれる複数の識別子のうち、その長さが前記第２のファイルシステム形式に準拠しない識別子については、前記第２のファイルシステム形式に準拠する長さに分割し、前記分割した識別子およびその長さが前記第２のファイルシステム形式に準拠する識別子を用いて前記リムーバブル型記録媒体におけるファイルへのファイルパスを構成し、前記構成したファイルパスを用いて前記リムーバブル型記録媒体におけるファイルが特定されることを特徴としている。
発明の効果
［００１１］
上述したように、上記再生装置における参照情報には、第２の記録媒体であるリムーバブル型記録媒体におけるファイルパスと、第１の記録媒体におけるファイルパス
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】０００５
【補正方法】変更
【補正の内容】
【０００５】
［００１６］
前記リムーバブル型記録媒体のファイルシステムの形式とは、ディレクトリ名、及び、ファイル名を８文字以下に制限し、前記ファイル名の拡張子を３文字以下に制限した８．３形式である。
リムーバブル型記録媒体のファイルシステムが、いわゆるＦＡＴ型ファイルシステムであり、ディレクトリ名、ファイル名が厳しく制限されていたとしても、第１の記録媒体のファイルパスを用いた別名でのファイルアクセスを実行することができる。
［００１７］
また、任意的であるが、上述した再生装置の発明特定事項に、以下の発明特定事項を加え、再生装置を具体的な構成にすることにより、更なる効果をもたらすことができる。
前記第１の記録媒体の管理情報に含まれる複数の識別子とは、
前記第１の記録媒体の管理情報に含まれる組織の識別子、媒体の識別子であり、
更に前記第１の記録媒体は証明書を含み、
前記リムーバブル型記録媒体には、
前記証明書から算出される前記証明書の識別子に対応するディレクリ、前記組織の識別子に対応するディレクトリ、前記媒体の識別子に対応するディレクトリセットが存在し、
前記組織の識別子に対応するディレクトリは、前記証明書の識別子に対応するディレクトリの下位に存在し、
前記媒体の識別子に対応するディレクトリセットは、前記組織の識別子に対応するディレクトリの下位に存在し、
前記媒体の識別子に対応するディレクトリセットは、前記媒体の識別子の長さを前記第２のファイルシステム形式に準拠する長さに分割し、前記分割した識別子をそれぞれ用いて構成した階層構造を有する複数のサブディレクトリであり、
前記参照情報及びファイルは、
前記階層化された複数のサブディレクトリのうち、最下層にあたるサブディレクトリに配置されている。
［００１８］
仮想パッケージの構築にあたって、第１の記録媒体に付加された証明書の識別子、組織の識別子、媒体の識別子を用いた認証を実現する場合であっても、これらの識別子と、厳密に対応をとる形で、ファイルはリムーバブル型記録媒体に記録されることになる。そのため、たとえユーザが多くの第１の記録媒体を所持していて、それら
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】０００６
【補正方法】変更
【補正の内容】
【０００６】
の第１の記録媒体が頻繁に差し替えられたとしても、正しい第１の記録媒体が再生装置に装填されている場合のみ、第１の記録媒体のファイルパスを用いた別名でのファイルアクセスが実現されて、仮想パッケージが構築されることになる。
［００１９］
また、任意的であるが、上述した再生装置の発明特定事項に、以下の発明特定事項を加え、再生装置を具体的な構成にすることにより、更なる効果をもたらすことができる。
前記媒体の識別子に対応するディレクトリセットは、４つのサブディレクトリに階層化されており、
前記第１の記録媒体に付加された媒体の識別子は、最大３２文字の文字列であり、
前記媒体の識別子に対応するディレクトリセットを構成するサブディレクトリのそれぞれには、前記媒体の識別子を構成する最大３２文字の文字列を４分割することで得られた、８文字以下のディレクトリ名が付加されている。
［００２０］
第１の記録媒体固有の媒体識別子のビット長が、長いものであったとしても、かかる識別子を構成する文字のうち、意味のあるものを省略することなく、第１の記録媒体固有の媒体識別子と、リムーバブル型記録媒体上のディレクトリとの対応を図るので、リムーバブル型記録媒体におけるディレクトリは、第１の記録媒体固有の媒体識別子と厳密に対応がとれたものとなる。
［００２１］
また、任意的であるが、上述した再生装置の発明特定事項に、以下の発明特定事項を加え、再生装置を具体的な構成にすることにより、更なる効果をもたらすことができる。
前記媒体の識別子には、上位の桁が０（ゼロ）になっているものがあり、
当該媒体の識別子に対応するディレクトリセットをサブディレクトリには、０（ゼロ）の数字がディレクトリ名として付与されているものがあり、
前記アプリケーションプログラムは、０（ゼロ）を省略した形式のファイルパスを読出手段に出力することで、前記媒体の識別子に対応するディレクトリセットを構成するサブディレクトリに存在する、参照情報の取得を読出手段に命じ、
【手続補正５】
【補正対象書類名】明細書
【補正対象項目名】０００７
【補正方法】変更
【補正の内容】
【０００７】
前記読出手段は、０（ゼロ）を省略した形式のファイルパスを、前記リムーバブル型記録媒体のファイルパスに変換して、変換後のファイルパスに基づき、前記参照情報の取得を行う。
［００２２］
アプリケーションは、０（ゼロ）の上位桁を省略したファイルパスを用いて、媒体固有の媒体識別子に対応するディレクトリセットをアクセスすることができるので、Ｉ／Ｏ処理を簡潔に行うことができる。
・また、任意的であるが、上述した再生装置の発明特定事項に、以下の発明特定事項を加え、再生装置を具体的な構成にすることにより、更なる効果をもたらすことができる。
［００２３］
前記第１の記録媒体のファイルパスは、２５５文字以下に制限されたディレクトリ名、及び、ファイル名を用いて表現されたファイルパスである。
アプリケーションは、最大２５５文字のファイル名、最大２５５文字のディレクトリ名を用いて、第１の記録媒体のファイルパスを用いた別名でのファイルアクセスを実行することができるので、アプリケーションは、パソコンのプラットフォーム上で動作する場合と、同じファイルパスを用いて、リムーバブル型記録媒体上のファイルをアクセスすることができる。
［００２４］
また、任意的であるが、上述した再生装置の発明特定事項に、以下の発明特定事項を加え、再生装置を具体的な構成にすることにより、更なる効果をもたらすことができる。
前記サーチ手段によるサーチは、
前記第１の記録媒体における前記第１のファイルシステムの形式を用いたファイルパスを前記アプリケーションプログラムから受け付けて、前記第１のファイルシステムの形式を用いたファイルパスに対応するリムーバブル型記録媒体のファイルパスが前記参照情報に記述されているか否かを判定する処理を含み、
前記アプリケーションプログラムからのファイルアクセスの要求に係る前記第１の記録媒体のファイルパスからアクセスすることができるファイルが、前記参照情報に存在しない場合、前記第１のファイルシステムの形式を用いたファイルパスから所在を特定することができる、第１の記録媒体におけるファイルを読み出す。
【手続補正書】
【提出日】平成21年7月13日(2009.7.13)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【書類名】明細書
【発明の名称】再生装置、システムLSI及び再生方法
【技術分野】
【０００１】
本発明は、仮想パッケージの技術分野に属する発明である。
【背景技術】
【０００２】
仮想パッケージとは、BD-ROM等のリードオンリー型の記録媒体に記録されているデータと、ハードディスク等のリライタブル型の記録媒体に記録されているデータとを動的に組み合わせて、仮想的なパッケージを構築することにより、リードオンリー型記録媒体の内容拡張を図る技術である。このような技術では、書き換え可能なハードディスクに記録しているデータを更新することで、BD-ROMを頒布した後も、作品内容の変更の余地を残すことができる。例えば、映画作品のプロバイダは、作品本編を記録したBD-ROMを頒布した後も、公開前の他の作品の予告編デジタルストリームをネットワークを介して提供することで、BD-ROMの頒布時期にかかわらず、ユーザに対して常に最新の作品を宣伝することが出来る。
【０００３】
仮想パッケージについての先行技術としては、以下の特許文献１、２、３に記載されているものがある。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００６-１０９４９４号公報
【特許文献２】特開２００７-２０２１１号公報
【特許文献３】特開２００６-３３０６７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ところで、仮想パッケージ構築のための追加版となるデータを、ダウンロードで取得するにあたって、追加データを格納したファイルの格納先は、再生装置に内蔵されたハードディスクが選ばれるのが一般的である。ところがダウンロードが再生装置以外のパソコン等を用いて行われる場合、様々なリムーバブル型記録媒体が、ダウンロードの格納先に選ばれることがある。ここで、リムーバブル型記録媒体とは、SDメモリーカード、メモリースティック、コンパクトフラッシュ(登録商標)、スマートメディア、マルチメディアカード等、可搬性がある記録媒体である。パソコンでダウンロードしたファイルをリムーバブル型記録媒体に書き込んで、このリムーバブル型記録媒体を再生装置に装着することで、仮想パッケージを再生するような利用形態は、今後増えると予想される。
【０００６】
BD-ROMに記録されたデータの追加版にあたるデータを、パソコンでダウンロードしてリムーバブル型記録媒体に記録する場合を考える。BD-ROMに記録されたファイルは、Long File Name(LFN)形式が採用されているので、１０文字、２０文字といったファイル名や、５文字、６文字といった拡張子名をもつ。しかし、リムーバブル型記録媒体に記録するにあたっては、ファイル名が最大８文字、ディレクトリ名が最大８文字、拡張子が最大３文字に制限されることが多い。これは、リムーバブル型記録媒体におけるファイルシステムからの制限である。
【０００７】
リムーバブル型記録媒体には、かかる制限があるため、追加版にあたるデータを格納したファイルに、BD-ROMにおけるファイル名と同様のファイル名を付与する訳にはいかない。ここで、短かく省略したファイル名を付けて、リムーバブル型記録媒体に記録することが考えられるが、ユーザが自分の都合のために勝手な省略を採用すれば、８文字以下のファイル名のファイルのどれが、LFNのファイル名に関連しているかの対応がとれない。
【０００８】
特に、BD-ROM規格の場合、LFNのディレクトリ名を構成する文字やファイル名を構成する文字は、特定の意味をもっていることが多い。また、構成する全ての文字が揃っていないと、他の記録媒体との混同が生じたり、著作権保護のための暗号化、復号化処理、認証処理が正常に行えないこともある。たとえリムーバブル型記録媒体への記録のためとはいえ、一部の文字を省略したようなファイル名を採用することは、規格における互換性に支障を招く恐れや、似たような記録媒体との混同を招く恐れ、著作権保護のための暗号化処理、復号化処理、認証処理に支障を招く恐れがある。
【０００９】
従って、リムーバブル型記録媒体がパソコンから取り出されて再生装置に装填された際、対応する追加データを格納したファイルをリムーバブル型記録媒体から取り出すことができず、仮想パッケージの生成が不可能になる恐れがある。
また、ユーザが視聴しようとするBD-ROMは、通常、一枚とは限らず、再生装置には、様々なBD-ROMが装填されることが考えられる。そのような状況下において、パソコンが、短縮したファイル名やディレクトリ名を勝手に付与して、追加データを格納したファイルをリムーバブル型記録媒体に記録した上で再生装置に供給すれば、当該リムーバブル型記録媒体中のファイルが、どのリードオンリー型記録媒体に対応するのかという対応が、一層不明確になり、正しく仮想パッケージを構築することは期待できなくなる。
【００１０】
本発明の目的は、リムーバブル型記録媒体におけるファイル名、ディレクトリ名の文字数が制限されていたとしても、リムーバブル型記録媒体に記録されているファイルを正しく利用して仮想パッケージを構築することができる再生装置を提供することである。
【課題を解決するための手段】
【００１１】
上記課題を解決するため、本発明にかかる再生装置は、第１のファイルシステム形式に準拠したファイルパスおよびファイル名を用いてファイルを配置した第１の記録媒体又は前記第１のファイルシステム形式とは異なるファイルシステム形式であって、第２のファイルシステム形式に準拠したファイルパスおよびファイル名を用いてファイルを配置した第２の記録媒体に記録されたファイルに基づく再生処理を行う再生装置であって、アプリケーションプログラムが、前記第１の記録媒体における第１のファイルシステム形式のファイルパスを用いたファイルアクセスを要求した場合、前記第２の記録媒体に記録されているファイルであって、当該第１のファイルシステム形式のファイルパスを用いたファイルアクセスの要求に応じてアクセスすることができるファイルをサーチするサーチ手段と、前記ファイルパスにてアクセスできるファイルが存在する場合、当該ファイルを前記第２の記録媒体から読み出す読出手段とを備え、
前記サーチ手段によるサーチは、前記アプリケーションプログラムが前記第１のファイルシステムの形式を用いてアクセスを要求したファイルへのファイルパスを前記第２のファイルシステムの形式に準拠したファイルパスに変換するための参照情報に基づいてなされ、前記参照情報は、前記第２の記録媒体に記録されており、前記第１の記録媒体における第１のファイルシステムの形式のファイルパスと、前記第１のファイルシステムの形式のファイルパスに対応付けられた前記第２の記録媒体における第２のファイルシステムの形式のファイルパスを示すことにより、前記第１のファイルシステム形式に準拠するファイルパスを用いたファイルアクセスの要求に応じてアクセスすることができる前記第２の記録媒体に記録されたファイルを示し、
前記第２の記録媒体は、再生装置からの取り外しが可能なリムーバブル型記録媒体であり、
前記第１の記録媒体の管理情報に含まれる複数の識別子のうち、その長さが前記第２のファイルシステム形式に準拠しない識別子については、前記第２のファイルシステム形式に準拠する長さに分割し、前記分割した識別子およびその長さが前記第２のファイルシステム形式に準拠する識別子を用いて前記リムーバブル型記録媒体におけるファイルへのファイルパスを構成し、前記構成したファイルパスを用いて前記リムーバブル型記録媒体におけるファイルが特定されることを特徴としている。
【発明の効果】
【００１２】
上述したように、上記再生装置における参照情報には、第２の記録媒体であるリムーバブル型記録媒体におけるファイルパスと、第１の記録媒体におけるファイルパスとの対応がとられているため、この参照情報を参照して、リムーバブル型記録媒体におけるファイルをアクセスすれば、たとえリムーバブル型記録媒体におけるディレクトリ名、ファイル名が８文字以下に制限されていたとしても、リムーバブル型記録媒体から正しい追加のデータを読み出すことができる。
【００１３】
リムーバブル型記録媒体に記録されているファイルが、どの第１の記録媒体に対応しているかは、このリムーバブル型記録媒体におけるファイルパスを参照することで、判別することができる。従って、たとえ様々な第１の記録媒体が再生装置に装填されたとしても、リムーバブル型記録媒体中のファイルに対応する第１の記録媒体が、再生装置に装填されている場合のみ、参照情報を参照したファイルアクセスを実現するよう制限を課すことができる。
【００１４】
パソコンが、短縮したファイル名やディレクトリ名を付与した上でファイルをリムーバブル型記録媒体に記録して、当該リムーバブル型記録媒体を再生装置に供給したとしても、再生装置側では、リムーバブル型記録媒体中のファイルが、どの第１の記録媒体に対応するのかという対応を正しくとってから、仮想パッケージを構築することができる。リムーバブル型記録媒体中のファイルに対応する第１の記録媒体が、正しく装填されている場合のみ、仮想パッケージを構築するという制限を課すことが可能なので、仮想パッケージの利用範囲が大きく広がるという可能性がある。
【００１５】
尚、予め断っておくが、本明細書で述べる文字とは、ASCII文字のことであり、１文字当たりのビット長は、４ビットとなる。ASCIIコードとは、128種類の英文字、数字、記号を７ビットで表現したコンピュータ用のコード体系である。従って、ファイル名、ディレクトリ名はそれぞれ、８文字(＝３２ビット／４ビット)以下に制限され、拡張子名は３文字(＝１２ビット／４ビット)以下に制限されることになる。
【００１６】
仮にJISコード等、１文字当たりのビット数が異なる文字を採用する場合、リムーバブル型記録媒体におけるファイル名、ディレクトリ名はそれぞれ、３２ビットを、１文字当たりのビット長で割った文字数以下に制限される。
・また、任意的であるが、上述した再生装置の発明特定事項に、以下の発明特定事項を加え、再生装置を具体的な構成にすることにより、更なる効果をもたらすことができる。
【００１７】
前記リムーバブル型記録媒体のファイルシステムの形式とは、ディレクトリ名、及び、ファイル名を８文字以下に制限し、前記ファイル名の拡張子を３文字以下に制限した８.３形式である
リムーバブル型記録媒体のファイルシステムが、いわゆるFAT型ファイルシステムであり、ディレクトリ名、ファイル名が厳しく制限されていたとしても、第１の記録媒体のファイルパスを用いた別名でのファイルアクセスを実行することができる。
【００１８】
・また、任意的であるが、上述した再生装置の発明特定事項に、以下の発明特定事項を加え、再生装置を具体的な構成にすることにより、更なる効果をもたらすことができる。
前記第１の記録媒体の管理情報に含まれる複数の識別子とは、
前記第１の記録媒体の管理情報に含まれる組織の識別子、媒体の識別子であり、
更に前記第１の記録媒体は証明書を含み、
前記リムーバブル型記録媒体には、
前記証明書から算出される前記証明書の識別子に対応するディレクトリ、前記組織の識別子に対応するディレクトリ、前記媒体の識別子に対応するディレクトリセットが存在し、
前記組織の識別子に対応するディレクトリは、前記証明書の識別子に対応するディレクトリの下位に存在し、
前記媒体の識別子に対応するディレクトリセットは、前記組織の識別子に対応するディレクトリの下位に存在し、
前記媒体の識別子に対応するディレクトリセットは、前記媒体の識別子の長さを前記第２のファイルシステム形式に準拠する長さに分割し、前記分割した識別子をそれぞれ用いて構成した階層構造を有する複数のサブディレクトリであり、
前記参照情報及びファイルは、  
前記階層化された複数のサブディレクトリのうち、最下層にあたるサブディレクトリに配置されている。
【００１９】
仮想パッケージの構築にあたって、第１の記録媒体に付加された証明書の識別子、組織の識別子、媒体の識別子を用いた認証を実現する場合であっても、これらの識別子と、厳密に対応をとる形で、ファイルはリムーバブル型記録媒体に記録されることになる。そのため、たとえユーザが多くの第１の記録媒体を所持していて、それらの第１の記録媒体が頻繁に差し替えられたとしても、正しい第１の記録媒体が再生装置に装填されている場合のみ、第１の記録媒体のファイルパスを用いた別名でのファイルアクセスが実現されて、仮想パッケージが構築されることになる。
【００２０】
・また、任意的であるが、上述した再生装置の発明特定事項に、以下の発明特定事項を加え、再生装置を具体的な構成にすることにより、更なる効果をもたらすことができる。
前記媒体の識別子に対応するディレクトリセットは、４つのサブディレクトリに階層化されており、
前記第１の記録媒体に付加された媒体の識別子は、最大３２文字の文字列であり、
前記媒体の識別子に対応するディレクトリセットを構成するサブディレクトリのそれぞれには、前記媒体の識別子を構成する最大３２文字の文字列を４分割することで得られた、８文字以下のディレクトリ名が付加されている。
【００２１】
第１の記録媒体固有の媒体識別子のビット長が、長いものであったとしても、かかる識別子を構成する文字のうち、意味のあるものを省略することなく、第１の記録媒体固有の媒体識別子と、リムーバブル型記録媒体上のディレクトリとの対応を図るので、リムーバブル型記録媒体におけるディレクトリは、第１の記録媒体固有の媒体識別子と厳密に対応がとれたものとなる。  
【００２２】
・また、任意的であるが、上述した再生装置の発明特定事項に、以下の発明特定事項を加え、再生装置を具体的な構成にすることにより、更なる効果をもたらすことができる。
前記媒体の識別子には、上位の桁が０(ゼロ)になっているものがあり、
当該媒体の識別子に対応するディレクトリセットをサブディレクトリには、０(ゼロ)の数字がディレクトリ名として付与されているものがあり、
前記アプリケーションプログラムは、０(ゼロ)を省略した形式のファイルパスを読出手段に出力することで、前記媒体の識別子に対応するディレクトリセットを構成するサブディレクトリに存在する、参照情報の取得を読出手段に命じ、
前記読出手段は、０(ゼロ)を省略した形式のファイルパスを、前記リムーバブル型記録媒体のファイルパスに変換して、変換後のファイルパスに基づき、前記参照情報の取得を行う。
【００２３】
アプリケーションは、０(ゼロ)の上位桁を省略したファイルパスを用いて、媒体固有の媒体識別子に対応するディレクトリセットをアクセスすることができるので、I/O処理を簡潔に行うことができる。  
・また、任意的であるが、上述した再生装置の発明特定事項に、以下の発明特定事項を加え、再生装置を具体的な構成にすることにより、更なる効果をもたらすことができる。
【００２４】
前記第１の記録媒体のファイルパスは、２５５文字以下に制限されたディレクトリ名、及び、ファイル名を用いて表現されたファイルパスである。
アプリケーションは、最大２５５文字のファイル名、最大２５５文字のディレクトリ名を用いて、第１の記録媒体のファイルパスを用いた別名でのファイルアクセスを実行することができるので、アプリケーションは、パソコンのプラットフォーム上で動作する場合と、同じファイルパスを用いて、リムーバブル型記録媒体上のファイルをアクセスすることができる。  
【００２５】
・また、任意的であるが、上述した再生装置の発明特定事項に、以下の発明特定事項を加え、再生装置を具体的な構成にすることにより、更なる効果をもたらすことができる。
前記サーチ手段によるサーチは、
前記第１の記録媒体における前記第１のファイルシステムの形式を用いたファイルパスを前記アプリケーションプログラムから受け付けて、前記第１のファイルシステムの形式を用いたファイルパスに対応するリムーバブル型記録媒体のファイルパスが前記参照情報に記述されているか否かを判定する処理を含み、
前記アプリケーションプログラムからのファイルアクセスの要求に係る前記第１の記録媒体のファイルパスからアクセスすることができるファイルが、前記参照情報に存在しない場合、前記第１のファイルシステムの形式を用いたファイルパスから所在を特定することができる、第１の記録媒体におけるファイルを読み出す。
【００２６】
リムーバブル型記録媒体のファイルパスを用いた別名でのアクセスは、アプリケーションから受け付けた第１の記録媒体のファイルパスが、参照情報に存在するかどうかのサーチを行い、対応するリムーバブル型記録媒体のファイルパスが参照情報に存在する場合になされることになる。第１の記録媒体のファイルパスを用いた別名でのファイルアクセスは、かかるサーチでヒットがあったことを前提にしてなされるので、サーチの対象となる参照情報を別のものに置き換えれば、同じ第１の記録媒体のファイルパスであっても、異なるファイルが、リムーバブル型記録媒体から読み出されることになる。このように、アプリケーションから発行される第１の記録媒体のファイルパスが同一のものであっても、参照情報の差し替えにて、異なるファイルの読み出しが可能になり、「リムーバブル型記録媒体のどのファイルをアプリケーションに読み出させるか」という制御を、参照情報の記載から簡単に制御することができる。
【図面の簡単な説明】
【００２７】
【図１】第１実施形態におけるシステム図
【図２】第１実施形態におけるBD-ROMの内部構成を示す図
【図３】第１実施形態におけるBD-ROMが対象としているソフトウェアのレイヤモデルを示す図
【図４】第１実施形態における２つのモードの動的な再生制御にて作成される映画作品を示す図
【図５】第１実施形態における再生装置の内部構成を示す図
【図６】リムーバブルメディアであるSDメモリカードの内部構成を示す図
【図７】
（ａ）二重化FATの内部構成を示す図
（ｂ）ディレクトリエントリの共通のデータ構造を示す図
【図８】00001.m2tをクラスタサイズに合わせて5つに分割し、各分割部分を、クラスタ503,504,505,50A,50Cに格納する状態を想定した図
【図９】00001.m2tが複数のクラスタに記録されている場合のディレクトリエントリ及びFATについての設定例を示す図
【図１０】第１実施形態におけるリムーバブルメディアのディレクトリ構成を示す図
【図１１】第１実施形態における仮想パッケージを示す図
【図１２】第１実施形態におけるBD-Jモジュールの具体的な構成を示す図
【図１３】第１実施形態におけるindex.bdmvファイルとタイトルの関係を示す図
【図１４】リムーバブルメディアへのダウンロードの処理手順を示すフローチャート
【図１５】追加コンテンツデータファイルのダウンロード処理の処理手順を示すフローチャート
【図１６】第１実施形態における仮想パッケージ構築の処理手順を示すフローチャート
【図１７】Java(登録商標)アプリケーションが仮想パッケージ構築/更新要求を発行し、仮想パッケージが更新されるまでの、時間的な処理の流れを示す図
【図１８】第２実施形態におけるリムーバブルメディアのディレクトリ構成を示す図
【図１９】第２実施形態におけるDiscIDディレクトリへのアクセスを示す図  
【図２０】１ディレクトリ名として扱われているDiscIDディレクトリを４ディレクトリに分割する処理手順を示すフローチャート
【図２１】第３実施形態におけるBD-ROM挿入から再生開始までのフローチャート
【図２２】第３実施形態における仮想パッケージ構築判断処理のフローチャート
【図２３】第３実施形態におけるBD-ROM挿入時の画面表示例を示す図
【図２４】第３実施形態におけるリムーバブルメディアを利用した再生中の状態を示す図
【図２５】第３実施形態におけるBD-ROM挿入から再生開始までのフローチャート
【図２６】第３実施形態におけるリムーバブルメディアを利用した再生確認画面の一例を示す図
【図２７】第３実施形態における再生中にリムーバブルメディアを挿入した場合の処理のフローチャート
【図２８】第３実施形態における再生中にリムーバブルメディアを挿入した場合の画面表示例を示す図
【図２９】第３実施形態における再生中にリムーバブルメディアを挿入した場合の処理のフローチャート
【図３０】第３実施形態における再生中にリムーバブルメディアが取り出された場合の処理のフローチャート
【図３１】第３実施形態における再生中にリムーバブルメディアが取り出された場合の画面表示例を示す図
【発明を実施するための形態】
【００２８】
（第１実施形態）
以下本発明の実施の形態について、図面を参照しながら説明する。
以降、再生装置の実施形態について説明する。先ず始めに、本発明に係る再生装置の実施行為のうち、使用行為についての形態を説明する。図１は、再生装置１０２の、使用行為についての形態を示す図である。本図に示すように、再生装置１０２は、第１の記録媒体の一例であるBD-ROM１００、WWWサーバ１０１、テレビ１０３、第２の記録媒体の一例であるリムーバブルメディア１０４と共にユーザによる使用に供される。
【００２９】
BD-ROM１００は、映画作品が記録された記録媒体である。
WWWサーバ１０１は、映画配給者の公式サイトを運営するサーバ装置であり、BD-ROM１００に記録された映画作品の部分的な置き換えや追加を実現するコンテンツ(追加コンテンツデータファイル)を、インターネット等を介してユーザに供給する。
再生装置１０２は、テレビ１０３と共に、ホームシアターシステムを構築して、BD-ROM１００を再生する。
【００３０】
テレビ１０３は、映画作品の再生映像を表示したり、メニュー等を表示することで、対話的な操作環境をユーザに提供する。
リムーバブルメディア１０４は、再生装置に装填され、映画配給者のWWWサーバ１０１から配信されたコンテンツの受け皿として利用される。そのため、ネットを通じてダウンロードされ、リムーバブルメディア１０４に格納されたコンテンツと、BD-ROM１００に記録されたコンテンツとを組み合わせて、BD-ROM１００のコンテンツを拡張/更新をすることができる。かかるリムーバブルメディア１０４を装填するという目的のため、再生装置１０２には、SDメモリーカード、メモリースティック、コンパクトフラッシュ(登録商標)、スマートメディア、マルチメディアカード等のリムーバブルメディア１０４を挿入する挿入口を備える。
【００３１】
以上が本発明に係る再生装置の使用形態についての説明である。続いて本発明に係る再生装置が再生の対象としている、記録媒体について説明する。本発明に係る再生装置により、再生されるのは、光記録媒体であるBD-ROM１００である。
図２は、BD-ROM（以降、「BD」と称する場合もある）の構成を示した図である。本図の第１段目に、BD-ROM１００を示し、第２段目は、BD-ROMの内周から外周に向けて螺旋状に形成された記録領域を、横方向に引き伸ばして直線状に描いている。この第２段目に示すように、記録領域は、内周の「リード・イン」と、外周の「リード・アウト」と、「論理アドレス空間」とを有している。また、リード・インの内側にはBCA（Burst  Cutting  Area）と呼ばれるドライブでしか読み出せない特別な領域がある。この領域はアプリケーションから読み出せないため、例えば著作権保護技術などに利用されることがよくある。
【００３２】
「論理アドレス空間」は、ファイルシステムのための領域管理情報を先頭にして、各種映像データが記録されている。“ファイルシステム”とは、UDFやISO９６６０などのことであり、本実施形態では、Extention2.3形式のファイルシステムを採用する。このファイルシステムを介すれば、論理アドレス空間に記録されているデータをディレクトリ、ファイル構造を使って読み出すことができる。このファイルシステムにおけるファイルの配置位置は、２５５文字以下のディレクトリ名と、２５５文字以下のファイル名とを組合せたファイルの経路情報(ファイルパスと呼ばれる)で特定される。
【００３３】
本図の第３段目は、第２段目におけるファイルシステムを前提にして構築された、ディレクトリ構成・ファイル構成を示す。本図に示すように、BD-ROMのルートディレクトリ（ROOT）直下には、bd.certファイルと、BDMVディレクトリとが置かれている。
bd.cert（ファイル名固定）は仮想パッケージのために追加されたコンテンツをBD-ROM上のデータとマージする際に、署名検証に用いられる証明書（以下、マージ証明書）である。マージ証明書とは、BD-ROMにおけるマージ管理情報を格納したファイル(マージ管理情報ファイル)の認証に利用する証明書であり、プロバイダが公開する公開鍵を含む。マージ証明書のファイル形式は、例えば、X.５０９を利用することができる。X.５０９の詳細な仕様は、国際電信電話諮問委員会より発行されている、CCITT Recommendation X.509 (1988), "The Directory -  Authentication Framework"に記載されている。本図における引き出し線f1は、bd.certファイルの用途を示している。この引き出し線に示すように、bd.certファイルは、証明書固有のID(CertIDと呼ばれる)を導きだすという用途に用いられる。
【００３４】
BDMVディレクトリはBD-ROMで扱うAVコンテンツや管理情報などのデータが記録されているディレクトリである。BDMVディレクトリの配下には、「PLAYLISTディレクトリ」、「CLIPINFディレクトリ」、「STREAMディレクトリ」、「BDJOディレクトリ」、「JARディレクトリ」と呼ばれる５つのサブディレクトリが存在し、BDMVディレクトリには、index.bdmv，MovieObject.bdmvの２種類のファイルが配置されている。
【００３５】
STREAMディレクトリは、いわばデジタルストリーム本体となるファイルを格納しているディレクトリであり、拡張子M2TSが付与されたファイル(xxx.m2ts【“xxx”は可変、拡張子”m2ts”は固定】)が存在する。
PLAYLISTディレクトリには、拡張子mplsが付与されたファイル(xxx.mpls【“xxx”は可変、拡張子”mpls”は固定】)が存在する。
【００３６】
CLIPINFディレクトリには、拡張子clpiが付与されたファイル(xxx.clpi 【“xxx”は可変、拡張子”clpi”は固定】)が存在する。
JARディレクトリには、拡張子jarが付与されたファイル(xxx.jar【“xxx”は可変、拡張子”jar”は固定】)が存在する。
BDJOディレクトリには、拡張子bdjoが付与されたファイル(xxx.bdjo【“xxx”は可変、拡張子”bdjo”は固定】)が存在する。
【００３７】 
＜拡張子”m2ts”が付与されたファイル＞
拡張子”m2ts”が付与されたファイルは、M P E G - T S ( T r a n s p o r t S t r e a m )形式のデジタルAVストリームであり、ビデオストリーム、1つ以上のオーディオストリーム、1つ以上のグラフィクスストリームを多重化することで得られる。ビデオストリームは映画の動画部分を、オーディオストリームは映画の音声部分を、グラフィクスストリームは、映画の字幕をそれぞれ示している。
【００３８】
拡張子”clpi”が付与されたファイルは、デジタルAVストリームのそれぞれに1対1に対応する管理情報である。管理情報故に、Clip情報は、デジタルAVストリームの符号化形式、フレームレート、ビットレート、解像度等の情報や、GOPの先頭位置を示すEP＿mapをもっている。 
＜拡張子”mpls”が付与されたファイル＞
拡張子”mpls”が付与されたファイルは、プレイリスト情報を格納したファイルである。プレイリスト情報は、主たる経路情報、従たる経路情報、マーク情報を含む。
【００３９】
1)主たる経路情報は、AVストリームの再生時間軸のうち、In＿Timeとなる時点と、Out＿Timeとなる時点の組みを1つ以上定義することにより、論理的な再生区間を定義する情報であり、AVストリームに多重化されているエレメンタリストリームのうち、どれの再生を有効とするかを規定するストリーム番号テーブルを有しており、AVストリーム内のエレメンタリストリームのうち、どれの再生を許可し、どれの再生を許可しないかを規定する役割をもつ。
【００４０】
2)マーク情報は、開始時間情報及び終了時間情報の組みにて指定されたAVストリームの一部分のうち、チャプターとなる時点の指定を含む。
3)従たる経路情報は、前記AVストリームと同期して再生すべきエレメンタリストリームの指定と、そのエレメンタリストリームの再生時間軸における開始時間情報及び終了時間情報の組みとを含む。Java(登録商標)アプリケーションが、このプレイリスト情報を再生するJMFプレーヤインスタンスの生成をJava(登録商標)仮想マシンに命じることで、AV再生を開始させることができる。JMFプレーヤインスタンスとは、JMFプレーヤクラスを基にして仮想マシンのヒープメモリ上に生成される実際のデータのことである。
【００４１】
AVストリームと、プレイリスト情報との組みは、“タイトル”という再生単位を構成する。BD-ROMにおけるAV再生は、このタイトルを一単位としてなされる。    
＜拡張子”jar”が付与されたファイル＞
拡張子”jar”が付与されたファイルは、Java(登録商標)アーカイブファイルであり、Java(登録商標)仮想マシンを用いて動的なシナリオ制御を行うJava(登録商標)アプリケーションのクラスファイルが存在する。このクラスファイルにて定義されるJava(登録商標)アプリケーションは、Xletインターフェイスを通じて制御されるJava(登録商標) Xletである。Xletインターフェイスは、"loaded","paused"、"active","destroyed"といった4つの状態をもつ。本明細書でいうアプリケーションとは、こうしてBD-ROM等の記録媒体に記録されているクラスファイルについてのインスタンスのことをいう。
【００４２】 
＜拡張子“bdjo”が付与されたファイル＞
拡張子“bdjo”が付与されたファイルは、BD-Jオブジェクトを格納したファイルである。BD-Jオブジェクトは、PlayList情報により示されるAVストリームと、アプリケーションとの関連付けにより、タイトルを定義する情報である。BD-Jオブジェクトは、“アプリケーション管理テーブル”と、そのタイトルにおいて再生可能なPlayList一覧を示す。アプリケーション管理テーブル(AMT)とは、“アプリケーションシグナリング”を実現するテーブルである。“アプリケーションシグナリング”とは、BD-ROMにおける“タイトル”をアプリケーションの生存区間として管理し、アプリケーションの起動及び終了を司る制御をいう。ここで生存区間とは、BD-ROMに記録されたコンテンツ全体の時間軸において、仮想マシンのヒープメモリ上でアプリケーションが生存し得る区間を示す。“生存”とは、そのアプリケーションが、ヒープメモリに読み出され、仮想マシンによる実行が可能になっている状態をいう。アプリケーション管理テーブルは、アプリケーションの識別子(アプリケーションID)とそのアプリケーションに属するJava(登録商標) アーカイブファイルのIDを羅列することでこのタイトルを生存区間とするアプリケーションを示す。つまり、一つのアプリケーションは一つ以上の Java(登録商標) アーカイブファイルで構成される。
【００４３】 
＜index.bdmv(ファイル名固定)＞
index.bdmv(ファイル名固定)は、BD-ROM全体に関する管理情報であり、再生装置へのディスク挿入後に、index.bdmvが最初に読み出されることで、再生装置においてディスクが一意に認識される。加えて、index.bdmv にはBD-ROMにおいて再生可能となる複数のタイトルと、個々のタイトルを規定するBD-Jオブジェクトとを対応付けて示すテーブルが含まれる。引き出し線f2は、index.bdmvの内部構成をクローズアップして示している。この引出線に示すように映画作品のプロバイダを特定する識別子であるorganizationID(32ビット)や、プロバイダが提供するBD-ROMのそれぞれに割り当てられた識別子であるdiscID(128ビット)等の情報を持つ。
【００４４】
MovieObject.bdmv（ファイル名固定）は、HDMVモード（後述）での各タイトル再生で、再生進行を動的に変化させるためのシナリオが記述されたシナリオプログラムが含まれる。
図３は、再生制御のレイヤモデルを示した図である。図３の第１層は、物理層であり、処理対象たるストリーム本体の供給制御である。この第１層に示すように、処理対象たるストリームは、BD-ROMだけではなく、Build-Inメディアやリムーバブルメディア、ネットワークといったあらゆる記録媒体、通信媒体を供給源としている。ここでBuild-Inメディアとは、HDD（ハードディスクドライブ）など、再生装置に予め組み込まれた記録媒体である。一方、リムーバブルメディアは、SDメモリーカード、メモリースティック、コンパクトフラッシュ(登録商標)、スマートメディア、マルチメディアカード等、可搬性がある記録媒体である。これらBuild-Inメディア、リムーバブルメディアは何れも、再生装置がローカルに利用する記録媒体であり、“ローカルストレージ”との総称で呼ばれる。これらローカルストレージ、ネットワークといった供給源に対する制御（ディスクアクセス、カードアクセス、ネットワーク通信）が第１層の制御である。
【００４５】
第２層は、AVデータのレイアである。第１層で供給されたストリームを、どのような復号化方式を用いて復号するのかを規定しているのがこの第２層である。
第３層（BD管理データ）は、ストリームの静的なシナリオを規定するレイアである。静的なシナリオとは、ディスク制作者によって予め規定された再生経路情報、ストリーム管理情報であり、これらに基づく再生制御を規定しているのがこの第３層である。
【００４６】
第４層（BD再生プログラム）は、ストリームにおける動的なシナリオを実現するレイヤである。動的なシナリオは、AVストリームの再生手順、及び、その再生に関する制御手順のうち少なくとも一方を実行するプログラムである。動的なシナリオによる再生制御は、装置に対するユーザ操作に応じて変化するものであり、プログラム的な性質をもつ。ここでの動的な再生制御には、２つのモードがある。２つのモードのうち1つは、AV機器特有の再生環境で、BD-ROMに記録された動画データを再生するモード（HDMVモード）であり、もう1つはBD-ROMに記録された動画データの付加価値を高めるモード（BD-Jモード）である。図３において第４層には、HDMVモードとBD-Jモードの２つのモードが記述されている。HDMVモードは、DVDライクな再生環境での再生モードであり、再生進行を動的に変化させるためのシナリオが記述されたシナリオプログラムが動作する。もう一つのBD-Jモードは、Java(登録商標)仮想マシンを主体とした再生モードであり、Java(登録商標)アプリケーションから再生制御を行う。
【００４７】 
図４は、２つのモードの動的な再生制御にて作成される映画作品を示す図である。図４（a）は、HDMVモードで動的な再生制御を定義することにより、作成される映画作品の一場面を示す図である。HDMVモードはDVD再生装置が解釈可能なコマンドと良く似たコマンドで再生制御を記述することができるので、DVDと同じような再生制御、つまり、メニューに対する選択により再生が進行するような再生制御を定義することができる。
【００４８】 
図４（b）は、BD-Jモードで動的な再生制御を定義することにより、作成される映画作品である。BD-JモードはJava(登録商標)仮想マシンが解釈可能なJava(登録商標)言語で制御手順を記述することができる。この再生制御がアドベンチャーゲームのGUIを構成するものであるなら、BD-Jモードにあっては、ゲームのスコア(図中のSCORE:10000)やインジゲータ(LIFE:3)、ボタン部材(質問する、退室する)と、動画とを組み合わせたような合成映像をユーザに提示することができる。
【００４９】
以上が、BD-ROM１００についての説明である。続いて、再生装置１０２の詳細について、説明する。
図５は、再生装置の大まかな機能構成を示すブロック図である。図５に示すように、再生装置１０２は、BDドライブ１、トラックバッファ２、デマルチプレクサ３、ビデオデコーダ４、ビデオプレーン５、オーディオデコーダ６、グラフィクスメモリ７、グラフィクスプレーン８、グラフィクスデコーダ９、加算器１０、静的シナリオメモリ１１、動的シナリオメモリ１２、HDMVモジュール１３、BD-Jモジュール１４、UO探知モジュール１５、モード管理モジュール１６、ディスパッチャ１７、AV再生ライブラリ２０、ネットワークインターフェース２１、リムーバブルメディアドライブ・Build-Inメディアドライブ２２、仮想ファイルシステム２３から構成される。本再生装置は、オペレーティングシステムシステムとしてLinuxを採用しており、本再生装置のハードウェア及びソフトウェアは、このLinuxを通じて制御される。
【００５０】
BDドライブ１は、BD-ROMのローディング/イジェクトを行い、BD-ROMに対するアクセスを実行する。本BD-ROM再生装置は、オペレーションシステムとしてLinuxを採用しているので、“/mount point BD/BDAV”とのコマンドを発行することにより、BDドライブ１に、BDAVディレクトリを割り当てる。
トラックバッファ２は、FIFOメモリであり、BD-ROMから読み出されたACCESS UNITが先入れ先出し式に格納される。
【００５１】
デマルチプレクサ３は、BDドライブ１にローディングされているBD-ROM、または、リムーバブルメディアドライブ、Build-Inメディアドライブ２２上に保存されているトランスポートストリームの多重分離を行い、GOPを構成するビデオフレームと、オーディオフレームとを得てビデオフレームをビデオデコーダ４に出力し、オーディオフレームをオーディオデコーダ６に出力する。グラフィクスストリームはグラフィクスメモリ７に格納する。デマルチプレクサ３による多重分離は、TSパケットをPESパケットに変換するという変換処理を含む。
【００５２】
ビデオデコーダ４は、デマルチプレクサ３から出力されたビデオフレームを復号して非圧縮形式のピクチャをビデオプレーン５に書き込む。
ビデオプレーン５は、非圧縮形式のピクチャを格納しておくためのメモリである。
オーディオデコーダ６は、デマルチプレクサ３から出力されたオーディオフレームを復号して、非圧縮形式のオーディオデータを出力する。
【００５３】
グラフィクスメモリ７は、デマルチプレクサ３から読み出されたグラフィクスストリーム、あるいは、仮想ファイルシステム２３を介してBD-ROMまたはリムーバブルメディアドライブ、Build-Inメディアドライブ２２から読み出された画像ファイルを格納しておくバッファである。
グラフィクスプレーン８は、一画面分の領域をもったメモリであり、展開されたグラフィクスストリームが配置される。
【００５４】
グラフィクスデコーダ９は、グラフィクスメモリ７に格納されたグラフィクスストリームを展開してグラフィクスプレーン８に書き込む。グラフィクスストリームのデコードにより、各種メニュー、グラフィクスが画面上に現れることになる。
加算器１０は、ピクチャプレーン５に格納された非圧縮形式のピクチャデータに、グラフィクスプレーン８に展開されたイメージを合成して出力する。図４（b）に示した合成画像は、この加算器１０が、グラフィクスプレーン８内のグラフィクスと、ビデオプレーン５内のピクチャとを合成することで出力される。
【００５５】
静的シナリオメモリ１１は、カレントのPLやカレントのストリーム管理情報を格納しておくためのメモリである。カレントPLとは、BD-ROMまたは、リムーバブルメディアドライブ、Build-Inメディアドライブ２２に記録されている複数プレイリスト情報のうち、現在処理対象になっているものをいう。カレントストリーム管理情報とは、BD-ROMまたは、リムーバブルメディアドライブ、Build-Inメディアドライブ２２に記録されている複数のClip情報のうち、現在処理対象になっているものをいう。
【００５６】
動的シナリオメモリ１２は、カレント動的シナリオを格納しておき、HDMVモジュール１３、BD-Jモジュール１４による処理に供されるメモリである。カレント動的シナリオとは、BD-ROMまたは、リムーバブルメディアドライブ、Build-Inメディアドライブ２２に記録されているMovieオブジェクト,BD-Jオブジェクトのうち、現在実行対象になっているものをいう。
【００５７】
HDMVモジュール１３は、HDMVモードの実行主体となるDVD仮想プレーヤであり、動的シナリオメモリ１２に読み出されたカレントのシナリオプログラムを実行する。
BD-Jモジュール１４は、Java(登録商標)プラットフォームであり、Java(登録商標)仮想マシン、コンフィグレーション、プロファイルからなる。BD-Jモジュール１４は、動的シナリオメモリ１２に読み出されたJava(登録商標)クラスファイルからカレントのJava(登録商標)オブジェクトを生成し、実行する。Java(登録商標)仮想マシンは、Java(登録商標)言語で記述されたJava(登録商標)オブジェクトを、再生装置におけるCPUのネィティブコードに変換して、CPUに実行させる。
【００５８】 
UO探知モジュール１５は、リモコンや再生装置のフロントパネルといった入力機器に対してなされたユーザ操作を検知して、モード管理モジュール１６に通知する。この通知は、これらの入力機器に対応するデバイスドライバ内の割込みハンドラが発生する割込みに従い、UO（User  Operation）を生成して、モード管理モジュール１６に出力することでなされる。UOとは、リモコンやフロントパネルに設けられたキーマトッリクスによるキー押下を検知した際、発生するイベント(UOイベント)であり、押下されたキーに対応したキーコードを含んでいる。具体的には、リモコンやフロントパネルに対応するデバイスドライバの割込みハンドルが、キーマトリックスに対するキーセンスでキー押下を検出した際、そのキー押下に基づき割込み信号を発生することで、UOイベントは、生成される。
【００５９】
モード管理モジュール１６は、BD-ROMまたは、リムーバブルメディアドライブ、Build-Inメディアドライブ２２から読み出されたIndex.bdmvを保持して、モード管理及び分岐制御を行う。モード管理モジュール１６によるモード管理とは、動的シナリオをどのHDMVモジュール１３、BD-Jモジュール１４に実行させるかという、モジュールの割り当てである。
【００６０】
ディスパッチャ１７は、UOから、現在の再生装置におけるモードに適切なUOのみを選んで、そのモードを実行するモジュールに受け渡す。例えばHDMVモードの実行中に、上下左右、アクティベートといったUOを受け付けた場合、HDMVモードのモジュールにこれらのUOを出力するというのがディスパッチャ１７の処理である。
AV再生ライブラリ２０はHDMVモジュール１３、BD-Jモジュール１４からの関数呼び出しに応じて、AV再生機能、プレイリストの再生機能を実行する。AV再生機能とは、DVDプレーヤ、CDプレーヤから踏襲した機能群であり、再生開始、再生停止、一時停止、一時停止の解除、静止画機能の解除、再生速度を即値で指定した早送り、再生速度を即値で指定した巻戻し、音声切り替え、字幕切り替え、アングル切り替えといった処理である。プレイリスト再生機能とは、このAV再生機能のうち、再生開始や再生停止をプレイリスト情報に従って行うことをいう。
【００６１】
ネットワークインターフェース２１は、ネットワーク接続のためのプロトコルスタックを実行するものであり、ネットワーク上のサーバコンピュータが具備しているドライブを、ネットワークドライブとして、再生装置に認識させる。そして、ネットワークドライブからデータをダウンロードしたり、データをアップロードすることができる。このネットワークインターフェイス２１は、インターネット上に公開されたBD-ROM追加コンテンツのダウンロードに用いられる。BD-ROM追加コンテンツとは、オリジナルのBD-ROMにないコンテンツで、例えば追加の副音声、字幕、特典映像、アプリケーションなどである。BD-Jモジュール１４は、ネットワークインターフェース２１を制御することにより、インターネット上に公開された追加コンテンツをBuild-Inメディアドライブもしくはリムーバブルメディア１０４にダウンロードすることができる。
【００６２】
Build-Inメディアドライブ・リムーバブルメディアドライブ２２は、ダウンロードしてきた追加コンテンツやアプリケーションが使うデータなどの保存に用いられる。追加コンテンツの保存領域はBD-ROM毎に分かれており、またアプリケーションがデータの保持に使用できる領域はアプリケーション毎に分かれている。また、ダウンロードした追加コンテンツをどのようにBD-ROM上のデータとマージするかを示す規則、つまりマージ規則が記載されたマージ管理情報も、このリムーバブルメディアドライブ、Build-Inメディアドライブ２２に保存される。
【００６３】
本実施形態では、追加コンテンツデータファイル格納のためのディレクトリであるBUDAディレクトリを、リムーバブルメディアドライブに装填されたリムーバブルメディア１０４に割り当てる。本BD-ROM再生装置は、オペレーションシステムとしてLinuxを採用しているので、“/mount point SD/BUDA”とのコマンドを発行することにより、リムーバブルメディア１０４に、BUDAディレクトリを割り当てる。一方Built-inメディアは、録画用の記録領域として使用するものとする。
【００６４】
仮想ファイルシステム２３は、追加コンテンツと共に、リムーバブルメディアドライブ、Build-Inメディアドライブ２２にダウンロードされたマージ管理情報を元に、Build-Inメディア、もしくは、リムーバブルメディアに格納された追加コンテンツとBD-ROM上のコンテンツとをマージさせた、仮想的なBD-ROM（仮想パッケージ）を構築する。HDMVモジュール１３やBD-Jモジュール１４からは、仮想パッケージとオリジナルBD-ROMを区別なく参照することができる。仮想パッケージ再生中、再生装置はBD-ROM上のデータとBuild-Inメディアもしくはリムーバブルメディア上のデータの両方を用いて再生制御を行うことになる。以上が再生装置の構成要素である。
【００６５】
本実施形態では、追加コンテンツデータファイルの格納のためのリムーバブルメディアとしてSDメモリカードを採用する。
SDメモリカードは、長さ32.0 mm、幅24.0 mm、厚さ2.1 mmといった大きさ（切手サイズの大きさ）のカード型記録媒体である。ユーザはこのSDメモリカードを指先で把持することができる。SDメモリカードには、再生装置との接続のための９本のコネクタが設けられており、側面には、記憶内容の上書きを許可するか禁止するかを操作者が設定することができるプロテクトスイッチが設けられている。SDメモリカードは、NAND型EEPROMである「不揮発メモリ」、再生装置から発せられるコマンドに従って、不揮発メモリに対するデータ書き込み、不揮発メモリからのデータ読み出し、データ消去を行う「アクセス制御部」、不揮発メモリから読み出されたデータを書き換える際、データの一時格納に用いられる「ワークメモリ」を含む。
【００６６】
SDメモリカードには、FAT16を採用したものと、FAT32を採用したものとがある。FAT16は、クラスタ1つ当たりに割り当てられるエントリー長が16ビットであり、2Gバイトの記録領域をアクセス対象にしている。FAT32は、クラスタ1つ当たりに割り当てられるエントリー長が32ビットであり、32Gバイトの記録領域をアクセス対象にしている。このFAT32を採用したSDメモリカードは、特に“SDHCメモリカード”と呼ばれる。
【００６７】
以降、このリムーバブルメディアについて説明する。図６は、リムーバブルメディアであるSDメモリカードの内部構成を示す図である。本図の左側に、リムーバブルメディアであるSDメモリカードを示し、中側に、FAT型ファイルシステムに準じた記録領域の内部構成を示す。このFAT型ファイルシステムの記録領域は、「MasterBootRecord」,「PartitionTable」,「システム領域」及び「ユーザ領域」からなる。
【００６８】
「MasterBootRecor」は、自身に後続する領域が"物理的な一つの媒体（物理媒体）"であることを再生装置に認識させるための標識である。本図では、記録領域にマスタブートレコードが1つだけ存在するので、記録領域において1つの物理媒体が再生装置により認識され得るが、仮に記録領域にマスタブートレコードを2つ配せば、2つの物理媒体が再生装置により認識される。
【００６９】
「パーティションテーブル」は、パーティションに関する情報が記述されたテーブルである。
「システム領域」は、「パーティションブートセクタ」、「二重化FAT」、「Rootディレクトリエントリ」が記録されている。
「ユーザ領域」は、クラスタを最小単位にして、ファイルが格納される領域であり、「BUDAディレクトリエントリ」、「CertIDディレクトリエントリ」、「OrganizationIDディレクトリエントリ」、「DiscIDディレクトリエントリ」、「マージ管理情報ファイル」、「署名情報ファイル」、「追加コンテンツデータファイル」が記録されている。
【００７０】
以降、二重化FATについて説明する。
「二重化ファイルアロケーションテーブル(FAT)」は、ISO/IEC 9293に準拠した2つのFATからなる。図７（ａ）は、二重化FATの内部構成を示す図である。各FATは、各クラスタに対応づけられた複数のFATエントリーからなる。各FATエントリーは、対応するクラスタが使用中であるか、未使用であるかを示すものであり、対応するクラスタが未使用であれば、そのファイルエントリーには、"0"が設定され、対応するクラスタが使用中であれば、クラスタ番号が設定される。このクラスタ番号は、対応するクラスタが読み出された場合、次にどのクラスタを読み出せばよいかといったクラスタ間のリンク関係を示す。図７（ａ）の破線の引き出し線ff1は、FATに含まれる複数のFATエントリー002,003,004,005・・を示す。このFATエントリーに付与された数値「002,003,004,005・・」は、各FATエントリーがどのクラスタに対応づけられているか、つまり、各FATエントリーが対応づけられているクラスタのクラスタ番号を示す。
【００７１】
続いて、ディレクトリエントリについて説明する。ディレクトリエントリには、システム領域に存在する「Rootディレクトリエントリ」、ユーザ領域に存在する「BUDAディレクトリエントリ」、「CertIDディレクトリエントリ」、「OrganizationIDディレクトリエントリ」、「DiscIDディレクトリエントリ」といったものがあるが、これらは何れも、図７（ｂ）に示す共通のデータ構造を有する。図７（ｂ）は、ディレクトリエントリの共通のデータ構造を示す図である。本図に示すように「ディレクトリエントリ」は、ASCII文字８文字以下に制限された「ディレクトリ名」と、「作成時刻」と、「作成日付」と、当該ディレクトリに存在するファイルについての「ファイルエントリー」を含む。各ファイルエントリーは、ASCII文字８文字以下に制限された「ファイル名」と、ASCII文字３文字以下に制限された「ファイル拡張子」と、ファイルの先頭部が格納されている「ファイル最初のクラスタ番号」と、そのファイルについての「ファイル属性」と、ファイルが更新された「更新時刻」と、ファイルの「更新日付」と、ファイルのデータ長である「ファイル長」とを含む。
SDメモリカードにおけるディレクトリ名及びファイル名は、こうしたディレクトリエントリに記述される。そしてこのディレクトリエントリのうち、Rootディレクトリエントリは、二重化FATと共に、原則として、1つのクラスタ内に配置して、まとめて管理せねばならないので、ディレクトリ名及びファイル名を長くするのは現実的ではない。具体的には、その文字数は、ASCII文字８文字以内、拡張子もASCII文字３文字以内に制限されている。このように、ディレクトリ名、ファイル名が制限されたファイルシステム形式を、“８.３形式”と呼んでいる。
【００７２】
ここで、DiscIDディレクトリに、追加コンテンツデータファイルをする場合、FAT及びディレクトリエントリがどのように設定されるかについて説明する。説明の題材に選ぶ追加コンテンツデータファイルは、AVClipを格納した“00001.m2t”というファイルである。図８は、00001.m2tをクラスタサイズに合わせて5つに分割し、各分割部分を、クラスタ503,504,505,50A,50Cに格納する状態を想定した図である。
【００７３】
図８の第２段目から第７段目は、映像、音声を示すエレメンタリストリームが、AVClipにおいてどのように多重化されているかを模式的に示す図である。AVClipは、デジタル化された映像、デジタル化された音声を(第７段目)、PESパケットからなるエレメンタリストリームに変換し(第６段目)、更にTSパケットに変換して(第５段目)、これらを多重化することで構成される。
【００７４】
ここで、ビデオストリームは、本図の第７段目に示すように複数のピクチャから構成されるが、これらピクチャと、Access Unitとの関係は、１Access Unit ＝ １ピクチャである。オーディオストリームも、複数のオーディオフレームから構成されるが、これらオーディオフレームと、Access Unitとの関係も、１オーディオフレーム ＝ １Access Unitである。またBD-ROMでは、１PESパケット ＝ １フレームに制限されている。つまり、動画がフレーム構造であれば、１PESパケット ＝ １ピクチャであり、フィールド構造である場合、１PESパケット＝２ピクチャとなる。これらのことから、本図の第７段目に示すPESパケットは、第７段目におけるピクチャやオーディオフレームを、１対１の比率で格納している。
【００７５】
以上のAVClipは、第４段目に示すような“STC Sequence”から構成される。“STC Sequence”とは、デコード時刻、表示時刻を表すMPEG2-TSの時間軸であり、AVストリームのシステム基準時刻であるSTC(System Time Clock)の不連続点(system time-base discontinuity)が存在しない区間をいう。STCの不連続点はデコーダがSTCを得るために参照するPCR(Program Clock Reference)を運ぶPCRパケットの不連続情報(discontinuity＿indicator)がONである点である。
【００７６】
第３段目から第１段目は、AVClipを構成するTSパケットがどのような過程を経てBD-ROMに書き込まれるかを示す。本図の第１段目にAVClipを構成するTSパケットを示す。
AVClipを構成する188バイトのTSパケットは、4バイトのTS＿extra＿header(図中のハッチング部)が付されて、192バイト長のSourceパケットになる。このTS＿extra＿headerは、当該TSパケットのデコーダ入力時刻情報を示すArrival＿Time＿Stampを含む。
【００７７】
AVClipを構成するSourceパケットは、第３段目に示すような1つ以上の“ATC＿Seuqence”を構成する。“ATC＿Seuqence”とは、AVClipに記されているATSの時間軸を構成するSourceパケットの配列であって、そのArrival＿Time＿Stampが参照しているArrival＿Time＿Clockに、不連続点(no arrival time-base discontinutiy)が存在しないものをいう。いいかえれば、そのArrival＿Time＿Stampが参照しているArrival＿Time＿Clockに、連続性が存在するSourceパケット列を“ATC＿Seuqence”という。ATSは以下のようにTSパケットの先頭につけられ、デコーダへの転送時刻を示す。
【００７８】
かかるATC＿SeuqenceがAVClipになり、第２段目に示すように00001.m2tというファイル名でBD-ROMに記録される。
かかるAVClipは、通常のコンピュータファイル同様、クラスタサイズに分割され、BD-ROM上の領域に記録される。第１段目はAVClipがどのようにリムーバブルメディア１０４に記録されるかを模式的に示す。上述したようにデータ領域の最小アクセス単位はクラスタであるので、00001.m2tは、クラスタサイズを最小単位にしてデータ領域に格納せねばならない。00001.m2tは、先ずクラスタサイズに分割されて、各クラスタに書き込まれる。
【００７９】
00001.m2tが分割格納されると、ディレクトリエントリ及びFATは、図９のように設定されねばならない。
図９は、00001.m2tが複数のクラスタに記録されている場合のディレクトリエントリ及びFATについての設定例を示す図である。本図において00001.m2tの先頭部分がクラスタ503に記録されている場合、DiscIDディレクトリディレクトリエントリにおける「最初のクラスタ番号」には、その先頭部分が格納されているクラスタについてのクラスタ番号503が記載される。以降、00001.m2tの後続する部分は、クラスタ504、クラスタ505に格納されていることがわかる。00001.m2tの先頭部分を格納しているクラスタ503には、FATエントリー503(504)が対応しているが、このFATエントリーは、00001.m2tファイルの後続する部分を格納しているクラスタ504を示すものである。またこれに後続している部分を格納しているクラスタ504,505には、FATエントリー504(505),FATエントリー505(50A)が対応しているが、これのFATエントリーは、00001.m2tファイルの次の後続する部分を格納しているクラスタ505,50Aを示すものである。このように、DiscIDディレクトリディレクトリエントリにおける最初のクラスタ番号と、FATエントリーとを辿ってゆくことにより、リムーバブルメディア１０４に格納されたAVClipは読み出され、再生に供されることになる。
【００８０】
以上のようなファイルシステムを前提にして、構築されるディレクトリについて説明する。
図１０は、リムーバブルメディア上のディレクトリ構成を示す図である。リムーバブルメディア上には、追加コンテンツ領域ルートディレクトリであるBUDAディレクトリ、CertIDディレクトリ、OrganizationIDディレクトリ、DiscIDディレクトリが存在する。このDiscIDディレクトリには、マージ管理情報ファイル「bumf.xml」、署名情報ファイル「bumf.sf」、追加コンテンツデータファイル「00001.mpl」「mo.bdm」「00001.m2t」が存在する。
【００８１】
追加コンテンツ領域ルートディレクトリ(BUDAディレクトリ)は、リムーバブルメディアのルートディレクトリの直下に存在し、追加コンテンツ領域のルートを示すディレクトリで、ディレクトリ名は、８文字以内の固定値（BD＿BUDA）である。
「CertIDディレクトリ」はBD-ROM上のマージ証明書(bd.cert)から導き出されるIDを名前に持つディレクトリで、マージ証明書のSHA-1ダイジェスト値160ビットのうち、先頭32ビットを16進表記で表した８文字の名前のディレクトリである。
【００８２】
「OrganizationIDディレクトリ」は、BD-ROM上のBD管理情報(index.bdmv)に記載されている、映画作品のプロバイダを特定する32ビットの識別子(OrganizationID)を16進表記で表した８文字の名前のディレクトリである。
「DiscIDディレクトリ」は、４階層のサブディレクトリからなる。これら４階層のサブディレクトリは、最大８文字のディレクトリ名が付与される。各サブディレクトリには、BD-ROMを特定する128ビットの識別子(DiscID)を先頭から32ビットずつ４分割し、それぞれを16進表記で表した８文字の名前が割り当てられている。このDiscIDは、BD-ROM上のBD管理情報(index.bdmv)に記載されているので、index.bdmvをオープンすることでDiscIDは、取得することができる。例えば、本図における、「12345678」「90abcdef」「12345678」「90abcdef」という4つのディレクトリ名は、「1234567890abcdef1234567890abcdef」という32文字(１２８ビット)のDiscIDを、下位の桁から８文字(３２ビット)ずつ分割することで得られたものである。DiscIDを構成する文字のうち、意味のあるものを省略することなく、DiscIDと、８.３形式との対応を図るので、４階層のサブディレクトリは、DiscIDと厳密に対応がとれたものとなる。
【００８３】
DiscIDディレクトリの配下には、「マージ管理情報ファイル」、「署名情報ファイル」、「追加コンテンツデータファイル」が存在する。これらのファイルは、仮想パッケージ生成の中核を担うものであり、以降、これらのファイルの内容を詳細に説明する。
「マージ管理情報ファイル」は、リムーバブルメディア上の追加コンテンツデータファイルのファイルパスと、仮想パッケージにおける別名アクセスのためのファイルパスとの対応付けを示す情報であり、bumf.xmlというファイル名でDiscIDディレクトリに保存される。このマージ管理情報ファイルが特徴的であるのは、リムーバブルメディアにおけるファイルパス、つまりFAT型ファイルシステムを前提にしているため、リムーバブルメディアにおけるディレクトリ名及びファイル名が８.３形式に準じている点である。このように、８.３形式に準じたファイルパスが、仮想パッケージにおけるLFNのファイルパスとが対応付けられている。この仮想パッケージのファイルパスは、BD-ROMのディレクトリ構造に準じている。何故なら仮想パッケージは、リムーバブルメディア上のファイルを、あたかもBD-ROMに格納されているものと同様に扱うものだからである。かかるBD-ROMのファイルシステム形式は、LFNに対応したものなので、このマージ管理情報ファイルを参照することにより、リムーバブルメディア上の追加コンテンツデータファイルは、８.３形式でありながら、２５５文字以下のファイル名を用いて別名でアクセスされることになる。マージ管理情報ファイルは、８.３形式で記録されている各種ファイルに対して、２５５文字以下のファイル名による、“別名アクセス”を実現させるものである。
【００８４】
図１１（ａ）は、マージ管理情報の内部構成を示す図である。本図におけるマージ管理情報では、00001.mpl、mo.bdm、00001.m2tという3つの追加コンテンツデータファイルについて、リムーバブルメディア上のファイルパスと、仮想パッケージ上のファイルパスとの対応付けがなされている。リムーバブルメディア上のファイルパスは、８.３形式に準じている。
【００８５】
本図におけるファイルパスの記述について具体的に説明する。リムーバブルメディアにおける“12345abc/12345678/90abcdef/12345678/90abcdef/00001.mpl”という８.３形式のファイルパスには、BDMV/PLAYLIST/00001.mplsという仮想パッケージ上のLFN形式のファイルパスが対応付けられている。この一例は、前図のものに準じており、CertIDディレクトリから追加コンテンツデータファイルへのパスが明記されている。
【００８６】
リムーバブルメディアにおける、“12345abc/12345678/90abcdef/12345678/90abcdef/mo.bdm”という８.３形式のファイルパスには、BDMV/MovieObject.bdmvという仮想パッケージ上のLFN形式のファイルパスが対応付けられている。
リムーバブルメディアにおける“12345abc/12345678/90abcdef/12345678/90abcdef/00001.m2t”という８.３形式のファイルパスには、BDMV/STREAM/000001.m2tsという仮想パッケージ上のLFN形式のファイルパスが対応付けられている。
【００８７】
図１１（ｂ）は、マージ管理情報の内容を元にして、BD-ROMコンテンツと、リムーバブルメディア上の追加コンテンツをマージする様子を示している。
左側は、BD-ROMの格納内容を示し、中側はリムーバブルメディアの格納内容を示す。右側は、仮想パッケージの格納内容を示す。マージ管理情報ファイルは、図１１（ａ）のように設定されているので、リムーバブルメディアにおける格納内容のうち、BUDAディレクトリ配下の12345abc/12345678/90abcdef/12345678/90abcdefに存在する3つの追加コンテンツデータファイル、つまり、mo.bdm、00001.mpl、00001.m2tのそれぞれを、矢印g1,g2,g3に示すように、マージ管理情報ファイルに記述されている仮想パッケージのディレクトリ構成に組み合わせる。以上のような、リムーバブルメディアのファイルを、マージ管理情報ファイルに記述されているディレクトリ構成に組合せることを“マージ”という。
【００８８】
こうしたマージによって、mo.bdmは、BDMVディレクトリに存在する“MovieObject.bdmv”という別名のファイル名でアクセスされることになる。
また00001.mplは、BDMVディレクトリ配下のPLAYLISTディレクトリに存在する“00001.mpls”という別名のファイル名でアクセスされることになる。
00001.m2tは、BDMVディレクトリ配下のSTREAMディレクトリに存在する“00001.m2ts”という別名のファイル名でアクセスされることになる。
【００８９】
上述したような別名アクセスが可能になるので、mo.bdm、00001.mpl、00001.m2tのそれぞれは、BDMVにMovieObject.bdmv、BDMV/PLAYLIST/00001.mpls、BDMV/STREAM/000001.m2tsに存在するものとして扱うことができる。
「署名情報ファイル」は、マージ管理情報ファイルに対するプロバイダの電子的な署名を示すファイルであり、bumf.sfというファイル名でDiscIDディレクトリに保存される。電子的な署名は、一般的に改竄防止が必要な情報に対してハッシュ値を計算し、ハッシュ値をなんらかの秘密鍵を用いて暗号化したものを用いる。改竄防止が必要な情報としては、具体的には、追加コンテンツデータファイルのファイル名や追加コンテンツデータファイルをBuild-Inメディアに記録するにあたってのファイルパスが挙げられる。かかるファイルパスはLFN形式であり、マージ管理情報ファイルに記載されているので、マージ管理情報ファイルに記載されたファイルパスに対して、ハッシュ値は算出されることになる。また、本署名情報ファイルでは、BD-ROM上にあるマージ証明書中の公開鍵に対応する秘密鍵を利用して、マージ管理情報ファイルのハッシュ値が暗号化されている。
【００９０】
「追加コンテンツデータファイル」は、BD-ROMに記録されたオリジナルのコンテンツに対し、追加/更新を実現するファイル群であり、リムーバブルメディア上に8.3形式（ファイル名８文字以内、拡張子３文字以内）のファイル名で保存される。DiscIDディレクトリについては、文字を省略することなく、全ての文字がDiscIDディレクトリにおけるディレクトリ名に現れるように変換を行ったが、追加コンテンツデータファイルについては、一部の文字をリムーバブルメディアにおけるファイル名に使用することで、ファイル名の短縮を図っている。これは、追加コンテンツデータファイルにおけるファイル名は、本来、BD-ROM上のファイル名であり、“５桁の数値＋数種類の拡張子”という何通りかのパターンのものに限られているので、ファイル名を構成する文字を一部省略したとしても、混同が生じる等の不都合が発生する可能性は極めて低いこと等の理由による。
【００９１】
図１０に示した3つの追加コンテンツデータファイルのうち、「00001.mpl」はプレイリスト情報を格納したものであり、「mo.bdm」は、Movieオブジェクトを格納したものである。「00001.m2t」は、AVClipを格納したものである。これら以外にも、BD-ROMにて記録され、ユーザに供給することができるファイルであるなら、BD-ROMに記録されるべき他のファイルを追加コンテンツデータファイルの対象として選ぶことができる。index.bdmvやClip情報を格納したファイル(拡張子がclpiのファイル)、Javaアーカイブファイル(拡張子がJarのファイル)、BD-Jオブジェクトを格納したファイル(拡張子がbdjoのファイル)を、追加コンテンツデータファイルの対象として選ぶことができる。
【００９２】
図１２は、図５に示すBD-Jモジュールのより具体的な構成を示すとともに、BD-Jモジュールによりネットワーク上から追加コンテンツファイルをBuild-Inメディア上もしくはリムーバブルメディア上にダウンロードする様子を示す図である。BD-Jモジュール１４はメディア再生モジュール３２、ファイルI/Oモジュール３４、ネットワークモジュール３５、アプリケーションマネージャ３６、仮想ファイルシステム管理モジュール３９から構成される。尚、本図におけるAV再生ライブラリ２０、ネットワークI/F２１、Build-Inメディアドライブ・リムーバブルメディアドライブ２２、仮想ファイルシステム２３は、図５に示したものと同一であり、メディア再生モジュール３２〜仮想ファイルシステム管理モジュール３９の説明のために便宜的に記載している。
【００９３】
メディア再生モジュール３２はJava(登録商標)アプリケーション３１に対し、メディア再生制御のためのAPIを提供している。Java(登録商標)アプリケーション３１がメディア再生制御APIを呼び出すと、メディア再生モジュールは対応するAV再生ライブラリ２０の関数を呼び出し、AV再生制御を行う。
ファイルI/Oモジュール３４は、Java(登録商標)アプリケーション３１からのBuild-Inメディアもしくはリムーバブルメディアへのアクセス要求の処理を行う。
【００９４】
このアクセス要求が、追加コンテンツデータファイルの書き込みである場合、Java(登録商標)アプリケーション３１はファイルI/Oモジュールを用いて、追加コンテンツファイルをBuild-Inメディア上もしくはリムーバブルメディア上の適切な位置に配置することが出来る。また、不要となった追加コンテンツファイルを削除したり、追加コンテンツファイルを直接編集することも可能である。仮想パッケージ上へのアクセスもこのファイルI/Oモジュール３４を通して行う。ただし、仮想パッケージ上へのアクセスは読み取り専用となり、ファイルI/Oモジュール３４からの書き込みはできない。
【００９５】
そのアクセス要求が追加コンテンツデータファイルの読み出しである場合、アプリケーションプログラム３１からは、BD-ROMに対するLFN形式のファイルパスが引き渡されるので、リムーバブルメディアに記録されているファイルであって、LFNのファイルパスにてアクセスできるものがリムーバブルメディアに存在するかどうかのサーチを行う。
このサーチは、当該LFNのファイルパスが、マージ管理情報ファイルにおいて、“別名のファイルパス”として記述されているかどうかを判断することでなされる。
【００９６】
そうしたサーチにより、そのLFNのファイルパスにて別名でアクセスできる追加コンテンツデータファイルがリムーバブルメディアに存在することが明らかになった場合、マージ管理情報ファイルに記載された８.３形式のファイルパスに従い、その追加コンテンツデータファイルをリムーバブルメディアから読み出す。こうしたサーチを行うので、発明の開示に記載した、サーチ手段は、このファイルI/Oモジュール３４に対応することになる。
【００９７】
そのLFNのファイルパスにて別名アクセスできる追加コンテンツデータファイルがリムーバブルメディアに存在しない場合、そのLFNのファイルパスにてアクセスすることができる追加コンテンツデータファイルを、BD-ROMから読み出す。そのLFNのファイルパスにてアクセスすることができる追加コンテンツデータファイルが、BD-ROMにも存在しないのなら、エラー処理を行う。
【００９８】
ネットワークモジュール３５は、Java(登録商標)アプリケーション３１に対し、ネットワーク制御のためのAPIを提供している。Java(登録商標)アプリケーション３１からのネットワーク制御要求に従い、ネットワークインターフェース２１を使って、ネットワーク接続を行う。Java(登録商標)アプリケーション３１はネットワークモジュール３５を用いて、公開されている追加コンテンツを検索、及びBuild-Inメディア/リムーバブルメディアにダウンロードすることが可能である。
【００９９】
アプリケーションマネージャ３６は、BD-ROM上に記録されたアプリケーション管理情報を元にJava(登録商標)アプリケーションの起動・終了を管理する。また、アプリケーションマネージャがディスパッチャ１７から受け取ったUOイベントを、現在動作中のJava(登録商標)アプリケーション３１に渡すといった処理も行う。
DiscID確認モジュール３７は、挿入されたBD-ROMのDiscIDを確認する。DiscID確認モジュール３７により取得されたDiscIDの値は仮想ファイルシステム２３が仮想パッケージを構築する際に用いられる。
【０１００】
リムーバブルメディア検知モジュール３８は、リムーバブルメディアの挿入・取り出しのモニタリングを行う。リムーバブルメディアの挿入・取り出しが行われると、仮想ファイルシステム２３に挿入・取り出し通知を行う。
仮想ファイルシステム管理モジュール３９は、Java(登録商標)アプリケーション３１からの仮想パッケージ構築/更新要求を受け取り、その要求内容を仮想ファイルシステム２３へ伝達する。Java(登録商標)アプリケーションは仮想パッケージを構築/更新する場合、新たなマージ管理情報ファイル及び署名情報ファイルを指定して構築/更新要求を発行する。仮想ファイルシステム２３は仮想ファイルシステム管理モジュール３９を通じて仮想パッケージ構築/更新要求を受け付けると、新たに指定された署名情報ファイルを用いて、新たなマージ管理情報ファイルの署名検証を行った後、古いマージ管理情報ファイル、署名情報ファイルを新しいマージ管理情報ファイル、署名情報ファイルに置き換えて、仮想パッケージを再構築する。マージ管理情報ファイル、署名情報ファイルの置き換えはタイトル切り替え時に行われる。次にタイトルについての説明を行う。
【０１０１】
図１３はindex.bdmvファイルとタイトルの関係を示す図である。タイトルとはアプリケーションとAVストリームを組にした再生単位であり、index.bdmvファイルにはディスク上のタイトル構成が記載されており、ディスク上の各タイトルと、対応するアプリケーション（BD-JモードタイトルであればJava(登録商標)アプリケーション、HDMVモードタイトルであればシナリオプログラム）の参照関係を管理している。また、特殊なタイトルとして「FirstPlay」と「Top Menu」が存在する。「First Play」はBD起動時に自動的に再生されるタイトルであり、主にBDの利用規約表示などに用いられる。「Top Menu」はリモコンのメニューキーを押したときやタイトル再生が終了したときに再生され、主にタイトルの選択や、字幕/音声の言語選択を行うことに用いられる。このindex.bdmvファイルが仮想パッケージ更新により内容が変化した場合、仮想パッケージ更新前と更新後で、タイトル構成が異なることになる。
【０１０２】
以降、BD-ROM装填時における、各構成要素の処理について説明する。
BD-ROMが再生装置に挿入されるとDiscID確認モジュール３７は、bd.certから、CertIDディレクトリを割り出し、次にindex.bdmvに記載されているDiscID、OrganizationIDを確認し、Build-Inメディア上にある対応するDiscIDディレクトリを決定する。仮想ファイルシステム２３は、挿入されたBD-ROMに対応するDiscIDディレクトリにある署名情報ファイルを利用してマージ管理情報ファイルが改竄されていないことを確認した後、マージ管理情報の内容に基づきDiscIDディレクトリに格納されている追加コンテンツファイルがBD-ROM上コンテンツにマージされ、仮想パッケージを作成する。
【０１０３】
仮想パッケージは仮想的に存在し、実際には一部がBuild-Inメディアもしくはリムーバブルメディア上のファイル、その他がBD-ROM上のファイルで構成されたパッケージとなる。ただし、アプリケーションレイヤ（図３の第４層）である、HDMVモジュール１３やBD-Jモジュール１４からは、あたかも全てのファイルがBD-ROM上にあるかのように参照させ、仮想ファイルシステム２３がアプリケーションレイヤ（図３の第４層）からのBD-ROM上への参照をモニタリングし、参照先のファイルへのパスが、マージ管理情報に記載されている仮想パッケージのファイルパスと一致していれば、対応するファイルパスに記載されているBuild-Inメディア上のファイルに参照先の変更を行う。すなわち、実際には、Build-Inメディアもしくはリムーバブルメディア上に保存されているファイルが８.３形式のファイル名であったとしても、アプリケーションレイヤからは、ロングファイル名として扱うことが可能になる。図１４は、リムーバブルメディアへのダウンロードの処理手順を示すフローチャートである。Build-InメディアであるリムーバブルメディアのBUDAの配下に、160ビットのCertIDのうち、先頭32ビットをディレクトリ名としたCertIDディレクトリをクリエイトする(ステップＳ１)。そのCertIDディレクトリの配下に、今度はOrganizationIDのディレクトリ名にしたOrganizationIDディレクトリをクリエイトする(ステップＳ２)。その後、128ビットのDiscIDを３２ビット毎に4つの文字列に分割して、４つの文字列をそれぞれディレクトリ名とした４階層のDiscIDディレクトリを、OrganizationIDディレクトリの配下にクリエイトする(ステップＳ３)。
【０１０４】
以上の処理で、リムーバブルメディアのためのディレクトリ構成を構築した後、マージ管理情報ファイル、署名情報ファイルをダウンロードして、DiscIDディレクトリのうち、最下層に格納する(ステップＳ４)。続いて、ファイル名を８.３形式に変更しつつ、追加コンテンツデータファイルのダウンロードを行う(ステップＳ５)。こうして追加コンテンツデータファイルのダウンロードがなされれば、マージ管理情報ファイルにおけるファイル名、ディレクトリ名の変更に伴い、署名情報ファイルを変更する(ステップＳ６)。つまりプロバイダ側では、改竄防止のため、ファイルパスが変更される前の、Build-InメディアにおけるLFN形式に対応したファイルパスに対してハッシュ値を算出しており、そうして算出したハッシュ値を署名情報ファイルに記述している。再生装置は、ハッシュ値の算出対象となったファイルパスを、LFNから８.３形式に変更しているので、この変更に伴い、署名情報ファイル内のハッシュ値を再計算にする必要がある。そのような、ファイルパス変更に追随して、ハッシュ値の再計算を行っているのが、このステップＳ６である。
【０１０５】
図１５は、追加コンテンツデータファイルのダウンロード処理の処理手順を示すフローチャートである。本フローチャートは、追加コンテンツデータファイルを構成するそれぞれの追加コンテンツデータファイルについて、ステップＳ１３〜ステップＳ２２の処理を繰り返すループ構造になっている。ここで複数の追加コンテンツデータファイルのうち、処理対象となるものを追加コンテンツデータファイルiとする。
【０１０６】
また、リムーバブルメディアに記録するにあたって、追加コンテンツデータファイルに付与されるファイル名のファイルボディ(ここでファイルボディとは、ファイル名のうち、拡張子を除いた部分の文字列をいう)を“ファイルボディB”と呼び、追加コンテンツデータファイルに付与されるファイル名の拡張子を“拡張子E”と呼ぶ。
ステップＳ１３は、追加コンテンツデータファイルiのファイル名におけるファイルボディiが、８文字以内であるかの判定である。ファイルボディが８文字以内なら追加コンテンツデータファイルiのファイルボディを、ファイルボディBとする。８文字以内でないなら、ステップＳ１５を実行する。ステップＳ１５は、追加コンテンツデータファイルiのファイルボディが全て数字であるか／アルファベットを含むかについての判定である。
【０１０７】
もし、“全て数字”であるなら、ステップＳ１６において追加コンテンツデータファイルiのファイルボディの下８桁の数字をファイルボディBとする。追加コンテンツデータファイルiのファイルボディが“全てアルファベット”であるなら、ステップＳ１７においてアルファベットの大文字からイニシャル文字を生成して、そのイニシャル文字を、小文字にしたものをファイルボディBに採用する。
【０１０８】
ステップＳ１８は、追加コンテンツデータファイルiのファイル名における拡張子が３文字以内であるか否かの判定である。３文字以内であるなら、追加コンテンツデータファイルiの拡張子を拡張子Eとする(ステップＳ１９)。３文字以内でないなら、追加コンテンツデータファイルiの拡張子の上から３桁の文字を拡張子Eとする(ステップＳ２０)。以上の処理の後、ファイルボディBと、拡張子Eとの組合せ(フローチャートでは、“ファイル名B.E”と記載している)を用いて、追加コンテンツデータファイルのリムーバブルメディアにおけるファイルパスを生成し(ステップＳ２１)、マージ管理情報ファイルにおけるローカルストレージのファイルパスを、新たに生成した８.３形式のファイル名に置き換える(ステップＳ２２)。
【０１０９】
図１６はタイトル切り替え時に新旧マージ管理情報ファイルを置き換えて、仮想パッケージの再構築を行うための処理手順を示すフローチャートである。BD-Jモード用のタイトルが再生され（ステップS３１）、タイトル再生中にJava(登録商標)アプリケーションは仮想パッケージ更新要求を行う（ステップS３２）。
仮想パッケージ更新要求時に与える引数の値は、新マージ管理情報ファイルの位置を示すファイルパス、新マージ管理情報ファイルに対応する署名情報ファイルの位置を示すファイルパスである。
【０１１０】
仮想ファイルシステム２３が仮想パッケージ更新要求を受けると、仮想ファイルシステム２３の状態を「更新準備中」とし、指定された新マージ管理情報ファイルが、書き換えられないように、読み取り専用属性に変更する（ステップS３３）。そして、仮想パッケージ更新要求時に指定された署名情報ファイルを用いて、新マージ管理情報ファイルの署名検証を行う（ステップS３４）。
【０１１１】
ステップS３４の署名検証に失敗した場合（ステップS３５でNo）、仮想ファイルシステム２３は仮想パッケージ更新要求を中断し、新マージ管理情報ファイルの属性を読み取り専用から仮想パッケージ更新要求前の元の属性に戻し、Java(登録商標)アプリケーションに対して、仮想パッケージ更新要求拒否通知イベントを投げる（ステップS３９）。
ステップS１０４の署名検証に成功した場合（ステップS３５でYes）、仮想ファイルシステム２３は新マージ管理情報ファイルが参照しているBuild-Inメディア/リムーバブルメディア上のファイルの存在チェックを行い、それらのファイルをJava(登録商標)アプリケーションから読み取り専用となるように属性を変更する（ステップS３６）。
【０１１２】
新マージ管理情報ファイルから参照されていて仮想パッケージ構築に必要なファイルがBuild-Inメディア/リムーバブルメディア上に存在しなかった場合（ステップS３７）、仮想ファイルシステム２３は仮想パッケージ更新処理を中断し、ステップS３３及びステップS３６で属性を変更したファイルを仮想パッケージ更新要求前の元の属性に戻し、Java(登録商標)アプリケーションに対して、仮想パッケージ更新要求拒否通知イベントを投げる（ステップS３９）。
【０１１３】
新マージ管理情報ファイルから参照されていて仮想パッケージ構築に必要なファイルがBuild-Inメディア/リムーバブルメディア上に全て存在していると確認でき、さらにそれらのファイルの属性をJava(登録商標)アプリケーションから読み取り専用に変更する処理が完了すると（ステップS３７でYes）、仮想ファイルシステム２３は仮想ファイルシステムの状態を「更新準備完了」とし、Java(登録商標)アプリケーションに対して、更新準備完了通知イベントを投げる。
【０１１４】
仮想ファイルシステム２３の状態が「更新準備完了」となった後、タイトル切り替えが発生するのを待つ（ステップS３８）。タイトル切り替えが発生すると、切り替え前のタイトルで起動していたJava(登録商標)アプリケーションは終了する（ステップS４０）。その後、旧マージ管理情報ファイルが存在すれば、新マージ管理情報ファイルで上書きし、新旧マージ管理情報ファイルの置き換えを行う（ステップS４１）。仮想パッケージ更新前がオリジナルのBD-ROMで再生されており、旧マージ管理情報ファイルがもともと存在しなかった場合は、旧マージ管理情報ファイルを上書きする代わりに、新マージ管理情報ファイルは、挿入されているBD-ROMのDiscIDに対応するDiscIDディレクトリの下に移動され、正規のマージ管理情報ファイル名にリネームされる。同様に、署名情報ファイルについても新旧ファイルの置き換え、移動を行う。
【０１１５】
新旧マージ管理情報ファイル、署名情報ファイルの置き換えもしくはファイルの移動を終えた後、新マージ管理情報ファイルを元に仮想パッケージを再構築する（ステップS４２）。
仮想パッケージ再構築後、旧マージ管理情報ファイルから参照されていたが、新マージ管理情報ファイルからは参照されていないBuild-Inメディア/リムーバブルメディア上のファイルは読み取り専用属性が解除され、Java(登録商標)アプリケーションから読み書き可能になる。新マージ管理情報ファイル及び、新マージ管理情報ファイルが参照しているBuild-Inメディア/リムーバブルメディア上のファイルに関しては読み取り専用属性のままとなる。
【０１１６】
仮想パッケージの再構築を終えると、新たに構築した仮想パッケージを用いて、切り替え先のタイトル再生を開始する（ステップS３１）。再生中の仮想パッケージに対応するマージ管理情報ファイル及び、そのマージ管理情報ファイルが参照しているBuild-Inメディア/リムーバブルメディア上のファイルは、仮想パッケージ再生中、常に読み取り専用属性となり、Java(登録商標)アプリケーションからは編集、削除することができない。
【０１１７】
図１７は、Java(登録商標)アプリケーションが仮想パッケージ構築/更新要求を発行し、仮想パッケージが更新されるまでの、時間的な処理の流れを示す図である。
第１段目は、タイトルの再生時間軸であり、第２段目はアプリケーション#1の動作時間軸である。第３段目は、アプリケーション#2の動作時間軸であり、第４段目は、仮想ファイルシステムの状態遷移を示す時間軸である。
【０１１８】
本図の初期状態として想定するのは、新しいマージ管理情報ファイル、署名情報ファイルの格納が完了した状態である。つまり、追加コンテンツに加え、現在の仮想パッケージ構築に利用されているマージ管理情報ファイル、署名情報ファイルとは別に新たにマージ管理情報ファイル、署名情報ファイルをインターネット上のサーバからダウンロードして得て、Build-Inメディア上もしくはリムーバブルメディア上に格納した状態を初期状態として想定する。
【０１１９】
タイトル#1の再生中の時点t1において、Java(登録商標)アプリケーション３１は、仮想ファイルシステム管理モジュール３９が提供するAPIを通して仮想ファイルシステム２３に仮想パッケージ構築/更新を要求したものとする。図中のrequestUpdating("/org#1/disc#1/new.xml","/org#1/disc#1/new.sf")は、この仮想パッケージ構築要求となるAPI呼出しである。この仮想パッケージ構築要求の引数"/org#1/disc#1/new.xml","/org#1/disc#1/new.sf"は、Build-Inメディア/リムーバブルメディア上に格納されている新マージ管理情報ファイル、署名情報ファイルの位置を指定したファイルパスである。時点t1は、この更新要求がなされた時点を示す。
【０１２０】
時点t1は、Java(登録商標)アプリケーション３１からの仮想パッケージ構築/更新要求を受け取って、その状態を「更新準備中」に遷移する時点である。
ここで、「更新準備中」とは、指定された新マージ管理情報ファイル及び、新マージ管理情報ファイルが参照しているBuild-Inメディア/リムーバブルメディア上のファイルを読み取り専用に属性を変更する処理を含む。
【０１２１】
かかる処理の他、仮想パッケージ更新要求時にJava(登録商標)アプリケーション３１から指定された署名情報ファイルを用いて、新マージ管理情報ファイルの署名検証を行い、さらに新マージ管理情報ファイルのファイル格納位置情報に記載されているファイルが全て指定の位置に存在するかのチェックを行う。
時点t2は、ファイル存在のチェックが終わった後、仮想ファイルシステムの状態を「更新準備完了」とする時点を示す。こうして状態を遷移させれば、Java(登録商標)アプリケーションに対して、更新準備完了通知イベントを投げる。新マージ管理情報ファイルの署名検証、もしくはファイル格納位置情報に記載されているファイルの存在チェックに失敗した場合、仮想ファイルシステム２３は更新要求を拒否し、仮想ファイルシステム管理モジュール３９を通じて更新要求拒否通知イベントをJava(登録商標)アプリケーション３１に対して投げ、仮想ファイルシステム２３の状態を「更新準備中」となる前の状態（「仮想パッケージ再生状態」もしくは「BD-ROM再生状態」）に戻す。「仮想パッケージ再生状態」とは、BD-ROMが再生装置にロードされ、仮想ファイルシステム２３により仮想パッケージとして再生中であり、保留中の仮想パッケージ更新要求がない状態を指す。「BD-ROM再生状態」とは、BD-ROMが再生装置にロードされ、そのままオリジナルのBD-ROMとして再生中であり、同じく保留中の仮想パッケージ更新要求がない状態を指す。
【０１２２】
時点t3は、仮想ファイルシステム２３の状態が「更新準備完了」となった後の時点を示す。タイトル切り替えが発生すると、仮想ファイルシステム２３は仮想パッケージ更新要求時に指定された新マージ管理情報ファイルを用いて、旧マージ管理情報ファイル（現在の仮想パッケージ構築に利用されているマージ管理情報ファイル）を上書きすることにより、旧マージ管理情報ファイルを新マージ管理情報ファイルに置き換える。
【０１２３】
仮想パッケージ更新前がオリジナルのBD-ROMの再生中であり、旧マージ管理情報ファイルがもともと存在しなかった場合は、旧マージ管理情報ファイルを上書きする代わりに、新マージ管理情報ファイルを、挿入されているBD-ROMのDiscIDに対応するDiscIDディレクトリの下に移動する。こうすることで新マージ管理情報は、正規のマージ管理情報ファイル名(bumf.xml)にリネームされる。署名情報ファイルもマージ管理情報ファイル同様に新旧署名情報ファイルの置き換えを行う。新旧マージ管理情報ファイル、署名情報ファイルの置き換え、もしくは新マージ管理情報ファイル、署名情報ファイルの移動が終わった後、仮想ファイルシステム２３は、挿入されているBD-ROMのDiscIDに対応するDiscIDディレクトリの下に格納されている新マージ管理情報を元に仮想パッケージを再構築し、仮想パッケージのファイル構成を更新する。
【０１２４】
時点t4は、  かかる更新を終えた時点であり、Build-Inメディアドライブ・リムーバブルメディアドライブ２２は、“仮想パッケージ再生状態”になる。仮想パッケージを更新した後も、仮想パッケージ再生状態である期間は、新マージ管理情報ファイル及び、新マージ管理情報ファイルのファイル格納位置情報が指し示すBuild-Inメディア/リムーバブルメディア上のファイルは読み取り専用に属性のままとなる。ただし、旧マージ管理情報ファイルから参照されていて、新マージ管理情報ファイルから参照されていないファイルは読み取り専用属性が解除され、Java(登録商標)アプリケーションから読み書き可能になる。
【０１２５】
以上のように本実施形態によれば、リムーバブルメディアに対して、８.３形式までのファイル名しかサポートしていないファイルシステムで構成された再生装置においても、リムーバブルメディアを利用した仮想パッケージ構築を行うことができる。また、リムーバブルメディアにおける追加コンテンツ領域のルートディレクトリを固定することで、再生装置間の互換性を保つことができる。具体的には、ある再生装置がリムーバブルメディアに追加コンテンツデータを記録した後、当該リムーバブルメディアを別の再生装置に装填したとしても、その再生装置は、リムーバブルメディアに記録された追加コンテンツデータを利用することができる。
【０１２６】
尚、ステップＳ７では、アルファベットのイニシャルを生成することで、LFNから８.２形式への変更を図ったが、対象となるファイル名に応じて、他の生成法を採用してもよい。例えば、先頭から８文字を抜き出すことにより、８.２形式への変更を図ってもよい。
（第２実施形態）
本実施形態は、DiscIDの上位に存在する“0”の桁の扱いに関する。MHP(Multimedia Home Platform)上で動作するアプリケーションは、MHP固有のIDを使用する際、上位桁の“0”を省略する。DiscIDでも、上位桁の“0”については、省略することが望ましいので、本実施形態におけるJava(登録商標)アプリケーションは、そのような、上位桁の“0”を省略したDiscIDを用いて、仮想パッケージの構築を命じる。
【０１２７】
そのように、上位桁の0を省略する場合、リムーバブルメディアにおけるディレクトリ構成は、図２８に示すものとなる。
図２８は、第２実施形態におけるリムーバブルメディア上のディレクトリ構成を示す図である。OrganizationIDディレクトリ, DiscIDディレクトリは、index.bdmvに示される32ビットのOrganizationID, 128ビットのDiscIDを１６進表記で表したディレクトリ名となる。
【０１２８】
これらのうちDiscIDは先頭の０を省略することにより、全体のパス長を短くしている。ただし、先頭の８文字が全て０になる場合、ディレクトリ名は“０”1文字となる。また、DiscIDディレクトリにおいて、先頭ではなく、途中に０が続く場合は、省略してはならない。すなわち、DiscID=00000000123456781234567812345678の場合、DiscIDのディレクトリ構成は0/12345678/12345678/12345678と先頭の０を省略可能であるが、DiscID=12345678000000001234567812345678の場合は、省略せずに12345678/00000000/12345678/12345678となる。省略の対象は、DiscIDに限らず、CertIDディレクトリも同様に先頭の０を省略してもよい。
【０１２９】
図２９は、第２実施形態におけるJava(登録商標)アプリケーションからDiscIDディレクトリへのアクセスを示す図である。DiscIDディレクトリはindex.bdmvに記載されている128ビットのDiscIDを示し、４階層のディレクトリ構成となっているが、Java(登録商標)アプリケーションからはあたかも、１ディレクトリとしてアクセスを行う。例えば、DiscIDディレクトリ構成が0/0/abc/12345678の場合、マージ管理情報ファイルの取得にあたって、Java(登録商標)アプリケーションはabc12345678の１ディレクトリとしてアクセスを行う。
【０１３０】
ファイルI/Oモジュール３４はDisc IDディレクトリへのアクセスを検知すると、DiscIDディレクトリ変換部４０に、４ディレクトリ構成のDiscIDディレクトリへのパス変換を行わせる。DiscIDディレクトリ変換部４０はDiscIDディレクトリが１ディレクトリとして扱われたファイルパスを受け取ると、１ディレクトリ名として扱われているDiscIDディレクトリを４ディレクトリに分割する。
【０１３１】
図２０は、１ディレクトリ名として扱われているDiscIDディレクトリを４ディレクトリに分割する処理手順を示すフローチャートである。ステップＳ４１では、DiscIDを３２ビットに区切って、３２ビットのディレクトリ名をn個生成する。ステップＳ４２は、ステップＳ４１で生成したディレクトリ名の個数nが4個であるか否かの判定であり、4個であれば、ステップＳ４３において生成した4個のディレクトリ名から特定される、4階層のDiscIDのファイルパスを得る。4個でなければ、ステップＳ４４において“0”のディレクトリ名を“4-n”生成して、ディレクトリ名を４つにする。
【０１３２】
以上のように本実施例によれば、リムーバブルメディア上に保存するファイルのパス名を短縮することができる。また、Java(登録商標)アプリケーションは、４ディレクトリ構成となるDiscIDディレクトリを１ディレクトリとして扱うことができ、I/O処理を簡潔に行うことができる。
(第３実施形態)
本実施形態は、第１実施形態に示したようなディレクトリ構造で、リムーバブルメディアに追加コンテンツデータファイルが格納されている場合の、BD-ROM装填時における、処理手順の改良である。
【０１３３】
図２１は、リムーバブルメディアを考慮したBD-ROM挿入から再生開始までのフローチャートである。まず、BD-ROMが挿入されると、リムーバブルメディアがすでに挿入済みかどうかの判断を行う（ステップS２０１）。リムーバブルメディアが挿入されていなければ、リムーバブルメディアを無効にして再生を開始する（ステップS２０７）。リムーバブルメディアが無効と判断された場合、Build-Inメディア上の追加コンテンツファイルを用いて仮想パッケージが構築可能かどうかの判断を行っても良い。Build-Inメディア上の追加コンテンツで仮想パッケージが構築可能であれば、Build-Inメディア上の追加コンテンツとBD-ROM上のデータで仮想パッケージを構築して再生を開始する。
【０１３４】
ステップS２０１においてリムーバブルメディアがすでに挿入済みと判断された場合は、ユーザに対してリムーバブルメディアを有効にするかどうかの問い合わせを行う（ステップS２０２）。事前に、再生装置のユーザ設定で予め「リムーバブルメディアを優先する」という設定を行っていれば、ステップS２０２によるユーザへの問い合わせは省略しても良い。また、再生装置として「リムーバブルメディアを優先する」という設定が決まっている場合も同様に、ステップS２０２のユーザへの問い合わせは省略可能である。
【０１３５】
ステップＳ２０３は、リムーバブルメディアを有効にすることにユーザの承認があったかどうかの判定である。ユーザがリムーバブルメディアを有効にするという選択を行えば、ステップＳ２０３はYesになり、ステップＳ２０４において挿入されているリムーバブルメディアを有効にする。リムーバブルメディアが有効であるという状態は、具体的には、リムーバブルメディアに、BUDAディレクトリ、CertIDディレクトリ、OrganizationIDディレクトリ、DiscIDディレクトリといったディレクトリ構造が存在していて、これらのうち、DiscID内の追加コンテンツデータファイルに対するアクセスが可能になっており、Java(登録商標)アプリケーションからファイルI/Oモジュール３４を通してリムーバブルメディア上のファイルが読み書き可能であることを指す。
【０１３６】
ステップS２０４でリムーバブルメディアを有効にした後、リムーバブルメディア上のデータを用いて仮想パッケージが構築可能かどうかの判断を行う（ステップS２０５）。仮想パッケージが構築不可能であれば、リムーバブルメディアを有効にしたままBD-ROM上のデータのみで再生を行う。ステップS２０５で仮想パッケージが構築可能と判断されれば、リムーバブルメディア上の追加コンテンツを用いて仮想パッケージを構築し（ステップS２０６）、仮想パッケージにて再生を開始する。
【０１３７】
図２２は仮想パッケージが構築可能か判断するフローチャートである。まず、挿入されているBD-ROMのDiscIDをIndex.bdmvから読み出して、内容を確認する（ステップS３０１）。DiscIDの読み出し及び確認は仮想ファイルシステム２３がDiscID確認モジュール３７を通して、DiscIDの値を取得することでなされる。なお、DiscIDの確認は仮想ファイルシステム２３が直接BD-ROMにアクセスして行ってもよい。
【０１３８】
挿入されたBD-ROMのDiscIDの確認が終わると、そのDiscIDに対応する４階層のDiscIDディレクトリがリムーバブルメディアに存在するかどうかのサーチを行い、マージ管理情報ファイル、署名情報ファイルが存在するか否かを判定する（ステップS３０２）。このとき、リムーバブルメディアが有効であればリムーバブルメディア上のDiscIDディレクトリを探し、リムーバブルメディアが無効であればBuild-Inメディア上のDiscIDディレクトリを探す。マージ管理情報ファイルもしくは署名情報ファイルが挿入されたDiscIDに対応するDiscIDディレクトリに存在しなければ、仮想パッケージ構築不可と判断する。
【０１３９】
ステップS３０２で対応するマージ管理情報ファイル、署名情報ファイルが存在すると判断した場合、マージ管理情報ファイル、署名情報ファイルを読み取り専用属性に変更し（ステップS３０３）、署名情報ファイルを用いて、マージ管理情報ファイルの署名検証を行う（ステップS３０４）。署名検証に失敗すれば、仮想パッケージ構築不可と判断する（ステップS３０５でNo）。
【０１４０】
署名検証に成功すれば(ステップS３０５でYes)、マージ管理情報ファイルのファイル格納位置情報に記載されている各ファイルが存在するかどうかのチェックを行い、それらのファイルを読み取り専用属性に変更する（ステップS３０６）。ステップＳ３０７は、変更が成功したか否かの判定である。ファイル格納位置情報に記載されているファイルが全て揃っておらず、仮想パッケージ構築が不可であるならステップＳ３０７はNoとなる。ファイル格納位置情報に記載されているファイルが全て揃っており、かつそれらのファイルの属性を読み取り専用に変更できればステップＳ３０７がYesとなって、仮想パッケージ構築可能と判断する（ステップS３０８）。
【０１４１】
図２３はステップS２０３においてユーザにリムーバブルメディアを有効にするかどうかの確認を行う画面表示の一例である。この図では出力画面上及び再生装置上の表示パネルにリムーバブルメディアが挿入されたことを示している。もちろんどちらか一方のみの表示でもよい。
また出力画面上には有効にするか無効にするかの選択ボタンを表示しており、ユーザに対して出力画面上のボタンを選択させるようにしている。これは、あらかじめリモコン上のキーのうち、有効・無効を示すキーを決めておくことで、画面上で選択するのではなく、リモコン上のキーで有効・無効を選択することも考えられる。また、所定の時間を経過してもキー入力がなければ、リムーバブルメディアを有効にする、もしくは無効にするとしてもよい。
【０１４２】
再生装置にはリムーバブルメディアを検知したことを示すランプ、リムーバブルメディアが有効であることを示すランプ、リムーバブルメディア上のデータで仮想パッケージ再生中であることを示すランプを備えている。リムーバブルメディアを検知したことを示すランプは、リムーバブルメディアの有効/無効関係なく、リムーバブルメディアが挿入中であれば光ってリムーバブルメディアが挿入中であることを示す。
【０１４３】
リムーバブルメディアが有効であることを示すランプはリムーバブルメディアが挿入中でかつ有効であれば光って変化する。仮想パッケージとしてデータが利用中であるかどうかは、このランプには関係ない。
リムーバブルメディア上のデータで仮想パッケージ再生中であることを示すランプは、リムーバブルメディアが挿入中で、かつ有効であり、さらに仮想パッケージとして利用中であれば光って変化する。
【０１４４】
ステップS２０３においては、リムーバブルメディアが挿入され、まだ有効化されていない状態であるため、リムーバブルメディアを検知したことを示すランプのみが光る。ステップS２０４でリムーバブルメディアが有効化されると、リムーバブルメディアが有効であることを示すランプが光り、ステップS２０６でリムーバブルメディアを利用して仮想パッケージが構築されると、図２４に示すようにリムーバブルメディア上のデータで仮想パッケージ再生中であることを示すランプが光る。なお、これらの３つのランプは一つのランプにまとめて色を変える、点滅速度を変えるなどして３種類の状態の違いを示すことも考えられる。また、光ランプではなく、再生装置上の表示モニタにこれらの状態を示してもよい。また、この実施例ではリムーバブルメディアの状態を示すものとして光ランプを例に説明しているが、光ランプ以外の表示デバイスを使用してもよい。
【０１４５】
図２５は図２１のフローチャートに仮想パッケージとして再生するか否かの問い合わせを加えたフローチャートである。図２１のフローチャートでは、ユーザがリムーバブルメディアを有効にするという選択を行えば、仮想パッケージが構築可能であれば必ず仮想パッケージを構築していた。図２５のフローチャートでは、ステップS４０１を追加し、仮想パッケージを構築するか否かをユーザに問い合わせ、リムーバブルメディアが有効であり、仮想パッケージが構築可能であっても、ユーザの選択によっては仮想パッケージにて再生を行わないようにしている。
ステップS４０１におけるユーザ問い合わせも、ステップS２０３同様、事前に再生装置のユーザ設定で予め「仮想パッケージを優先する」という設定を行っていれば、ステップS４０１によるユーザへの問い合わせは省略して、仮想パッケージを構築しても良い。また、再生装置として「仮想パッケージを優先する」という設定が決まっている場合も同様に、ステップS４０１のユーザへの問い合わせは省略可能である。
【０１４６】
図２６はステップS４０１においてユーザにリムーバブルメディアを使った仮想パッケージを有効にするかどうかの確認を行う画面表示の一例である。図２３同様、出力画面上及び再生装置上の表示パネルにリムーバブルメディアが利用可能であることを示しているが、もちろんどちらか一方のみの表示でもよい。
また、出力画面上にはリムーバブルメディアを利用するかどうかの選択ボタンを表示しており、ユーザに対して出力画面上のボタンを選択させるようにしているが、図２３同様、あらかじめリモコン上のキーのうち、利用・拒否を示すキーを決めておくことで、画面上で選択するのではなく、リモコン上のキーで利用・拒否を選択することも考えられる。また、所定の時間を経過してもキー入力がなければ、リムーバブルメディアを利用して仮想パッケージを再生する、もしくはリムーバブルメディアを再生に利用しないとしてもよい。
【０１４７】
図２７は再生中にリムーバブルメディアが挿入された場合の処理を示すフローチャートである。再生中にリムーバブルメディアが挿入され、リムーバブルメディアを検知した場合、ユーザに対してリムーバブルメディアが検知されたことを示す表示を行い、リムーバブルメディアを有効にするかどうかの問い合わせを行う（ステップS５０１）。ステップＳ５０２は、この問合せに対する承認があったかどうかを判定するステップである。ユーザがリムーバブルメディアを有効にしないという選択を行えば、リムーバブルメディアを無効にして、そのまま再生を継続する（ステップS５０７）。ユーザがリムーバブルメディアを有効にするという選択を行えば、リムーバブルメディアを有効にし（ステップS５０３）、次にリムーバブルメディアを利用して仮想パッケージが構築可能かの判断を行う（ステップS５０４）。仮想パッケージが構築可能かの判断は図２２に示すフローチャートの処理で決定する。仮想パッケージが構築可能ではないと判断されると（ステップS５０５でNo）、仮想パッケージを構築せず、そのまま再生を継続する。仮想パッケージが構築可能の場合(ステップＳ５０５でYes)、仮想パッケージを構築し（ステップS５０６）、BD-ROMの再生を再起動する。ここでBD-ROMの再起動とは、現在の再生を停止し、仮想パッケージを構築した後に「First  Play」タイトルもしくは「Top  Menu」タイトル、もしくは仮想パッケージ構築前に再生していたタイトルの最初から再生することを指す。
【０１４８】
ステップS５０１、５０２における、ユーザへのリムーバブルメディアに有効にするかどうかの問い合わせは、ステップS２０２同様、事前に、再生装置のユーザ設定で予め「リムーバブルメディアを優先する」という設定を行っていれば、ステップS２０３によるユーザへの問い合わせは省略しても良い。また、ステップS５０５で仮想パッケージ構築可能と判断された後、ステップS４０１同様、ユーザへリムーバブルメディアを利用して仮想パッケージを構築するかどうかの問い合わせを行っても良い。
【０１４９】
なお、すでにBuild-Inメディア上のデータを利用した仮想パッケージ再生中に、リムーバブルメディアが挿入され、そしてリムーバブルメディアを有効にした場合は、仮想パッケージ構築の有無にかかわらず、一旦BD-ROMの再起動を行ってBuild-Inメディアを無効にしてもよい。
図２８はステップS５０２においてユーザにリムーバブルメディアを有効にするかどうかの確認を行う画面表示の一例である。基本的には図２３で説明した内容と同じであるが、異なる点はすでにAV再生が行われていることである。図２８ではAV再生を一時停止して、ユーザからの入力を待っているが、AV再生を再生しながら、ユーザからの入力を待っていてもよい。
【０１５０】
図２９はリムーバブルメディア挿入後、仮想パッケージ構築判断を先に行った後にユーザへの問い合わせを行う処理のフローチャートである。図２７のフローチャートとの違いは、ユーザへの問い合わせの前に仮想パッケージ構築判断を済ませている点である。ステップS５０４は、仮想パッケージが構築可能であるかどうかの判定であり、ステップＳ５０５は、仮想パッケージデータが有効であるか否かの判定である。ステップＳ５０４、S５０５で仮想パッケージ構築不可であり、仮想パッケージデータが有効でないと判断された場合は、ユーザに対してリムーバブルメディアを有効にするかどうかの問い合わせだけを行う(ステップＳ５０１)。
【０１５１】
仮想パッケージ構築可であり、仮想パッケージデータが有効であると判断された場合は、ステップＳ５０８においてユーザへ仮想パッケージとしてリムーバブルメディアを利用するかどうかの問い合わせを行い、ステップＳ５０９に移行するステップＳ５０９は、仮想パッケージ構築に、ユーザによる承認がなされたかどうかの判定であり、承認がなされなかった場合、ステップＳ５１０において次にリムーバブルメディアを有効にするかどうかの問い合わせを行う。仮想パッケージとしての利用するとユーザが選択した場合は、リムーバブルメディアを有効にした後、ステップＳ５０６において仮想パッケージの構築を行う。
【０１５２】
図３０はリムーバブルメディア有効状態で再生中にリムーバブルメディアが取り出された場合の処理のフローチャートである。リムーバブルメディア有効状態で再生中にリムーバブルメディアが取り出されると（ステップS６０１）、まずリムーバブルメディアを利用した仮想パッケージで再生中かどうかを判断する（ステップS６０２）。仮想パッケージにリムーバブルメディアを利用していなければ、リムーバブルメディアを無効化し（ステップS６０３）、再生を継続する。
【０１５３】
リムーバブルメディアを利用した仮想パッケージで再生中であれば、再生を中断し（ステップS６０４）、ユーザに対してリムーバブルメディアが取り出されたことを示す表示を行い、リムーバブルメディアを再挿入して再生を再開するか、再生を停止しリムーバブルメディアなしで再生をやり直すかの問い合わせを行う（ステップS６０５）。ステップＳ６０６は、問合せに対する判定である。再びリムーバブルメディアが挿入されれば、ステップＳ６０７において、中断していた再生を再開する。所定の時間内にリムーバブルメディアが挿入されなかったり、再生を停止するという選択をユーザが行なった場合は、ステップＳ６０８においてリムーバブルメディアを利用せずにBD-ROMの再起動を行う。
【０１５４】
なお、ステップS６０３でリムーバブルメディアを無効化した後、もしくはステップS６０５でユーザが再生停止を選択した後は、Build-Inメディアを有効化し、Build-Inメディア上データで仮想パッケージが構築できるかの判断を行っても良い。Build-Inメディア上のデータで仮想パッケージを構築できると判断した場合は、Build-Inメディア上のデータで仮想パッケージを構築し、BD-ROM再起動を行う。また、仮想パッケージを構築可能であれば、Build-Inメディア上のデータで仮想パッケージを構築するかユーザに判断させてもよい。
【０１５５】
ステップS６０５は、事前に再生装置のユーザ設定で予め「利用中のリムーバブルメディアが取り出された時は再生を停止する」という設定を行っていれば、ステップS６０５によるユーザへの問い合わせは省略し、現在の再生を停止して、BD-ROMの再起動を行っても良い。また、再生装置として「利用中のリムーバブルメディアが取り出された時は再生を停止する」という設定が決まっている場合も同様に、ステップS６０５のユーザへの問い合わせは省略可能である。なお、再生を停止した後、自動的にBD-ROMの再起動を行わずに、停止したままの状態でユーザからの操作（再生ボタン押下など）を待っていてもよい。
【０１５６】
また、リムーバブルメディアが挿入されたときに、リムーバブルメディア上のデータをBuild-Inメディアにコピーして、Build-Inメディア上にコピーされたデータを利用して仮想パッケージを再生することも考えられる。この場合は、リムーバブルメディアは無効状態となっているため、ステップS６０１でリムーバブルメディアが取り出されても、再生が中断されず、リムーバブルメディアが無効と判断され、ステップS６０３に遷移して再生が継続される。
【０１５７】
図３１はステップS６０５においてユーザにリムーバブルメディアを再挿入して再生を再開するか、リムーバブルメディアを利用した再生を終了するかどうかの確認を行う画面表示の一例である。この図では出力画面上及び再生装置上の表示パネルにリムーバブルメディアが取り出されたことを示しているが、もちろんどちらか一方のみの表示でもよい。  また出力画面上には再生を終了するかどうかの選択ボタンを表示しており、ユーザに対して出力画面上のボタンを選択させるようにしている。これは、あらかじめリモコン上のキーのうち、終了を示すキーを決めておくことで、画面上で選択するのではなく、リモコン上のキーで終了を選択することも考えられる。また、所定の時間を経過してもキー入力がなければ、再生を終了するとしてもよい。
【０１５８】
なお、本実施の形態ではリムーバブルメディア利用中は、リムーバブルメディア有効ランプで、リムーバブルメディア利用中であることをユーザに知らせているが、リムーバブルメディア利用中は物理的に抜けないように保護してもよい。
(備考)
以上、本願の出願時点において、出願人が知り得る最良の実施形態について説明したが、以下に示す技術的トピックについては、更なる改良や変更実施を加えることができる。各実施形態に示した通り実施するか、これらの改良・変更を施すか否かは、何れも任意的であり、実施する者の主観によることは留意されたい。
【０１５９】 
＜利用できる文字コード＞
各実施形態では、ファイル名、ディレクトリ名、拡張子名がASCIIコードで構成されている一例について説明したが、ファイル名、ディレクトリ名が、ASCIIコード以外の文字コード、つまり、JIS漢字コード、SHIFT-JIS漢字コード、Unicodeで表現されている場合、リムーバブルメディアにおけるファイル名、ディレクトリ名は、３２ビットを１文字当たりのビット長で割ることで得られる文字数に制限される。
【０１６０】
Unicodeとは、全世界のほとんどの文字を１６ビットのコードで表現して、1つのコード体系で、多国語処理を可能にしようとするコード体系である。このUnicodeを用いて、ファイル名、ディレクトリ名が表現されているのならば、リムーバブルメディアに記録されるにあたってのファイル名、ディレクトリ名は、２文字以下(＝３２ビット／１６ビット)に制限されることになる。
【０１６１】
上記以外にも、ファイル名、ディレクトリ名を表現するための文字コードとして、BIG5キャラクタコード、GB18030-2000キャラクタコード、EUC-KRキャラクタコードを用いてもよい。
＜マージ管理情報ファイルの記載のバリエーション＞
マージ管理情報ファイルでは、インターネットにおけるURLをリムーバブルメディアのファイルパスと対応付けてもよい。
【０１６２】
またLAN,WAN等を前提としたディレクトリサービスにおいて、リソースを特定するためのファイルパスを、リムーバブルメディアのファイルパスと対応付けてもよい。例えば、ITU-T勧告のX.500シリーズ勧告によるディレクトリサービスであって、世界的なネームサービスを実現するもののディレクトリ情報をマージ管理情報ファイルに記載し、リムーバブルメディアのファイルパスと対応付けてもよい。
【０１６３】
この場合、再生装置のネットワークインターフェイスは、LDAP(Light weight Directory Access Protoocol)をサポートするのが望ましい。LDAPのバージョン３では、UTF-8が適用され、UniCodeをバイト列に置き換えるという変換を実現するので、例えば日本語を用いたファイルパスと、リムーバブルメディアのファイルパスとの対応付けをマージ管理情報ファイル上で実現することができる。
【０１６４】
＜再生装置の類型＞
対象となる再生装置は、記録媒体を再生する再生機能のみを持つ再生装置であっても、録画機能をもつ再生装置であってもよい。
＜プログラミング言語のバリエーション＞
上記実施形態では、仮想マシンのプログラミング言語としてJava(登録商標)を利用したが、Java(登録商標)ではなく、UNIX(登録商標)OSなどで使われているB-Shellや、Perl Script、ECMAScriptなど他のプログラミング言語であっても良い。
【０１６５】
＜仮想パッケージ生成にあたっての、基本となるデータ＞
各実施形態では、第１の記録媒体の一例としてBD-ROMに記録されたデータに基づき仮想パッケージを構築する場合について説明したが、BD-ROM用データが、リライタブル型記録媒体に記録されているような場合でも、このBD-ROM用データを基にして仮想パッケージを構築してもよい。
【０１６６】
ここで、仮想パッケージ生成の対象となるリライタブル型記録媒体にはBD-RやBD-REがある。また、仮想パッケージ生成の対象となる記録媒体は、CD-ROM、CD-R、CD-RW、DVD-ROM、DVD-R、DVD-RW、DVD-RAM、DVD+R、DVD+RW等の他の光ディスクであってもよい。
＜SDメモリカードに対する記録＞
各実施形態で採用した“SDメモリカード”は、消去可能ブロックという単位で書き換えがなされ、また、この書き込みにあたっては、消去可能ブロックの記録内容を消去して、一旦、白紙の状態に戻す必要がある。この消去可能ブロックは、例えば１６Ｋバイトというデータサイズを有しており、その書き換えは、数十万回が限度であるという物理的特性を有している。
【０１６７】
一方、FAT形ファイルシステムにおいてファイルは、1つ以上のクラスタから構成される。このクラスタは、１６Ｋバイト、３２Ｋバイト、６４Ｋバイトといったデータサイズを有しておりいるので、またSDメモリカード上のファイルシステムでは、クラスタの境界は、消去可能ブロックの境界と一致させておくことが望ましい。
この場合、“ファイル＝1つ以上のクラスタ＝消去可能ブロック”という関係が成立する訳で、エントリー領域の状態が変化した際、書き換えるべきファイルの数を減らすことは、そのまま消去可能ブロックの書き換え回数を減らすことに直結し、かかる書き換え回数を減らすことで、SDメモリカードの長寿命化を図ることができる。
【０１６８】
加えて、図１０に示したファイル、ディレクトリエントリのうちBD-ROM固有のもの、つまり、DiscIDディレクトリのディレクトリエントリや、マージ管理情報ファイル「bumf.xml」、署名情報ファイル「bumf.sf」、追加コンテンツデータファイル「00001.mpl」「mo.bdm」「00001.m2t」は、1つ以上の消去可能ブロック内に丁度収まるよう、記録処理を行うことが望ましい。
【０１６９】
このような記録処理により、マージ管理情報ファイルや署名情報ファイル、追加コンテンツデータファイルの更新にあたって、書き換えがなされる消去可能ブロックの数を最小にすることができる。
同じく、Rootディレクトリエントリや二重化FATも、1つ以上の消去可能ブロック内に丁度収まるよう、記録処理を行うことが望ましい。このような記録処理により、追加コンテンツデータファイルの更新にあたって、書き換えがなされる消去可能ブロックの数を最小にすることができる。
【０１７０】
＜システムLSI化＞
図５に示した再生装置を構成するハードウェアのうち、機構的な構成要素(BDドライブ１)、大容量のメモリによって実装される構成要素(ビデオプレーン５、グラフィクスプレーン８)を除いた、論理素子を主要部とする部分を、1つのシステムLSIとして構成することが望ましい。何故なら、論理素子を主要部とする部分は、高密度に集積化することができるからである。
【０１７１】
システムLSIとは、高密度基板上にベアチップを実装し、パッケージングしたものをいう。複数個のベアチップを高密度基板上に実装し、パッケージングすることにより、あたかも1つのLSIのような外形構造を複数個のベアチップに持たせたものも、システムLSIに含まれる(このようなシステムLSIは、マルチチップモジュールと呼ばれる。)。
ここでパッケージの種別に着目するとシステムLSIには、QFP(クッド フラッド アレイ)、PGA(ピン グリッド アレイ)という種別がある。QFPは、パッケージの四側面にピンが取り付けられたシステムLSIである。PGAは、底面全体に、多くのピンが取り付けられたシステムLSIである。
【０１７２】
これらのピンは、他の回路とのインターフェイスとしての役割を担っている。システムLSIにおけるピンには、こうしたインターフェイスの役割が存在するので、システムLSIにおけるこれらのピンに、他の回路を接続することにより、システムLSIは、再生装置の中核としての役割を果たす。
かかるシステムLSIは、再生装置は勿論のこと、TVやゲーム、パソコン、ワンセグ携帯等、映像再生を扱う様々な機器に組込みが可能であり、本発明の用途を多いに広げることができる。
【０１７３】
上述したようなシステムLSIは、再生装置の機能を実現するものなので、システムLSIは、Uniphierアーキテクチャに準拠させるのが望ましい。
Uniphierアーキテクチャに準拠したシステムLSIは、以下の回路ブロックから構成される。
・データ並列プロセッサDPP
これは、複数の要素プロセッサが同一動作するSIMD型プロセッサであり、各要素プロセッサに内蔵されている演算器を、1つの命令で同時動作させることで、ピクチャを構成する複数画素に対するデコード処理の並列化を図る。
【０１７４】
・命令並列プロセッサIPP
これは、命令RAM、命令キャッシュ、データRAM、データキャッシュからなる「Local Memory Contoroller」、命令フェッチ部、デコーダ、実行ユニット、レジスタファイルからなる「Processing Unit部」、複数アプリケーションの並列実行をProcessing Unit部に行わせる「Virtual Multi Processor Unit部」で構成される。
【０１７５】
・CPUブロック
これは、ARMコア、外部バスインターフェイス(Bus Control Unit:BCU)、DMAコントローラ、タイマー、ベクタ割込コントローラといった周辺回路、UART、GPIO(General Purpose Input Output)、同期シリアルインターフェイスなどの周辺インターフェイスで構成される。先に述べたコントローラは、このCPUブロックとしてシステムLSIに実装される。
【０１７６】
・ストリームI/Oブロック
これは、USBインターフェイスやATA Packetインターフェイスを介して、外部バス上に接続されたドライブ装置、ハードディスクドライブ装置、SDメモリカードドライブ装置とのデータ入出力を行う。
・AVI/Oブロック
これは、オーディオ入出力、ビデオ入出力、OSDコントローラで構成され、テレビ、AVアンプとのデータ入出力を行う。
【０１７７】
・メモリ制御ブロック
これは、外部バスを介して接続されたSD-RAMの読み書きを実現するブロックであり、各ブロック間の内部接続を制御する内部バス接続部、システムLSI外部に接続されたSD-RAMとのデータ転送を行うアクセス制御部、各ブロックからのSD-RAMのアクセス要求を調整するアクセススケジュール部からなる。
【０１７８】
具体的な生産手順の詳細は以下のものになる。まず各実施形態に示した構成図を基に、システムLSIとすべき部分の回路図を作成し、回路素子やIC,LSIを用いて、構成図における構成要素を具現化する。
そうして、各構成要素を具現化してゆけば、回路素子やIC,LSI間を接続するバスやその周辺回路、外部とのインターフェイス等を規定する。更には、接続線、電源ライン、グランドライン、クロック信号線等も規定してゆく。この規定にあたって、LSIのスペックを考慮して各構成要素の動作タイミングを調整したり、各構成要素に必要なバンド幅を保証する等の調整を加えながら、回路図を完成させてゆく。
【０１７９】
回路図が完成すれば、実装設計を行う。実装設計とは、回路設計によって作成された回路図上の部品(回路素子やIC,LSI)を基板上のどこへ配置するか、あるいは、回路図上の接続線を、基板上にどのように配線するかを決定する基板レイアウトの作成作業である。
こうして実装設計が行われ、基板上のレイアウトが確定すれば、実装設計結果をCAMデータに変換して、NC工作機械等の設備に出力する。NC工作機械は、このCAMデータを基に、SoC実装やSiP実装を行う。SoC(System on chip)実装とは、1チップ上に複数の回路を焼き付ける技術である。SiP(System in Package)実装とは、複数チップを樹脂等で1パッケージにする技術である。以上の過程を経て、本発明に係るシステムLSIは、各実施形態に示した再生装置の内部構成図を基に作ることができる。
【０１８０】
尚、上述のようにして生成される集積回路は、集積度の違いにより、IC、LSI、スーパーLSI、ウルトラLSIと呼称されることもある。
FPGAを用いてシステムLSIを実現した場合は、多数のロジックエレメントが格子状に配置されており、LUT(Look Up Table)に記載されている入出力の組合せに基づき、縦・横の配線をつなぐことにより、各実施形態に示したハードウェア構成を実現することができる。LUTは、SRAMに記憶されており、かかるSRAMの内容は、電源断により消滅するので、かかるFPGAの利用時には、コンフィグ情報の定義により、各実施形態に示したハードウェア構成を実現するLUTを、SRAMに書き込ませる必要がある。
【産業上の利用可能性】
【０１８１】
本発明を構成する再生装置は、各実施形態に示した内部構成を用いて工業的に生産することができるので、製造産業において利用される可能性がある。
【符号の説明】
【０１８２】
１００  BD-ROM
１０１  WWWサーバ
１０２  再生装置
１０３  テレビ
１０４  リムーバブルメディア
１  BDドライブ 
２  トラックバッファ
３  デマルチプレクサ
４  ビデオデコーダ
５  ビデオプレーン
６  オーディオデコーダ
７  グラフィクスメモリ
８  グラフィクスプレーン
９  グラフィクスデコーダ
１０  加算器
１１  静的シナリオメモリ
１２  動的シナリオメモリ
１３  HDMVモジュール
１４  BD-Jモジュール
１５  UO検知モジュール
１６  モード管理モジュール
１７  ディスパッチャ
１８  レンダリングエンジン
２０  AV再生ライブラリ
２１  ネットワークインターフェース
２２  Build-Inメディア
２３  仮想ファイルシステム
３１  Java(登録商標)アプリケーション
３２  メディア再生モジュール
３９  仮想ファイルシステム管理モジュール
３４  ファイルI/Oモジュール
３５  ネットワークモジュール
３６  アプリケーションマネージャ
３７  DiscID確認モジュール
３８  リムーバブルメディア検知モジュール
４０  DiscIDディレクトリ変換部
【手続補正２】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
第１のファイルシステム形式に準拠したファイルパスおよびファイル名を用いてファイルを配置した第１の記録媒体又は前記第１のファイルシステム形式とは異なるファイルシステム形式であって、第２のファイルシステム形式に準拠したファイルパスおよびファイル名を用いてファイルを配置した第２の記録媒体に記録されたファイルに基づく再生処理を行う再生装置であって、
アプリケーションプログラムが、前記第１の記録媒体における第１のファイルシステム形式のファイルパスを用いたファイルアクセスを要求した場合、前記第２の記録媒体に記録されているファイルであって、当該第１のファイルシステム形式のファイルパスを用いたファイルアクセスの要求に応じてアクセスすることができるファイルをサーチするサーチ手段と、
前記ファイルパスにてアクセスできるファイルが存在する場合、当該ファイルを前記第２の記録媒体から読み出す読出手段とを備え、
前記サーチ手段によるサーチは、前記アプリケーションプログラムが前記第１のファイルシステムの形式を用いてアクセスを要求したファイルへのファイルパスを前記第２のファイルシステムの形式に準拠したファイルパスに変換するための参照情報に基づいてなされ、
前記参照情報は、前記第２の記録媒体に記録されており、前記第１の記録媒体における第１のファイルシステムの形式のファイルパスと、前記第１のファイルシステムの形式のファイルパスに対応付けられた前記第２の記録媒体における第２のファイルシステムの形式のファイルパスを示すことにより、前記第１のファイルシステム形式に準拠するファイルパスを用いたファイルアクセスの要求に応じてアクセスすることができる前記第２の記録媒体に記録されたファイルを示し、
前記第２の記録媒体は、再生装置からの取り外しが可能なリムーバブル型記録媒体であり、
前記第１の記録媒体の管理情報に含まれる複数の識別子のうち、その長さが前記第２のファイルシステム形式に準拠しない識別子については、前記第２のファイルシステム形式に準拠する長さに分割し、前記分割した識別子およびその長さが前記第２のファイルシステム形式に準拠する識別子を用いて前記リムーバブル型記録媒体におけるファイルへのファイルパスを構成し、前記構成したファイルパスを用いて前記リムーバブル型記録媒体におけるファイルが特定される
ことを特徴とする再生装置。
【請求項２】
前記リムーバブル型記録媒体のファイルシステムの形式とは、ディレクトリ名、及び、ファイル名を８文字以下に制限し、前記ファイル名の拡張子を３文字以下に制限した８.３形式である
ことを特徴とする請求項１記載の再生装置。
【請求項３】
前記第１の記録媒体の管理情報に含まれる複数の識別子とは、
前記第１の記録媒体の管理情報に含まれる組織の識別子、媒体の識別子であり、
更に前記第１の記録媒体は証明書を含み、
前記リムーバブル型記録媒体には、
前記証明書から算出される前記証明書の識別子に対応するディレクトリ、前記組織の識別子に対応するディレクトリ、前記媒体の識別子に対応するディレクトリセットが存在し、
前記組織の識別子に対応するディレクトリは、前記証明書の識別子に対応するディレクトリの下位に存在し、
前記媒体の識別子に対応するディレクトリセットは、前記組織の識別子に対応するディレクトリの下位に存在し、
前記媒体の識別子に対応するディレクトリセットは、前記媒体の識別子の長さを前記第２のファイルシステム形式に準拠する長さに分割し、前記分割した識別子をそれぞれ用いて構成した階層構造を有する複数のサブディレクトリであり、
前記参照情報及びファイルは、  
前記階層化された複数のサブディレクトリのうち、最下層にあたるサブディレクトリに配置されている、請求項１記載の再生装置。
【請求項４】
前記媒体の識別子に対応するディレクトリセットは、４つのサブディレクトリに階層化されており、
前記第１の記録媒体に付加された媒体の識別子は、最大３２文字の文字列であり、
前記媒体の識別子に対応するディレクトリセットを構成するサブディレクトリのそれぞれには、前記媒体の識別子を構成する最大３２文字の文字列を４分割することで得られた、８文字以下のディレクトリ名が付加されている、請求項３記載の再生装置
【請求項５】
前記媒体の識別子には、上位の桁が０(ゼロ)になっているものがあり、
当該媒体の識別子に対応するディレクトリセットをサブディレクトリには、０(ゼロ)の数字がディレクトリ名として付与されているものがあり、
前記アプリケーションプログラムは、０(ゼロ)を省略した形式のファイルパスを読出手段に出力することで、前記媒体の識別子に対応するディレクトリセットを構成するサブディレクトリに存在する、参照情報の取得を読出手段に命じ、
前記読出手段は、０(ゼロ)を省略した形式のファイルパスを、前記リムーバブル型記録媒体のファイルパスに変換して、変換後のファイルパスに基づき、前記参照情報の取得を行う
ことを特徴とする請求項４記載の再生装置。
【請求項６】
前記第１の記録媒体のファイルパスは、
２５５文字以下に制限されたディレクトリ名、及び、ファイル名を用いて表現されたファイルパスである  請求項１記載の再生装置。
【請求項７】
前記サーチ手段によるサーチは、
前記第１の記録媒体における前記第１のファイルシステムの形式を用いたファイルパスを前記アプリケーションプログラムから受け付けて、前記第１のファイルシステムの形式を用いたファイルパスに対応するリムーバブル型記録媒体のファイルパスが前記参照情報に記述されているか否かを判定する処理を含み、
前記アプリケーションプログラムからのファイルアクセスの要求に係る前記第１の記録媒体のファイルパスからアクセスすることができるファイルが、前記参照情報に存在しない場合、前記第１のファイルシステムの形式を用いたファイルパスから所在を特定することができる、第１の記録媒体におけるファイルを読み出す
ことを特徴とする請求項１記載の再生装置。
【請求項８】
第１のファイルシステム形式に準拠したファイルパスおよびファイル名を用いてファイルを配置した第１の記録媒体又は前記第１のファイルシステム形式とは異なるファイルシステム形式であって、第２のファイルシステム形式に準拠したファイルパスおよびファイル名を用いてファイルを配置した第２の記録媒体に記録されたファイルに基づく再生処理を行うシステムLSIであって、
アプリケーションプログラムが、前記第１の記録媒体における第１のファイルシステム形式のファイルパスを用いたファイルアクセスを要求した場合、前記第２の記録媒体に記録されているファイルであって、当該第１のファイルシステム形式のファイルパスを用いたファイルアクセスの要求に応じてアクセスすることができるファイルをサーチするサーチ手段と、
前記ファイルパスにてアクセスできるファイルが存在する場合、当該ファイルを前記第２の記録媒体から読み出す読出手段とを備え、
前記サーチ手段によるサーチは、前記アプリケーションプログラムが前記第１のファイルシステムの形式を用いてアクセスを要求したファイルへのファイルパスを前記第２のファイルシステムの形式に準拠したファイルパスに変換するための参照情報に基づいてなされ、
前記参照情報は、前記第２の記録媒体に記録されており、前記第１の記録媒体における第１のファイルシステムの形式のファイルパスと、前記第１のファイルシステムの形式のファイルパスに対応付けられた前記第２の記録媒体における第２のファイルシステムの形式のファイルパスを示すことにより、前記第１のファイルシステム形式に準拠するファイルパスを用いたファイルアクセスの要求に応じてアクセスすることができる前記第２の記録媒体に記録されたファイルを示し、
前記第２の記録媒体は、再生装置からの取り外しが可能なリムーバブル型記録媒体であり、
前記第１の記録媒体の管理情報に含まれる複数の識別子のうち、その長さが前記第２のファイルシステム形式に準拠しない識別子については、前記第２のファイルシステム形式に準拠する長さに分割し、前記分割した識別子およびその長さが前記第２のファイルシステム形式に準拠する識別子を用いて前記リムーバブル型記録媒体におけるファイルへのファイルパスを構成し、前記構成したファイルパスを用いて前記リムーバブル型記録媒体におけるファイルが特定される
ことを特徴とするシステムLSI。
【請求項９】
第１のファイルシステム形式に準拠したファイルパスおよびファイル名を用いてファイルを配置した第１の記録媒体又は前記第１のファイルシステム形式とは異なるファイルシステム形式であって、第２のファイルシステム形式に準拠したファイルパスおよびファイル名を用いてファイルを配置した第２の記録媒体に記録されたファイルに基づく再生処理をコンピュータ上で行う再生方法であって、
アプリケーションプログラムが、前記第１の記録媒体における第１のファイルシステム形式のファイルパスを用いたファイルアクセスを要求した場合、前記第２の記録媒体に記録されているファイルであって、当該第１のファイルシステム形式のファイルパスを用いたファイルアクセスの要求に応じてアクセスすることができるファイルをサーチするサーチステップと、
前記ファイルパスにてアクセスできるファイルが存在する場合、当該ファイルを前記第２の記録媒体から読み出す読出ステップとを備え、
前記サーチステップによるサーチは、前記アプリケーションプログラムが前記第１のファイルシステムの形式を用いてアクセスを要求したファイルへのファイルパスを前記第２のファイルシステムの形式に準拠したファイルパスに変換するための参照情報に基づいてなされ、
前記参照情報は、前記第２の記録媒体に記録されており、前記第１の記録媒体における第１のファイルシステムの形式のファイルパスと、前記第１のファイルシステムの形式のファイルパスに対応付けられた前記第２の記録媒体における第２のファイルシステムの形式のファイルパスを示すことにより、前記第１のファイルシステム形式に準拠するファイルパスを用いたファイルアクセスの要求に応じてアクセスすることができる前記第２の記録媒体に記録されたファイルを示し、
前記第２の記録媒体は、コンピュータからの取り外しが可能なリムーバブル型記録媒体であり、
前記第１の記録媒体の管理情報に含まれる複数の識別子のうち、その長さが前記第２のファイルシステム形式に準拠しない識別子については、前記第２のファイルシステム形式に準拠する長さに分割し、前記分割した識別子およびその長さが前記第２のファイルシステム形式に準拠する識別子を用いて前記リムーバブル型記録媒体におけるファイルへのファイルパスを構成し、前記構成したファイルパスを用いて前記リムーバブル型記録媒体におけるファイルが特定される
ことを特徴とする再生方法。
【手続補正３】
【補正対象書類名】図面
【補正対象項目名】全図
【補正方法】変更
【補正の内容】
【図１】
2008099647.tif 000034
【図２】
2008099647.tif 000035
【図３】
2008099647.tif 000036
【図４】
2008099647.tif 000037
【図５】
2008099647.tif 000038
【図６】
2008099647.tif 000039
【図７】
2008099647.tif 000040
【図８】
2008099647.tif 000041
【図９】
2008099647.tif 000042
【図１０】
2008099647.tif 000043
【図１１】
2008099647.tif 000044
【図１２】
2008099647.tif 000045
【図１３】
2008099647.tif 000046
【図１４】
2008099647.tif 000047
【図１５】
2008099647.tif 000048
【図１６】
2008099647.tif 000049
【図１７】
2008099647.tif 000050
【図１８】
2008099647.tif 000051
【図１９】
2008099647.tif 000052
【図２０】
2008099647.tif 000053
【図２１】
2008099647.tif 000054
【図２２】
2008099647.tif 000055
【図２３】
2008099647.tif 000056
【図２４】
2008099647.tif 000057
【図２５】
2008099647.tif 000058
【図２６】
2008099647.tif 000059
【図２７】
2008099647.tif 000060
【図２８】
2008099647.tif 000061
【図２９】
2008099647.tif 000062
【図３０】
2008099647.tif 000063
【図３１】
2008099647.tif 000064
【国際調査報告】
2008099647.tif 000065
2008099647.tif 000066