(57)【特許請求の範囲】
【請求項１】
装着された記録媒体に記録されている第１のデータ群を用いてＡＶストリームを再生する再生装置において、
各種データを記憶する記憶手段と、
前記第１のデータ群のうちの少なくとも一部である第２のデータ群の前記記録媒体からの取得と、前記記憶手段への記憶を制御するとともに、記憶が制御された前記第２のデータ群の前記記憶手段のファイルシステムにおけるパスを示す第１の情報と、前記第２のデータ群の仮想的なファイルシステムにおけるパスを示す第２の情報とを含むファイル管理情報の記憶を制御する記憶制御手段と、
前記第１のデータ群のファイルシステムを検出する検出手段と、
前記ファイル管理情報の生成または更新を制御するファイル管理情報制御手段と、
前記検出手段により検出される前記第１のデータ群のファイルシステム、および、前記ファイル管理情報制御手段により生成または更新が制御される前記ファイル管理情報に基づいて、前記第１のデータ群および前記第２のデータ群のそれぞれの少なくとも一部を含む前記仮想的なファイルシステムを生成し、前記仮想的なファイルシステムにおいて、前記ファイル管理情報の前記第２の情報に示されるパスと、前記第１のデータ群のファイルシステムにおけるパスとが一致する前記第２のデータ群が読み出される場合、前記ファイル管理情報の前記第１の情報に示されるパスに従って、前記記憶手段から前記第２のデータ群を読み出させる仮想ファイルシステム生成手段と
を備える再生装置。
【請求項２】
前記ファイル管理情報制御手段は、前記記憶制御手段により前記記憶手段への記憶が制御される前記第２のデータ群に対応する前記第２の情報を、前記記録媒体に記録されている前記第１のデータ群における前記第２のデータ群のパスを示す情報を基に生成する
請求項１に記載の再生装置。
【請求項３】
前記ファイル管理情報制御手段は、前記記憶制御手段により前記記憶手段への記憶が制御される前記第２のデータ群に対応する前記第１の情報を、前記記録媒体を固有に区別することが可能な所定の情報を基に生成する
請求項１に記載の再生装置。
【請求項４】
前記記憶手段は、前記第１のデータ群とは異なるデータである第３のデータ群、および、前記第３のデータ群の前記記憶手段のファイルシステムにおけるパスを示す第３の情報と、前記第３のデータ群の前記仮想的なファイルシステムにおけるパスを示す第４の情報とを含む前記ファイル管理情報を更に記憶し、
前記第３のデータ群、並びに、前記第３の情報および前記第４の情報を含む前記ファイル管理情報が記憶されている前記記憶手段に、前記記憶制御手段により前記第２のデータ群の記憶が更に制御された場合、前記ファイル管理情報制御手段は、前記ファイル管理情報に、前記第１の情報および前記第２の情報を加えて、前記ファイル管理情報を更新する
請求項１に記載の再生装置。
【請求項５】
前記記憶制御手段は、前記記録媒体から取得した前記第２のデータ群と同一名称の第３のデータ群が、前記記憶手段に記憶されていた場合、前記第３のデータ群が上書き許可属性を有しているか否かを判断し、上書き許可属性を有している場合、前記第３のデータ群の前記記憶手段からの削除と、前記第２のデータ群の前記記憶手段への記憶を制御する
請求項１に記載の再生装置。
【請求項６】
装着された記録媒体に記録されている第１のデータ群を用いてＡＶストリームを再生する再生装置の再生方法において、
前記第１のデータ群のうちの少なくとも一部である第２のデータ群の前記記録媒体からの取得と、各種データを記憶する記憶部への記憶を制御するとともに、記憶が制御された前記第２のデータ群の前記記憶部のファイルシステムにおけるパスを示す第１の情報と、前記第２のデータ群の仮想的なファイルシステムにおけるパスを示す第２の情報とを含むファイル管理情報の前記記憶部への記憶を制御し、
前記ファイル管理情報の生成または更新を制御し、
前記第１のデータ群のファイルシステムを検出し、
前記第１のデータ群のファイルシステム、および、前記ファイル管理情報に基づいて、前記第１のデータ群および前記第２のデータ群のそれぞれの少なくとも一部を含む前記仮想的なファイルシステムを生成し、前記仮想的なファイルシステムにおいて、前記ファイル管理情報の前記第２の情報に示されるパスと、前記第１のデータ群のファイルシステムにおけるパスとが一致する前記第２のデータ群が読み出される場合、前記ファイル管理情報の前記第１の情報に示されるパスに従って、前記記憶部から前記第２のデータ群を読み出させる
ステップを含む再生方法。
【請求項７】
装着された記録媒体に記録されている第１のデータ群を用いてＡＶストリームを再生する処理をコンピュータに実行させるプログラムであって、
前記第１のデータ群のうちの少なくとも一部である第２のデータ群の前記記録媒体からの取得と、各種データを記憶する記憶部への記憶を制御するとともに、記憶が制御された前記第２のデータ群の前記記憶部のファイルシステムにおけるパスを示す第１の情報と、前記第２のデータ群の仮想的なファイルシステムにおけるパスを示す第２の情報とを含むファイル管理情報の前記記憶部への記憶を制御し、
前記ファイル管理情報の生成または更新を制御し、
前記第１のデータ群のファイルシステムを検出し、
前記第１のデータ群のファイルシステム、および、前記ファイル管理情報に基づいて、前記第１のデータ群および前記第２のデータ群のそれぞれの少なくとも一部を含む前記仮想的なファイルシステムを生成し、前記仮想的なファイルシステムにおいて、前記ファイル管理情報の前記第２の情報に示されるパスと、前記第１のデータ群のファイルシステムにおけるパスとが一致する前記第２のデータ群が読み出される場合、前記ファイル管理情報の前記第１の情報に示されるパスに従って、前記記憶部から前記第２のデータ群を読み出させる
ステップを含む処理をコンピュータに実行させるプログラム。
【請求項８】
請求項７に記載のプログラムが記録されているプログラム格納媒体。
【請求項９】
装着された記録媒体に記録されている第１のデータ群を用いてＡＶストリームを再生する再生装置において、
各種データを記憶する記憶手段と、
前記第１のデータ群とは異なるデータ群である第２のデータ群の取得と、前記記憶手段への記憶を制御するとともに、記憶が制御された前記第２のデータ群の前記記憶手段のファイルシステムにおけるパスを示す第１の情報と、前記第２のデータ群の仮想的なファイルシステムにおけるパスを示す第２の情報とを含むファイル管理情報の記憶を制御する記憶制御手段と、
前記第１のデータ群のファイルシステムを検出する検出手段と、
前記ファイル管理情報の生成または更新を制御するファイル管理情報制御手段と、
前記検出手段により検出される前記第１のデータ群のファイルシステム、および、前記ファイル管理情報制御手段により生成または更新が制御される前記ファイル管理情報に基づいて、前記第１のデータ群および前記第２のデータ群のそれぞれの少なくとも一部を含む前記仮想的なファイルシステムを生成し、前記第１のデータ群のファイルシステムにおけるパスと一致する、前記ファイル管理情報の前記第２の情報に示されるパスがあり、前記仮想的なファイルシステムにおいて、そのパスのデータの読み出しが行なわれる場合、前記ファイル管理情報の前記第１の情報に示されるパスに従って、前記記憶手段から前記第２のデータ群を読み出させる仮想ファイルシステム生成手段と
を備える再生装置。
【請求項１０】
前記ファイル管理情報制御手段は、前記記憶制御手段により前記記憶手段への記憶が制御される前記第２のデータ群に対応する前記第２の情報を、前記記録媒体から取得するか、または、前記第２のデータ群とともに取得する
請求項９に記載の再生装置。
【請求項１１】
前記ファイル管理情報制御手段は、前記記憶制御手段により前記記憶手段への記憶が制御される前記第２のデータ群に対応する前記第１の情報を、前記記録媒体を固有に区別することが可能な所定の情報を基に生成する
請求項９に記載の再生装置。
【請求項１２】
前記記憶手段は、前記第１のデータ群とは異なるデータである第３のデータ群、および、前記第３のデータ群の前記記憶手段のファイルシステムにおけるパスを示す第３の情報と、前記第３のデータ群の前記仮想的なファイルシステムにおけるパスを示す第４の情報とを含む前記ファイル管理情報を更に記憶し、
前記第３のデータ群、並びに、前記第３の情報および前記第４の情報を含む前記ファイル管理情報が記憶されている前記記憶手段に、前記記憶制御手段により前記第２のデータ群の記憶が更に制御された場合、前記ファイル管理情報制御手段は、前記ファイル管理情報に、前記第１の情報および前記第２の情報を加えて、前記ファイル管理情報を更新する
請求項９に記載の再生装置。
【請求項１３】
前記記憶制御手段は、取得された前記第２のデータ群と同一名称の第３のデータ群が、前記記憶手段に記憶されていた場合、前記第３のデータ群が上書き許可属性を有しているか否かを判断し、上書き許可属性を有している場合、前記第３のデータ群の前記記憶手段からの削除と、前記第２のデータ群の前記記憶手段への記憶を制御する
請求項９に記載の再生装置。
【請求項１４】
装着された記録媒体に記録されている第１のデータ群を用いてＡＶストリームを再生する再生装置の再生方法において、
前記第１のデータ群とは異なるデータ群である第２のデータ群の取得と、各種データを記憶する記憶部への記憶を制御するとともに、記憶が制御された前記第２のデータ群の前記記憶部のファイルシステムにおけるパスを示す第１の情報と、前記第２のデータ群の仮想的なファイルシステムにおけるパスを示す第２の情報とを含むファイル管理情報の前記記憶部への記憶を制御し、
前記ファイル管理情報の生成または更新を制御し、
前記第１のデータ群のファイルシステムを検出し、
前記第１のデータ群のファイルシステム、および、前記ファイル管理情報に基づいて、前記第１のデータ群および前記第２のデータ群のそれぞれの少なくとも一部を含む前記仮想的なファイルシステムを生成し、前記第１のデータ群のファイルシステムにおけるパスと一致する、前記ファイル管理情報の前記第２の情報に示されるパスがあり、前記仮想的なファイルシステムにおいて、そのパスのデータの読み出しが行なわれる場合、前記ファイル管理情報の前記第１の情報に示されるパスに従って、前記記憶部から前記第２のデータ群を読み出させる
ステップを含む再生方法。
【請求項１５】
装着された記録媒体に記録されている第１のデータ群を用いてＡＶストリームを再生する処理をコンピュータに実行させるプログラムであって、
前記第１のデータ群とは異なるデータ群である第２のデータ群の取得と、各種データを記憶する記憶部への記憶を制御するとともに、記憶が制御された前記第２のデータ群の前記記憶部のファイルシステムにおけるパスを示す第１の情報と、前記第２のデータ群の仮想的なファイルシステムにおけるパスを示す第２の情報とを含むファイル管理情報の前記記憶部への記憶を制御し、
前記ファイル管理情報の生成または更新を制御し、
前記第１のデータ群のファイルシステムを検出し、
前記第１のデータ群のファイルシステム、および、前記ファイル管理情報に基づいて、前記第１のデータ群および前記第２のデータ群のそれぞれの少なくとも一部を含む前記仮想的なファイルシステムを生成し、前記第１のデータ群のファイルシステムにおけるパスと一致する、前記ファイル管理情報の前記第２の情報に示されるパスがあり、前記仮想的なファイルシステムにおいて、そのパスのデータの読み出しが行なわれる場合、前記ファイル管理情報の前記第１の情報に示されるパスに従って、前記記憶部から前記第２のデータ群を読み出させる
ステップを含む処理をコンピュータに実行させるプログラム。
【請求項１６】
請求項１５に記載のプログラムが記録されているプログラム格納媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、再生装置および再生方法、プログラム格納媒体、並びに、プログラムに関し、特に、記録媒体に記録されたデータを再生する場合に用いて好適な、再生装置および再生方法、プログラム格納媒体、並びに、プログラムに関する。
【背景技術】
【０００２】
従来、関連する２以上の複数のデータを１枚のディスクから同期して再生することができる技術がある（例えば、特許文献１）。
【特許文献１】特開２００５−１２２８８８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
上述した従来の技術を適用して、例えば、ディスクまたはその他の記録媒体１つに、audio, video, image(JPEGなど)のデータが配置され、ＡＶストリームを読み出すとともに複数の静止画を所定のフレームレートで読み出し、ＡＶストリームに対して、複数の静止画像により構成される所定のフレームレートのアニメーションを同期して再生させることが可能なようになされている場合、再生装置のデータの読み出し可能レートによっては、ＡＶストリームと静止画とを、再生レートに間に合うように読み出すことができない可能性がある。このような場合に、例えば、静止画像よりもＡＶストリームの再生が優先され、ディスクなどの記録媒体からの静止画像データファイルの読み出しの優先度が下げられてしまう。このため、AVストリームのレート設定によっては、静止画像データファイルがまったく読み出せないことがあり得る。
【０００４】
このことにより、結果的に、アニメーションの再生のためのフレームレートの制約を守ることができなくなり、アニメーションの表示がギクシャクしたり、最悪の場合、前の画像が3/4程度残っている状態において、今の画像が、1/4程度表示されてしまう（この現象は、tearingとも称される）場合がある。
【０００５】
本発明はこのような状況に鑑みてなされたものであり、再生装置に装着された記録媒体上のデータの一部を再生装置内部の記録部にコピーし、同期して再生することができるようにするものである。
【０００６】
また、他の本発明は、再生装置内部の記録部に記録されたデータと、再生装置に装着された記録媒体に記録されたデータとを同期して再生することができるようにするものである。
【課題を解決するための手段】
【０００７】
本発明の第１の側面の再生装置は、装着された記録媒体に記録されている第１のデータ群を用いてＡＶストリームを再生する再生装置であって、各種データを記憶する記憶手段と、前記第１のデータ群のうちの少なくとも一部である第２のデータ群の前記記録媒体からの取得と、前記記憶手段への記憶を制御するとともに、記憶が制御された前記第２のデータ群の前記記憶手段のファイルシステムにおけるパスを示す第１の情報と、前記第２のデータ群の仮想的なファイルシステムにおけるパスを示す第２の情報とを含むファイル管理情報の記憶を制御する記憶制御手段と、前記第１のデータ群のファイルシステムを検出する検出手段と、前記ファイル管理情報の生成または更新を制御するファイル管理情報制御手段と、前記検出手段により検出される前記第１のデータ群のファイルシステム、および、前記ファイル管理情報制御手段により生成または更新が制御される前記ファイル管理情報に基づいて、前記第１のデータ群および前記第２のデータ群のそれぞれの少なくとも一部を含む前記仮想的なファイルシステムを生成し、前記仮想的なファイルシステムにおいて、前記ファイル管理情報の前記第２の情報に示されるパスと、前記第１のデータ群のファイルシステムにおけるパスとが一致する前記第２のデータ群が読み出される場合、前記ファイル管理情報の前記第１の情報に示されるパスに従って、前記記憶手段から前記第２のデータ群を読み出させる仮想ファイルシステム生成手段とを備える。
【０００８】
前記ファイル管理情報制御手段には、前記記憶制御手段により前記記憶手段への記憶が制御される前記第２のデータ群に対応する前記第２の情報を、前記記録媒体に記録されている前記第１のデータ群における前記第２のデータ群のパスを示す情報を基に生成させるようにすることができる。
【０００９】
前記ファイル管理情報制御手段には、前記記憶制御手段により前記記憶手段への記憶が制御される前記第２のデータ群に対応する前記第１の情報を、前記記録媒体を固有に区別することが可能な所定の情報を基に生成させるようにすることができる
【００１１】
前記記憶手段には、前記第１のデータ群とは異なるデータである第３のデータ群、および、前記第３のデータ群の前記記憶手段のファイルシステムにおけるパスを示す第３の情報と、前記第３のデータ群の前記仮想的なファイルシステムにおけるパスを示す第４の情報とを含む前記ファイル管理情報を更に記憶させるようにすることができ、前記第３のデータ群、並びに、前記第３の情報および前記第４の情報を含む前記ファイル管理情報が記憶されている前記記憶手段に、前記記憶制御手段により前記第２のデータ群の記憶が更に制御された場合、前記ファイル管理情報制御手段は、前記ファイル管理情報に、前記第１の情報および前記第２の情報を加えて、前記ファイル管理情報を更新させるようにすることができる。
【００１２】
前記記憶制御手段には、前記記録媒体から取得した前記第２のデータ群と同一名称の第３のデータ群が、前記記憶手段に記憶されていた場合、前記第３のデータ群が上書き許可属性を有しているか否かを判断させるようにすることができ、上書き許可属性を有している場合、前記第３のデータ群の前記記憶手段からの削除と、前記第２のデータ群の前記記憶手段への記憶を制御させるようにすることができる。
【００１３】
本発明の第１の側面の再生方法およびプログラムは、第１のデータ群のうちの少なくとも一部である第２のデータ群の前記記録媒体からの取得と、各種データを記憶する記憶部への記憶を制御するとともに、記憶が制御された前記第２のデータ群の前記記憶部のファイルシステムにおけるパスを示す第１の情報と、前記第２のデータ群の仮想的なファイルシステムにおけるパスを示す第２の情報とを含むファイル管理情報の前記記憶部への記憶を制御し、前記ファイル管理情報の生成または更新を制御し、前記第１のデータ群のファイルシステムを検出し、前記第１のデータ群のファイルシステム、および、前記ファイル管理情報に基づいて、前記第１のデータ群および前記第２のデータ群のそれぞれの少なくとも一部を含む前記仮想的なファイルシステムを生成し、前記仮想的なファイルシステムにおいて、前記ファイル管理情報の前記第２の情報に示されるパスと、前記第１のデータ群のファイルシステムにおけるパスとが一致する前記第２のデータ群が読み出される場合、前記ファイル管理情報の前記第１の情報に示されるパスに従って、前記記憶部から前記第２のデータ群を読み出させるステップを含む。
【００１４】
本発明の第１の側面においては、装着された記録媒体に記録されている第１のデータ群のうちの少なくとも一部である第２のデータ群の前記記録媒体からの取得と、各種データを記憶する記憶部への記憶が制御されるとともに、記憶が制御された前記第２のデータ群の前記記憶手段のファイルシステムにおけるパスを示す第１の情報と、前記第２のデータ群の仮想的なファイルシステムにおけるパスを示す第２の情報とを含むファイル管理情報の前記記憶部への記憶が制御され、前記ファイル管理情報の生成または更新が制御され、前記第１のデータ群のファイルシステムが検出され、前記第１のデータ群のファイルシステム、および、前記ファイル管理情報に基づいて、前記第１のデータ群および前記第２のデータ群のそれぞれの少なくとも一部を含む前記仮想的なファイルシステムが生成され、前記仮想的なファイルシステムにおいて、前記ファイル管理情報の前記第２の情報に示されるパスと、前記第１のデータ群のファイルシステムにおけるパスとが一致する前記第２のデータ群が読み出される場合、前記ファイル管理情報の前記第１の情報に示されるパスに従って、前記記憶部から前記第２のデータ群が読み出される。
【００１５】
本発明の第２の側面の再生装置は、装着された記録媒体に記録されている第１のデータ群を用いてＡＶストリームを再生する再生装置であって、各種データを記憶する記憶手段と、前記第１のデータ群とは異なるデータ群である第２のデータ群の取得と、前記記憶手段への記憶を制御するとともに、記憶が制御された前記第２のデータ群の前記記憶手段のファイルシステムにおけるパスを示す第１の情報と、前記第２のデータ群の仮想的なファイルシステムにおけるパスを示す第２の情報とを含むファイル管理情報の記憶を制御する記憶制御手段と、前記第１のデータ群のファイルシステムを検出する検出手段と、前記ファイル管理情報の生成または更新を制御するファイル管理情報制御手段と、前記検出手段により検出される前記第１のデータ群のファイルシステム、および、前記ファイル管理情報制御手段により生成または更新が制御される前記ファイル管理情報に基づいて、前記第１のデータ群および前記第２のデータ群のそれぞれの少なくとも一部を含む前記仮想的なファイルシステムを生成し、前記第１のデータ群のファイルシステムにおけるパスと一致する、前記ファイル管理情報の前記第２の情報に示されるパスがあり、前記仮想的なファイルシステムにおいて、そのパスのデータの読み出しが行なわれる場合、前記ファイル管理情報の前記第１の情報に示されるパスに従って、前記記憶手段から前記第２のデータ群を読み出させる仮想ファイルシステム生成手段とを備える。
【００１６】
前記ファイル管理情報制御手段には、前記記憶制御手段により前記記憶手段への記憶が制御される前記第２のデータ群に対応する前記第２の情報を、前記記録媒体から取得するか、または、前記第２のデータ群とともに取得させるようにすることができる。
【００１７】
前記ファイル管理情報制御手段には、前記記憶制御手段により前記記憶手段への記憶が制御される前記第２のデータ群に対応する前記第１の情報を、前記記録媒体を固有に区別することが可能な所定の情報を基に生成させるようにすることができる。
【００１９】
前記記憶手段には、前記第１のデータ群とは異なるデータである第３のデータ群、および、前記第３のデータ群の前記記憶手段のファイルシステムにおけるパスを示す第３の情報と、前記第３のデータ群の前記仮想的なファイルシステムにおけるパスを示す第４の情報とを含む前記ファイル管理情報を更に記憶させるようにすることができ、
前記第３のデータ群、並びに、前記第３の情報および前記第４の情報を含む前記ファイル管理情報が記憶されている前記記憶手段に、前記記憶制御手段により前記第２のデータ群の記憶が更に制御された場合、前記ファイル管理情報制御手段には、前記ファイル管理情報に、前記第１の情報および前記第２の情報を加えて、前記ファイル管理情報を更新させるようにすることができる。
【００２０】
前記記憶制御手段には、取得された前記第２のデータ群と同一名称の第３のデータ群が、前記記憶手段に記憶されていた場合、前記第３のデータ群が上書き許可属性を有しているか否かを判断させるようにすることができ、上書き許可属性を有している場合、前記第３のデータ群の前記記憶手段からの削除と、前記第２のデータ群の前記記憶手段への記憶を制御させるようにすることができる。
【００２１】
本発明の第２の側面の再生方法およびプログラムは、第１のデータ群とは異なるデータ群である第２のデータ群の取得と、各種データを記憶する記憶部への記憶を制御するとともに、記憶が制御された前記第２のデータ群の前記記憶部のファイルシステムにおけるパスを示す第１の情報と、前記第２のデータ群の仮想的なファイルシステムにおけるパスを示す第２の情報とを含むファイル管理情報の前記記憶部への記憶を制御し、前記ファイル管理情報の生成または更新を制御し、前記第１のデータ群のファイルシステムを検出し、前記第１のデータ群のファイルシステム、および、前記ファイル管理情報に基づいて、前記第１のデータ群および前記第２のデータ群のそれぞれの少なくとも一部を含む前記仮想的なファイルシステムを生成し、前記第１のデータ群のファイルシステムにおけるパスと一致する、前記ファイル管理情報の前記第２の情報に示されるパスがあり、前記仮想的なファイルシステムにおいて、そのパスのデータの読み出しが行なわれる場合、前記ファイル管理情報の前記第１の情報に示されるパスに従って、前記記憶部から前記第２のデータ群を読み出させるステップを含む。
【００２２】
本発明の第２の側面においては、装着された記録媒体に記録されている第１のデータ群とは異なるデータ群である第２のデータ群の取得と、各種データを記憶する記憶部への記憶が制御されるとともに、記憶が制御された前記第２のデータ群の前記記憶部のファイルシステムにおけるパスを示す第１の情報と、前記第２のデータ群の仮想的なファイルシステムにおけるパスを示す第２の情報とを含むファイル管理情報の前記記憶部への記憶が制御され、前記ファイル管理情報の生成または更新が制御され、前記第１のデータ群のファイルシステムが検出され、前記第１のデータ群のファイルシステム、および、前記ファイル管理情報に基づいて、前記第１のデータ群および前記第２のデータ群のそれぞれの少なくとも一部を含む前記仮想的なファイルシステムが生成され、前記第１のデータ群のファイルシステムにおけるパスと一致する、前記ファイル管理情報の前記第２の情報に示されるパスがあり、前記仮想的なファイルシステムにおいて、そのパスのデータの読み出しが行なわれる場合、前記ファイル管理情報の前記第１の情報に示されるパスに従って、前記記憶部から前記第２のデータ群が読み出される。
【００２３】
ネットワークとは、少なくとも２つの装置が接続され、ある装置から、他の装置に対して、情報の伝達をできるようにした仕組みをいう。ネットワークを介して通信する装置は、独立した装置どうしであっても良いし、１つの装置を構成している内部ブロックどうしであっても良い。
【００２４】
また、通信とは、無線通信および有線通信は勿論、無線通信と有線通信とが混在した通信、即ち、ある区間では無線通信が行われ、他の区間では有線通信が行われるようなものであっても良い。さらに、ある装置から他の装置への通信が有線通信で行われ、他の装置からある装置への通信が無線通信で行われるようなものであっても良い。
【００２５】
記録装置は、独立した装置であっても良いし、記録再生装置の記録処理を行うブロックであっても良い。
【発明の効果】
【００２６】
以上のように、本発明の第１の側面によれば、仮想ファイルシステムを構成することができ、特に、ファイル管理情報を生成することができるので、記録媒体のデータを装置内部にコピーして、記録媒体のデータとともに同期して再生させることができる。
【００２７】
本発明の第２の側面によれば、仮想ファイルシステムを構成することができ、特に、ファイル管理情報を生成することができる。
【発明を実施するための最良の形態】
【００３７】
以下、図を参照して、本発明の実施の形態について説明する。
【００３８】
図１は、再生装置１の構成例を示すブロック図である。
【００３９】
コントローラ２１は、予め用意されている制御プログラムを実行するか、または、光ディスクドライブ２２を制御して光ディスク１１に記録されているナビゲーションプログラム（後述）を読み出し、メモリ２３に展開して実行することで、再生装置１の全体の動作を制御する。例えば、コントローラ２１は、光ディスク１１が装着されたとき、所定のメニュー画面を外部の表示装置に表示させることができる。
【００４０】
光ディスクドライブ２２は、コントローラ２１による制御にしたがって、光ディスク１１からデータを読み出し、読み出したデータを、コントローラ２１、メモリ２３、または、デコーダ２６に出力する。光ディスク１１から読み出された情報が、ナビゲーションプログラムや、コンテンツの再生を制御するために用いられる情報（例えば、図２を用いて後述するPlayList）などであった場合、光ディスクドライブ２２により読み出された情報は、コントローラ２１、または、メモリ２３に出力される。光ディスク１１から読み出された情報が、ＡＶストリームやテキストデータであった場合、光ディスクドライブ２２により読み出された情報は、デコーダ２６に出力される。
【００４１】
また、光ディスクドライブ２２は、ナビゲーションプログラムを実行するコントローラ２１による制御にしたがって、光ディスク１１に記録されている情報の一部を読み出し、ローカルストレージ２４に供給してコピーさせることができる。
【００４２】
図２は、本発明を適用した再生装置１に装着される光ディスク１１のアプリケーションフォーマットの例を示す図である。なお、再生装置１に装着される記録媒体は、光ディスク１１の他、例えば、磁気ディスクや半導体メモリであってもよい。
【００４３】
アプリケーションフォーマットは、ＡＶ（Audio Visual)ストリームの管理のためにPlayListとClipの２つのレイヤをもつ。ここでは、１つのＡＶストリームまたはテキストデータとそれに付随する情報であるClip Informationのペアを１つのオブジェクトと考え、それらをまとめてClipと称する。以下、ＡＶストリームのデータファイルをＡＶストリームファイルと称する。また、Clip InformationのデータファイルをClip Informationファイルと称する。
【００４４】
一般的に、コンピュータ等で用いられるファイルはバイト列として扱われるが、ＡＶストリームファイルのコンテンツは時間軸上に展開され、Clipのアクセスポイントは、主に、タイムスタンプでPlayListにより指定される。
【００４５】
Clip中のアクセスポイントがタイムスタンプでPlayListにより示されている場合、Clip Informationファイルは、タイムスタンプから、ＡＶストリームファイル中のデコードを開始すべきアドレス情報を見つけるために用いられる。
【００４６】
PlayListはＡＶストリームの再生区間を示す情報の集合である。あるＡＶストリーム中の１つの再生区間を示す情報はPlayItemと呼ばれ、PlayItemは、時間軸上の再生区間のIN点（再生開始点）とOUT点（再生終了点）のペアで表される。したがって、PlayListは、図２に示されるように１つ、または複数のPlayItemにより構成される。
【００４７】
図２において、左から１番目に図示されている第１のPlayListは２つのPlayItemから構成され、その２つのPlayItemにより、左側に図示される第１のClipに含まれるＡＶストリームの前半部分と後半部分がそれぞれ参照されている。また、左から２番目に図示されている第２のPlayListは１つのPlayItemから構成され、それにより、右側に図示されている第２のClipに含まれるＡＶストリーム全体が参照されている。更に、左から３番目に図示されている第３のPlayListは２つのPlayItemから構成され、その２つのPlayItemにより、左側に図示されている第１のClipに含まれるＡＶストリームの所定の部分と、右側に図示されている第２のClipに含まれるＡＶストリームの所定の部分とがそれぞれ参照されている。
【００４８】
ナビゲーションプログラム（Navigation program）は、PlayListの再生の順序や、PlayListのインタラクティブな再生をコントロールする機能を、コントローラ２１に実行させるためのプログラムである。また、ナビゲーションプログラムは、各種の再生の実行をユーザが指示するためのメニュー画面を表示する機能や、光ディスク１１に記録されているデータのうちの少なくとも一部をローカルストレージ２４にコピーさせ、更に、ローカルストレージ２４にコピーされたデータを光ディスク１１に記録されているデータと同様にして再生させるために必要なファイル管理情報（後述するmanifestファイル）を生成または更新する機能なども有する。このナビゲーションプログラムは、例えば、Java（登録商標）などのプログラミング言語で記述され、光ディスク１１などの記録媒体に記録される。
【００４９】
例えば、ナビゲーションプログラムがコントローラ２１により実行されて、そのときの再生位置を表す情報として、図２において左から１番目に図示される第１のPlayListに含まれる第１のPlayItemが指定された場合、そのPlayItemが参照する、左側に図示される第１のClipに含まれるＡＶストリームの前半部分の再生が行われる。
【００５０】
また、図２を用いて説明したPlayListには、PlayItemにより指定されるメインパス（Main Path）に加えて、図３に示されるようなサブプレイアイテム（Sub Play Item）を用いて指定されるサブパス（Sub path）の情報を含ませるようにすることもできる。SubPlayItemを定義すると、例えば、PlayItemにより指定されるClip（例えば、MPEG2トランスポートストリーム）に多重化されていない、独立したデータストリームをＡＶストリーム再生に同期して再生させることができる。
【００５１】
例えば、PlayItemにより指定されるメインパス（Main Path）のClip ＡＶストリームに対応させて、テキスト字幕ファイル、および、レンダリングに必要となるフォントファイルから構成される字幕関連情報と、字幕関連情報の再生区間を指定したSubPlayItemを用意することで、Clip ＡＶストリームの再生と同時に、テキスト字幕ファイルに記載されているデータに対応する字幕を、フォントファイルに記載されているフォントデータに基づいた表示フォントで、表示装置に表示させるようにすることができる。また、例えば、PlayItemにより指定されるメインパス（Main Path）のClip ＡＶストリームに対応させて、他言語の吹き替え音声データと、吹き替え音声データに対応したSubPlayItemを用意することで、Clip ＡＶストリームの再生と同時に、他言語の吹き替え音声データを再生出力することができる。
【００５２】
このように、SubPlayItemと、対応するデータ（clip）は、予め光ディスク１１に記録されていても良いし、追加データ（アップデートデータ）として、ネットワーク２を介して、サーバ３からダウンロードされるものであっても良いし、または、リムーバブルメディア（例えば、後述するリムーバブルメディア２８）を用いて取得することができるようにしても良い。このような追加データをサーバ３からダウンロードする場合の詳細については、図４を用いて後述する。
【００５３】
再び、図１の説明に戻る。
【００５４】
メモリ２３は、コントローラ２１が各種の処理を実行する上において必要なデータなどを適宜記憶する。ローカルストレージ２４は、例えば、HDD(Hard Disk Drive)などより構成される。なお、ローカルストレージ２４は、HDD以外にも、例えば、半導体メモリなどにより構成するようにしてもよく、半導体メモリなどにより構成されたローカルストレージ２４を再生装置１から着脱可能なようにしても良い。
【００５５】
インターネットインタフェース２５は、有線または無線によりネットワーク２に接続されており、コントローラ２１からの制御にしたがって、ネットワーク２を介して、サーバ３との間で通信を行い、サーバ３からダウンロードされたデータをローカルストレージ２４に供給する。サーバ３からは、例えば、そのとき再生装置１に装着されている光ディスク１１に記録されている、図２を用いて説明したデータをアップデートさせるデータがコンテンツとしてダウンロードされる。ローカルストレージ２４は、サーバ３からネットワーク２経由でダウンロードしたコンテンツを記録することができる。
【００５６】
デコーダ２６は、光ディスクドライブ２２、または、ローカルストレージ２４から供給されるＡＶストリーム、または、テキストデータをデコードし、得られたビデオ信号とオーディオ信号を外部の表示装置に出力する。表示装置においては、デコーダ２６によりデコードされた信号に基づいて、例えば、光ディスク１１に記録されているコンテンツの出力（映像の表示、音声の出力）が行われる。
【００５７】
操作入力部２９は、例えば、ボタン、キー、タッチパネル、ジョグダイヤル、マウスなどの入力デバイスや、所定のリモートコマンダから送信される赤外線などの信号を受信する受信部により構成され、ユーザの操作入力を取得し、コントローラ２１に供給する。
【００５８】
また、コントローラ２１には、必要に応じてドライブ２７も接続されており、ドライブ２７には、例えば、磁気ディスク（フレキシブルディスクを含む）、光ディスク（CD-ROM（Compact Disk-Read Only Memory)，DVDを含む）、光磁気ディスク（ＭＤ（登録商標）（Mini-Disk）を含む）、もしくは半導体メモリなどよりなるリムーバブルメディア２８が装着される。
【００５９】
次に、再生装置１に装着された光ディスク１１に記録されたデータ、および、ローカルストレージ２４に記憶されたデータを再生する方法について説明する。
【００６０】
再生装置１はHDD(Hard Disk Drive)などよりなるローカルストレージ２４を内部に備える。再生装置１は、有線または無線によりネットワーク２に接続されており、サーバ３からネットワーク２経由でダウンロードしたコンテンツを、このローカルストレージ２４に記録することができる。サーバ３からは、例えば、そのとき再生装置１に装着されている光ディスク１１に記録されている映画などのコンテンツをアップデートさせるデータをダウンロードすることができる。
【００６１】
ダウンロードされたコンテンツがローカルストレージ２４に記録されている状態で、操作入力部２９から、光ディスク１１に記録されているコンテンツの再生が指示されたとき、コントローラ２１は、光ディスク１１に記録されているコンテンツと、ローカルストレージ２４に記録されているコンテンツを関連付けて、コンテンツの再生処理を実行する。
【００６２】
ここで、光ディスク１１に記録されているコンテンツと、ローカルストレージ２４に記録されているコンテンツを関連付けて再生する方法について、図４を用いて説明する。
【００６３】
例えば、図２の光ディスク１１がパッケージ販売されているメディアであり、ある映画コンテンツが記録されているものとする。また、その映画コンテンツの映像に重畳して表示させることが可能な字幕データファイルとして、英語のテキスト字幕ファイルのみが光ディスク１１に記録されているものとする。
【００６４】
例えば、図４において、光ディスク１１に記録されている、PlayListのPlayItemが参照するClip1のＡＶストリームは、映画コンテンツの映像を表示させ、対応する音声を再生させるためのストリームであり、PlayListのSubPlayItemが参照するClip2の字幕関連情報１は、映像の表示に併せて英語の字幕を表示させるためのテキスト字幕ファイルである。
【００６５】
この状態で、英語とは異なる言語の字幕を表示させて、光ディスク１１に記録されている映画コンテンツを視聴したい場合、光ディスク１１には英語とは異なる言語の字幕データが記録されていないことから、ユーザは、このままでは英語とは異なる言語の字幕データを表示させて、映画を視聴することができない。
【００６６】
そこで、ユーザは、再生装置１に、光ディスク１１に記録されている映画の所望の言語のテキスト字幕ファイルをサーバ３からネットワーク２経由でダウンロードさせる（または、リムーバブルメディア２８を用いて取得させる）。光ディスク１１に予め記録されていない、例えば、アラビア語によるテキスト字幕ファイルのダウンロードが行われた（または、リムーバブルメディア２８からローカルストレージ２４にコピーされた）状態について説明する。
【００６７】
すなわち、ユーザが、光ディスク１１に予め記録されているPlayListに対応する、アラビア語によるテキスト字幕ファイルのダウンロードを指示した場合、再生装置１においては、サーバ３に対するアクセスが行われ、光ディスク１１に記録されているコンテンツをアップデートするものとして、そのサーバ３に用意されているファイルのダウンロードが行われる。
【００６８】
図４の例においては、アラビア語のテキスト字幕ファイル（字幕関連情報２）およびそれに付随するClip Informationファイルで構成されるClip３、光ディスク１１に予め記録されている、例えば、映画コンテンツの映像Clipおよび音声Clip（AVストリームデータ）と英語のテキスト字幕ファイルに加えて、対応するClip３の字幕データの再生表示を制御することができるPlayListファイル（Updated PlayListファイル）、光ディスク１１に記録されているものと比較してアップデートされた新規ナビゲーションプログラムファイルのダウンロードが行われ、それらがローカルストレージ２４に記録される。
【００６９】
なお、Updated PlayListには、メインパスを表すPlayItem以外に、サブパスを表すSubPlayItem１およびSubPlayItem2が付加されている。Updated PlayListのPlayItemは、光ディスク１１に記録されているＡＶ Streamを含むClip1を参照するものであり、SubPlayItem1は、光ディスク１１に記録されている字幕関連情報１を含むClip2を参照するものであり、SubPlayItem2は、Updated PlayListとともにサーバ３からダウンロードされた、アラビア語のテキスト字幕ファイルである字幕関連情報２を含むClip3を参照するものである。
【００７０】
図４の新規ナビゲーションプログラムは、再生区間としてUpdated PlayListのPlayItemとともに、SubPlayItem1またはSubPlayItem2を指定することができるものであり、これにより、例えば、所望の映像および音声データに対応付けて、光ディスク１１に予め記録されている英語によるテキスト字幕ファイルにより定義される英語字幕、または、光ディスク１１に予め記録されていない、アラビア語によるテキスト字幕ファイルにより定義されるアラビア語字幕のうち、ユーザの所望の言語の字幕を表示させることができる。
【００７１】
このように、サーバ３からのダウンロード（または、リムーバブルメディア２８からのコピー）が行われることにより、再生装置１は、英語のテキスト字幕ファイルであるClip2と、光ディスク１１に予め用意されていない、アラビア語のテキスト字幕ファイルであるClip3のいずれかを映画の字幕として再生表示することが可能となる。すなわち、ユーザは、表示装置に表示されるメニュー画面に記載される表示可能な字幕の言語から所望の言語を選択することで、英語とアラビア語のうちの所望する言語の字幕によって映画を視聴することができる。
【００７２】
また、再生装置１においては、光ディスク１１に記録されているデータのうちの少なくとも一部をローカルストレージ２４にコピーすることができる。図５は、光ディスク１１からローカルストレージ２４へのファイルコピーが行われた状態について説明するための図である。
【００７３】
図５に示されるように、例えば、光ディスク１１には、メインパスを表すPlayItemにより参照されるＡＶ Streamを含むClip1と、サブパスを表すSubPlayItemにより参照されるSubＡＶ Streamを含むClip２とが予め記録されており、PlayItemおよびSubPlayItemによりＡＶ StreamとSubＡＶ Streamとは同期して再生されるようになされていた。ここで、光ディスクドライブ２２の読み出しレートと、ＡＶ StreamおよびSubＡＶ Streamの再生レートとによっては、再生に読み出しが追いつかない場合が生じてしまう。
【００７４】
そこで、再生装置１においては、光ディスク１１に記録されているClip２を予めローカルストレージ２４にコピーしておき、SubPlayItemが光ディスク１１のClip２ではなく、ローカルストレージ２４のClip２を参照して読み出すことができるようになされている。具体的には、SubPlayItemが光ディスク１１のClip２ではなく、ローカルストレージ２４のClip２を参照して読み出すためには、光ディスク１１のファイルシステムとローカルストレージ２４のファイルシステムに基づいて、後述する仮想ファイルシステムが構築される必要があり、そのためには、後述するmanifestファイルが生成または更新されて、ローカルストレージ２４に記憶される。仮想ファイルシステムおよびmanifestファイルについては後述する。
【００７５】
なお、光ディスク１１に記録されるＡＶストリームは、図６に示すような、MPEG2（Moving Picture Experts Group 2）トランスポートストリームの構造を有する。MPEG2トランスポートストリームは、整数個のAligned unitから構成される。Aligned unitの大きさは、6144バイト(2048×3バイト)であり、ソースパケットの第１バイト目から始まる。ソースパケットは、192バイト長である。１つのソースパケットは、TP_extra_headerとトランスポートパケットから構成される。TP_extra_headerは、４バイト長であり、またトランスポートパケットは、188バイト長である。１つのAligned unitは、３２個のソースパケットから構成される。ビデオストリームやオーディオストリームのデータは、MPEG2 PES（Packetized Elementary Stream）パケットにパケット化されており、PESパケットは、トランスポートパケットにパケット化される。
【００７６】
図７は、図１のコントローラ２１の機能構成例を示すブロック図である。
【００７７】
図７の各構成は、予め用意されている制御プログラムがコントローラ２１により実行されることにより、または、光ディスク１１に記録されているナビゲーションプログラムがコントローラ２１により実行されることにより実現される。
【００７８】
メニュー画面表示制御部３１は、光ディスク１１に記録されているコンテンツの音声、または字幕の言語や、映像のアングルを選択するときにユーザにより操作されるボタンや、ダウンロードするアップデートファイルや、削除されるファイルを選択するときにユーザにより操作されるボタンなどを含むメニュー画面を外部の表示装置に表示させる。
【００７９】
操作入力取得部３２は、操作入力部２９から入力された、ユーザからの操作入力を示す信号を取得し、ユーザからの操作入力を示す信号を、メニュー画面表示制御部３１、データ取得部３３、ローカルストレージディレクトリ管理部３４、または、再生制御部３７のうちの対応する箇所に出力する。
【００８０】
データ取得部３３は、図１のインターネットインタフェース２５において行われる通信、または、ドライブ２７によるリムーバブルメディア２８との情報の授受を制御する。例えば、データ取得部３３は、ユーザが指示したアップデートファイルをサーバ３からダウンロードして取得し、取得したファイルをローカルストレージディレクトリ管理部３４に出力する。また、データ取得部３３は、後述するファイルシステムマージ処理部３６により、必要なファイルを示す情報の供給を受け、必要なファイルを、サーバ３からダウンロードして取得し、取得したファイルをローカルストレージディレクトリ管理部３４に出力する。
【００８１】
ローカルストレージディレクトリ管理部３４は、ローカルストレージ２４のディレクトリを管理し、ローカルストレージ２４に対するデータの書き込み、および、ローカルストレージ２４からのデータの読み出し、並びに、ローカルストレージ２４からのデータの削除を制御する。例えば、ローカルストレージディレクトリ管理部３４の制御によりローカルストレージ２４から読み出されたPlayListは、メモリ２３に出力され、ローカルストレージ２４から読み出されたＡＶストリームの音声データおよび映像データやテキスト字幕ファイルのテキストデータは、デコーダ２６に出力される。また、ローカルストレージディレクトリ管理部３４は、ファイルシステムマージ処理部３６により、光ディスク１１のファイルシステムと、ローカルストレージ２４のファイルシステムとのマージが行われる場合、ローカルストレージ２４のファイルシステムに関する情報をファイルシステムマージ処理部３６に出力する。
【００８２】
光ディスクディレクトリ管理部３５は、光ディスク１１のディレクトリを検出して管理し、光ディスク１１からの各データの読み出しを制御する。光ディスク１１には識別情報であるauthor_idとdisc_idが設定されており、光ディスクディレクトリ管理部３５の制御により、光ディスク１１から読み出されたauthor_idとdisc_idは、データ取得部３３、ローカルストレージディレクトリ管理部３４、および、ファイルコピー制御部３８に出力される。また、光ディスクディレクトリ管理部３５の制御により、光ディスク１１から読み出されたPlayListは、メモリ２３に出力され、光ディスク１１から読み出されたＡＶストリームの音声データおよび映像データやテキスト字幕ファイルのテキストデータは、デコーダ２６に出力される。また、光ディスクディレクトリ管理部３５は、ファイルシステムマージ処理部３６により、光ディスク１１のファイルシステムと、ローカルストレージ２４のファイルシステムとのマージが行われる場合、光ディスク１１のファイルシステムに関する情報をファイルシステムマージ処理部３６に出力する。author_idとdisc_idについては、後述する。
【００８３】
ファイルシステムマージ処理部３６は、光ディスクディレクトリ管理部３５から供給される光ディスク１１のファイルシステムと、ローカルストレージディレクトリ管理部３４から供給されるローカルストレージ２４のファイルシステムをマージし、１つの仮想的なファイルシステムを生成する。ファイルシステムマージ処理部３６は、マージすることで生成した仮想的なファイルシステムを再生制御部３７に出力する。
【００８４】
また、ファイルシステムマージ処理部３６は、ローカルストレージ２４に記録されているいくつかのファイルが削除（消去、すなわち、データのdelete）された場合、そのいくつかのファイルの削除により、仮想ファイルシステムにおけるファイルのリンク構造（すなわち、図２乃至図４を用いて説明した様な、光ディスク１１のアプリケーションフォーマットに基づいた、PlayListによるClipの再生のためのデータの連携）に不具合が発生するか否かを判断し、仮想ファイルシステムにおけるファイルのリンク構造に不具合が発生すると判断された場合、不具合の解消に必要なファイルを抽出し、データ取得部３３に必要なファイルを示す情報を供給して、必要なファイルをダウンロードさせることができる。
【００８５】
更に、ファイルシステムマージ処理部３６は、ローカルストレージ２４に記録されているいくつかのファイルが削除されたことにより、例えば、仮想ファイルシステムにおいて、いずれのPlayListによっても再生されない（全てのPlayListによって指定されない）ファイルが発生した場合、このような不必要なファイルを削除することをローカルストレージディレクトリ管理部３４に指令することができる。
【００８６】
なお、いくつかのファイルが削除されたことにより発生する不必要なファイルを削除するか否かをユーザにより設定可能なようにしても良い。
【００８７】
再生制御部３７は、ファイルシステムマージ処理部３６から供給される仮想ファイルシステムで指定されるナビゲーションプログラムを実行し、コンテンツの再生を制御する。具体的には、再生制御部３７は、メモリ２３に供給され、記憶されたPlayListを参照し、ローカルストレージディレクトリ管理部３４または光ディスクディレクトリ管理部３５を制御して、光ディスク１１またはローカルストレージ２４に記録されているＡＶストリームの音声データ、映像データ、および、必要に応じてテキスト字幕ファイルのテキストデータを、仮想ファイルシステムに基づいて読み出させ、図１のデコーダ２６を制御して、光ディスク１１またはローカルストレージ２４に記録されているＡＶストリームの音声データ、映像データ、および、必要に応じてテキスト字幕ファイルのテキストデータのデコード（再生）を行わせる。
【００８８】
ファイルコピー制御部３８は、光ディスク１１からローカルストレージ２４へのファイルのコピー処理を制御する。また、ファイルコピー制御部３８は、インターネットインタフェース２５またはドライブ２７により取得される、manifestファイルを伴わないデータファイルのローカルストレージ２４への記憶処理も制御することができる。
【００８９】
マニフェストファイル生成・更新処理部３９は、光ディスク１１からローカルストレージへのファイルのコピー処理が実行される場合、ナビゲーションプログラムが認識可能なようになされている登録情報、または、光ディスクディレクトリ管理部３５により検出される、光ディスク１１のディレクトリ構造を基に、manifestファイルを生成するか、または、生成された、もしくは、すでに存在するmanifestファイルを更新する処理を制御する。更に、マニフェストファイル生成・更新処理部３９は、インターネットインタフェース２５またはドライブ２７により取得される、manifestファイルを伴わないデータファイルのローカルストレージ２４への記憶処理が実行される場合にも、manifestファイルを生成するか、または、生成された、もしくは、すでに存在するmanifestファイルを更新する処理を制御することができる。manifestファイルの詳細については、後述する。
【００９０】
ここで、ファイルシステムマージ処理部３６により行われる、光ディスク１１のファイルシステムと、サーバ３からダウンロードされたり、リムーバブルメディア２８からコピーされたり、または、光ディスク１１からコピーされるなどによりローカルストレージ２４に記録されたデータ群を管理するファイルシステムのマージについて説明する。
【００９１】
このマージは、例えば、光ディスク１１が再生装置に装着されたとき、光ディスク１１に記録されているコンテンツの再生が指示されたとき、光ディスク１１またはローカルストレージ２４に記録されているいずれかのデータの入出力が指令されたとき、または、ユーザによりマージが指令されたときなどに行われる。
【００９２】
再生装置１のシステムが持つネイティブなファイルシステム（光ディスク１１またはローカルストレージ２４に実際に記録されているデータのファイルシステム）の上位レイヤとして、仮想ファイルシステムが定義される。すなわち、図８に示されるように、サーバ３から新たなデータをダウンロードして、ローカルディスク２４に記録させたり、光ディスク１１またはローカルストレージ２４に実際に記録されているデータを再生する処理を実行するアプリケーションプログラム、または、そのアプリケーションプログラムを扱うユーザが認識可能なのは、上位レイヤである仮想ファイルシステムのみである。換言すれば、仮想ファイルシステムは、ネイティブなファイルシステムを抽象化し、再生装置１内の物理デバイスやオペレーティングシステムなどのネイティブな構造を隠蔽するために構築される。
【００９３】
仮想ファイルシステムの役割は、主に、物理デバイス（光ディスク１１またはローカルストレージ２４）におけるファイル／ディレクトリをマウントして、ユーザから認識される仮想ディスク（Virtual Disc）のファイルシステムを構成することと、アプリケーションプログラムに対して、構築された仮想ディスクへのファイルアクセスAPIを提供することである。
【００９４】
例えば、ユーザが、光ディスク１１またはローカルストレージ２４に記録されているいずれかのファイルへのアクセスを要求する操作入力を行った場合、図９に示されるように、アプリケーションプログラムには、仮想ファイルシステムのみしか認識できない。そして、実際の物理デバイスである光ディスク１１またはローカルストレージ２４に記録されているローカルファイルシステム#１、ローカルファイルシステム＃２、または、光ディスク１１内のファイルシステムの構造は、アプリケーションプログラムと、アプリケーションプリグラムを取り扱うユーザから隠蔽されるとともに、仮想ファイルシステムを介して、アクセス可能なようになされている。
【００９５】
図９に示されるファイルアクセス要求を実行するために、再生装置１のアプリケーションプログラムは、仮想ファイルシステムが提供するファイル入出力のAPI（Application Programming Interface）を呼び出すことにより、ディスクドライブの物理的な構成やファイルシステムのソフトウェア構成などを意識することなく、光ディスク１１またはローカルストレージ２４に実際に記録されているデータにアクセスすることができる。すなわち、仮想ファイルシステムのAPIは、実際には、再生装置１の内部でネイティブなファイルシステムのAPIを呼び出している。
【００９６】
仮想ファイルシステムは各種のAPIを提供しており、例えば、指定したファイルを開くopen（）、指定したファイルを閉じるclose（）、指定したファイルの読み出し位置または書き込み位置を設定するseek（）、指定したファイルの状態を取得するstat（）、指定したファイルを読み出すread（）、指定したファイルを書き込むwrite（）などのAPIが提供される。再生制御部３９などにより実行されるアプリケーションプログラムは、これらのAPIを利用して、光ディスク１１またはローカルストレージ２４に記録されているファイルを操作する。
【００９７】
また、仮想ファイルシステムは、ローカルストレージ２４のディスク領域を分割管理する機能を持つ。ローカルストレージ２４のディスク領域は、例えば、図１０に示されるように、author_idごとに分割されたディレクトリ構造を有し、author_id直下のディレクトリであるdisc_id以下は、コンテンツオーサにより、フレキシブルなファイル／ディレクトリ構造を構成することができる。ローカルストレージ２４に記憶されるデータが、ローカルストレージ２４のディスク領域のどこに配置されるか、すなわち、ダウンロードされるファイルのファイル／ディレクトリ構造は、ダウンロードされるデータに含まれるファイル管理情報（後述するManifestファイル）の記述により指定される。
【００９８】
ローカルストレージ２４のファイル／ディレクトリ構造において、ディレクトリを分割するauthor_idは、対応する光ディスクにおける仮想ファイルシステムの構築に用いるための識別子であり、disc_idは、同一のauthor_idに対応付けられるそれぞれのコンテンツを識別するための識別子であり、author_idと同様に、対応する光ディスクにおける仮想ファイルシステムの構築に用いられる。author_idおよびdisc_idは、それぞれ、ダウンロードされるデータのファイル管理情報（後述するManifestデータ）に含まれるか、または、マニフェストファイル生成・更新処理部３９および光ディスクディレクトリ管理部３５により、光ディスク１１から検出される情報である。
【００９９】
author_idは、例えば、コンテンツの配給元（コンテンツオーサ）や、コンテンツの製作元などの組織や団体ごとに与えられるようにしても良いし、複数のこれらの組織や団体で、１つのauthor_idを利用するようにしても良いし、１つのこれらの組織や団体が、複数のauthor_idを利用するようにしても良い。また、disc_idは、１つの光ディスク１１に１つのコンテンツが記録されていることを想定した場合、１つの光ディスク１１に１つ対応付けられるものであるが、例えば、１つの光ディスク１１に複数のコンテンツが記録され、それらのコンテンツにそれぞれdisc_idが対応付けられるようにしても良い。このように、author_idおよびdisc_idがどのように用いられるものであっても、仮想ファイルシステムは、それぞれのidを基に構築される。ファイル管理情報（Manifestファイル）並びに、author_idおよびdisc_idについては後述する。
【０１００】
これに対して、アプリケーションからアクセス可能な仮想ディスクのディレクトリ／ファイル構造は、光ディスク１１のディレクトリ／ファイル構造に従うようになされている。すなわち、再生装置１に装着された光ディスク１１に対して、対応するauthor_idおよびdisc_id以下のデータのファイル構造が、光ディスク１１に記録されているデータのファイル構造とマージされ、光ディスク１１のディレクトリ／ファイル構造に基づいたディレクトリ／ファイル構造を有する仮想ディスクの仮想ファイルシステムが構成される。
【０１０１】
また、仮想ファイルシステムは、ディレクトリおよびファイルの管理機構のほかに、disc単位でファイル管理情報、すなわち、後述するManifestファイルを管理する機能を持つ。仮想ファイルシステムが、ネイティブなファイルシステムのファイルモデルに対して、メタデータとしてファイル管理情報であるManifestファイルのフィールドを定義する目的は、ユーザに対して、実際にローカルディスク２４に記録されているファイルのパスまたはファイル名を提示するのではなく、コンテンツ内容を表現した名称を提供することと、ダウンロード処理において同一ファイルの二重更新を防止することと、仮想ファイルシステム内でのパス名称、すなわち、光ディスク１１再生時におけるパス名称を定義することとの３つである。
【０１０２】
そして、仮想ファイルシステムは、メタデータ管理のために、Manifestファイルとメタデータ操作手続きの、二つの機能を提供する。Manifestファイルとは、ダウンロードされたファイルの各種属性を示すメタデータであり、Manifest（）は、対応するファイル単位で保存しても、１つのファイルにマージして、Manifest（）セクションの識別子であるmanifest_id（図１１において後述）をキーに識別可能なようにしてもよい。いずれの形態であっても、ここでは、Manifestファイルと総称する。ローカルストレージ２４にダウンロードされたファイルを保持している再生装置１は、Manifestファイルを保持していなければならない。また、Manifestファイルは、XMLに代表されるタグ付言語によるテキスト表現をとることも可能である。
【０１０３】
図１１は、Manifestファイルのシンタックスを示す図である。
【０１０４】
manifest_idは、このManifest（）セクションの識別子である。
【０１０５】
author_idは、対応する光ディスクにおける仮想ファイルシステムの構築に用いる識別子を指定するためのフィールドである。この識別子は、図１７を用いて後述する、コンテンツ配布用ファイルのauthor_idフィールドを参照することで決定され、アプリケーションプログラムまたはユーザは、このフィールドに自由に値を設定することはできない。
【０１０６】
disc_idは、同一のauthor_idに対応付けられるそれぞれのコンテンツを一意に識別するための識別子を指定するためのフィールドである。disc_idも、author_idと同様に、対応する光ディスクにおける仮想ファイルシステムの構築に用いられる。この識別子は、図１７を用いて後述する、コンテンツ配布用ファイルのdisc_idフィールドを参照することで決定され、アプリケーションプログラムまたはユーザは、本フィールドに自由に値を設定することはできない。
【０１０７】
次に、permissionは、ユーザに対して可視属性にしてよいか、不可視属性にしておくか、または、ファイルの上書きを禁止するか否かなどの許認可情報をコンテンツオーサが指定するためのフィールドである。なお、permissionの情報は、Manifestファイル以外のいずれかのファイルに記載されたり、または、独立したファイルとして構成されるものとしてもよい。
【０１０８】
図１２に、図１１のManifest（）に含まれるpermissionに指定可能な値の一覧を示す。
【０１０９】
図１２に示されるように、permissionの８ビットのフィールドに、0x00が記載されている場合、このメタデータを付随しているファイルの属性は、ユーザに対して不可視属性であり、permissionの８ビットのフィールドに、0x01が記載されている場合、このメタデータを付随しているファイルの属性は、ユーザに対して可視属性であり、permissionの８ビットのフィールドに、0x02が記載されている場合、このメタデータを付随しているファイルの属性は、上書き禁止属性である。
【０１１０】
そして、src_file_nameは、ローカルストレージ２４のファイルシステムにおいて、このファイルがディレクトリ構造のどこに記録されるかを一義に指定できる情報、すなわち、ローカルストレージ２４のファイルシステムの階層構造におけるファイル位置を使ってファイルを特定する、いわゆるパスを表す「パス名称」を指定するためのフィールドである。パス名称を表現するためのファイルやディレクトリの名称は、ISO/IEC 646規格に従い符号化されているものとする。
【０１１１】
dst_file_nameは、実際にはローカルストレージ２４に記憶されるファイルの仮想ディスクにおけるバインド先において、このファイルがディレクトリ構造のどこに記録されるかを一義に指定できる情報、すなわち、仮想ファイルシステムの階層構造におけるファイル位置を使ってファイルを特定する、いわゆるパスを表す「パス名称」を指定するためのフィールドである。パス名称を表現するためのファイルやディレクトリの名称は、ISO/IEC 646規格に従い符号化されているものとする。
【０１１２】
なお、src_file_nameとdst_file_nameには、同一名称を指定することもできる。
【０１１３】
そして、credentialには、src_file_nameにおいて指定されているファイルが、異なるauther_idのディレクトリ下にある場合に、ファイルアクセス権限をチェックするための情報が記載されている。このことにより、ローカルストレージ２４においては、複数のauther_id以下のディレクトリでコンテンツファイルを共有することが可能となる。
【０１１４】
次に、メタデータ操作手続きについて説明する。
【０１１５】
仮想ファイルシステムは、アプリケーションプログラムまたはユーザに対して、Manifest（）のファイル名称、ファイル位置、または、物理構造などを公開せずに、Manifest（）の内容を読み出すためのAPIを定義している。
【０１１６】
すなわち、アプリケーションプログラム、または、再生装置１で実行されるレジデント（常駐）プログラムは、以下のAPIを呼び出すことにより間接的にManifest（）にアクセスすることができる。
【０１１７】
getProperty
引数１:
文字列型データ
メタデータ操作の対象となるファイルの絶対パス名称
引数２:
文字列型データ
読み出したいメタデータの要素名
戻り値:
文字列型データ
引数で指定した要素に対応するメタデータ
機能:
Manifest（）からメタデータを読み出す。
【０１１８】
なお、実際には、型情報などの詳細なAPIの定義は、再生装置１のソフトウェア実行環境のプログラミング言語仕様に依存して変更されなければならない。
【０１１９】
図１３は、光ディスク１１のファイルシステムの例を示す図である。図１３に示されるように、光ディスク１１のファイルシステムはディレクトリ構造を有している。
【０１２０】
光ディスク１１の「root」の下には「BDMV」の名前が設定されたディレクトリが用意され、そのディレクトリに、「Index.bdmv」の名前が設定されたファイルと、「MovieObjects.bdmv」の名前が設定されたファイルが格納されている。以下、適宜、これらのファイルをそれぞれIndexファイル、MovieObjectファイルと称する。また、適宜、各ファイルについては、「ファイル名」に「ファイル」を付加した形で、または、各ディレクトリについては、「ディレクトリ名」に「ディレクトリ」を付加した形で称する。
【０１２１】
Indexファイルは、光ディスク１１を再生するメニューに関する情報を含む。再生装置１は、例えば、光ディスク１１のコンテンツを全て再生する、特定のチャプタのみ再生する、繰り返し再生する、初期メニューを表示するなどの内容の項目を含む再生メニュー画面をIndexファイルに基づいて、表示装置に表示させる。Indexファイルには各項目が選択されたときに実行するMovieObjectを設定することができ、ユーザにより再生メニュー画面から１つの項目が選択された場合、再生装置１はIndexファイルに設定されているMovieObjectのコマンドを実行する。
【０１２２】
MovieObjectファイルは、MovieObjectを含むファイルである。MovieObjectは、光ディスク１１に記録されているPlayListの再生を制御するコマンドを含み、例えば、再生装置１は、光ディスク１１に記録されているMovieObjectの中から１つを選択して、実行することにより、光ディスク１１に記録されているコンテンツを再生させることができる。
【０１２３】
BDMVディレクトリにはまた、「BACKUP」の名前が設定されたディレクトリ（BACKUPディレクトリ）、「PLAYLIST」の名前が設定されたディレクトリ（PLAYLISTディレクトリ）、「CLIPINF」の名前が設定されたディレクトリ（CLIPINFディレクトリ）、「STREAM」の名前が設定されたディレクトリ（STREAMディレクトリ）、「AUXDATA」の名前が設定されたディレクトリ（AUXDATAディレクトリ）が設けられている。
【０１２４】
BACKUPディレクトリには、光ディスク１１に記録されているファイルやデータをバックアップするためのファイルやデータが記録される。
【０１２５】
PLAYLISTディレクトリには、PlayListファイルが格納される。各PlayListファイルには、図内に示されるように５桁の数字からなるファイル名に拡張子「.mpls」を付加した名称が命名される。
【０１２６】
CLIPINFディレクトリには、Clip Informationファイルが格納される。各Clip Informationファイルには、図内に示されるように５桁の数字からなるファイル名に拡張子「.clpi」を付加した名称が命名される。
【０１２７】
STREAMディレクトリには、Clip ＡＶストリームファイルやサブストリームファイルが格納される。各ストリームファイルには、図内に示されるように５桁の数字からなるファイル名に拡張子「.m2ts」を付加した名称が命名される。
【０１２８】
AUXDATAディレクトリには、Clip ＡＶストリームファイルやサブストリームファイルに含まれずに、Clip ＡＶストリームファイルやサブストリームファイルから参照されるデータや、Clip ＡＶストリームファイルやサブストリームファイルとは独立して利用されるデータなどのファイルが格納される。図１３の例においては、AUXDATAディレクトリには、「11111.otf」の名前がつけられている字幕のフォントのファイル、「sound.bdmv」の名前が設定された効果音が格納されている。
【０１２９】
また、光ディスク１１には、識別子であるauthor_id、および、disc_idが、ユーザなどにより書き換えることができないセキュアな電子データとして、または、物理的にピットによって記録されている。
【０１３０】
図１４は、ローカルストレージ２４のファイルシステムの例を示す図である。図１４に示されるように、ローカルストレージ２４のファイルシステムもディレクトリ構造を有している。
【０１３１】
ローカルストレージ２４の「root」の下には、少なくとも１つの「author_id」の名前が設定されたディレクトリが用意され、「author_id」ディレクトリの下には、少なくとも１つの「disc_id」の名前が設定されたディレクトリが用意されている。「author_id」および「disc_id」は、仮想ファイルシステムの構築に用いられるものであり、ローカルストレージ２４の「root」の下のそれぞれの、「author_id」に含まれる全ての「disc_id」は、それぞれが区別可能なように、異なるものとされる。そして、「disc_id」のディレクトリには、Manifest（）セクションの集合、または、１つのManifest（）セクションからなるManifestファイルが含まれている。そして、それ以外のディレクトリやファイルの構造は、コンテンツオーサにより自由に設定可能であり、例えば、図１３を用いて説明した光ディスク１１のディレクトリ／ファイル構造と同様のものであっても良いし、図１４に示されるように、図１３を用いて説明した光ディスク１１のディレクトリ／ファイル構造とまったく異なるものであっても良い。
【０１３２】
例えば、図１４においては、「disc_id」のディレクトリには、Manifestファイル以外に、「MainMovie」ディレクトリ、「SubTitle」ディレクトリ、「AUXDATA」ディレクトリなどの複数のフォルダが設定され、これらのディレクトリは、更に、フォルダ、または、ファイルを含むことができる。
【０１３３】
図１４に示されるローカルストレージ２４のディレクトリ／ファイル構造は、再生装置１において実行されるアプリケーションプログラム、または、ユーザから隠蔽されている。
【０１３４】
例えば、図１１を用いて説明したManifest（）セクションにおいて、src_file_nameのフィールドに「/MainMovie/movie01/main.r1.jp.mp2」とパス名称が指定され、dst_file_nameのフィールドに「/STREAM/01002.m2ts」とパス名称が指定されている場合、ダウンロードされたデータは、図１５に示されるように、ローカルストレージ２４において、対応するauthor_idおよびdisc_idの下の、MainMovieディレクトリ内のmovie01ディレクトリに、main.r1.jp.mp2というファイル名で記録されるが、仮想ディスクにおける仮想ファイルシステムにおいては、STREAMディレクトリの01002.m2tsというファイル名のファイルとして取り扱われる。
【０１３５】
このように、コンテンツオーサは、ダウンロードされるファイルパッケージのManifest（）セクションのsrc_file_nameのフィールドに、ローカルストレージ２４におけるパス名称を指定し、dst_file_nameのフィールドに、仮想ディスクにおける仮想ファイルシステムのパス名称を指定することができる。したがって、dst_file_nameのフィールドに、仮想ディスクにおける仮想ファイルシステムに適応したパス名称を設定すれば、コンテンツオーサは、再生装置１の、ローカルストレージ２４に実際に記録されるデータのdisc_id以下のファイル／ディレクトリ構造を自由に設定し、disc_id以下の領域にディレクトリやファイルを新しく追加することが可能となる。
【０１３６】
また、実ファイルをダウンロードするときに、Manifest（）セクションのdst_file_nameのフィールドを空欄とした場合、そのファイルは、再生装置１において実行されるアプリケーションプログラムから参照することができない（すなわち、再生装置１において実行されるアプリケーションプログラムやユーザから、そのファイルの存在を認識することができない）。すなわち、実ファイルはローカルストレージ２４に記憶され、ローカルストレージのファイルシステムにおいては、そのファイルは正しく認識されているが、dst_file_nameのフィールドを空欄とすることにより、仮想ファイルシステムには存在しないこととすることができ、再生装置１において実行されるアプリケーションプログラムやユーザからは隠蔽することが可能である。
【０１３７】
これを利用して、例えば、Manifest（）セクションのdst_file_nameのフィールドを空欄として実ファイルをダウンロードさせ、後日、同一のManifest_idを有し、dst_file_nameフィールドに、仮想ファイルシステムにおける所定のパス名称が記載されたManifest（）セクションを改めてダウンロードさせてManifest（）セクションを上書きさせることにより、再生装置１において実行されるアプリケーションプログラムからは、新たなManifest（）セクションがダウンロードされたタイミングで、実ファイルがダウンロードされたのと同様に取り扱わせるようにすることができる。
【０１３８】
このようにすることにより、例えば、複数のボーナストラックを一度にダウンロード、または、所定の記録媒体などにより配布させておいて、その後、異なるボーナストラックをアプリケーションにより認識させることができるようにdst_file_name フィールドが記載されたManifest（）セクションのみを、所定の時期ごとにダウンロードさせて、上書きさせることにより、大容量のデータをたびたびダウンロードさせることなく、時期ごとに異なるボーナストラックが追加されるようなサービスをユーザに提供することが可能である。
【０１３９】
また、光ディスク１１およびローカルストレージ２４における実際のファイルシステムと、仮想ディスクのファイルシステムとの同期（バインド）方式は、いわゆるスタティックバインディング方式であっても、ダイナミックバインディング方式であっても、仮想ファイルシステムを更新するために新たなAPI（例えば、update()）を定義し、ユーザ操作、または、アプリケーションプログラムにより明示的にそのAPIが呼び出されたときに、仮想ファイルシステムが更新されるようにしてもよい。
【０１４０】
なお、スタティックバインディングとは、光ディスク１１が再生装置１に装着された時点、または、再生タイトルが切り替わったタイミングで、光ディスク１１およびローカルストレージ２４における実際のファイルシステムを参照し、仮想ファイルシステムのディレクトリ／ファイル構造をマッピングするものであり、ダイナミックバインディングとは、ファイル入出力要求が発行された時点で、必要なファイルを探索するものである。
【０１４１】
仮想ディスクのディレクトリ／ファイル構造は、上述したように、光ディスク１１のディレクトリ／ファイル構造に合致するようになされると好適である。光ディスク１１のディレクトリ／ファイル構造は、規格などにより予め定められ、変更することができない場合が多く、ローカルストレージ２４における実際のファイルシステムのディレクトリやファイルの構造は、コンテンツオーサにより自由に設定可能であるほうが好適である。このため、仮想ディスクのディレクトリ／ファイル構造を、変更することができない光ディスク１１のディレクトリ／ファイル構造に基づいて設定することができるようにすると、コンテンツオーサにより配布されるデータの自由度を維持しつつ、光ディスク１１のアプリケーションフォーマット等の規格に合致した再生処理を実行させることができるので好適である。
【０１４２】
仮想ディスクにおけるディレクトリ／ファイル構造の例を図１６に示す。
【０１４３】
図１６に示される仮想ディスクのディレクトリ／ファイル構造において、「root」の下には「BDMV」の名前が設定されたディレクトリが用意され、そのディレクトリに、「Index.bdmv」の名前が設定されたファイルと、「MovieObjects.bdmv」の名前が設定されたファイルが格納されている。
【０１４４】
Indexファイルは、光ディスク１１およびローカルストレージ２４に記録され、アプリケーションプログラムから仮想ディスクに記録されているものとして取り扱われるコンテンツを再生するメニューに関する情報を含む。再生装置１は、例えば、仮想ディスクに記録されているものとして取り扱われるコンテンツを全て再生する、特定のチャプタのみ再生する、繰り返し再生する、初期メニューを表示するなどの内容の項目を含む再生メニュー画面をIndexファイルに基づいて、表示装置に表示させる。Indexファイルには各項目が選択されたときに実行するMovieObjectを設定することができ、ユーザにより再生メニュー画面から１つの項目が選択された場合、再生装置１はIndexファイルに設定されているMovieObjectのコマンドを実行する。
【０１４５】
MovieObjectファイルは、MovieObjectを含むファイルである。MovieObjectは、仮想ディスクに記録されているものとして取り扱われるPlayListの再生を制御するコマンドを含み、例えば、再生装置１は、仮想ディスクに記録されているものとして取り扱われるMovieObjectの中から１つを選択して、実行することにより、仮想ディスクに記録されているものとして取り扱われるコンテンツを再生させることができる。
【０１４６】
BDMVディレクトリにはまた、「BACKUP」の名前が設定されたディレクトリ（BACKUPディレクトリ）、「PLAYLIST」の名前が設定されたディレクトリ（PLAYLISTディレクトリ）、「CLIPINF」の名前が設定されたディレクトリ（CLIPINFディレクトリ）、「STREAM」の名前が設定されたディレクトリ（STREAMディレクトリ）、「AUXDATA」の名前が設定されたディレクトリ（AUXDATAディレクトリ）が設けられている。
【０１４７】
BACKUPディレクトリには、仮想ディスクに記録されているものとして取り扱われるファイルやデータをバックアップするためのファイルやデータが記録される。
【０１４８】
PLAYLISTディレクトリには、PlayListファイルが格納される。各PlayListファイルには、光ディスク１１における場合と同様に、５桁の数字からなるファイル名に拡張子「.mpls」を付加した名称が命名される。
【０１４９】
CLIPINFディレクトリには、Clip Informationファイルが格納される。各Clip Informationファイルには、光ディスク１１における場合と同様に、５桁の数字からなるファイル名に拡張子「.clpi」を付加した名称が命名される。
【０１５０】
STREAMディレクトリには、Clip ＡＶストリームファイルやサブストリームファイルが格納される。各ストリームファイルには、光ディスク１１における場合と同様に、５桁の数字からなるファイル名に拡張子「.m2ts」を付加した名称が命名される。
【０１５１】
AUXDATAディレクトリには、仮想ディスクに記録されているものとして取り扱われるClip ＡＶストリームファイルやサブストリームファイルに含まれずに、Clip ＡＶストリームファイルやサブストリームファイルから参照されるデータや、Clip ＡＶストリームファイルやサブストリームファイルとは独立して利用されるデータなどのファイルが格納される。
【０１５２】
なお、ユーザに提供されるメニュー画面において、ファイルを示す情報は、通常、display_nameのフィールドにおいて指定された名称となるが、例えば、図１６を用いて説明した、仮想ディスクにおけるディレクトリ／ファイル構造は、アプリケーションまたはユーザから隠蔽されないものであるので、再生装置１において実行されるアプリケーションによっては、仮想ディスクにおけるディレクトリ／ファイル構造を、ユーザに提示するようにしてもかまわない。
【０１５３】
次に、図１７を用いて、コンテンツオーサがコンテンツを配布する際のコンテンツ配布用ファイル形式の定義について説明する。コンテンツの配布の際のファイル形式は、コンテンツファイル単位での個別配布であっても良いが、図１７に示されるように、メタデータ（Manifest()）を含むアーカイブ形式であっても良い。
【０１５４】
ただし、アーカイブ中のPackage_header（）セクションおよびPackage_Body（）セクションに関しては、XMLに代表されるタグ付言語によるテキスト表現もとることができる。
【０１５５】
なお、コンテンツオーサがコンテンツをファイル単位で個別配布するとき、メタデータ（Manifest()）は単独のバイナリーファイルまたはテキストファイルとして扱われる。すなわち、ファイル単位で配布されたコンテンツに関連付けられるManifest（）には、追加後のディレクトリ構造を見越して、ふさわしい状態が記述されていなければならない。
【０１５６】
compression_typeは、Package_Body（）内データの圧縮方式を指定するためのフィールドである。本フィールドに０が指定されている場合は、Package_Body（）内データは、非圧縮形式であるものとする。
【０１５７】
encryption_typeは、Package_Body（）内データのスクランブル方式（暗号化方式）を指定するためのフィールドである。本フィールドに０が指定されている場合は、Package_Body（）内データは、ノンスクランブル（平文）形式であるものとする。
【０１５８】
なお、Package_Body（）内データのスクランブルと圧縮の順序は、１.圧縮処理、２.スクランブル処理の順番で行われるものとする。
【０１５９】
file_countは、アーカイブするファイルの総数を指定するためのフィールドである。
【０１６０】
manifest_idは、このManifest（）セクションの識別子を指定するためのフィールドである。
【０１６１】
アーカイブデータがダウンロードされた後、Manifest（）セクションは、ローカルストレージ２４において、対応するダウンロードファイル単位（アーカイブデータ単位）で保存されるようにしても、１つのファイルにマージされるようにして、Manifest（）セクションの識別子であるmanifest_idをキーに識別可能なようにしてもよい。
【０１６２】
author_idは、対応する光ディスクにおける仮想ファイルシステムの構築に用いる識別子を指定するためのフィールドである。
【０１６３】
disc_idは、同一のauthor_idに対応付けられるそれぞれのコンテンツを識別するための識別子を指定するためのフィールドである。すなわち、このアーカイブは、disc_idで指定される光ディスク１１のコンテンツに対するアップデートデータである。
【０１６４】
permissionは、ユーザに対して可視属性にしてよいか、不可視属性にしておくか、または、ファイルの上書きを許可するか否かなどの許認可情報をコンテンツオーサが指定するためのフィールドである。Permissionにおいて指定可能な値については、図１２を用いて説明した場合と同一である。なお、permissionの情報は、Manifestファイル以外のいずれかのファイルに記載されたり、または、独立したファイルとして構成されるものとしてもよい。
【０１６５】
src_file_nameは、図１５を用いて説明した様に、ローカルストレージ２４にて記録されるべきファイルのパス名称を指定するためのフィールドである。ファイル／ディレクトリ名称は、ISO/IEC 646規格に従い符号化されているものとする。
【０１６６】
dst_file_nameは、図１５を用いて説明した様に、仮想ディスク（仮想ファイルシステム）におけるバインド先のファイルのパス名称を指定するためのフィールドである。ファイル／ディレクトリ名称は、ISO/IEC 646規格に従い符号化されているものとする。
【０１６７】
なお、src_file_nameとdst_file_nameには、同一名称を指定することもできる。
【０１６８】
そして、credentialには、src_file_nameにおいて指定されているファイルが、異なるauther_idのディレクトリ下にある場合に、ファイルアクセス権限をチェックするための情報が記載されている。このことにより、ローカルストレージ２４においては、複数のauther_id以下のディレクトリでコンテンツファイルを共有することが可能となる。
【０１６９】
file_sizeは、圧縮前のファイルサイズをバイト単位で指定するためのフィールドである。
【０１７０】
file_dataは、ファイルデータをバイトシーケンスとして指定するためのフィールドである。
【０１７１】
図１７を用いて説明した様なコンテンツ配布用ファイル形式のデータがダウンロードされ、再生装置１において、装着された光ディスク１１に記録されているデータとマージされて仮想ディスクにおける仮想ファイルシステムが構築される。これにより、再生装置１を用いて光ディスク１１に記録されているコンテンツを再生させるユーザからは、光ディスク１１に記録されているコンテンツに、例えば、ボーナストラックや、異なる言語での音声または表示字幕が追加されてアップデートされたように感じられる。
【０１７２】
上述したファイル形式にしたがって構成されるコンテンツが更新される場合は、例えば、図１６を用いて説明した仮想ファイルシステムにおいて、インデックスファイル（Index.bdmv）、ムービーオブジェクトファイル（Movieobjects.bdmv）、プレイリストファイル（*****.mpls）、クリップインフォメーションファイル（*****.clpi）、ストリームファイルまたはAUXデータファイル（*****.m2ts, *****bdmv,*****.otf）などが追加あるいは更新されるように、新たなデータファイルがダウンロードされて、バインディングされる。これらのファイルがダウンロードされて、装着されている装着された光ディスク１１に記録されているコンテンツに関連付けられて再生されるためには、MainPathの追加やSubPathの追加などが実行される。
【０１７３】
なお、ファイルの追加更新時、ローカルストレージ２４に予め保存されていたファイルと、新たに取得されたファイルとのファイル名が同一であった場合、permissionに記載されている属性においてファイルの上書きが許可されていれば上書きコピーが実行され、permissionに記載されている属性においてファイルの上書きが許可されていなければ、上書きコピー処理は実行されない。また、新たに取得されたファイルのファイル名が、ローカルストレージ２４に予め保存されていたファイルのいずれとも同一のファイル名ではない場合、ファイルはローカルストレージ２４に新規追加されて記憶される。
【０１７４】
なお、光ディスク１１には、上述したファイル構成以外のＡＶストリームデータを記録させ、デコーダ２６によりデコードして再生させることが可能であるが、上述したファイル構成以外のＡＶストリームデータにおいては、ローカルストレージ２４にダウンロードされたファイルを用いて、仮想ファイルシステムを構築することはできない。したがって、光ディスク１１に上述したファイル構成以外のＡＶストリームデータが記録されている場合、再生装置１を利用するユーザにとって、光ディスク１１に記録されているファイルが追加されたり、その一部分だけが更新されるように、データを扱うことはできない。
【０１７５】
また、再生装置１においてPlayListファイルの編集を実行しなくても良いように、データの配布元（コンテンツオーサ）で、追加・更新に必要なファイルのパッケージングが予め行われ、ディスクベース（すなわち、Disc_idで示されるディレクトリのデータごと）で、ファイルのダウンロードが行われるようにしても良い。
【０１７６】
このようにして、再生装置１においては、ネットワーク２を介して、サーバ３から、例えば、図１７に示されるような構成を有する新たなデータをダウンロードして、メタデータであるManifest（）に記載されているsrc_file_nameに示されるパス名称を基に、ローカルストレージ２４に記憶され、Manifest（）に記載されているdst_file_nameに示されるパス名称を基に、仮想ファイルシステム内のパスが設定され、再生装置１のアプリケーション（例えば、再生処理を行うアプリケーション）は、仮想ファイルシステムを基に、すなわち、dst_file_nameに示されるパスに基づいて、光ディスク１１に記録されているデータと、ローカルストレージ２４に記録されているデータを区別せずに処理することができるようになされている。
【０１７７】
すなわち、再生装置１において実行されているアプリケーションプログラムが実行する処理として説明すると、データの追加処理を実行可能なアプリケーションプログラムは、データの追加指示（ダウンロード指示）を受けると、該当するManifestファイル（全てのManifestファイルであっても、一部のManifestファイルであっても良い）を、ネットワーク２を介してサーバ３に送信し、サーバ３から、現在追加可能なコンテンツ一覧を取得する。アプリケーションプログラムは、追加可能なコンテンツ一覧をユーザに提示し、ユーザは、提示された一覧の中からダウンロードするコンテンツを選択する。
【０１７８】
ユーザにより、ダウンロードするコンテンツが選択された場合、データをサーバ３からダウンロードする処理を実行可能なアプリケーション（例えば、データの追加処理や再生処理を実行可能なアプリケーションプログラムと同一であっても、それぞれ個別のものであっても良い）により、データのダウンロードが開始される。
【０１７９】
ダウンロードアプリケーションによるダウンロードが完了すると、ダウンロードされたファイルパッケージ群は、ファイルシステムをマネジメントするアプリケーションにより、仮想ファイルシステム上にマウントされ、スタティックバインディングまたはダイナミックバインディングなどにより、ネイティブなファイルシステムと仮想ファイルシステムとが同期される。
【０１８０】
次に、ユーザの操作入力に基づいて、ファイルを削除する場合の処理について説明する。再生装置１は、Manifestファイルを利用して、ローカルストレージ２４の中のファイル一覧を表示するようなメニュー画面を表示することができ、ユーザは、これを基に、ファイル（コンテンツ)ベースで仮想ファイルシステムからファイルを削除したり、ディスクベースで仮想ファイルシステムからファイルを削除することができる。
【０１８１】
まず、ファイル（コンテンツ）ベースでの、仮想ファイルシステムからのファイルの削除について説明する。
【０１８２】
仮想ディスクから、コンテンツベースでファイルを削除するということは、ユーザから見れば、例えば、光ディスク１１には予め記録されておらず、ダウンロードによって仮想ディスク上に記録された英語字幕や日本語吹き替え音声などを、コンテンツ別に選択して、対応するファイル群を削除することである。
【０１８３】
例えば、再生装置１に装着されている光ディスク１１に対して、ファイルの追加更新が実行され、ボーナストラックに対応するClipAVストリーム、選択可能な新しい字幕に対応するSubPathと対応するテキスト字幕ストリーム、SubPlayItemが追加されてSubPath内のSubPlayItemが延長されて追加字幕に対応するテキスト字幕ストリームが追加された。このとき、仮想ディスクに記録されているコンテンツの状態は、例えば、図１８に示されるように、SubPath#1およびSubPlayItem#1、並びに、SubPath#2およびSubPlayItem#2を有するPlayList#1と、ClipAVストリーム#1、ClipAVストリーム#2、および、テキスト字幕ストリーム#1乃至#3を含むものとなる。そして、図１９に示されるように、PlayItemにより指定されるMain Pathによって、ClipAVストリーム#1およびClipAVストリーム#2が連続して再生され、SubPlayItem#1を用いて指定されるSubpath#1により、テキスト字幕ストリーム#1とテキスト字幕ストリーム#3とが再生されて、SubPlayItem#2を用いて指定されるSubPath#2により、テキスト字幕ストリーム#2が再生されるものとなった。この状態において、ユーザがいずれかのファイルを削除する処理を開始することを指令した場合について説明する。
【０１８４】
このとき、コントローラ２１のローカルストレージディレクトリ管理部３４は、データ取得部３３を制御し、インターネットインタフェース２５およびネットワーク２を介してサーバ３にアクセスし、例えば、このPlayList#1により再生されるコンテンツに関連するmanifest_idなど、現在の仮想ファイルシステムの状態を示す情報をサーバ３に送信し、サーバ３より、可能な更新、すなわち、削除可能な項目の一覧に対応する情報を受信する。そして、メニュー画面表示制御部３１の処理により、例えば、図２０に示されるように、削除可能なファイルの一覧が、ユーザに提示される。ここでは、フランス語字幕、ボーナストラック、および、日本語追加字幕が、削除可能なファイルの一覧に含まれている。
【０１８５】
そして、ユーザにより、ボーナストラックの削除が選択された場合、ローカルストレージディレクトリ管理部３４は、ユーザにより選択されたボーナストラックに対応するファイルを削除する。このとき、ローカルストレージディレクトリ管理部３４は、このボーナストラックに対応するファイルパッケージ内のManifestファイルに関連付けられたファイルを消去し、Manifestファイル中の該当するManifest（）セクション自体を消去することができる。
【０１８６】
ところで、ローカルストレージ２４に記録されているファイルは、１つのPlayItemにより参照されるのみであるとは限らない。すなわち、上述した削除処理により、他の部分の再生処理に支障が生じる場合が想定できる。
【０１８７】
具体的には、削除されるボーナストラックにおいて参照されたテキスト字幕ファイル#n（ｎは、ある整数）が、削除されないＡＶストリームファイルとも同期して再生されるようになされているのにもかかわらず、ボーナストラックの消去に伴って、テキスト字幕ファイル#nも消去された場合、削除されないＡＶストリームファイルと同期してテキスト字幕ファイル#nを再生することができなくなってしまうような場合などである。
【０１８８】
そこで、ファイルシステムマージ処理部３６は、仮想ファイルシステムにおける上述した削除処理により、他の部分の再生処理に支障が生じるか否かを判断し、例えば、データ間のリンク構造が壊れることなどにより支障が生じる場合、他の部分の再生処理に必要なデータファイルを検出し、データ取得部３３に指令して、データファイルのダウンロードを要求する信号をサーバ３に送信させ、サーバ３より、必要なデータファイルのダウンロードを受けて、上述した場合と同様にして、ローカルストレージディレクトリ管理部３４の処理により、ローカルストレージ２４に展開する。
【０１８９】
そして、ファイルシステムマージ処理部３６は、新たなファイルがダウンロードされた場合であっても、ダウンロードされていない場合であっても、上述したような所定のタイミングで、仮想ファイルシステムのバインディング処理を行う。このような処理により、ユーザによって選択されたファイルが削除された状態の仮想ファイルシステムを基に、コンテンツが再生される。
【０１９０】
次に、ディスクベースでの仮想ファイルシステムからのファイルの削除について説明する。
【０１９１】
仮想ディスクから、ディスクベースでファイルを削除するということは、ローカルストレージ２４において、対応するdisc_idに対応するディレクトリに含まれているファイル群を全て削除することである。例えば、あるdisc_id以下に存在するManifestファイルと関連付けられたすべてのファイルが消去され、その後、すべてのManifest（）セクションも削除される。
【０１９２】
ユーザから見れば、具体的には、光ディスク１１に記録されているコンテンツに対して、ダウンロードされて仮想ファイルシステムにバインディングされた（すなわち、仮想ディスクに新たに記録された）追加または更新ファイルが削除されることにより、光ディスク１１が初期化される（光ディスク１１に記録されているコンテンツのみの状態となる）のと同等である。
【０１９３】
次に、図２１乃至図２６のフローチャートを参照して、再生装置1が、外部からファイルを新たに取得してローカルストレージ２４に記憶するとともに仮想ファイルシステムを構築することにより、光ディスク１１に記録されている情報とローカルストレージ２４に記憶されている情報とを再生させるために必要な処理について説明する。
【０１９４】
まず、図２１のフローチャートを参照して、ファイルベースの追加および更新処理について説明する。
【０１９５】
ステップＳ１において、コントローラ２１の操作入力取得部３２は、操作入力部２９から供給される信号を基に、ユーザから、ファイルベース、すなわち、所定のdisc_idで示されるディレクトリに含まれるファイルの追加処理を開始する指令を受けたか否かを判断する。ステップＳ１において、ファイルの追加処理を開始する指令を受けていないと判断された場合、ファイルの追加処理を開始する指令を受けたと判断されるまで、ステップＳ１の処理が繰り返される。
【０１９６】
ステップＳ１において、ファイルの追加処理を開始する指令を受けたと判断された場合、ステップＳ２において、コントローラ２１のローカルストレージディレクトリ管理部３４は、データ取得部３３を制御し、インターネットインタフェース２５およびネットワーク２を介してサーバ３にアクセスし、現在の仮想ファイルシステムの状態を示す情報、例えば、対応するManifest（）セクションのManifest_idを送信する。
【０１９７】
ステップＳ３において、データ取得部３３は、インターネットインタフェース２５を制御し、ネットワーク２を介して、サーバ３から、ダウンロード可能なファイルの一覧に対応する情報を受信したか否かを判断する。
【０１９８】
ステップＳ３において、ダウンロード可能なファイルの一覧に対応する情報を受信できなかったと判断された場合、ステップＳ４において、メニュー画面表示制御部３１は、ファイルの追加処理が不可能であることをユーザに通知するためのエラーメッセージの表示を制御し、処理が終了される。
【０１９９】
ステップＳ３において、ダウンロード可能なファイルの一覧に対応する情報を受信したと判断された場合、ステップＳ５において、データ取得部３３は、サーバ３から送信され、インターネットインタフェース２５により受信されたダウンロード可能なファイルの一覧に対応する情報を、メニュー画面表示制御部３１に供給する。メニュー画面表示制御部３１は、ダウンロード可能なファイルの一覧から、ユーザが所望のものを選択することができるようになされているメニュー画面を表示装置に表示させる。
【０２００】
ステップＳ６において、操作入力取得部３２は、メニュー画面表示制御部３１の処理により表示が制御されているメニュー画面のボタンまたはアイコンなどがユーザにより操作され、追加したい項目が選択されたか否かを判定する。ステップＳ６において、追加したい項目が選択されていないと判断された場合、選択されたと判断されるまで、ステップＳ６の処理が繰り返される。
【０２０１】
ステップＳ６において、追加したい項目が選択されたと判断された場合、ステップＳ７において、操作入力取得部３２は、ユーザにより選択されたアップデートの内容を表す情報を、データ取得部３３に供給する。データ取得部３３は、インターネットインタフェース２５を制御し、要求するファイルを示す情報をサーバ３に送信させ、ユーザが選択したファイルのダウンロードを要求する。
【０２０２】
ステップＳ８において、データ取得部３３は、インターネットインタフェース２５を制御し、サーバ３によりダウンロードファイルとして用意される、PlayListファイル、ClipInformationファイル、ClipAVストリームファイル、オーディオファイル、テキスト字幕ストリームファイル、または、フォントファイルなどをダウンロードさせ、これらのファイルがダウンロードされたことを、ローカルストレージディレクトリ管理部３４に通知する。
【０２０３】
ステップＳ９において、ローカルストレージディレクトリ管理部３４は、ダウンロードされたファイルのManifest（）に含まれるauthor_idとdisc_idとに基づいて、それらのＩＤで識別されるディレクトリがローカルストレージ２４に既に存在するか否かを判断して、対応するディレクトリが既に存在する場合は、そのディレクトリにダウンロードされたデータファイルを展開し、対応するディレクトリが存在しない場合、author_idとdisc_idで指定される新たなディレクトリをローカルストレージ２４に作成し、ダウンロードされたデータファイルを展開する。
【０２０４】
ステップＳ１０において、図２２を用いて後述するバインディング処理１が実行され、処理が終了される。
【０２０５】
このような処理により、サーバ３からアップデートファイルがダウンロードされて、ローカルストレージ２４に記録させ、光ディスク１１に記録されているコンテンツのアップデートファイルとして扱われるようにすることができる。
【０２０６】
すなわち、このような処理により、例えば、映画などのコンテンツが記録された光ディスク１１を購入したユーザが、光ディスク１１に予め記録されていない言語の字幕を表示させるために必要なファイルや、ボーナストラックを視聴するために必要なファイルなどを取得して、ローカルストレージ２４に記憶させるとともに、光ディスク１１に記録されているデータとローカルストレージ２４に記憶されているデータとを、再生処理などを実行するアプリケーションプログラムが区別しないで取り扱うことができ、物理的なデータの記憶をユーザまたはアプリケーションプログラムから隠蔽することができるような仮想ファイルシステムを構築させることができる。
【０２０７】
また、以上のようなアップデートファイルのダウンロードは、有料で行うことができるものであってもよいし、無料で行うことができるものであってもよい。
【０２０８】
次に、図２２のフローチャートを参照して、図２１のステップＳ１０において実行される、バインディング処理１について説明する。
【０２０９】
ステップＳ２１において、ローカルストレージディレクトリ管理部３４は、ローカルストレージ２４に記録されているダウンロードされたデータ群から、対応するdisc_idのディレクトリを抽出し、ファイルシステムマージ処理部３６に供給する。
【０２１０】
ステップＳ２２において、ファイルシステムマージ処理部３６は、Manifestファイルのsrc_file_nameおよびdst_file_nameを参照する。
【０２１１】
ステップＳ２３において、ファイルシステムマージ処理部３６は、ステップＳ２２において参照されたsrc_file_nameおよびdst_file_nameを基に、ネイティブなファイルシステムと、仮想ファイルシステムとをバインディングする。
【０２１２】
具体的には、src_file_nameには、ローカルストレージ２４のファイルシステムにおいて、このファイルがディレクトリ構造のどこに記録されるかを一義に指定できる情報、いわゆるパスを表す「パス名称」が指定され、dst_file_nameには、実際にはローカルストレージ２４に記憶されるファイルの仮想ディスクにおけるバインド先において、このファイルがディレクトリ構造のどこに記録されるかを一義に指定できる情報、いわゆるパスを表す「パス名称」が指定される。
【０２１３】
例えば、図１１を用いて説明したManifest（）セクションにおいて、src_file_nameのフィールドに「/MainMovie/movie01/main.r1.jp.mp2」とパス名称が指定され、dst_file_nameのフィールドに「/STREAM/01002.m2ts」とパス名称が指定されている場合、ファイルシステムマージ処理部３６は、図１５を用いて説明したように、ダウンロードされたデータが、ローカルストレージ２４において、対応するauthor_idおよびdisc_idの下の、MainMovieフォルダ内のmovie01フォルダに、main.r1.jp.mp2というファイル名で記録されるが、仮想ディスクにおける仮想ファイルシステムにおいては、STREAMディレクトリの01002.m2tsというファイル名のファイルとして取り扱われるようにバインディングする。
【０２１４】
コンテンツオーサは、ダウンロードされるファイルパッケージのManifest（）セクションのsrc_file_nameのフィールドに、ローカルストレージ２４におけるパス名称を指定し、dst_file_nameのフィールドに、仮想ディスクにおける仮想ファイルシステムにおけるパス名称を指定することができる。したがって、dst_file_nameのフィールドに、仮想ディスクにおける仮想ファイルシステムに適応した（光ディスク１１のファイルシステムに適応した）パス名称を設定すれば、コンテンツオーサは、再生装置１の、ローカルストレージ２４に実際に記録されるデータのdisc_id以下のファイル／ディレクトリ構造を自由に設定し、disc_id以下の領域にディレクトリやファイルを新しく追加することが可能となる。
【０２１５】
次に、図２３のフローチャートを参照して、ディスクベースの追加および更新処理について説明する。
【０２１６】
ステップＳ４１において、コントローラ２１の操作入力取得部３２は、操作入力部２９から供給される信号を基に、ユーザから、ディスクベース、すなわち、ローカルストレージ２４に実際に記録されるデータのdisc_id以下のファイルの追加処理を開始する指令を受けたか否かを判断する。ステップＳ４１において、ファイルの追加処理を開始する指令を受けていないと判断された場合、ファイルの追加処理を開始する指令を受けたと判断されるまで、ステップＳ４１の処理が繰り返される。
【０２１７】
ステップＳ４１において、ファイルの追加処理を開始する指令を受けたと判断された場合、ステップＳ４２において、コントローラ２１のローカルストレージディレクトリ管理部３４は、データ取得部３３を制御し、インターネットインタフェース２５およびネットワーク２を介してサーバ３にアクセスし、現在の仮想ファイルシステムの状態を示す情報、例えば、対応するdisc_id以下のManifest ファイルに含まれる全てのManifest（）セクションのManifest_idを送信する。
【０２１８】
ステップＳ４３において、データ取得部３３は、インターネットインタフェース２５を制御し、ネットワーク２を介して、サーバ３から、ダウンロード可能なディスクベースのファイルの一覧に対応する情報を受信したか否かを判断する。
【０２１９】
ステップＳ４３において、ダウンロード可能なディスクベースのファイルの一覧に対応する情報を受信できなかったと判断された場合、ステップＳ４４において、メニュー画面表示制御部３１は、ファイルの追加処理が不可能であることをユーザに通知するためのエラーメッセージの表示を制御し、処理が終了される。
【０２２０】
ステップＳ４３において、ダウンロード可能なファイルの一覧に対応する情報を受信したと判断された場合、ステップＳ４５において、データ取得部３３は、サーバ３から送信され、インターネットインタフェース２５により受信されたダウンロード可能なディスクベースのファイルの一覧に対応する情報を、メニュー画面表示制御部３１に供給する。メニュー画面表示制御部３１は、ダウンロード可能なファイルの一覧から、ユーザが所望のものを選択することができるようになされているメニュー画面を表示装置に表示させる。
【０２２１】
ステップＳ４６において、操作入力取得部３２は、メニュー画面表示制御部３１の処理により表示が制御されているメニュー画面のボタンまたはアイコンなどがユーザにより操作され、追加したい項目が選択されたか否かを判定する。ステップＳ４６において、追加したい項目が選択されていないと判断された場合、選択されたと判断されるまで、ステップＳ４６の処理が繰り返される。
【０２２２】
ステップＳ４６において、追加したい項目が選択されたと判断された場合、ステップＳ４７において、操作入力取得部３２は、ユーザにより選択されたアップデートの内容を表す情報を、データ取得部３３に供給する。データ取得部３３は、インターネットインタフェース２５を制御し、要求するファイルを示す情報をサーバ３に送信させ、ユーザが選択したディスクベースのファイルのダウンロードを要求する。
【０２２３】
ステップＳ４８において、データ取得部３３は、インターネットインタフェース２５を制御し、サーバ３によりダウンロードファイルとして用意されるディスクベースのファイル群をダウンロードさせ、ディスクベースのファイル群がダウンロードされたことを、ローカルストレージディレクトリ管理部３４に通知する。
【０２２４】
ステップＳ４９において、ローカルストレージディレクトリ管理部３４は、ダウンロードされたファイルのManifest（）に含まれるauthor_idとdisc_idとに基づいて、それらのＩＤで識別されるディレクトリをローカルストレージ２４に作成し、ダウンロードされたディスクベースのデータを展開する。
【０２２５】
ステップＳ５０において、図２２を用いて説明したバインディング処理１が実行され、処理が終了される。
【０２２６】
このような処理により、サーバ３からアップデートファイルがディスクベースでダウンロードされて、ローカルストレージ２４に記録させ、光ディスク１１に記録されているコンテンツのアップデートファイルとして扱われるようにすることができる。
【０２２７】
すなわち、このような処理により、例えば、映画などのコンテンツが記録された光ディスク１１を購入したユーザが、光ディスク１１に予め記録されていない言語の字幕を表示させるために必要なファイルや、ボーナストラックを視聴するために必要なファイルなどをディスクベースで取得して、ローカルストレージ２４に記憶させるとともに、光ディスク１１に記録されているデータとローカルストレージ２４に記憶されているデータとを、再生処理などを実行するアプリケーションプログラムが区別しないで取り扱うことができ、物理的なデータの記憶をユーザまたはアプリケーションプログラムから隠蔽することができるような仮想ファイルシステムを構築させることができる。
【０２２８】
また、このようなディスクベースのアップデートファイルのダウンロードも、ファイルベースでダウンロードが行われる場合と同様に、有料で行うことができるものであってもよいし、無料で行うことができるものであってもよい。
【０２２９】
また、図２１においては、ユーザによってファイルベースのダウンロードが指令された場合の処理を説明し、図２３においては、ユーザによってディスクベースのダウンロードが指令された場合の処理を説明したが、例えば、ユーザは、ファイルベースとディスクベースとを区別せずにファイルのダウンロード開始の指示を行うことができるようにしても良いことは言うまでもない。すなわち、サーバ３からダウンロードされるデータの形式がファイルベースであるかディスクベースであるかによって、ローカルストレージディレクトリ管理部３４によるローカルディスク２４へのダウンロードされたデータの展開方法を変更することができるようにしても良い。
【０２３０】
次に、図２４のフローチャートを参照して、ファイルベースの削除処理について説明する。
【０２３１】
ステップＳ７１において、コントローラ２１の操作入力取得部３２は、操作入力部２９から供給される信号を基に、ユーザから、ファイルベース、すなわち、disc_idで示されるディレクトリに含まれるファイル単位の削除処理を開始する指令を受けたか否かを判断する。ステップＳ７１において、ファイルベースの削除処理を開始する指令を受けていないと判断された場合、ファイルの削除処理を開始する指令を受けたと判断されるまで、ステップＳ７１の処理が繰り返される。
【０２３２】
ステップＳ７１において、ファイルベースの削除処理を開始する指令を受けたと判断された場合、ステップＳ７２において、コントローラ２１のローカルストレージディレクトリ管理部３４は、データ取得部３３を制御し、インターネットインタフェース２５およびネットワーク２を介してサーバ３にアクセスし、現在の仮想ファイルシステムの状態を示す情報、すなわち、対応するManifest（）セクションのManifest_idを送信する。
【０２３３】
ステップＳ７３において、データ取得部３３は、インターネットインタフェース２５を制御し、ネットワーク２を介してサーバ３から、可能な更新、すなわち、削除可能な項目の一覧に対応する情報を受信したか否かを判断する。
【０２３４】
ステップＳ７３において、可能な更新の一覧に対応する情報を受信できなかったと判断された場合、ステップＳ７４において、メニュー画面表示制御部３１は、ファイルの削除処理が不可能であることをユーザに通知するためのエラーメッセージの表示を制御し、処理が終了される。
【０２３５】
ステップＳ７３において、可能な更新の一覧に対応する情報を受信したと判断された場合、ステップＳ７５において、データ取得部３３は、サーバ３から送信され、インターネットインタフェース２５により受信された可能な更新の一覧に対応する情報を、メニュー画面表示制御部３１に供給する。メニュー画面表示制御部３１は、可能な更新の一覧から、ユーザが所望のものを選択することができるようになされているメニュー画面を表示装置に表示させる。
【０２３６】
ステップＳ７６において、操作入力取得部３２は、メニュー画面表示制御部３１の処理により表示が制御されているメニュー画面のボタンまたはアイコンなどがユーザにより操作され、削除したい項目（内容）が選択されたか否かを判定する。ステップＳ７６において、削除したい項目が選択されていないと判断された場合、選択されたと判断されるまで、ステップＳ７６の処理が繰り返される。
【０２３７】
ステップＳ７６において、削除したい項目が選択されたと判断された場合、ステップＳ７７において、操作入力取得部３２は、ユーザにより選択された削除したい項目を表す情報を、ローカルディレクトリ管理部３４に供給する。ローカルディレクトリ管理部３４は、指定されたファイルを、ローカルストレージ２４から削除する。
【０２３８】
ステップＳ７８において、ファイルシステムマージ処理部３６は、ステップＳ７７において実行されたファイルの削除処理により、仮想ファイルシステムにおけるファイルのリンク構造に不具合が発生するか否かを判断する。ステップＳ７８において、仮想ファイルシステムにおけるファイルのリンク構造に不具合が発生しないと判断された場合、処理は、後述するステップＳ８１に進む。
【０２３９】
ステップＳ７８において、仮想ファイルシステムにおけるファイルのリンク構造に不具合が発生すると判断された場合、ステップＳ７９において、ファイルシステムマージ処理部３６は、不具合を解消するために必要なデータファイル（場合によっては、フォルダまたはディレクトリ）を抽出し、データ取得部３３に供給する。データ取得部３３は、インターネットインタフェース２５を制御し、要求するファイルを示す情報をサーバ３に送信させ、ユーザが選択したファイルのダウンロードを要求する。そして、データ取得部３３は、インターネットインタフェース２５を制御し、サーバ３によりダウンロードファイルとして用意される、服愛の解消のために必要なファイルをダウンロードし、これらのファイルがダウンロードされたことを、ローカルストレージディレクトリ管理部３４に通知する。
【０２４０】
ステップＳ８０において、ローカルストレージディレクトリ管理部３４は、ダウンロードされたファイルのManifest（）に含まれるauthor_idとdisc_idとに基づいて、それらのＩＤで識別されるディレクトリがローカルストレージ２４に既に存在するか否かを判断して、対応するディレクトリが既に存在する場合は、そのディレクトリにダウンロードされたデータファイルを展開し、対応するディレクトリが存在しない場合、author_idとdisc_idで指定される新たなディレクトリをローカルストレージ２４に作成し、ダウンロードされたデータファイルを展開する。
【０２４１】
ステップＳ７８において、仮想ファイルシステムにおけるファイルのリンク構造に不具合が発生しないと判断された場合、または、ステップＳ８０の処理の終了後、ステップＳ８１において、ファイルシステムマージ処理部３６は、ステップＳ７７において実行されたファイルの削除処理により不必要となったファイル、例えば、仮想ファイルシステムにおいて、いずれのPlayListによっても再生されない（全てのPlayListによって指定されない）ファイルなどが削除される設定であるか否かを判断する。ステップＳ８１において、不必要となったファイルは削除されずに残される設定であると判断された場合、処理は、後述するステップＳ８３に進む。
【０２４２】
ステップＳ８１において、不必要となったファイルは削除される設定であると判断された場合、ステップＳ８２において、ファイルシステムマージ処理部３６は、不必要となったファイルを抽出し、このような不必要なファイルを削除することをローカルストレージディレクトリ管理部３４に指令する。ローカルストレージディレクトリ管理部３４は、ファイルシステムマージ処理部３６の指令に基づいて、ローカルストレージ２４に記録されている不必要なファイルを削除する。
【０２４３】
ステップＳ８１において、不必要となったファイルは削除されずに残される設定であると判断された場合、または、ステップＳ８２の処理の終了後、ステップＳ８３において、図２２を用いて説明したバインディング処理１が実行され、処理が終了される。
【０２４４】
このような処理により、サーバ３からダウンロードされて、ローカルストレージ２４に記録されたアップデートファイルを、ユーザの操作入力に基づいて、ファイルベース、すなわち、disc_idで示されるディレクトリに含まれるファイル単位で削除することができる。
【０２４５】
次に、図２５のフローチャートを参照して、ディスクベースの削除処理について説明する。
【０２４６】
ステップＳ１１１において、コントローラ２１の操作入力取得部３２は、操作入力部２９から供給される信号を基に、ユーザから、ディスクベース、すなわち、disc_idで示されるディレクトリに含まれる全てのファイルの削除処理を開始する指令を受けたか否かを判断する。ステップＳ１１１において、ディスクベースの削除処理を開始する指令を受けていないと判断された場合、ディスクベースの削除処理を開始する指令を受けたと判断されるまで、ステップＳ１１１の処理が繰り返される。
【０２４７】
ステップＳ１１１において、ディスクベースの削除処理を開始する指令を受けたと判断された場合、ステップＳ１１２において、ファイルシステムマージ処理部３６は、削除される部分に対応するManifestファイル、例えば、現在再生装置１に装着されている光ディスク１１のauthor_idおよびdisc_idに対応するManifestファイルを抽出し、ローカルストレージディレクトリ管理部３４に、対応するManifestファイルを読み出させる。
【０２４８】
ステップＳ１１３において、ローカルストレージディレクトリ管理部３４は、読み出されたManifestファイルを基に、このManifestファイルに関連付けられたファイルを、ローカルストレージ２４から削除する。
【０２４９】
ステップＳ１１４において、ローカルストレージディレクトリ管理部３４は、削除された部分に対応するManifestファイルを、ローカルストレージ２４から削除する。
【０２５０】
そして、ステップＳ１１５において、図２２を用いて説明したバインディング処理１が実行され、処理が終了される。
【０２５１】
すなわち、disc_idで示されるディレクトリに含まれるファイル全体が削除され、削除された部分に対応するManifestファイルも削除されるので、バインディング処理において、ファイルシステムマージ処理部３６は、Manifestファイルが見つからないため、０個のディレクトリおよび０個のファイルをバインドして（すなわち、何もバインドせずに）、バインド処理を終了し、結果的には、光ディスク１１上のディレクトリ／ファイル構造が、そのまま、仮想ファイルシステムとして管理されるものとなる。
【０２５２】
このような処理により、サーバ３からダウンロードされて、ローカルストレージ２４に記録されたアップデートファイルを、disc_idで示されるディレクトリに含まれるファイル全体として削除することができる。
【０２５３】
なお、ディスクベースでファイルを削除する場合においても、ファイルの追加、または、ファイルベースの削除における場合と同様にして、サーバ３に現在の仮想ディスク（仮想ファイルシステム）の状況を示す情報を送信し、サーバ３から、可能な変更を示す情報を得て、これを基に削除処理を行うようにしても良い。
【０２５４】
次に、図２６のフローチャートを参照して、再生処理およびファイルシステム構成処理について説明する。
【０２５５】
ステップＳ１４１において、光ディスクディレクトリ管理部３５は、光ディスク１１が装着されたか否かを判断する。ステップＳ１４１において、光ディスク１１が装着されていないと判断された場合、光ディスク１１が装着されたと判断されるまで、ステップＳ１４１の処理が繰り返される。
【０２５６】
ステップＳ１４１において、光ディスク１１が装着されていると判断された場合、ステップＳ１４２において、光ディスクディレクトリ管理部３５は、光ディスク１１からauthor_idとdisc_idを読み出し、読み出したauthor_idとdisc_idをローカルストレージディレクトリ管理部３４およびファイルシステムマージ処理部３６に供給する。
【０２５７】
ステップＳ１４３において、図２２を用いて説明したバインディング処理１が実行される。
【０２５８】
ステップＳ１４４において、コントローラ２１は、ナビゲーションプログラムを実行する。
【０２５９】
ステップＳ１４５において、再生制御部３７は、操作入力取得部３２から供給されるユーザの操作入力を基に、ユーザから、コンテンツの再生を指令する操作入力を受けたか否かを判断する。ステップＳ１４５において、コンテンツの再生を指令する操作入力を受けなかったと判断された場合、処理は、後述するステップＳ１５０に進む。
【０２６０】
ステップＳ１４５において、コンテンツの再生を指令する操作入力を受けたと判断された場合、操作入力取得部３２は、ユーザの操作入力に対応する信号を、光ディスクディレクトリ管理部３５に供給し、光ディスクディレクトリ管理部３５は、光ディスク１１から読み出したauthor_idとdisc_idをローカルストレージディレクトリ管理部３４に出力するので、ステップＳ１４６において、図２２を用いて説明したバインディング処理１が実行される。
【０２６１】
ステップＳ１４７において、再生制御部３７は、ローカルストレージディレクトリ管理部３４および光ディスクディレクトリ管理部３５を制御して、ナビゲーションプログラムが再生区間として指定するPlayListとSubPlayItemを取得し、取得したPlayListとSubPlayItemが参照するストリームファイル（ＡＶファイル、オーディオファイル、テキスト字幕ファイルなど）を読み出させて、デコーダ２６に供給させる。ここでは、PlayListやSubPlayItemにより表されるタイムスタンプがClip informationによりアドレスに変換され、ＡＶストリームなどに対するアクセスが行われる。
【０２６２】
ステップＳ１４８において、再生制御部３７は、デコーダ２６を制御して、PlayItemにより指定されるコンテンツを再生させる。
【０２６３】
ステップＳ１４９において、操作入力取得部３２は、再生タイトル（再生されるコンテンツ）の切り替えを指令する操作入力を受けたか否かを判断する。ステップＳ１４９において、再生タイトルの変更を指令する操作入力を受けていないと判断された場合、処理は、後述するステップＳ１５０に進む。
【０２６４】
ステップＳ１４９において、再生タイトルの変更を指令する操作入力を受けたと判断された場合、操作入力取得部３２は、ユーザの操作入力に対応する信号を、光ディスクディレクトリ管理部３５に供給し、光ディスクディレクトリ管理部３５は、光ディスク１１から読み出したauthor_idとdisc_idをローカルストレージディレクトリ管理部３４に出力するので、処理は、ステップＳ１４６に戻り、それ以降の処理が繰り返される。
【０２６５】
ステップＳ１４５において、コンテンツの再生を指令する操作入力を受けなかったと判断された場合、または、ステップＳ１４９において、再生タイトルの変更を指令する操作入力を受けていないと判断された場合、ステップＳ１５０において、操作入力取得部３２は、ユーザから、ファイルの追加または削除が指令されたか否かを判断する。
【０２６６】
ステップＳ１５０において、ファイルの追加または削除が指令されたと判断された場合、ステップＳ１５１において、データ取得部３３、または、ローカルストレージディレクトリ管理部３４などは、例えば、図２１、および、図２３乃至図２５を用いて説明した様にして、ファイルを追加または削除する処理を実行する。
【０２６７】
ステップＳ１５２において、図２２を用いて説明したバインディング処理１が実行される。
【０２６８】
ステップＳ１５０において、ファイルの追加または削除が指令されていないと判断された場合、または、ステップＳ１５２の処理の終了後、ステップＳ１５３において、操作入力取得部３２は、仮想ファイルシステムの更新が指令されたか否かを判断する。
【０２６９】
ステップＳ１５３において、仮想ファイルシステムの更新が指令されたと判断された場合、例えば、仮想ファイルシステムを更新するために定義されたAPI（例えば、update()）が呼び出され、ステップＳ１５４において、図２２を用いて説明したバインディング処理１が実行される。
【０２７０】
ステップＳ１５３において、仮想ファイルシステムの更新が指令されていないと判断された場合、または、ステップＳ１５４の処理の終了後、ステップＳ１５５において、操作入力取得部３２は、再生装置１の処理の終了（例えば、アプリケーションの終了や、再生装置１の電源のオフ）が指令されたか否かを判断する。
【０２７１】
ステップＳ１５５において、再生装置１の処理の終了が指令されていないと判断された場合、処理は、ステップＳ１４４に戻り、それ以降の処理が繰り返される。ステップＳ１５５において、再生装置１の処理の終了が指令されたと判断された場合、処理が終了される。
【０２７２】
このような処理により、予め光ディスク１１に記録されているデータ、および、サーバ３からダウンロードされ、ローカルストレージ２４に記憶されているデータが、所定のタイミングでバインディングされて仮想ファイルシステムが構築され、仮想ファイルシステムを基に、コンテンツが再生される。
【０２７３】
以上説明した処理により、光ディスク１１に記録されているコンテンツのアップデートファイルをダウンロードして、再生装置１のローカルストレージ２４に記憶しておき、光ディスク１１に記録されているコンテンツファイルとローカルストレージ２４に記憶されているアップデートのファイルを、容易に扱うことができる。
【０２７４】
具体的には、再生装置１のシステムが持つネイティブなファイルシステム（光ディスク１１またはローカルストレージ２４に実際に記録されているデータのファイルシステム）の上位レイヤとして、仮想ファイルシステムが定義される。そして、光ディスク１１とローカルストレージ２４に実際に記録されているデータのファイルシステムがマージされて、仮想ファイルシステムが生成される。そのとき、ダウンロードされるデータのメタデータであるManifestファイルには、author_idとdisc_idとが識別子として記述される。
【０２７５】
ローカルストレージ２４のディスク領域は、author_idごとに分割されたディレクトリ構造を有し、author_id直下のディレクトリであるdisc_id以下は、コンテンツオーサにより、フレキシブルなファイル／ディレクトリ構造を構成することができる。ローカルストレージ２４に記憶されるデータが、ローカルストレージ２４のディスク領域のどこに配置されるか、すなわち、ダウンロードされるファイルのファイル／ディレクトリ構造は、ダウンロードされるデータに含まれるManifestデータのsrc_file_nameフィールドに、パス名称として記述される。
【０２７６】
これに対して、アプリケーションからアクセス可能な仮想ディスクのディレクトリ／ファイル構造は、光ディスク１１のディレクトリ／ファイル構造に従うようになされている。すなわち、ダウンロードされるデータに含まれるManifestデータのdst_file_nameフィールドには、実際にはローカルストレージ２４に記憶されるファイルの仮想ディスクにおけるバインド先を一義に指定できるパス名称が指定される。
【０２７７】
このようにすることにより、ローカルストレージ２４のディレクトリ／ファイル構造は、再生装置１において実行されるアプリケーションプログラム、または、ユーザから隠蔽される。
【０２７８】
また、ローカルストレージ２４に記録されているファイルの一部を削除することも可能である。ファイルの一部が削除された後、所定のタイミングで、再度バインディング処理が実行されて、新たな仮想ファイルシステムが生成される。また、ファイルが削除されたことにより、仮想ファイルシステムにおけるファイルのリンク構造に不具合が発生する場合、不具合の解消に必要なファイルを抽出し、必要なファイルを、サーバ３からダウンロードさせるようにすることができる。
【０２７９】
次に、再生装置１が、光ディスク１１に記録されているファイルの一部をローカルストレージ２４にコピーした後、バインディング処理を実行して仮想ファイルシステムを構築する場合の処理について説明する。
【０２８０】
上述したように、再生装置１においては、光ディスク１１に記録されているデータの一部を、ローカルストレージ２４に移動させることができる。これにより、光ディスク１１の転送レート以上のレートでの再生が可能となる。
【０２８１】
例えば、メインパスの映像および音声の再生と同期して、簡単なアニメーションを再生表示する場合について考える。例えば、光ディスク１１に、audio, video, image(JPEGなど)のデータが配置されており、再生装置１において、メインパスの映像および音声を読み出すとともに、アニメーションを構成する複数の静止画を所定のフレームレートで読み出し、メインパスの映像および音声に対して、所定のフレームレートのアニメーションを同期して再生させることが可能なようになされている場合、再生装置１のデータの読み出し可能レートによっては、メインパスの映像および音声とアニメーションを構成する複数静止画とを、再生レートに間に合うように読み出すことができない可能性がある。このような場合に、例えば、アニメーションよりもメインパスの映像および音声の再生が優先され、光ディスク１１からの静止画像データファイルの読み出しの優先度が下げられてしまう。このため、メインパスの映像および音声のレート設定によっては、静止画像データファイルがまったく読み出されないことがあり得る。
【０２８２】
このことにより、再生装置１においては、結果的に、アニメーションの再生のためのフレームレートの制約を守ることができなくなり、アニメーションの表示がギクシャクしたり、最悪の場合、前の画像が3/4程度残っている状態において、今の画像が、1/4程度表示されてしまう（この現象は、tearingとも称される）場合がある。
【０２８３】
そこで、光ディスク１１に記録されているデータのうち、同期して再生される複数のデータのうちの少なくとも一部を、ローカルストレージ２４に予めコピーしておき、その状態において仮想ファイルシステムを構築しておくことにより、光ディスク１１の転送レートとローカルストレージ２４の転送レートとの和を仮想的な最大転送レートとすることができるので、再生装置１においては、光ディスク１１からのみ再生されるコンテンツデータが読み出されて供給される場合の転送レートを超えた能力が必要とされる再生処理が可能となる。
【０２８４】
従って、上記の例では、アニメーションを構成する複数の静止画ファイルを、光ディスク１１からローカルストレージ２４に予めコピーして保存することにより、アニメーションフレームレートの制約を守ったアプリケーションの作成も可能となる。また、例えば、ハイフレームレートの映像同士を合成させて表示する場合、第１のハイフレームレートの映像を光ディスク１１からローカルストレージ２４に予めコピーして保存し、第２のハイフレームレートの映像を光ディスク１１から読み出して再生する場合に、ローカルストレージ２４にコピーされた第１のハイフレームレートの映像を合成して再生させるということも可能となる。
【０２８５】
具体的には、光ディスクドライブ２２は、光ディスク１１からナビゲーションプログラムを読み出してメモリ２３に供給する。コントローラ２１は、ナビゲーションプログラムを実行して、再生処理を含む各種処理を行う。コンテンツの提供者（コンテンツオーサ）は、光ディスク１１に記録されているコンテンツの内容、および、追加されるファイルを特定することができるため、光ディスク１１に記録されているコンテンツの再生において、光ディスク１１からのデータの読み出しだけでは再生が間に合わない部分のデータの一部、すなわち、例えば、上述した場合におけるアニメーション用の静止画像データや一方のハイフレームレートの映像データを指定して、予めローカルストレージ２４にコピーするようなナビゲーションプログラムを用意し、光ディスク１１に記録して、ユーザに提供する。
【０２８６】
光ディスク１１からローカルストレージ２４に所定のデータをコピーした場合、当然、同一のデータが光ディスク１１とローカルストレージ２４に存在することとなる。したがって、対応するデータは、光ディスク１１からではなく、ローカルストレージ２４から読み出されるようにしなければいけない。
【０２８７】
上述したように、新たなデータファイルがダウンロードされてローカルストレージ２４に記録される場合、データファイルとともに、Manifestファイルも必要に応じてダウンロードされて、Manifestファイルに記載されているsrc_file_nameおよびdst_file_nameに応じて、仮想ファイルシステムが構築された。これに対して、光ディスク１１からローカルストレージ２４に所定のデータをコピーする場合、光ディスク１１にManifestファイルを予め記録しておき、ファイルコピーとともに、ローカルストレージ２４にコピーするようにしてもよいが、光ディスク１１にManifestファイルを予め記録しておくことなく、適宜、Manifestファイルを生成または更新することができるようにしてもよい。
【０２８８】
すなわち、コンテンツオーサは、Manifestファイルに記載されるsrc_file_nameおよびdst_file_name等のデータをナビゲーションプログラムが取得可能なように光ディスク１１のいずれかの記録領域に記録しておき、その光ディスク１１が再生装置１に装着されて、光ディスク１１に記録されているデータのうちの一部がローカルストレージ２４にコピーされる場合、光ディスク１１のいずれかの記録領域に記録されているanifest_fileに記載されるsrc_file_nameおよびdst_file_name等のデータに基づいて、Manifestファイルを作成または更新し、ローカルストレージ２４の特定のフォルダに記録すればよい。
【０２８９】
また、光ディスク１１のいずれかの記録領域にManifestファイルに記載されるsrc_file_nameおよびdst_file_name等のデータが記録されていない場合、再生装置１は、装着されている光ディスク１１のファイルシステム、すなわち、ディレクトリ構造などに基づいて、Manifestファイルを作成または更新し、ローカルストレージ２４の特定のフォルダに記録することができる。
【０２９０】
データの一部のコピーは、ナビゲーションプログラムにより自動的に実行されるようにしても良いし、または、ナビゲーションプログラム実行中に、ユーザから、ローカルストレージ１１にコピーするデータやタイミングなどを選択する操作入力を受け、これに基づいて実行されるような構成としても良い。
【０２９１】
すなわち、再生装置１１においてナビゲーションプログラムが実行されることにより、光ディスク１１からローカルストレージ２４にコピーされたデータが、光ディスク１１からではなく、ローカルストレージ２４から読み出されるように、Manifestファイルが生成または更新され、このManifestファイルにしたがって、バインディング処理が実行され、仮想ファイルシステムが生成されて、再生処理が実行されるようになされなければならない。
【０２９２】
生成または更新されるManifestファイルにおいて、dst_file_nameは、コピーされるファイルの光ディスク１１のファイルシステムにおけるパスをそのまま利用することができる。しかしながら、src_file_nameは、コピーされるデータに基づいて、そのつど、設定されなければならない。
【０２９３】
具体的には、src_file_nameは、ナビゲーションプログラムにより予め定められていてもよいし、光ディスク１１に記録されているauthor_idおよびdisc_id、並びに、コピーされるファイルの光ディスクにおけるパスおよびファイル名を基に、新たに生成されるものとしてもよい。
【０２９４】
図２７乃至図３６を参照して、ファイルのコピーとManifestファイルの生成または更新について説明する。
【０２９５】
まず、図２７および図２８を参照して、ファイルのコピー処理の前に、ローカルストレージ２４にコピーされるファイルに対応する（換言すれば、装着された光ディスク１１と同一のauthor_idおよびdisc_idのディレクトリに記載されている）Manifestファイルが、ローカルストレージ２４に存在しない場合について説明する。
【０２９６】
すなわち、図２７に示されるように、ローカルストレージ２４にコピーされるファイルに対応するManifestファイルが、ローカルストレージ２４に存在しない状態において、例えば、保存ファイル名および実ファイルともに「コンテンツＡ」であるファイルが光ディスク１１からローカルストレージ２４にコピーされる場合、ローカルストレージ２４に、すでに、保存ファイル名および実ファイルともに「コンテンツＡ」であるファイルが存在するか否かにかかわらず、図２８に示されるように、保存ファイル名および実ファイルともに「コンテンツＡ」であるファイルがコピーされ、src_file_nameおよびdst_file_nameの情報を含むManifestファイルが、ローカルストレージ２４に生成される。すなわち、ローカルストレージ２４に、すでに、保存ファイル名および実ファイルともに「コンテンツＡ」であるファイルが存在する場合は、実質的に、上書きコピーが実行される。
【０２９７】
また、このとき、例えば、Permissionなどの、src_file_nameおよびdst_file_name以外のManifestファイルに含まれる情報については、例えば、ナビゲーションプログラムにより、それぞれの情報の内容が予め定められていてもよいし、例えば、Permissionにおいて上書きは許可するなど、予め定められた情報にするものとしてもよい。
【０２９８】
また、Permissionなどの、src_file_nameおよびdst_file_name以外の情報は、Manifestファイルに含まれずに、異なるファイルに記録されるものとしてもよいことは言うまでもない。
【０２９９】
そして、図２８に示されるように、ローカルストレージ２４に、保存ファイル名および実ファイルともに「コンテンツＡ」であるファイルがコピーされ、src_file_nameおよびdst_file_name、並びに、必要に応じてPermissionなどの情報を含むManifestファイルが記憶された状態において、光ディスク１１とローカルストレージ２４のそれぞれのファイルシステムがバインディングされて、仮想ファイルシステムが生成されて、それを基に、コンテンツの再生処理が実行されるようになる。
【０３００】
次に、図２９および図３０を参照して、ファイルのコピー処理の前に、コピーするファイルはローカルストレージ２４に存在しないが、コピーするファイルに対応するManifestファイルが、ローカルストレージ２４に存在している場合について説明する。
【０３０１】
すなわち、図２９に示されるように、コピーするファイルに対応するManifestファイル、換言すれば、再生装置１に装着されている光ディスク１１に対応するauther_idおよびdisc_idを有するManifestファイルが、ローカルストレージ２４に存在し、保存ファイル名および実ファイルともに「コンテンツＡ」であるファイルがローカルストレージ２４に存在している状態において、例えば、保存ファイル名および実ファイルともに「コンテンツＢ」であるファイルが光ディスク１１からローカルストレージ２４にコピーされる場合、図３０に示されるように、保存ファイル名および実ファイルともに「コンテンツＢ」であるファイルがローカルストレージ２４にコピーされ、「コンテンツＢ」に対応するsrc_file_nameおよびdst_file_nameの情報がさらに含まれるようにManifestファイルが更新される。
【０３０２】
なお、Manifestファイルが更新される場合、credentialの情報は変更されない。なぜならば、Manifestファイルの内容が更新されても、author_idおよびdisc_idは変更されないため、credentialの情報は書き換え不要である。
【０３０３】
なお、ローカルストレージ２４に予め存在していた、保存ファイル名および実ファイルともに「コンテンツＡ」であるファイルは、ネットワーク２を介してサーバ３からダウンロードされたものであっても、光ディスク１１からコピーされたものであっても、その取り扱いは同一である。更に、ローカルストレージ２４に予め存在していたManifestファイルも、ネットワーク２を介してダウンロードされたものであっても、光ディスク１１からのファイルのコピーに伴って生成または更新されたものであっても、その取り扱いは同一である。
【０３０４】
そして、図３０に示されるように、ローカルストレージ２４に、保存ファイル名および実ファイルともに「コンテンツＡ」であるファイルに加えて、更に、保存ファイル名および実ファイルともに「コンテンツＢ」であるファイルがコピーされ、src_file_nameおよびdst_file_name、並びに、必要に応じてPermissionなどの情報を含むManifestファイルが更新された状態において、光ディスク１１とローカルストレージ２４のそれぞれのファイルシステムがバインディングされて、仮想ファイルシステムが生成されて、それを基に、コンテンツの再生処理が実行されるようになる。
【０３０５】
そして、図３１乃至図３６を参照して、ファイルのコピー処理の前に、すでに、コピーするファイルと同一のファイル名を有するファイル、コピーするファイルに対応するManifestファイルが、ローカルストレージ２４に存在している場合の処理について説明する。
【０３０６】
図３１に示される状態においては、コピーするファイルに対応するManifestファイル、すなわち、光ディスク１１に対応するauther_idおよびdisc_idを有するManifestファイルが、ローカルストレージ２４に存在し、保存ファイル名および実ファイルともに「コンテンツＡ」で、上書き禁止の属性を有するファイルがローカルストレージ２４に存在している。そして、保存ファイル名はローカルストレージ２４に保存されているものと同一の「コンテンツＡ」であるが、実ファイルは、例えば、「コンテンツＡ」に対するアップデートファイルであるなど、「コンテンツＡ」とは異なる内容である「コンテンツＡ´」であるファイルが光ディスク１１に記録されている。
【０３０７】
ここで、ナビゲーションプログラム、または、ユーザの操作入力に基づいて、ファイル名が「コンテンツＡ」である実ファイル「コンテンツＡ´」が光ディスク１１からローカルストレージ２４にコピーされる場合、実ファイル「コンテンツＡ´」を実ファイル「コンテンツＡ」に上書きしても良いか否かが判断される。ここで、実ファイル「コンテンツＡ」の上書きが禁止されている場合、「コンテンツＡ´」は、光ディスク１１からローカルストレージ２４にコピーされない。
【０３０８】
また、実ファイル「コンテンツＡ´」を実ファイル「コンテンツＡ」に上書きしても良いか否かを判断した後、ファイルのコピーを開始するようにしてしまっては、処理に時間がかかってしまうので、処理時間を短縮することができるように、ナビゲーションプログラム、または、ユーザの操作入力に基づいて、光ディスク１１からローカルストレージ２４へのファイルのコピーの指令が取得された場合、テンポラリー（temporary）のファイル名で、ファイルのコピー処理を開始させておき、上書きの可否の判断結果によって、そのファイルのコピー処理を継続するかまたは中断するかを決定するようにしても良い。
【０３０９】
すなわち、図３２に示されるように、光ディスク１１に記録されている実ファイル「コンテンツＡ´」を、ローカルストレージ２４に記録されているいずれのデータとも異なるテンポラリファイル名（ここでは、Temp_コンテンツＡ）で、ローカルストレージ２４へ保存する処理を開始するとともに、ローカルストレージ２４に記録されている、ファイル名が「コンテンツＡ」である実ファイル「コンテンツＡ´」の上書きが許可されているか否かを判断する。ここでは、ファイル名が「コンテンツＡ」である実ファイル「コンテンツＡ´」の上書きは許可されていない。
【０３１０】
したがって、図３３に示されるように、テンポラリファイル名（ここでは、Temp_コンテンツＡ）で、ローカルストレージ２４へ保存された実ファイル「コンテンツＡ´」は削除され、ローカルストレージ２４には、ファイル名が「コンテンツＡ」である実ファイル「コンテンツＡ」が残る。光ディスク１１には、実ファイル「コンテンツＡ´」がファイル名「コンテンツＡ」で記録されているが、バインディング処理においては、ローカルストレージ２４に保存されているファイル名が「コンテンツＡ」である実ファイル「コンテンツＡ」が優先される。
【０３１１】
なお、ローカルストレージ２４に予め存在していた、保存ファイル名および実ファイルともに「コンテンツＡ」であるファイルは、ネットワーク２を介してダウンロードされたものであっても、光ディスク１１からコピーされたものであっても、その取り扱いは同一である。更に、ローカルストレージ２４に予め存在していたManifestファイルも、ネットワーク２を介してダウンロードされたものであっても、光ディスク１１からのファイルのコピーに伴って生成または更新されたものであっても、その取り扱いは同一である。
【０３１２】
一方、図３４に示される状態においては、コピーするファイルに対応するManifestファイル、すなわち、光ディスク１１に対応するauther_idおよびdisc_idを有するManifestファイルが、ローカルストレージ２４に存在し、保存ファイル名および実ファイルともに「コンテンツＡ」で、上書き可能の属性を有するファイルがローカルストレージ２４に存在している。そして、保存ファイル名はローカルストレージ２４に保存されているものと同一の「コンテンツＡ」であるが、実ファイルは、例えば、「コンテンツＡ」に対するアップデートファイルであるなど、「コンテンツＡ」とは異なる内容である「コンテンツＡ´」であるファイルが光ディスク１１に記録されている。
【０３１３】
そして、ナビゲーションプログラム、または、ユーザの操作入力に基づいて、ファイル名が「コンテンツＡ」である実ファイル「コンテンツＡ´」が光ディスク１１からローカルストレージ２４にコピーされる場合、ローカルストレージ２４に存在する「コンテンツＡ」は上書きが許可されているので、「コンテンツＡ´」は、光ディスク１１からローカルストレージ２４に上書きコピーされる。
【０３１４】
この場合においても、図３５に示されるように、光ディスク１１に記録されている実ファイル「コンテンツＡ´」は、ローカルストレージ２４に記録されているいずれのデータとも異なるテンポラリファイル名（ここでは、Temp_コンテンツＡ）で、ローカルストレージ２４への保存が開始される。そして、ローカルストレージ２４に存在する「コンテンツＡ」は上書きが許可されていることが確認されるので、その後に、図３６に示されるように、ローカルストレージ２４に存在する「コンテンツＡ」が削除されて、実ファイル「コンテンツＡ´」のファイル名が、テンポラリファイル名から「コンテンツＡ」に書き換えられる。すなわち、結果的には、ローカルストレージ２４に存在する実ファイル「コンテンツＡ」に対して、光ディスク１１に記録されていた実ファイル「コンテンツＡ´」が上書きコピーされる。
【０３１５】
なお、図２７乃至図３６における「ファイル名」とは、そのファイルを特定することができるもの、すなわち、ファイルのパスに対応するsrc_file_nameの情報と同一のものを指している。
【０３１６】
なお、例えば、汎用ファイルアクセスＡＰＩを利用して、HDD上のファイルとその属性を列挙して、ファイルの名前、サイズ、ハッシュ値などを比較したり、ナビゲーションプログラムによって、光ディスク１１からローカルストレージ２４へのファイルコピー処理の実行の履歴を、メモリ２３またはローカルストレージ２４などに保存することができるようにすることなどにより、同一のファイル名を有するファイルが全く同一のファイルであるか否かを検証することができるので、光ディスク１１から読み出してコピーするファイルと、すでにローカルストレージ２４に存在するファイルとが同一のファイルである場合には、ファイルのコピー処理を省略することができるようにしても良い。
【０３１７】
次に、図３７および図３８のフローチャートを参照して、ファイルコピーおよびファイルシステム構成処理１について説明する。
【０３１８】
ステップＳ２０１において、光ディスクドライブ２２は、光ディスク１１が装着されたか否かを判断する。ステップＳ２０１において、光ディスク１１が装着されていないと判断された場合、光ディスク１１が装着されたと判断されるまで、ステップＳ２０１の処理が繰り返される。
【０３１９】
ステップＳ２０１において、光ディスク１１が装着されていると判断された場合、ステップＳ２０２において、光ディスクドライブ２２は、光ディスク１１からauthor_idとdisc_idを読み出し、読み出したauthor_idとdisc_idをメモリ２３に供給する。
【０３２０】
ステップＳ２０３において、図２２を用いて説明したバインディング処理１が実行される。
【０３２１】
ステップＳ２０４において、光ディスクドライブ２２は、光ディスク１１からナビゲーションプログラムを読み出して、メモリ２３に供給する。コントローラ２１は、ナビゲーションプログラムを実行する。すなわち、コントローラ３１は、図７を用いて説明した各機能を実現する。ナビゲーションプログラムが実行されることにより、ナビゲーションプログラムに基づいて、コンテンツの再生処理も実行される。
【０３２２】
ステップＳ２０５において、ファイルコピー制御部３８は、ナビゲーションプログラムに基づいて、または、操作入力部２９から入力されるユーザの操作入力に基づいて、光ディスク１１からローカルストレージ２４に、所定のファイルのコピーを実行するか否かを判断する。ステップＳ２０５において、所定のファイルのコピーが実行されないと判断された場合、処理は、後述するステップＳ２２２に進む。
【０３２３】
ステップＳ２０５において、所定のファイルのコピーが実行されると判断された場合、ステップＳ２０６において、ファイルコピー制御部３８は、temporaryの保存ファイル名を用いて、光ディスク１１に記録されている所定のファイルをローカルストレージ２４にコピーする。
【０３２４】
ステップＳ２０７において、図３９のフローチャートを参照して後述するsrc_file_name設定処理１が実行される。
【０３２５】
ステップＳ２０８において、マニフェストファイル生成・更新処理部３９は、ローカルストレージディレクトリ管理部３４によりローカルストレージ２４に保存されているファイルを検索させることにより、ローカルストレージ２４に、対応するManifestファイルが存在するか否かを判断する。ステップＳ２０８において、ローカルストレージ２４に、対応するManifestファイルが存在しないと判断された場合、処理は、後述するステップＳ２１０に進む。
【０３２６】
ステップＳ２０８において、ローカルストレージ２４に、対応するManifestファイルが存在すると判断された場合、ステップＳ２０９において、マニフェストファイル生成・更新処理部３９は、ローカルストレージディレクトリ管理部３４によりローカルストレージ２４に保存されているファイルを検索させることにより、コピーされるファイルのsrc_file_nameと同一のsrc_file_nameを有するファイルがすでにローカルストレージ２４内に存在しているか否かを判断する。
【０３２７】
ステップＳ２０８において、ローカルストレージ２４に、対応するManifestファイルが存在しないと判断された場合、または、ステップＳ２０９において、コピーされるファイルのsrc_file_nameと同一のsrc_file_nameを有するファイルがローカルストレージ２４内に存在していないと判断された場合、ステップＳ２１０において、図４０のフローチャートを参照して後述するファイルコピー処理が実行される。ステップＳ２１０の処理の終了後、処理は、後述するステップＳ２１４に進む。
【０３２８】
ステップＳ２０９において、コピーされるファイルのsrc_file_nameと同一のsrc_file_nameを有するファイルがすでにローカルストレージ２４内に存在していると判断された場合、ステップＳ２１１において、マニフェストファイル生成・更新処理部３９は、コピーされるファイルのsrc_file_nameと同一のsrc_file_nameを有するファイルがすでにローカルストレージ２４内に存在していることを、ファイルコピー制御部３８に通知する。ファイルコピー制御部３８は、同一のsrc_file_nameを有するローカルストレージ２４に記録されているファイルのpermission属性として、上書き禁止が指定されているか否かを判断する。
【０３２９】
ステップＳ２１１において、上書き禁止が指定されていると判断された場合、処理は、後述するステップＳ２２１に進む。
【０３３０】
ステップＳ２１１において、上書き禁止が指定されていない、すなわち、上書きが許可されていると判断された場合、ステップＳ２１２において、ファイルコピー制御部３８は、例えば、汎用ファイルアクセスＡＰＩを利用して、HDD上のファイルとその属性を列挙し、ファイルの名前、サイズ、ハッシュ値などを比較したり、ローカルストレージ２４に保存されたファイルコピー処理の履歴を参照することなどにより、光ディスク１１からコピーされるファイルと、ローカルストレージ２４の対応するファイルは、同一のファイルであるか否かを判断する。ステップＳ２１２において、コピーされるファイルと、ローカルストレージ２４の対応するファイルは、同一のファイルであると判断された場合、ステップＳ２１３の処理はスキップされて、処理は、後述するステップＳ２１４に進む。
【０３３１】
ステップＳ２１２において、コピーされるファイルと、ローカルストレージ２４の対応するファイルは、同一のファイルではない、すなわち、例えば、アップデート用ファイルなどであって、ファイル名称（ファイルパスも含む）は同一であるが、その実ファイルの内容が異なると判断された場合、ステップＳ２１３において、図４１のフローチャートを参照して後述するファイル上書きコピー処理が実行され、ステップＳ２１３の処理の終了後、処理は、後述するステップＳ２１４に進む。
【０３３２】
ステップＳ２１２において、コピーされるファイルと、ローカルストレージ２４の対応するファイルは、同一のファイルであると判断された場合、ステップＳ２１３の処理はスキップされて、処理は、後述するステップＳ２１４に進む。
【０３３３】
ステップＳ２１０の処理の終了後、ステップＳ２１２において、コピーされるファイルとローカルストレージ２４の対応するファイルは同一のファイルであると判断された場合、または、ステップＳ２１３の処理の終了後、ステップＳ２１４において、マニフェストファイル生成・更新処理部３９は、ローカルストレージ２４に、対応するManifestファイルが存在するか否かを判断する。
【０３３４】
ステップＳ２１４において、ローカルストレージ２４に、対応するManifestファイルが存在しないと判断された場合、ステップＳ２１５において、図４２のフローチャートを参照して後述するManifestファイル作成処理１が実行されて、処理は、ステップＳ２１９に進む。
【０３３５】
ステップＳ２１４において、ローカルストレージ２４に、対応するManifestファイルが存在する判断された場合、ステップＳ２１６において、図４３のフローチャートを参照して後述するManifestファイル更新処理１が実行される。
【０３３６】
ステップＳ２１７において、マニフェストファイル生成・更新処理部３９は、Manifestファイルは、正しく更新されたか否かを判断する。
【０３３７】
ステップＳ２１７において、Manifestファイルは正しく更新されなかったと判断された場合、ステップＳ２１８において、マニフェストファイル生成・更新処理部３９は、Manifestファイルが正しく更新されなかったことを、ファイルコピー制御部３８に通知する。ファイルコピー制御部３８は、ローカルストレージ２４における、temporaryの保存ファイル名でのコピー処理を中止し、コピーされたファイルを削除して、処理は、後述するステップＳ２２２に進む。
【０３３８】
ステップＳ２１５の処理の終了後、または、ステップＳ２１７において、Manifestファイルは正しく更新されたと判断された場合、ステップＳ２１９において、図４４のフローチャートを参照して後述するバインディング処理２が実行される。
【０３３９】
ステップＳ２１９の処理の終了後、ローカルストレージディレクトリ管理部３４およびファイルシステムマージ処理部３６は、該当するファイルがローカルストレージ２４から再生可能な状態であることを認識する。
【０３４０】
ステップＳ２１１において、上書き禁止が指定されていると判断された場合、ステップＳ２２１において、マニフェストファイル生成・更新処理部３９は、上書き禁止が指定されていると判断されたことを、ファイルコピー制御部３８に通知する。ファイルコピー制御部３８は、ローカルストレージ２４における、temporaryの保存ファイル名でのコピー処理を中止し、コピーされたtemporaryの保存ファイル名のファイルを削除する。
【０３４１】
ステップＳ２０５において、所定のファイルのコピーが実行されないと判断された場合、ステップＳ２１８、ステップＳ２２０、または、ステップＳ２２１の処理の終了後、ステップＳ２２２において、コントローラ２１は、ナビゲーションプログラムの実行が終了されるか否かを判断する。
【０３４２】
ステップＳ２２２において、ナビゲーションプログラムの実行が終了されていないと判断された場合、処理は、ステップＳ２０４に戻り、それ以降の処理が繰り返される。ステップＳ２２２において、ナビゲーションプログラムの実行が終了されると判断された場合、処理は終了される。
【０３４３】
このような処理により、光ディスク１１からローカルストレージ２４にファイルデータの少なくとも一部がコピーされて、manifestファイルが生成または更新されて、バインディング処理が実行される。
【０３４４】
したがって、光ディスクドライブ２２が光ディスク１１からファイルデータを読み出すための読み出しレートが、一度に再生出力するべきファイルの再生レートの合計よりも遅く、読み出しが再生に追いつかないような状態を防ぐことができ、高速な読み出し能力を有さない光ディスクドライブ２２しか備えられていない再生装置１においても、光ディスク１１からのデータ読み出し能力を超えた再生処理を実現することが可能となる。
【０３４５】
次に、図３９のフローチャートを参照して、図３７のステップＳ２０７において実行される、src_file_name設定処理１について説明する。
【０３４６】
ステップＳ２５１において、ファイルコピー制御部３８およびマニフェストファイル生成・更新処理部３９は、ナビゲーションプログラムでローカルストレージ２４内のファイルのコピー先のパスが指定されているか否かを判断する。
【０３４７】
ステップＳ２５１において、ナビゲーションプログラムでローカルストレージ内のファイルのコピー先のパスが指定されていると判断された場合、ステップＳ２５２において、ファイルコピー制御部３８およびマニフェストファイル生成・更新処理部３９は、ファイルのコピー先を示すパスを取得して、処理は、後述するステップＳ２５４に進む。
【０３４８】
ステップＳ２５１において、ナビゲーションプログラムでローカルストレージ内のファイルのコピー先のパスが指定されていないと判断された場合、ステップＳ２５３において、ファイルコピー制御部３８およびマニフェストファイル生成・更新処理部３９は、author_idおよびdisc_id、並びに、光ディスク１１内のパスにおけるファイル属性項目以下のパスを取得する。
【０３４９】
ステップＳ２５２またはステップＳ２５３の処理の終了後、ステップＳ２５４において、ファイルコピー制御部３８およびマニフェストファイル生成・更新処理部３９は、ナビゲーションプログラムで指定されたファイルコピー先のパス／ファイル名、または、author_id／disc_id／ファイル属性項目／ファイル名から、src_file_nameを設定して、処理は、図３７のステップＳ２０７に戻り、ステップＳ２０８に進む。
【０３５０】
このような処理により、生成または更新されるmanifestファイルのsrc_file_nameが設定される。
【０３５１】
次に、図４０のフローチャートを参照して、図３７のステップＳ２１０において実行される、ファイルコピー処理について説明する。
【０３５２】
ステップＳ２８１において、ファイルコピー制御部３８は、図３９を用いて説明した処理により設定されたsrc_file_nameを取得する。
【０３５３】
ステップＳ２８２において、ファイルコピー制御部３８は、ローカルストレージ２４のファイルシステムに、src_file_nameに対応するディレクトリは存在するか否かを判断する。
【０３５４】
ステップＳ２８２において、src_file_nameに対応するディレクトリは存在しないと判断された場合、ステップＳ２８３において、ファイルコピー制御部３８は、src_file_nameに基づいて、ローカルストレージ２４のファイルシステムに、ファイルコピー先のディレクトリを作成する。
【０３５５】
ステップＳ２８２において、src_file_nameに対応するディレクトリは存在すると判断された場合、または、ステップＳ２８３の処理の終了後、ステップＳ２８４において、ファイルコピー制御部３８は、src_file_nameを基に、コピーされたファイルのtemporaryの保存ファイル名を、光ディスク１１に記載されていたファイル名に変更するとともに、該当するファイルにパスを設定して、処理は、図３７のステップＳ２１０に戻り、図３８のステップＳ２１４に進む。
【０３５６】
このような処理により、temporaryのファイル名で光ディスク１１からローカルストレージ２４にコピーされていたファイルのファイル名が変更されて、ローカルストレージ２４のファイルシステムにおけるパスが設定される。
【０３５７】
次に、図４１のフローチャートを参照して、図３７のステップＳ２１３において実行される、ファイル上書きコピー処理について説明する。
【０３５８】
ステップＳ３１１において、ファイルコピー制御部３８は、図３９を用いて説明した処理により設定されたsrc_file_nameを取得する。
【０３５９】
ステップＳ３１２において、ファイルコピー制御部３８は、ローカルストレージ２４にはじめに記録されていた、該当するsrc_file_nameを有するファイルを削除する。
【０３６０】
ステップＳ３１３において、ファイルコピー制御部３８は、src_file_nameを基に、コピーされたファイルのtemporaryの保存ファイル名を、光ディスク１１に記載されていたファイル名に変更するとともに、該当するファイルにパスを設定して、処理は、図３７のステップＳ２１３に戻り、図３８のステップＳ２１４に進む。
【０３６１】
このような処理により、ローカルストレージ２４にはじめに記録されていた、該当するsrc_file_nameを有するファイルが削除されるとともに、temporaryのファイル名で光ディスク１１からローカルストレージ２４にコピーされていたファイルのファイル名が変更されて、実質的に上書きコピーが実行され、ローカルストレージ２４のファイルシステムにおけるパスが設定される。すなわち、時間がかかるコピー処理を、まず一時的なファイル名をつけて開始しておくと共に、ローカルストレージに既にファイルが存在する場合の上書き属性等を確認するということにより、迅速にコピー処理を終了させ、ディスク挿入から、コンテンツ再生までの時間を短くすることができる。
【０３６２】
次に、図４２のフローチャートを参照して、図３８のステップＳ２１５において実行される、Manifestファイル作成処理１について説明する。
【０３６３】
ステップＳ３４１において、マニフェストファイル生成・更新処理部３９は、ローカルストレージ２４内でユニークなManifest_idを定める。
【０３６４】
ステップＳ３４２において、マニフェストファイル生成・更新処理部３９は、コピーされたファイルに設定されたsrc_file_nameを取得する。
【０３６５】
ステップＳ３４３において、マニフェストファイル生成・更新処理部３９は、ファイルのコピー元となる光ディスク１１内のパスを取得する。
【０３６６】
ステップＳ３４４において、マニフェストファイル生成・更新処理部３９は、例えば、credentialの設定など、必要に応じて、Manifestファイル作成のために必要な情報が他にあれば、取得する。
【０３６７】
ステップＳ３４５において、マニフェストファイル生成・更新処理部３９は、コピー元となる光ディスク１１内のパスをdst_file_nameとし、設定されたsrc_file_nameと、取得したauthor_idおよびdisc_idを基に、Manifestファイルを作成する。
【０３６８】
ステップＳ３４６において、マニフェストファイル生成・更新処理部３９は、作成されたManifestファイルの情報をローカルストレージディレクトリ管理部３４に供給する。ローカルストレージディレクトリ管理部３４は、作成されたManifestファイルの情報をローカルストレージ２４に保存し、図１４を用いて説明したような所定のパスを設定し、処理は、図３８のステップＳ２１５に戻り、ステップＳ２１９に進む。
【０３６９】
このような処理により、ローカルストレージ２４に、コピーされるファイルに対応するManifestファイルが存在しない場合、Manifestファイルが新たに生成され、ローカルストレージ２４に保存されて、図１４を用いて説明したような所定のパスが設定されるので、生成されたManifestファイルをバインディング処理に利用することができ、光ディスク１１に記録されたデータと、光ディスク１１からローカルストレージ２４にコピーされたデータとを、PlayListに基づいて、同期して再生させることができる。
【０３７０】
次に、図４３のフローチャートを参照して、図３８のステップＳ２１６において実行される、Manifestファイル更新処理１について説明する。
【０３７１】
ステップＳ３７１において、マニフェストファイル生成・更新処理部３９は、装着されている光ディスク１１から取得したauthor_idおよびdisc_idを基に、更新するManifestファイルを検出する。
【０３７２】
ステップＳ３７２において、マニフェストファイル生成・更新処理部３９は、コピーされたファイルに対して設定されたsrc_file_nameを取得する。
【０３７３】
ステップＳ３７３において、マニフェストファイル生成・更新処理部３９は、ファイルのコピー元となる光ディスク１１内のパスを取得する。
【０３７４】
ステップＳ３７４において、マニフェストファイル生成・更新処理部３９は、このManifestファイルに記載されているいずれかのdst_file_nameと、コピー元の光ディスク１１のパスとが一致しているか否かを判断する。
【０３７５】
ステップＳ３７４において、コピー元の光ディスクのパスと一致していると判断された場合、ステップＳ３７５において、マニフェストファイル生成・更新処理部３９は、dst_file_nameを有するファイルのpermission属性として、上書き禁止が指定されているか否かを判断する。ステップＳ３７５において、上書き禁止が指定されていると判断された場合、処理は、後述するステップＳ３８０に進む。
【０３７６】
ステップＳ３７４において、コピー元の光ディスクのパスと一致していないと判断された場合、または、ステップＳ３７５において、上書き禁止が指定されていないと判断された場合、ステップＳ３７６において、マニフェストファイル生成・更新処理部３９は、必要に応じて、Manifestファイル更新のために必要な情報が他にあれば、取得する。
【０３７７】
ステップＳ３７７において、マニフェストファイル生成・更新処理部３９は、コピー元となる光ディスク１１内のパスをdst_file_nameとして、設定されたsrc_file_nameとdst_file_name、必要に応じて、Manifestファイル更新のために必要な情報が取得されていれば、その情報とともに、ローカルストレージ２４に記録されている対応するManifestファイルに追加する。
【０３７８】
ステップＳ３７８において、マニフェストファイル生成・更新処理部３９は、ローカルストレージ２４内のauthor_idおよびdisc_idで管理される領域においてManifestファイルを識別可能なようにするために、必要に応じて、Manifest_idを更新する。
【０３７９】
ステップＳ３７９において、マニフェストファイル生成・更新処理部３９は、更新されたManifestファイルを、ローカルストレージ２４に保存して、処理は、図３８のステップＳ２１６に戻り、ステップＳ２１７に進む。
【０３８０】
ステップＳ３７５において、上書き禁止が指定されていると判断された場合、ステップＳ３８０において、マニフェストファイル生成・更新処理部３９は、光ディスク１１からローカルストレージ２４へ、該当するファイルをコピーすることを禁止することを、ファイルコピー制御部３５に通知し、処理は、図３８のステップＳ２１６に戻り、ステップＳ２１７に進む。
【０３８１】
このような処理により、ローカルストレージ２４に、コピーされるファイルに対応するManifestファイルが存在した場合、Manifestファイルが更新されるので、更新されたManifestファイルをバインディング処理に利用することができ、光ディスク１１に記録されたデータ、ローカルストレージ２４に保存されていたデータ、および、光ディスク１１からローカルストレージ２４にコピーされたデータを、PlayListに基づいて、同期して再生させることができる。
【０３８２】
次に、図４４のフローチャートを参照して、図３８のステップＳ２１９において実行される、バインディング処理２について説明する。
【０３８３】
ステップＳ４１１において、ローカルストレージディレクトリ管理部３４は、ローカルストレージ２４に記録されているダウンロードされたデータ群から、対応するdisc_idのディレクトリを抽出し、ファイルシステムマージ処理部３６に供給する。
【０３８４】
ステップＳ４１２において、ファイルシステムマージ処理部３６は、Manifestファイルのsrc_file_nameおよびdst_file_nameを参照する。
【０３８５】
ステップＳ４１３において、光ディスクディレクトリ管理部３５は、装着されている光ディスク１１のファイルシステムを示す情報をファイルシステムマージ処理部３６に供給する。ファイルシステムマージ処理部３６は、光ディスク１１のファイルシステムを示す情報を参照する。
【０３８６】
ステップＳ４１４において、ファイルシステムマージ処理部３６は、光ディスク１１のファイルシステムのパスと、Manifestファイルのdst_file_nameとが一致しているものがあるか否かを判断する。
【０３８７】
ステップＳ４１４において、光ディスク１１のファイルシステムのパスと、Manifestファイルのdst_file_nameとが一致しているものがあると判断された場合、ステップＳ４１５において、ファイルシステムマージ処理部３６は、対応するファイルは、Manifestファイルのsrc_file_nameの指定にしたがって、光ディスク１１ではなく、ローカルストレージ２４から読み出すものとする。
【０３８８】
ステップＳ４１４において、光ディスク１１のファイルシステムのパスと、Manifestファイルのdst_file_nameとが一致しているものがないと判断された場合、または、ステップＳ４１５の処理の終了後、ステップＳ４１６において、ファイルシステムマージ処理部３６は、ステップＳ２２において参照されたsrc_file_nameおよびdst_file_nameを基に、ネイティブなファイルシステムと、仮想ファイルシステムとをバインディングし、仮想ファイルシステムを生成して、処理は、図３８のステップＳ２１９に戻り、ステップＳ２２０に進む。
【０３８９】
このような処理により、光ディスク１１のファイルシステムと、光ディスク１１からコピーされたファイルを含むローカルストレージ２４のファイルシステムとがバインディングされて、仮想ファイルシステムが構築される。
【０３９０】
図２７乃至図４４を用いて、再生装置１に装着された光ディスク１１に記録されたデータの一部を、仮想ファイルシステムの生成前に、予め、ローカルストレージ２４にコピーする処理が実行される場合について説明したが、例えば、仮想ファイルシステムの生成前に、ネットワーク２を介して所定のファイルを取得してローカルストレージ２４にコピーした後、光ディスク１１に記録されたデータと、ローカルストレージ２４に保存されているデータとのバインディング処理を実行するようにしても良い。
【０３９１】
すなわち、図４５に示されるように、ネットワーク２を介して、保存ファイル名はローカルストレージ２４に保存されているものと同一の「コンテンツＡ」であるが、実ファイルは、例えば、「コンテンツＡ」に対するアップデートファイルであるなど、「コンテンツＡ」とは異なる内容である「コンテンツＡ´」であるファイルが供給された場合、ローカルストレージ２４に存在している、保存ファイル名および実ファイルともに「コンテンツＡ」であるファイルの属性が上書き可能であれば、上書きコピー処理が実行され、manifestファイルが更新される。
【０３９２】
具体的には、供給された実ファイル「コンテンツＡ´」は、ローカルストレージ２４に記録されているいずれのデータとも異なるテンポラリファイル名で、ローカルストレージ２４へ保存され、ローカルストレージ２４に存在していた実ファイル「コンテンツＡ」が削除され、供給されたファイルのファイル名がテンポラリファイル名から「コンテンツＡ」に書き換えられる。
【０３９３】
この場合においても、ネットワーク２を介して、アップデートデータが取得されるのであるが、図２１乃至図２６のフローチャートを用いて説明した場合と異なり、取得されるのはアップデートデータファイルのみであり、対応する新たなManifestファイルは取得されない。すなわち、この場合、アップデートデータファイル（図４５における実ファイル「コンテンツＡ´」）を取得したことによってManifestファイルは、図２７乃至図４４を用いて説明した場合と同様にして、新たに生成されるか、または、更新される。
【０３９４】
ただし、生成されるか、または、更新されるManifestファイルのsrc_file_nameは、ナビゲーションプログラムにより指定されていなくても生成することが可能であるが、この処理における場合のdst_file_nameは、ナビゲーションプログラムにより指定されるか、または、アップデートされるデータファイルと一緒に供給される必要がある。
【０３９５】
このとき、ナビゲーションプログラムにより指定されるか、または、アップデートされるデータファイルと一緒に供給されたdst_file_nameが、光ディスク１１のいずれかのデータファイルのパスと一致する場合、このアップデートデータファイルは、光ディスク１１に記録されているデータを実質的に更新するものとして用いられるものである。
【０３９６】
なお、図４５においては、ネットワーク２を介して、アップデートされるデータファイルが取得されるものとして図示しているが、アップデートされるデータファイルは、ドライブ２７に装着されたリムーバブルメディア２８よりコピーされるようにすることも可能であることは、いうまでもない。
【０３９７】
次に、図４６および図４７のフローチャートを参照して、ネットワーク２を介して、アップデートされるデータファイルが取得される場合におけるファイルコピーおよびファイルシステム構成処理２について説明する。
【０３９８】
ステップＳ４４１乃至ステップＳ４４４において、図３７を用いて説明したステップＳ２０１乃至ステップＳ２０４と基本的に同様の処理が実行される。
【０３９９】
すなわち、光ディスク１１が装着されていると判断された場合、光ディスク１１からauthor_idとdisc_idが読み出され、図２２を用いて説明したバインディング処理１が実行され、光ディスク１１からナビゲーションプログラムが読み出されて実行される。
【０４００】
ステップＳ４４５において、ファイルコピー制御部３８は、ナビゲーションプログラムに基づいて、または、操作入力部２９から入力されるユーザの操作入力に基づいて、ネットワーク２を介して、外部から、ローカルストレージ２４に、所定のファイルの取得を実行するか否かを判断する。ステップＳ４４５において、所定のファイルが取得されないと判断された場合、処理は、後述するステップＳ４６２に進む。
【０４０１】
ステップＳ４４５において、所定のファイルが取得されると判断された場合、ステップＳ２４４６において、ファイルコピー制御部３８は、temporaryの保存ファイル名を用いて、取得された所定のファイルをローカルストレージ２４に記憶する。
【０４０２】
Ｓ４４７において、図４８のフローチャートを参照して後述するsrc_file_name設定処理２が実行される。
【０４０３】
ステップＳ４４８において、マニフェストファイル生成・更新処理部３９は、ローカルストレージディレクトリ管理部３４によりローカルストレージ２４に保存されているファイルを検索させることにより、ローカルストレージ２４に、対応するManifestファイルが存在するか否かを判断する。ステップＳ４４８において、ローカルストレージ２４に、対応するManifestファイルが存在しないと判断された場合、処理は、後述するステップＳ４５０に進む。
【０４０４】
ステップＳ４４８において、ローカルストレージ２４に、対応するManifestファイルが存在すると判断された場合、ステップＳ４４９において、マニフェストファイル生成・更新処理部３９は、ローカルストレージディレクトリ管理部３４によりローカルストレージ２４に保存されているファイルを検索させることにより、ネットワーク２を介して取得されたファイルに設定されたsrc_file_nameと同一のsrc_file_nameを有するファイルがすでにローカルストレージ２４内に存在しているか否かを判断する。
【０４０５】
ステップＳ４４８において、ローカルストレージ２４に、対応するManifestファイルが存在しないと判断された場合、または、ステップＳ４４９において、ネットワーク２を介して取得されたファイルに設定されたsrc_file_nameと同一のsrc_file_nameを有するファイルがローカルストレージ２４内に存在していないと判断された場合、ステップＳ４５０において、図４０のフローチャートを参照して説明したファイルコピー処理が実行される。ステップＳ４５０の処理の終了後、処理は、後述するステップＳ４５４に進む。
【０４０６】
ステップＳ４４９において、ネットワーク２を介して取得されたファイルに設定されたsrc_file_nameと同一のsrc_file_nameを有するファイルがすでにローカルストレージ２４内に存在していると判断された場合、ステップＳ４５１において、マニフェストファイル生成・更新処理部３９は、ネットワーク２を介して取得されたファイルに設定されたsrc_file_nameと同一のsrc_file_nameを有するファイルがすでにローカルストレージ２４内に存在していることを、ファイルコピー制御部３８に通知する。ファイルコピー制御部３８は、同一のsrc_file_nameを有するローカルストレージ２４に記録されているファイルのpermission属性として、上書き禁止が指定されているか否かを判断する。
【０４０７】
ステップＳ４５１において、上書き禁止が指定されていると判断された場合、処理は、後述するステップＳ４６１に進む。
【０４０８】
ステップＳ４５１において、上書き禁止が指定されていない、すなわち、上書きが許可されていると判断された場合、ステップＳ４５２において、ファイルコピー制御部３８は、例えば、汎用ファイルアクセスＡＰＩを利用して、HDD上のファイルとその属性を列挙し、ファイルの名前、サイズ、ハッシュ値などを比較したり、ローカルストレージ２４に保存されたファイルコピー処理の履歴を参照することなどにより、ネットワーク２を介して取得されたファイルと、ローカルストレージ２４の対応するファイルは、同一のファイルであるか否かを判断する。ステップＳ４５２において、ネットワーク２を介して取得されたファイルと、ローカルストレージ２４の対応するファイルは、同一のファイルであると判断された場合、ステップＳ４５３の処理はスキップされて、処理は、後述するステップＳ４５４に進む。
【０４０９】
ステップＳ４５２において、ネットワーク２を介して取得されたファイルと、ローカルストレージ２４の対応するファイルは、同一のファイルではない、すなわち、例えば、アップデート用ファイルなどであって、ファイル名称（ファイルパスも含む）は同一であるが、その実ファイルの内容が異なると判断された場合、ステップＳ４５３において、図４１のフローチャートを参照して説明したファイル上書きコピー処理が実行され、ステップＳ４５３の処理の終了後、処理は、後述するステップＳ４５４に進む。
【０４１０】
ステップＳ４５２において、ネットワーク２を介して取得されたファイルと、ローカルストレージ２４の対応するファイルは、同一のファイルであると判断された場合、ステップＳ２４５の処理はスキップされて、処理は、後述するステップＳ４５４に進む。
【０４１１】
ステップＳ４５０の処理の終了後、ステップＳ４５２において、ネットワーク２を介して取得されたファイルとローカルストレージ２４の対応するファイルは同一のファイルであると判断された場合、または、ステップＳ４５３の処理の終了後、ステップＳ４５４において、マニフェストファイル生成・更新処理部３９は、ローカルストレージ２４に、対応するManifestファイルが存在するか否かを判断する。
【０４１２】
ステップＳ４５４において、ローカルストレージ２４に、対応するManifestファイルが存在しないと判断された場合、ステップＳ４５５において、図４９のフローチャートを参照して後述するManifestファイル作成処理２が実行されて、処理は、ステップＳ４５９に進む。
【０４１３】
ステップＳ４５４において、ローカルストレージ２４に、対応するManifestファイルが存在する判断された場合、ステップＳ４５６において、図５０のフローチャートを参照して後述するManifestファイル更新処理２が実行される。
【０４１４】
そして、ステップＳ４５７およびステップＳ４５８において、図３８を用いて説明したステップＳ２１７およびステップＳ２１４６２と同様の処理が実行される。
【０４１５】
すなわち、Manifestファイルは、正しく更新されたか否かが判断され、Manifestファイルは正しく更新されなかったと判断された場合、ローカルストレージ２４における、temporaryの保存ファイル名でのファイルの記憶処理が中止され、記憶されたファイルが削除される。
【０４１６】
ステップＳ４５５の処理の終了後、または、ステップＳ４５７において、Manifestファイルは正しく更新されたと判断された場合、ステップＳ４５９において、図４４のフローチャートを参照して説明したバインディング処理２が実行されて、該当するファイルがローカルストレージ２４から再生可能な状態となる。
【０４１７】
ステップＳ４５１において、上書き禁止が指定されていると判断された場合、ステップＳ４６１において、ローカルストレージ２４における、temporaryの保存ファイル名でのファイル記憶処理が中止され、記憶されたtemporaryの保存ファイル名のファイルが削除される。
【０４１８】
そして、ステップＳ４４５において、所定のファイルのコピーが実行されないと判断された場合、ステップＳ４５８、ステップＳ４６０、または、ステップＳ４６１の処理の終了後、ナビゲーションプログラムの実行が終了されるか否かが判断され、ナビゲーションプログラムの実行が終了されていないと判断された場合、処理は、ステップＳ４４４に戻り、それ以降の処理が繰り返される。ナビゲーションプログラムの実行が終了されると判断された場合、処理は終了される。
【０４１９】
このような処理により、光ディスク１１からローカルストレージ２４にファイルデータの少なくとも一部がコピーされて、manifestファイルが生成または更新されて、バインディング処理が実行された場合と基本的に同様にして、ネットワーク２を介してファイルデータが取得されて、ローカルストレージに記憶され、manifestファイルが生成または更新されて、バインディング処理が実行される。
【０４２０】
次に、図４８のフローチャートを参照して、図４６のステップＳ４４７において実行される、src_file_name設定処理２について説明する。
【０４２１】
ステップＳ４９１において、ファイルコピー制御部３８およびマニフェストファイル生成・更新処理部３９は、ナビゲーションプログラムで、記憶されるファイルのローカルストレージ２４内のパスが指定されているか否かを判断する。
【０４２２】
ステップＳ４９１において、ナビゲーションプログラムでローカルストレージ内のファイルのコピー先のパスが指定されていると判断された場合、ステップＳ４９２において、ファイルコピー制御部３８およびマニフェストファイル生成・更新処理部３９は、記憶されるファイルのパスを取得して、処理は、後述するステップＳ４９４に進む。
【０４２３】
ステップＳ４９１において、ナビゲーションプログラムでローカルストレージ内のパスが指定されていないと判断された場合、ステップＳ４９３において、ファイルコピー制御部３８およびマニフェストファイル生成・更新処理部３９は、装着されている光ディスク１１のauthor_idおよびdisc_id、並びに、取得されたファイルのファイル名またはファイル属性項目以下のパスを取得する。
【０４２４】
ステップＳ４９２またはステップＳ４９３の処理の終了後、ステップＳ４９４において、ファイルコピー制御部３８およびマニフェストファイル生成・更新処理部３９は、ナビゲーションプログラムで指定されたファイルコピー先のパス／ファイル名、または、author_id／disc_id／（ファイル属性項目／）ファイル名から、src_file_nameを設定して、処理は、図４６のステップＳ４４７に戻り、ステップＳ４４８に進む。
【０４２５】
このような処理により、生成または更新されるmanifestファイルのsrc_file_nameが設定される。
【０４２６】
次に、図４９のフローチャートを参照して、図４７のステップＳ４５５において実行される、Manifestファイル作成処理２について説明する。
【０４２７】
ステップＳ５２１において、マニフェストファイル生成・更新処理部３９は、ローカルストレージ２４内でユニークなManifest_idを定める。
【０４２８】
ステップＳ５２２において、マニフェストファイル生成・更新処理部３９は、取得されたファイルに設定されたsrc_file_nameを取得する。
【０４２９】
ステップＳ５２３において、マニフェストファイル生成・更新処理部３９は、ファイルとともに取得された、または、ナビゲーションプログラムにより指定されるdst_file_nameの情報を取得する。
【０４３０】
ステップＳ５２４において、マニフェストファイル生成・更新処理部３９は、例えば、credentialなど、必要に応じて、Manifestファイル作成のために必要な情報が他にあれば、取得する。
【０４３１】
ステップＳ５２５において、マニフェストファイル生成・更新処理部３９は、設定されたsrc_file_name、装着された光ディスク１１から取得されたauthor_idおよびdisc_id、並びに、ステップＳ５２３の処理により取得されたdst_file_nameを基に、Manifestファイルを作成する。
【０４３２】
ステップＳ５２６において、マニフェストファイル生成・更新処理部３９は、作成されたManifestファイルの情報をローカルストレージディレクトリ管理部３４に供給する。ローカルストレージディレクトリ管理部３４は、作成されたManifestファイルの情報をローカルストレージ２４に保存し、図１４を用いて説明したような所定のパスを設定し、処理は、図４７のステップＳ４５５に戻り、ステップＳ４５９に進む。
【０４３３】
このような処理により、ローカルストレージ２４に、取得されたファイルに対応するManifestファイルが存在しない場合、Manifestファイルが新たに生成され、ローカルストレージ２４に保存されて、図１４を用いて説明したような所定のパスが設定されるので、生成されたManifestファイルをバインディング処理に利用することができ、光ディスク１１に記録されたデータと、ネットワーク２を介して取得されてローカルストレージ２４に記憶されたデータとを、PlayListに基づいて、同期して再生させることができる。
【０４３４】
次に、図５０のフローチャートを参照して、図４７のステップＳ４５６において実行される、Manifestファイル更新処理２について説明する。
【０４３５】
ステップＳ５５１において、マニフェストファイル生成・更新処理部３９は、装着されている光ディスク１１から取得したauthor_idおよびdisc_idを基に、更新するManifestファイルを検出する。
【０４３６】
ステップＳ５５２において、マニフェストファイル生成・更新処理部３９は、取得されたファイルに対して設定されたsrc_file_nameを取得する。
【０４３７】
ステップＳ５５３において、マニフェストファイル生成・更新処理部３９は、ファイルとともに取得された、または、ナビゲーションプログラムにより指定されるdst_file_nameの情報を取得する。
【０４３８】
ステップＳ５５４において、マニフェストファイル生成・更新処理部３９は、このManifestファイルに記載されているいずれかのdst_file_nameと、取得されたdst_file_nameとが一致しているか否かを判断する。
【０４３９】
ステップＳ５５４において、Manifestファイルに記載されているいずれかのdst_file_nameと取得されたdst_file_nameとが一致していると判断された場合、ステップＳ５５５において、マニフェストファイル生成・更新処理部３９は、dst_file_nameを有するファイルのpermission属性として、上書き禁止が指定されているか否かを判断する。ステップＳ５５５において、上書き禁止が指定されていると判断された場合、処理は、後述するステップＳ５６０に進む。
【０４４０】
ステップＳ５５４において、anifest_fileに記載されているいずれかのdst_file_nameと取得されたdst_file_nameとが一致していないと判断された場合、または、ステップＳ５５５において、上書き禁止が指定されていないと判断された場合、ステップＳ５５６において、マニフェストファイル生成・更新処理部３９は、必要に応じて、Manifestファイル更新のために必要な情報が他にあれば、取得する。
【０４４１】
ステップＳ５５７において、マニフェストファイル生成・更新処理部３９は、取得されたdst_file_nameと設定されたsrc_file_nameを、必要に応じて、Manifestファイル更新のために必要な情報が取得されていれば、その情報とともに、ローカルストレージ２４に記録されている対応するManifestファイルに追加する。
【０４４２】
ステップＳ５５８において、マニフェストファイル生成・更新処理部３９は、ローカルストレージ２４内のauthor_idおよびdisc_idで管理される領域においてManifestファイルを識別可能なようにするために、必要に応じて、Manifest_idを更新する。
【０４４３】
ステップＳ５５９において、マニフェストファイル生成・更新処理部３９は、更新されたManifestファイルを、ローカルストレージ２４に保存して、処理は、図４７のステップＳ４７６に戻り、ステップＳ４７７に進む。
【０４４４】
ステップＳ５５５において、上書き禁止が指定されていると判断された場合、ステップＳ５６０において、マニフェストファイル生成・更新処理部３９は、ローカルストレージ２４に該当するファイルを記憶することを禁止することを、ファイルコピー制御部３５に通知し、処理は、図４７のステップＳ４７６に戻り、ステップＳ４７７に進む。
【０４４５】
このような処理により、ローカルストレージ２４に、取得されたファイルに対応するManifestファイルが存在した場合、Manifestファイルが更新されるので、更新されたManifestファイルをバインディング処理に利用することができ、光ディスク１１に記録されたデータ、ローカルストレージ２４に保存されていたデータ、および、光ディスク１１からローカルストレージ２４に記憶されたデータを、PlayListに基づいて、同期して再生させることができる。
【０４４６】
このようにして、再生装置１に装着された記録媒体である光ディスク１１のデータの一部を再生装置１内部の記録部であるローカルストレージ２４にコピーし、それぞれのデータを同期して再生することができるような仕組みを提供することが可能となる。
【０４４７】
また、manifestファイルを伴わないデータが取得され、再生装置１内部の記録部であるローカルストレージ２４に記録される場合、ローカルストレージ２４に記録されたデータが、光ディスク１１のデータの一部のコピーであるか、外部から取得されたものであるかにかかわらず、manifestファイルを適宜生成または更新して仮想ファイルシステムを構築することにより、再生装置１に装着された記録媒体である光ディスク１１に記録されたデータと再生装置１内部の記録部であるローカルストレージ２４に記録されたデータとを同期して再生することができるような仕組みを提供することが可能となる。
【０４４８】
更に、ここでは、光ディスク１１からローカルストレージ２４へファイルをコピーしたり、外部から取得されたファイルをローカルストレージ２４に記憶する処理について説明したが、例えば、複数のファイルを含むデータ群として、指定されたフォルダまたはディレクトリごと、光ディスク１１からローカルストレージ２４へコピーしたり、複数のファイルを含むデータ群としてのフォルダまたはディレクトリ構成のデータ群を外部から取得して、ローカルストレージ２４に記憶する場合においても、上述した処理を適用することが可能である。すなわち、再生装置１においては、複数のファイルを含むデータ群としてのフォルダまたはディレクトリ構成のデータ群を取得した場合、manifestファイルを適宜生成または更新して仮想ファイルシステムを構築することにより、ローカルストレージ２４に記憶されたデータと光ディスク１１に記録されているデータと同期して再生することが可能であり、これらの処理により、上述した場合と同様の効果を奏するものである。
【０４４９】
また、再生装置１においては、上述したように、ローカルストレージ２４を半導体メモリなどにより構成し、半導体メモリなどにより構成されたローカルストレージを再生装置１から着脱可能なようにしても良いが、更に、それ以外にも、図１７を用いて説明したようなコンテンツオーサがコンテンツを配布する際のコンテンツ配布用ファイル形式における場合と同様のデータを、ドライブ２７に装着可能なリムーバブルメディア２８に、図１４を用いて説明したディレクトリ構成で記録させるようにすることにより、ローカルストレージ２４にデータを記憶しなくても、リムーバブルメディア２８に記録されているデータのファイルシステムと、光ディスク１１に記録されているデータのファイルシステムとを上述したようにバインディングさせることができるようにしても良い。
【０４５０】
更に、ローカルストレージ２４にもリムーバブルメディア２８にも、図１４を用いて説明したディレクトリ構成で、コンテンツデータおよびその再生に必要なデータ（例えば、PlayListやSubPlayItem、または、Manifestファイルなど）を記録させるようにすることにより、ローカルストレージ２４に記録されているデータのファイルシステムと、リムーバブルメディア２８に記録されているデータのファイルシステムと、光ディスク１１に記録されているデータのファイルシステムとを、上述したようにバインディングさせることができるようにしても良い。このような場合、上述した処理を適用して、例えば、ローカルストレージ２４に記録されているデータのファイルシステムと光ディスク１１に記録されているデータのファイルシステムとがバインディングされて、第１の仮想ファイルシステムが生成され、リムーバブルメディア２８に記録されているデータのファイルシステムと第１の仮想ファイルシステムとがバインディングされて、第２の仮想ファイルシステムが生成されるようにすることができる。
【０４５１】
上述した一連の処理は、ソフトウェアにより実行することもできる。そのソフトウェアは、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、プログラム格納媒体からインストールされる。
【０４５２】
このプログラム格納媒体は、図１に示すように、コンピュータとは別に、ユーザにプログラムを提供するために配布される、プログラムが格納されている磁気ディスク（フレキシブルディスクを含む）、光ディスク（CD-ROM（Compact Disk-Read Only Memory），DVD（Digital Versatile Disk）を含む）、光磁気ディスク（ＭＤ（Mini-Disk)（商標）を含む）、もしくは半導体メモリなどよりなるリムーバブルメディア２８により構成されるだけでなく、装置本体に予め組み込まれた状態でユーザに提供される、プログラムが格納されているROMまたはRAMなどのメモリ２３や、ハードディスクなどのローカルストレージ２４などにより構成される。
【０４５３】
また、本明細書において、プログラム格納媒体に記録されるプログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的または個別に実行される処理をも含むものである。
【０４５４】
なお、本明細書において、システムとは、複数の装置により構成される装置全体を表すものである。
【０４５５】
なお、本発明の実施の形態は、上述した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能である。
【図面の簡単な説明】
【０４５６】
【図１】本発明を適用した第１の実施の形態における再生装置の構成を示すブロック図である。
【図２】本発明を適用した第１の実施の形態における再生装置に装着される記録媒体上のアプリケーションフォーマットの例を示す図である。
【図３】本発明を適用した再生装置に装着される記録媒体上のアプリケーションフォーマットの例の異なる例について説明するための図である。
【図４】ファイルのダウンロードが行われた状態について説明するための図である。
【図５】光ディスクからのファイルコピーが行われた状態について説明するための図である。
【図６】ＡＶストリームの構成について説明するための図である。
【図７】図１のコントローラの機能について説明するための機能ブロック図である。
【図８】仮想ファイルシステムについて説明するための図である。
【図９】仮想ファイルシステムについて説明するための図である。
【図１０】ローカルストレージのディレクトリ構造について説明するための図である。
【図１１】Manifestファイルのシンタックスを示す図である。
【図１２】Manifest（）に含まれるpermissionに指定可能な値について説明するための図である。
【図１３】光ディスクのファイルシステムの例について説明するための図である。
【図１４】ローカルストレージ２４のファイルシステムの例について説明するための図である。
【図１５】パス名称の指定について説明するための図である。
【図１６】仮想ディスクにおけるディレクトリ／ファイル構造の例について説明するための図である。
【図１７】コンテンツオーサがコンテンツを配布する際のコンテンツ配布用ファイル形式の定義について説明するための図である。
【図１８】ファイルの追加更新が実行された後のPlayListなどの状態について説明するための図である。
【図１９】ファイルの追加更新が実行された後のPlayListなどの状態について説明するための図である。
【図２０】ユーザに提示される削除可能なファイルの一覧の例を示す図である。
【図２１】ファイルベースの追加および更新処理について説明するためのフローチャートである。
【図２２】バインディング処理１について説明するためのフローチャートである。
【図２３】ディスクベースの追加および更新処理について説明するためのフローチャートである。
【図２４】ファイルベースの削除処理について説明するためのフローチャートである。
【図２５】ディスクベースの削除処理について説明するためのフローチャートである。
【図２６】再生処理およびファイルシステム構成処理について説明するためのフローチャートである。
【図２７】ファイルのコピーとManifestファイルの生成または更新について説明するための図である。
【図２８】ファイルのコピーとManifestファイルの生成または更新について説明するための図である。
【図２９】ファイルのコピーとManifestファイルの生成または更新について説明するための図である。
【図３０】ファイルのコピーとManifestファイルの生成または更新について説明するための図である。
【図３１】ファイルのコピーとManifestファイルの生成または更新について説明するための図である。
【図３２】ファイルのコピーとManifestファイルの生成または更新について説明するための図である。
【図３３】ファイルのコピーとManifestファイルの生成または更新について説明するための図である。
【図３４】ファイルのコピーとManifestファイルの生成または更新について説明するための図である。
【図３５】ファイルのコピーとManifestファイルの生成または更新について説明するための図である。
【図３６】ファイルのコピーとManifestファイルの生成または更新について説明するための図である。
【図３７】ファイルコピーおよびファイルシステム構成処理１について説明するためのフローチャートである。
【図３８】ファイルコピーおよびファイルシステム構成処理１について説明するためのフローチャートである。
【図３９】src_file_name設定処理１について説明するためのフローチャートである。
【図４０】ファイルコピー処理について説明するためのフローチャートである。
【図４１】ファイル上書きコピー処理について説明するためのフローチャートである。
【図４２】Manifestファイル生成処理１について説明するためのフローチャートである。
【図４３】Manifestファイル更新処理１について説明するためのフローチャートである。
【図４４】バインディング処理２について説明するためのフローチャートである。
【図４５】ファイルの取得および記憶とManifestファイルの生成または更新について説明するための図である。
【図４６】ファイルコピーおよびファイルシステム構成処理２について説明するためのフローチャートである。
【図４７】ファイルコピーおよびファイルシステム構成処理２について説明するためのフローチャートである。
【図４８】src_file_name設定処理２について説明するためのフローチャートである。
【図４９】Manifestファイル生成処理２について説明するためのフローチャートである。
【図５０】Manifestファイル更新処理２について説明するためのフローチャートである。
【符号の説明】
【０４５７】
１  再生装置，  １１  光ディスク，  ２１  コントローラ，  ２２  光ディスクドラ
イブ，  ２３  メモリ，  ２４  ローカルストレージ，  ２６  デコーダ，  ３１  メニ
ュー画面表示制御部，  ３２  操作入力取得部，  ３３  データ取得部，  ３４  ローカ
ルストレージディレクトリ管理部，  ３５  光ディスクディレクトリ管理部，  ６６  フ
ァイルシステムマージ処理部，  ３７  再生制御部，  ３８  ファイルコピー制御部，  ３９  マニフェストファイル生成・更新部
【図１】
0004702621.tif 000002
【図２】
0004702621.tif 000003
【図３】
0004702621.tif 000004
【図４】
0004702621.tif 000005
【図５】
0004702621.tif 000006
【図６】
0004702621.tif 000007
【図７】
0004702621.tif 000008
【図８】
0004702621.tif 000009
【図９】
0004702621.tif 000010
【図１０】
0004702621.tif 000011
【図１１】
0004702621.tif 000012
【図１２】
0004702621.tif 000013
【図１３】
0004702621.tif 000014
【図１４】
0004702621.tif 000015
【図１５】
0004702621.tif 000016
【図１６】
0004702621.tif 000017
【図１７】
0004702621.tif 000018
【図１８】
0004702621.tif 000019
【図１９】
0004702621.tif 000020
【図２０】
0004702621.tif 000021
【図２１】
0004702621.tif 000022
【図２２】
0004702621.tif 000023
【図２３】
0004702621.tif 000024
【図２４】
0004702621.tif 000025
【図２５】
0004702621.tif 000026
【図２６】
0004702621.tif 000027
【図２７】
0004702621.tif 000028
【図２８】
0004702621.tif 000029
【図２９】
0004702621.tif 000030
【図３０】
0004702621.tif 000031
【図３１】
0004702621.tif 000032
【図３２】
0004702621.tif 000033
【図３３】
0004702621.tif 000034
【図３４】
0004702621.tif 000035
【図３５】
0004702621.tif 000036
【図３６】
0004702621.tif 000037
【図３７】
0004702621.tif 000038
【図３８】
0004702621.tif 000039
【図３９】
0004702621.tif 000040
【図４０】
0004702621.tif 000041
【図４１】
0004702621.tif 000042
【図４２】
0004702621.tif 000043
【図４３】
0004702621.tif 000044
【図４４】
0004702621.tif 000045
【図４５】
0004702621.tif 000046
【図４６】
0004702621.tif 000047
【図４７】
0004702621.tif 000048
【図４８】
0004702621.tif 000049
【図４９】
0004702621.tif 000050
【図５０】
0004702621.tif 000051