説明

ファイル管理装置、ファイル管理方法およびプログラムならびに記録媒体

【課題】 インデックスファイルの内容と記録媒体におけるファイルの記録状態との不整合の有無を高速に検出させる。
【解決手段】 ファイル管理装置160によりインデックスファイル220に基づいて、ファイル210を管理する際、インデックスファイル220におけるコンテンツファイル210の管理状態を示す管理状態情報を管理状態情報保持部230に保持させる。そして、不整合検出部164は、記録状態検出部163により検出された記録媒体200におけるコンテンツファイル210の記録状態と管理状態情報とに基づいて、インデックスファイル220の内容と記録媒体200におけるコンテンツファイル210の記録状態との間の不整合の有無を検出する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ファイル管理装置に関し、特に記録媒体に記録されるファイルをインデックスファイルに基づき管理するファイル管理装置において、インデックスファイルにおけるファイルの管理状態と記録媒体におけるファイルの記録状態との間の不整合の有無を検出するためのファイル管理装置、その処理方法および当該方法をコンピュータに実行させるプログラムならびに当該不整合を検出するための管理状態情報を記録した記録媒体に関する。
【背景技術】
【0002】
近年、DVD(Digital Versatile Disc)の登場やフラッシュメモリの大容量化が進んでいる。これらの大容量記録媒体を用いることにより、デジタルビデオカメラやデジタルスチルカメラならびに携帯電話などの比較的小型の撮像装置においても撮像結果を多数のコンテンツファイルとして記録することが可能となっている。
【0003】
記録媒体に多数のコンテンツファイル等が記録されるようになると、ユーザが所望のコンテンツファイルを検索するのが困難となる。このため、各コンテンツファイルの属性等を各コンテンツファイルの管理情報(インデックス情報)としてまとめたインデックスファイルを作成して、このインデックスファイルにより記録媒体上の多数のコンテンツファイルを管理することが行われている(例えば、「特許文献1」参照。)。インデックスファイルを用いることで、例えば、ユーザがコンテンツファイルを仮想的なフォルダ構造により管理することができ、多数のファイルに係る操作性を向上することができる。
【特許文献1】特開2004−227630号公報
【発明の開示】
【発明が解決しようとする課題】
【0004】
このようなインデックスファイルによりファイルを管理する際、管理対象となるファイル毎に管理情報を生成した後、管理対象ファイルの追加、削除、編集等に応じてインデックスファイルもその内容を更新する必要がある。インデックスファイルの更新は、通常、インデックスファイル管理のためのアプリケーションソフトを通じて行われる。このため、通常であれば、インデックスファイルに含まれる各管理情報は常に管理対象のコンテンツファイルのいずれかに対応し、インデックスファイルにおいてファイルが管理されている状態と記録媒体においてコンテンツファイルが記録されている状態とは常に整合する。
【0005】
しかしながら、ユーザが、そのようなアプリケーションソフトによらず、パーソナルコンピュータ(以下、「PC」という。)などを通じて、ファイルシステム上から直接コンテンツファイル等の削除、追加、編集等を行うと、インデックスファイルにはその操作の内容が反映されない場合がある。すなわち、記録媒体から削除されたコンテンツファイルについての管理情報がインデックスファイルには依然として含まれる場合や、その逆に、記録媒体に追加されたコンテンツファイルについての管理情報がインデックスファイルには追加されていない場合、ファイル名の変更がインデックスファイルには反映されない場合が生じる等、インデックスファイルに含まれる管理情報が記録媒体に実際に記録されているコンテンツファイルに対応せず、インデックスファイルの内容(インデックスファイルにおいてファイルが管理されている状態)と記録媒体においてファイルが記録されている状態との間に不整合が生じる場合がある。
【0006】
このような不整合が生じているか否かを検出するには、記録媒体に記録されている各ファイルと、インデックスファイルに含まれる各ファイルの管理情報とを一つ一つ照合して検証する必要があり、多大な時間を要することになる。
【0007】
そこで、本発明は、インデックスファイルの内容と記録媒体におけるファイルの記録状態との不整合を高速に検出することができるファイル管理装置、その処理方法および当該方法をコンピュータに実行させるプログラムならびに当該不整合を検出するための管理状態情報を記録した記録媒体を提供することを目的とする。
【課題を解決するための手段】
【0008】
本発明は、上記課題を解決するためになされたものであり、その第1の側面は、記録媒体に記録されたファイルの管理情報を含むインデックスファイルに基づいて前記ファイルを管理するファイル管理装置において、前記インデックスファイルにおける前記ファイルの管理状態を示す管理状態情報を保持する管理状態情報保持手段と、前記記録媒体におけるファイルの記録状態を検出する記録状態検出手段と、前記管理状態情報と前記記録状態検出手段により検出されたファイルの記録状態とに基づいて前記インデックスファイルにおける前記ファイルの管理状態と前記記録媒体におけるファイルの記録状態との間の不整合の有無を検出する不整合検出手段と、を具備することを特徴とする。これにより、インデックスファイルにおけるファイルの管理状態(インデックスファイルの内容)と記録媒体におけるファイルの記録状態との間の不整合を検出する際に、インデックスファイルに含まれる各ファイルの管理情報と対応する各ファイルとを一つ一つ照合させることなく、管理状態情報に基づいて当該不整合を高速に検出させる。
【0009】
本発明の第1の側面において前記管理状態情報保持手段は、ディレクトリ構造により記録媒体に記録されるファイルについて、各ディレクトリ毎にそのディレクトリに含まれるファイルの管理状態情報を保持させることができる。これにより、ディレクトリ毎に管理状態情報に基づいて当該不整合を高速に検出させる。
【0010】
この際、上記管理状態情報は、上記ディレクトリに含まれるファイルの数に関する情報を含むことができる。これにより、ファイルの追加、削除によりインデックスファイルの内容と実際のファイルの記録状態に不整合が生じた場合、当該不整合を高速に検出させる。
【0011】
また、上記管理状態情報は、上記ディレクトリに含まれるファイルの更新日時に関する情報を含むことができる。これにより、ファイルの追加、削除、上書き、編集によりインデックスファイルの内容と実際のファイルの記録状態に不整合が生じた場合、当該不整合を高速に検出させる。
【0012】
このとき、上記ファイルの更新日時に関する情報は、上記ファイルの作成時に基づき生成されるディレクトリ毎のチェックサムとすることができる。これにより、当該不整合をより高速に検出させる。
【0013】
また、上記管理状態情報は、上記ディレクトリに含まれるファイルのファイル名に関する情報を含むことができる。これにより、ファイルの追加、削除、ファイル名の変更によりインデックスファイルの内容と実際のファイルの記録状態に不整合が生じた場合、当該不整合を高速に検出させる。
【0014】
このとき、上記ファイル名に関する情報は、上記ファイル名に基づき生成されるディレクトリ毎のチェックサムとすることができる。これにより、当該不整合をより高速に検出させる。
【0015】
また、上記管理状態情報は、上記ディレクトリに含まれるファイルのうち各ディレクトリにおいて最も新しく作成されたファイルの作成時に関する情報を含むことができる。これにより、ファイルの追加によりインデックスファイルの内容と記録媒体におけるファイルの記録状態との間に不整合が生じた場合、当該不整合を高速に検出させる。
【0016】
また、上記管理状態情報は、上記ディレクトリに含まれるファイルのうち各ディレクトリにおいて最後に更新されたファイルの更新時に関する情報を含むことができる。これにより、ファイルの編集によりインデックスファイルの内容と実際のファイルの記録状態に不整合が生じた場合、当該不整合を高速に検出させる。
【0017】
また、本発明の第一の側面において、上記管理情報から上記管理状態情報を生成する管理状態情報生成手段を具備することができる。これにより、記録媒体に記録されるファイルの追加、削除、ファイル名の変更等に応じてインデックスファイルに含まれる管理情報の変更に合わせて、管理状態情報を更新させる。
【0018】
この際、上記管理状態情報生成手段は、ディレクトリ構造により記録媒体に記録されるファイルについて、各ディレクトリ毎に上記管理状態情報を生成することができる。これにより、ディレクトリ毎に管理状態情報に基づいて当該不整合を高速に検出させる。
【0019】
また、前記管理情報は前記記録媒体に記録されたファイルから生成される。このとき、前記管理状態情報は前記管理情報から生成される。また、前記管理状態情報を前記インデックスファイルに含まれる管理情報から生成することもできる。
【0020】
また、本発明の第2の側面は、記録媒体に記録されたファイルの管理情報を含むインデックスファイルに基づいて前記ファイルを管理するファイル管理装置において、前記インデックスファイルにおける前記ファイルの管理状態を示す管理状態情報を少なくとも二種類を保持する管理状態情報保持手段と、少なくとも二種類の前記管理状態情報に対応するように記録媒体におけるファイルの記録状態を少なくとも二種類検出する記録状態検出手段と、互いに対応する管理状態情報と前記記録状態検出手段により検出されたファイルの記録状態とに基づいて前記インデックスファイルに含まれる管理情報と前記記録媒体におけるファイルの記録状態との間の不整合の有無を検出する不整合検出手段と、を具備することを特徴とする。これにより、インデックスファイルの内容と記録媒体におけるファイルの記録状態との不整合を検出する際に、インデックスファイルに含まれる各ファイルの管理情報と対応する各ファイルとを一つ一つ照合しなくても、管理状態情報を参照すればよいので、当該不整合を高速に検出し得る。このとき、少なくとも二種類の管理状態情報に基づき不整合を検出するので、検出結果の精度を高めることができる。
【0021】
本発明の第2の側面において、ディレクトリ構造により記録媒体に記録されるファイルについて、各ディレクトリ毎にそのディレクトリに含まれるファイルの管理状態情報を保持することができる。これにより、ディレクトリ毎に管理状態情報に基づいて当該不整合を高速に検出させる。
【0022】
また、前記管理状態情報は、前記インデックスファイルにおいて管理しているファイルのファイル数に関する情報、ファイル名に関する情報および更新日時に関する情報のうち少なくとも二種類を含むことができる。これにより、ファイルの追加、削除、追加と削除によりファイル数が変化した場合あるいは変化しない場合、ファイルの上書き、ファイル名の変更、ファイルの編集によりインデックスファイルの内容と実際のファイルの記録状態に不整合が生じた場合、当該不整合を高速かつ精度良く検出し得る。
【0023】
また、本発明の第3の側面は、記録媒体に記録されたファイルの管理情報を含むインデックスファイルに基づいて前記ファイルを管理するファイル管理方法において、前記インデックスファイルにおける前記ファイルの管理状態を示す管理状態情報を予め保持しておく手順と、前記記録媒体におけるファイルの記録状態を検出する手順と、前記管理状態情報と前記記録状態検出手段により検出されたファイルの記録状態とに基づいて前記インデックスファイルにおける前記ファイルの管理状態と前記記録媒体におけるファイルの記録状態との間の不整合の有無を検出する手順と、を具備することを特徴とする。これにより、インデックスファイルの内容と記録媒体におけるファイルの記録状態との不整合を検出する際に、インデックスファイルに含まれる各ファイルの管理情報と対応する各ファイルとを一つ一つ照合しなくても、予め保持された管理状態情報を参照すればよいので、当該不整合を高速に検出し得る。
【0024】
また、本発明の第4の側面は、記録媒体に記録されたファイルの管理情報を含むインデックスファイルに基づいて前記ファイルを管理するプログラムにおいて、前記インデックスファイルにおける前記ファイルの管理状態を示す管理状態情報を予め保持しておく手順と、前記記録媒体におけるファイルの記録状態を検出する手順と、前記管理状態情報と前記記録状態検出手段により検出されたファイルの記録状態とに基づいて前記インデックスファイルにおける前記ファイルの管理状態と前記記録媒体におけるファイルの記録状態との間の不整合の有無を検出する手順と、をコンピュータに実行させることを特徴とする。インデックスファイルの内容と記録媒体におけるファイルの記録状態との不整合を検出する際に、インデックスファイルに含まれる各ファイルの管理情報と対応する各ファイルとを一つ一つ照合しなくても、予め保持された管理状態情報を参照すればよいので、当該不整合を高速に検出し得る。
【0025】
また、本発明の第5の側面は、記録されたファイルを管理するための前記ファイルの管理情報を含むインデックスファイルを記録した記録媒体において、前記インデックスファイルにおける前記ファイルの管理状態と当該記録媒体におけるファイルの記録状態との間の不整合の有無を検出するために用いられる情報であって、前記インデックスファイルにおける前記ファイルの管理状態情報が記録されることを特徴とする。これにより、インデックスファイルの内容と記録媒体におけるファイルの記録状態との不整合を検出する際に、インデックスファイルに含まれる各ファイルの管理情報と対応する各ファイルとを一つ一つ照合しなくても、予め保持された管理状態情報を参照すればよいので、当該不整合を高速に検出し得る。
【発明の効果】
【0026】
本発明によれば、インデックスファイルの内容と記録媒体におけるファイルの記録状態との不整合の有無を高速に検出し得るという優れた効果を奏し得る。
【発明を実施するための最良の形態】
【0027】
次に本発明の実施の形態について図面を参照して詳細に説明する。
【0028】
図1は、本発明の実施の形態におけるファイル管理装置が適用される映像記録装置100の全体構成例を示す図である。映像記録装置100は、静止画、動画を撮像して、その撮像結果を記録媒体200にコンテンツファイルとして記録するものである。本実施の形態において、ファイル管理装置は記録媒体200に記録されたコンテンツファイルを後述するインデックスファイルに基づいて管理する装置である。なお、ファイル管理装置については後述する。
【0029】
映像記録装置100は、レンズ部110と、このレンズ部110を操作するモーター113および114と、モータードライバ115とを備える。また、映像記録装置100は、撮像素子121と、アナログ処理器122と、A/D変換器123と、デジタル処理器124と、これらのタイミングを生成するタイミング生成器125と、カメラ制御部126とを備える。また、映像記録装置100は、ビデオ符号器131と、オーディオ符号器132と、ファイル生成器133と、ファイル復号器134と、ビデオ復号器135と、オーディオ復号器136と、メモリ137と、そのメモリコントローラ138と、システム制御部139とを備えている。このシステム制御部139には、表示操作部150からの信号線が接続されている。さらに、映像記録装置100は、エラー訂正器141と、データ変復調器142と、磁界変調ドライバ143と、磁界ヘッド144と、サーボ回路145と、モーター146と、光ピックアップ147と、ドライブ制御部148とを備えている。また、この映像記録装置100には、映像を記録する記録媒体として、例えば記録媒体200が装着される。
【0030】
レンズ部110は、被写体からの光を受光するものであり、ズームレンズ111およびフォーカスレンズ112を含む。ズームレンズ111およびフォーカスレンズ112にはそれぞれモーター113および114が接続されており、これらモーター113および114の駆動によってズームレンズ111およびフォーカスレンズ112が移動できるようになっている。また、モーター113および114にはモータードライバ115が接続されており、このモータードライバ115によってモーター113および114が制御される。
【0031】
撮像素子121は、レンズ部110によって受光された光を静電気に変換して蓄える素子であり、例えば、CCD(Charge Coupled Device)やCMOS(Complementary Metal Oxide Semiconductor)センサー等が利用される。アナログ処理器122は、撮像素子121からのアナログ信号におけるノイズを相関二重サンプリング(CDS:Correlated Double Sampling)により取り除き、自動利得制御(AGC:Automatic Gain Control)によりアナログ信号の高低部分を補正する。A/D変換器123は、アナログ処理器122からのアナログ信号をデジタル信号に変換する。デジタル処理器124は、ホワイトバランスやガンマ変換等の処理を行う。
【0032】
デジタル処理器124からの出力信号はビデオ符号器131のビデオ入力となる。また、このデジタル処理器124で検出された情報はカメラ制御部126に伝えられる。カメラ制御部126は、デジタル処理器124で検出された情報に基づいて、モータードライバ115およびタイミング生成器125に対する制御を行う。タイミング生成器125は、撮像素子121、アナログ処理器122、A/D変換器123およびデジタル処理器124に対するタイミング信号を生成する。
【0033】
ビデオ符号器131は、ビデオ信号の符号化を行う。オーディオ符号器132は、オーディオ信号の符号化を行う。ファイル生成器133は、符号化されたビデオデータおよびオーディオデータを多重化してコンテンツファイル(多重化データ)を生成する。ファイル復号器134は、コンテンツファイルを復号してビデオデータおよびオーディオデータを出力する。ビデオ復号器135は、ビデオデータを復号してビデオ信号を出力する。オーディオ復号器136は、オーディオデータを復号してオーディオ信号を出力する。
【0034】
なお、この図1では、オーディオ符号器132の入力信号、ビデオ復号器135およびオーディオ復号器136の出力信号については省略しているが、それぞれオーディオ入力信号、ビデオ出力信号およびオーディオ出力信号が接続される。
【0035】
メモリ137は、当該映像記録装置100上で動作するプログラム等を保持し、次に説明するシステム制御部139の主記憶に該当し得る。メモリコントローラ138は、ファイル生成器133やエラー訂正器141から供給された多重化データをメモリ137に書き込み、また、メモリ137から多重化データを読み出してエラー訂正器141やファイル復号器134に供給する。
【0036】
システム制御部139は、この映像記録装置100全体の動作を制御するもので、例えば、プロセッサにより構成される。上述のようなメモリコントローラ138の動作やファイル生成器133およびファイル復号器134の動作を制御する。また、システム制御部139は、ドライブ制御部148と接続してディスクドライブの動作を要求する。また、システム制御部139は、カメラ制御部126と接続して、オートフォーカスおよびズームの状態として、オートフォーカスがピントを合わせている最中か否かや、焦点距離などを得ることができる。
【0037】
さらに、システム制御部139には表示操作部150が接続されている。この表示操作部150は、映像記録装置100により撮像した撮像結果を表示したり、ユーザからの指示入力を把握するためのものである。表示操作部150には映像記録装置100を用いて撮像する際に用いるシャッターキーやズーム調整キー等の他、映像記録装置100を撮像モードとコンテンツファイルを再生するための再生モードとに切り替えるモード切替キー等の各種操作キーが設けられる。また、後述するインデックスファイルに含まれるサムネイル画像を表示して、ユーザの選択を受け付けることにより選択されたサムネイル画像に対応するコンテンツファイルを再生できるようになっている。このような表示操作部150は、例えば、液晶表示パネルとタッチパネル等を用いて構成することができる。
【0038】
また、表示操作部150を介して、ユーザによる撮像結果の記録が指示されると、システム制御部139は記録媒体200のファイルシステムに従って記録媒体200の空き領域を検出して、その空き領域に順次得られる撮像結果をコンテンツファイル210として記録する。このとき、コンテンツファイル210からインデックスファイル220の生成に必要な情報が取得され、メモリに保持したインデックスファイル220の内容が同時に更新される。
【0039】
エラー訂正器141は、メモリコントローラ138からの多重化データにインターリーブおよびエラー訂正のための符号を付加してデータ変復調器142に供給する。また、エラー訂正器141は、データ変復調器142からの復調信号に対してデ・インターリーブおよびエラー訂正処理を行って多重化データをメモリコントローラ138に供給する。
【0040】
データ変復調器142は、記録媒体200に記録するための所定の変調を施した後、磁界変調ドライバ143に出力すると同時に、光ピックアップ147を駆動するための信号を出力する。また、データ変復調器142は、光ピックアップ147からの信号に所定の復調処理を施して、エラー訂正器141に復調信号として出力する。
【0041】
磁界変調ドライバ143は、記録時には入力された信号に応じて磁界ヘッド144を駆動して記録媒体200に磁界を印加する。光ピックアップ147は、記録時には記録用のレーザービームを記録媒体200に照射して、記録媒体200に信号を記録する。また、光ピックアップ147は、再生時には再生用のレーザービームを記録媒体200に照射して、記録媒体200から反射されたビーム量から電気信号に光電変換して、再生信号を取得する。これらの動作は、システム制御部139からの要求に応じて、ドライブ制御部148が、サーボ回路145に要求を出してディスクドライブ全体の制御を行う。サーボ回路145は、光ピックアップ147のディスク径方向の移動のサーボ、トラッキングサーボ、フォーカスサーボを制御し、また、モーター146のスピンドルサーボを制御する。
【0042】
なお、上述の構成例では、記録媒体200として磁界変調を行う光磁気ディスクを想定しているが、相変化ディスクの場合でも基本的な構成は同様である。また、記録媒体200は、光ディスク、光磁気ディスクに限られるものではなく、フラッシュメモリ等の半導体メモリであってもよく、映像記録装置100は記録媒体200の種類に応じた構成例とすることができる。
【0043】
図2に本発明の実施の形態のファイル管理装置160の機能的構成の主要部を示す。このファイル管理装置160は、記録媒体200に記録されたコンテンツファイル210を管理する際に、各コンテンツファイル210の管理情報を含むインデックスファイル220に基づいて管理する。また、このようなファイル管理装置160において、本実施の形態では、インデックスファイル220の内容と記録媒体200におけるコンテンツファイル210の記録状態との間の不整合を検出できるようにしている。
【0044】
ここで、インデックスファイル220は、管理対象の各コンテンツファイル210を管理するための管理情報が割り当てられたものであり、そのような管理情報として、後述するように、例えば、ファイル名、ファイルの作成日時、ファイルの更新日時等のファイルのプロパティ情報がある。上記のインデックスファイル220の内容と記録媒体200におけるコンテンツファイル210の記録状態との間の不整合とは、インデックスファイル210においてコンテンツファイル210が管理されている状態と記録媒体200におけるコンテンツファイル210の記録状態との間の不整合をいう。具体的には、インデックスファイル220に含まれる管理情報に対応するコンテンツファイル210が記録媒体200には存在していないこと、あるいは、記録媒体200に記録されているコンテンツファイル210に対応する管理情報がインデックスファイル220には含まれていないこと、記録媒体200に記録されているコンテンツファイル210の内容とこのコンテンツファイル210に対応する管理情報の内容とが不一致であること、等をいう。
【0045】
ユーザが本実施の形態の映像記録装置100を用いて、コンテンツファイル210の追加、削除、編集等を行うと、これに応じてインデックスファイル220の内容が更新され、インデックスファイル220にはそのコンテンツファイル210に対応する管理情報が追加、削除、編集されるため、通常、上記のような不整合は生じない。しかし、上記のように、ユーザがPCなどを通じて、ファイルシステム上から直接コンテンツファイル210の追加、削除、編集等を行うと、インデックスファイル220の内容は更新されないため、上記のような不整合が起きる場合がある。本実施の形態のファイル管理装置160は、これを高速に検出し得るものである。
【0046】
図2に示すように、ファイル管理装置160は、ファイル操作部161と、不整合検出情報生成部162と、不整合検出情報保持部230と、記録状態検出部163と、不整合検出部164とを備えている。
【0047】
ファイル操作部161は、ファイル管理装置160における各種の操作指示を入力するためのものである。ファイル操作部161を介して、後述する不整合検出情報の生成や記録媒体200におけるコンテンツファイル210の記録状態の検出、インデックスファイル220の内容と記録媒体200に実際に記録されているコンテンツファイル210の記録状態との間の不整合を検出する処理(以下、これら一連の手順を「不整合検出処理」という。)の開始等を指示する信号を入力することができる。
【0048】
なお、不整合検出処理は、表示操作部150を介したユーザによる不整合検出処理の開始を指示する操作入力を待って開始されるようにしてもよいし、所定のタイミングで自動的に開始されるようにしてもよい。不整合検出処理が実行されるタイミングとしては、映像記録装置100に対して電源が入力された時、ファイルが一定数以上になった時等が挙げられる。ユーザの指示を待って不整合検出処理が行われるようにすれば、ユーザが不整合検出処理を実行したいときにインデックスファイル220の内容の不整合を検出できる。映像記録装置100への電源入力と同時に不整合検出処理が行われるようにすれば、ユーザは特に操作を行うことなく、不整合の有無が検出される。このとき、ファイル数が増えると、インデックスファイル220の内容と記録媒体200におけるコンテンツファイル210の記録状態との間の不整合が生じやすくなる。したがって、ファイル数が一定数以上になった時に不整合検出処理を実行させるようにすれば、不整合が生じやすい状況下においてインデックスファイル220の内容に不整合の有無があるかを検出できる。
【0049】
不整合検出情報生成部162は、不整合検出情報を生成するものである。不整合検出情報はインデックスファイル220において管理しているコンテンツファイル210の管理状態を示す情報である。不整合検出情報はインデックスファイル220が生成される際に生成され、インデックスファイル220の内容が更新されるときに不整合検出情報の内容も更新される。不整合検出情報はインデックスファイル220に含まれる管理情報に基づいて生成してもよいし、インデックスファイル220を生成するためにコンテンツファイル210から抽出した管理情報に基づいて生成してもよいし、インデックスファイル220が生成または更新される際に、コンテンツファイル210から不整合検出情報の生成に必要な情報を直接抽出して生成してもよい。不整合検出情報生成部162は、不整合検出情報として、不整合が生じ得る態様に応じて複数の種類の情報を生成することができる。そのような不整合検出情報として、ファイル数に関する情報、ファイルの更新日時に関する情報、ファイル名に関する情報、ファイルの作成日時に関する情報等を挙げることができる。
【0050】
また、コンテンツファイル210がディレクトリ構造により記録媒体200に記録される場合、不整合検出情報生成部162は、各ディレクトリ毎に不整合検出情報を生成するように設定されている。
【0051】
不整合検出情報保持部230は、不整合検出情報生成部162により生成された不整合検出情報を保持するものである。この不整合検出情報保持部230は記録媒体200に設けることができる。例えば、インデックスファイル220のヘッダ部を不整合検出情報保持部230とし、不整合検出情報をインデックスファイル220のヘッダ部に保持させることができる。なお、インデックスファイル220については後述する。
【0052】
記録状態検出部163は、記録媒体200におけるコンテンツファイル210の記録状態を検出するものである。このとき、記録状態検出部163は不整合検出情報の種類に対応するようにコンテンツファイル210の記録状態を検出する。例えば、不整合検出情報が、ファイル数に関する情報である場合、記録状態検出部163は記録媒体200に記録されたコンテンツファイル210のファイル数を検出する。不整合検出情報が、ファイルの更新日時に関する情報である場合、記録状態検出部163は記録媒体200に記録された各コンテンツファイル210の更新日時を検出する。不整合検出情報がファイル名に関する情報である場合、記録状態検出部163は記録媒体200に記録された各コンテンツファイル210のファイル名を検出する。不整合検出情報がファイルの作成日時に関する情報である場合、記録状態検出部163は記録媒体200に記録された各コンテンツファイル210の記録状態を検出する。
【0053】
また、コンテンツファイル210がディレクトリ構造により記録媒体200に記録される場合、記録状態検出部163は各ディレクトリ毎にそのディレクトリに属するコンテンツファイル210の記録状態を検出する。
【0054】
不整合検出部164は、不整合検出情報保持部230に保持された不整合検出情報と、記録状態検出部163により検出された記録媒体200におけるコンテンツファイル210の記録状態とに基づき、インデックスファイル220の内容と記録媒体200におけるコンテンツファイル210の記録状態との間の不整合の有無を検出するものである。
【0055】
なお、ファイル操作部161と、不整合検出情報生成部162と、記録状態検出部163と、不整合検出部164とは映像記録装置100のシステム制御部139上で動作するプログラムとして実現することができる。また、ファイル操作部161は表示操作部150等を介して入力される操作入力に応じてシステム制御部139上で動作するプログラムとして実現することができる。インデックスファイル220およびコンテンツファイル210は記録媒体200に記録されるファイルとして実現される。また、不整合検出情報保持部230は、インデックスファイル220のヘッダ部に設けることができる。
【0056】
次に、本実施の形態の映像記録装置100についてソフトウェアの観点から説明する。図3に本実施の形態における映像記録装置100のソフトウェア170の構成を示す。映像記録装置100におけるソフトウェア170の階層は、ユーザインターフェース層171、アプリケーション層172、第一ミドルウェア層173、第二ミドルウェア層174、ハードウェアドライバ層175およびファイルシステムAPI(Application Program Interface)層176を想定することができる。
【0057】
ユーザインターフェース層171は、ユーザとアプリケーション層172との間に介在し、ユーザとアプリケーション層172との間で情報の授受を行う層である。
【0058】
アプリケーション層172は、映像記録装置100による撮像に係る各種操作や撮像結果の表示、ファイル管理装置160に係るファイル管理等を行うために設計されたアプリケーションソフトに係る層である。
【0059】
第一ミドルウェア層173および第二ミドルウェア層174は、OS(Operating System)上で動作し、アプリケーションソフトに対してOSよりも高度で具体的な機能を提供するソフトウェアに係る層である。
【0060】
ハードウェアドライバ層175は、ハードウェアすなわち映像記録装置100を動作させるためのソフトウェアに係る層である。
【0061】
ファイルシステムAPI層176は、記録媒体に記録されているファイル(データ)を管理するソフトウェアを利用するためのプログラム上の手続きを定めた規約の集合等からなる層である。ファイルシステムAPI層176を介して記録媒体200に記録されたコンテンツファイル210、インデックスファイル220にアクセスすることになる。
【0062】
上記のようなソフトウェア構成において、第二ミドルウェア176においてコンテンツファイル210にアクセスできると想定した場合、第二ミドルウェア176が図2において説明した不整合検出情報生成部162、記録状態検出部163、不整合検出部164の機能を担うことができる。すなわち、第二ミドルウェア176において不整合検出情報を生成したり、記録媒体200におけるコンテンツファイル210の記録状態を検出したり、不整合検出情報と記録媒体200におけるコンテンツファイル210の記録状態に基づいて、インデックスファイル220の内容とコンテンツファイル210の記録状態との間の不整合の有無を検出することができる。
【0063】
一方、第二ミドルウェア176においてコンテンツファイル210にアクセスすることができないと想定した場合、アプリケーション層172が上記不整合検出情報生成部162、記録状態検出部163、不整合検出部164の機能を担う必要がある。
【0064】
次に、図4を参照してファイル管理装置160によるコンテンツファイル210の管理の方法を説明する。本実施の形態のファイル管理装置160は、インデックスファイル220に基づいてコンテンツファイル210を管理する。本実施の形態のファイル管理装置160は、図4(b)に示すように、記録媒体200におけるファイルシステム上のコンテンツファイル210のディレクトリ構造に従って、コンテンツファイル210を管理することもできるし、図4(a)に示すような仮想的なフォルダ構造を構築して、図4(b)に示すディレクトリ構造とは独立した仮想的なフォルダ構造によりコンテンツファイル210を管理することもできる。
【0065】
なお、インデックスファイル220自体は記録媒体200に記録され、コンテンツファイル210等とともに所定のファイルシステムに従って管理されている。すなわち、インデックスファイル220の記録位置のアドレス、ファイル名、ファイル長等のインデックスファイル220を読み出すために必要な情報はファイルシステムにより管理される。映像記録装置100のシステム制御部139は必要に応じて、インデックスファイル220を読み出して、メモリコントローラ138によりこの読み出したインデックスファイル220を取得し、内蔵のメモリ137に記録して保持する。これにより、この実施の形態では、インデックスファイル220を利用して記録媒体200に記録されたコンテンツファイル210の処理に関して全体の操作性を向上するようになされている。
【0066】
図4(a)に示すインデックスファイル220により構築される仮想的なフォルダ構造について説明する。本実施の形態のファイル管理装置160はこのような仮想的なフォルダ構造によりコンテンツファイル210を管理することを想定している。
【0067】
図4(a)の仮想的なフォルダ構造では、複数のフォルダエントリFDEと複数のファイルエントリFLEが階層構造により設けられている。
【0068】
各フォルダエントリFDEは、インデックスファイル220に仮想的に設けられるフォルダである。このフォルダは、ユーザの設定により、例えば、撮影日、撮影場所、撮像画像の種類(風景、人物、動物、建造物等)等に応じて設けることができる。フォルダエントリにより、ファイルエントリまたは他のフォルダエントリをまとめることができる。これにより、インデックスファイル220において仮想的なフォルダ構造を構築することができる。
【0069】
一方、各ファイルエントリFLEは、図4(b)に示すファイルシステム上のコンテンツファイル210(File1〜5)のいずれかに対応するものである。インデックスファイル220では、記録媒体200に記録されたコンテンツファイル210が管理対象のファイルとして登録された場合、登録されたコンテンツファイル210にはこれを識別するためのエントリ番号が付与される。インデックスファイルでは、各コンテンツファイル210はファイルとしてインデックスファイルにエントリされたファイルエントリとして取り扱われる。これが図4(a)に示すファイルエントリFLEである。なお、インデックスファイル220にフォルダが設定された場合、このフォルダに対してもエントリ番号が付与され、インデックスファイル220においてフォルダエントリとして管理される。このように、ユーザはインデックスファイル220において所望のフォルダを仮想的に設けることができ、その仮想的なフォルダに所望のコンテンツファイル210が属しているようにインデックスファイル220において設定することができる。
【0070】
図4(a)に示す仮想的なフォルダ構造では、4つのフォルダエントリFDE−A、FDE−B、FDE−C、FDE−Dが設けられている。親フォルダとなるフォルダエントリFDE−Aの下層に2つのフォルダエントリFDE−B、FDE−Cがそれぞれ設けられている。フォルダエントリFDE−Bには2つのファイルエントリFLE−1、FLE−2が属するように設定されている。また、フォルダエントリFDE−Cには1つのファイルエントリFLE−3と1つのフォルダエントリFDE−Dが設けられている。フォルダエントリFDE−Dには2つのファイルエントリFLE−4、FLE−5が設けられている。
【0071】
これに対して、図4(b)は、記録媒体200におけるコンテンツファイル210の現実の記録状態を示したものである。コンテンツファイル210は所定のファイルシステムにより管理されて、所定のディレクトリ構造により記録媒体200に記録される。図4(b)に示す例では、ルートディレクトリDirAには2つのディレクトリDirB、DirCが設けられ、一方のディレクトリDirBには3つのファイルFile1、2、3が、他方のディレクトリDirCには2つのファイルFile4、5がそれぞれ属している。
【0072】
これらのコンテンツファイル210を示す各ファイルFileは、上述のようにインデックスファイル220においてファイルエントリFLEとして管理される。例えば、図4(a)に示すフォルダ構造におけるファイルエントリFLE−1、FLE−2はそれぞれファイルシステム上のファイルFile2、Fiel5に対応するものであり、ファイルFile2、File5はインデックスファイル220では仮想的にフォルダエントリFDE−Bに属するように設定されている。また、ファイルエントリFLE−3はファイルシステム上のファイルFile1に対応し、ファイルエントリFLE−4、FLE−5はそれぞれファイルシステム上のファイルFile3、File4に対応する。
【0073】
このような仮想的なフォルダ構造をアプリケーション上構築することにより、例えば、ファイル運用規定等によりファイルシステム上のディレクトリ構造が決定される場合でも、ユーザにファイルシステム上でファイル操作を行わせることなく、ユーザ所望のフォルダを作成させてコンテンツファイル210を分類して管理させることができる。
【0074】
なお、ファイル運用規定として、例えば、DCF(Design rule for Camera File system)規格を挙げることができる。DCF規格はデジタルカメラのファイルの格納方法として制定されたものであり、DCF規格に対応する機器間で画像ファイルを相互に利用できるようにしたものである。DCF規格では図5に示すようなディレクトリ構造によりコンテンツファイル210が記録媒体200に記録されるようになっている。標準的なDCF規格では、ルートディレクトリ(ROOT)の直下にDCIMというディレクトリ名を有するDCFイメージルートディレクトリが設けられる。
【0075】
そして、DCFイメージルートディレクトリの配下には静止画データのファイルを格納するためのDCFディレクトリが設けられる。このDCFディレクトリのディレクトリ名は、8文字であり、第1文字目から第3文字目は100から999のディレクトリ番号で、それに続く5文字は半角英数大文字のみ使用された自由文字と呼ばれる。ディレクトリ番号は互いに重複しないように付与されなければならないが、欠番は生じても許容される。
【0076】
各DCFディレクトリ内には静止画データのファイルが格納される。このファイル名は、拡張子を除いて8文字であり、第1文字目から第4文字目は半角英数大文字のみ使用された自由文字であり、続く4文字は0001から9999のファイル番号である。ファイル番号は互いに重複しないように付与されなければならないが、欠番は生じても許容される。また、静止画データとして利用されるJPEG圧縮形式の場合、拡張子は「.JPG」となる。このようにDCF規格に従えば、各静止画を示すコンテンツファイル210は何れかのディレクトリに属することになる。
【0077】
次に、インデックスファイル220の構成を説明する。インデックスファイル220は管理対象となるファイルの種類に応じてその構成も異なるが、管理対象となるファイルのファイルフォーマットと同様の構成にすることが望ましい。
【0078】
まず、インデックスファイル220の構成の前提として、管理対象ファイルとしてのコンテンツファイル210の構成を、図6を参照して説明する。本実施の形態では、コンテンツファイル210のファイルフォーマットとしてQuickTimeファイルフォーマットを適用した場合について説明する。なお、以下において、QuickTimeファイルフォーマットに従って記録されたファイルをQTムービーファイルという。
【0079】
図6にQuickTimeファイルフォーマットにより記録されたコンテンツファイル210の構成を示す。QuickTimeファイルフォーマットは、マルチメディアデータを扱うためのファイルフォーマットであり、アトム(atom)と呼ばれるデータユニットを基準として構成される。QuickTimeファイルフォーマットでは、ビデオデータおよびオーディオデータの実データはムービーデータアトム(タイプ名:'mdat')400と呼ばれるデータユニットに保持され、このムービーデータアトム400の再生に必要な情報はムービーアトム(タイプ名:'moov')300と呼ばれるデータユニットに保持されるようになっている。
【0080】
ムービーアトム300には、ムービーデータアトム400の再生に必要な情報が、階層構造によりムービーヘッダアトム(movie header atom)310、ムービークリッピングアトム(movie clipping atom)320、ユーザ定義データアトム330、1つ以上のトラックアトム340等に割り当てられる。
【0081】
ムービーヘッダアトム310は、QTムービーファイル全体に関する情報を収容する。例えば、ムービー全体の期間や時間スケール、作成日等を項目として含む。ムービークリッピングアトム320は、クリッピング領域を指定する。ユーザ定義データアトム330は、ユーザにより定義された任意の情報を含む。トラックアトム340は、サウンド、ビデオ、テキストといった異なるタイプのデータをそれぞれ別のトラックに格納する。
【0082】
トラックアトム340にはトラック全体に関する情報(例えば、ビデオのピクセル数、サウンドの音量、作成日等)を保持するトラックヘッダアトム(track header atom)341、トラックのクリッピング領域を指定するトラッククリッピングアトム(track clipping atom)342、トラックマットアトム(track matte atom)343、エディットアトム(edit atom)344、メディアアトム(media atom)345が設けられ、ムービーデータアトム400の個々のデータに関する情報が記述される。
【0083】
例えば、メディアアトム345は、そのトラックで実際に用いられる実データに関する情報を格納する。すなわち、メディアアトム345は、メディア全体に関する情報、メディアデータの取扱いに関する情報、メディアの構成に関する情報等を格納する。実データはサンプル(sample)と呼ばれる最小単位に分かれており、このサンプルを任意の個数分集めたものがチャンク(chunk)と呼ばれる。メディアアトム345では、サンプルのサイズや、チャンクの先頭格納場所、各サンプルの表示時間等が格納される。
【0084】
ムービーデータアトム400に格納されるビデオデータやオーディオデータの実データは、圧縮符号化が施されていないリニアデータであってもよいし、所定の圧縮符号化方式により圧縮符号化されたものであってもよい。ビデオデータ(画像データ)については、MPEG2 Video、Motion JPEG、Motion JPEG2000、MPEG4、AVC(Advanced Video Coding:MPEG4-part10)等の規定に従う圧縮符号化方式によって符号化された画像データを格納することができる。オーディオデータについては、例えば、MPEG1 Audio Layer2、Dolby AC3(Audio Code number 3)、ATRAC(Advanced TRansform Acoustic Coding)等の規定に従う圧縮符号化方式によって符号化されたオーディオデータを格納することができる。ビデオデータおよびオーディオデータの符号化方式に特に限定があるものではない。
【0085】
また、ムービーデータアトム400にはテキストデータやMIDI(Musical Instrument Digital Interface)等による実データを割り当てることもでき、この場合は、このムービーデータアトム400の構成に対応してムービーアトム300にはテキストトラック、MIDIトラックが設けられる。
【0086】
図7に上記QTムービーファイルに対応するインデックスファイル220の構成を示す。図7に示すように、インデックスファイル220は、QTムービーファイルのムービーアトム300に対応するインデックスアトム500と、ムービーデータアトム400に対応するインデックスデータアトム600とを備えている。
【0087】
インデックスアトム500には、インデックスデータアトム600に割り当てられる実データを管理するための情報等がチャンクにより割り当てられる。これに対して、インデックスデータアトム600には、記録媒体200に記録された管理対象の各コンテンツファイル210の管理情報等が割り当てられる。管理情報はコンテンツファイル210の属性や内容を示す情報であり、インデックスファイル220においてコンテンツファイル210を管理するために用いられる情報である。このような管理情報として、例えば、プロパティ、テキスト、サムネイル画像、イントロ等が挙げられる。
【0088】
インデックスデータアトム600では、管理対象ファイルとして登録された各コンテンツファイル210をエントリとして取り扱う。各エントリ610、620には、そのエントリに対応するコンテンツファイル210がQTムービーファイルである場合、コンテンツファイル210の管理情報として、プロパティ700、テキスト611、サムネイル画像612、イントロ613の各データがチャンクに設定されて割り当てられる。ここで、プロパティ700はインデックスデータアトム600の必須の項目となるが、テキスト611、サムネイル画像612、イントロ613は管理対象となるコンテンツファイル210の種類によって設けられない場合もある。例えば、音声情報を伴わない静止画像ファイルが管理対象のコンテンツファイル210である場合、イントロ613は設けられない。
【0089】
プロパティ700は、管理対象のコンテンツファイル210の属性を示すデータであり、管理対象のコンテンツファイル210に設定されたバイナリーデータによる管理情報等がエントリを管理する情報とともに割り当てられる。
【0090】
テキスト611は、各管理対象のコンテンツファイル210に係るタイトルの文字列を示すデータ等により構成される。
【0091】
サムネイル画像612は、各管理対象のコンテンツファイル210の内容を示す静止画像により構成される。例えば、コンテンツファイル210が動画データを扱う場合、その先頭画像をサムネイル画像として割り当てることもできるし、ユーザの選択によりサムネイル画像に割り当てる画像を設定するようにしてもよい。
【0092】
イントロ613は、各管理対象のコンテンツファイル210の内容を示すオーディオデータである。イントロ613に割り当てるデータとして、例えば、対応するコンテンツファイル210の再生開始より数秒間(例えば5秒間)のオーディオデータを割り当てることもできるし、ユーザの選択によりイントロに割り当てるオーディオデータを設定するようにしてもよい。
【0093】
次に、インデックスアトム500を説明する。インデックスアトム500は、ムービーヘッダアトム510と、インデックスデータアトム600のプロパティ700に対応するプロパティトラック520、テキスト611に対応するテキストトラック530、サムネイル画像612に対応するサムネイルトラック540、イントロ613に対応するイントロトラック550が設けられる。
【0094】
ムービーヘッダアトム510には、QTムービーファイルの場合と同様に、このインデックスファイル220全体に関する情報が割り当てられ、プロパティトラック520、テキストトラック530、サムネイルトラック540、イントロトラック550を統括する。プロパティトラック520、テキストトラック530、サムネイルトラック540、イントロトラック550には、それぞれ対応する実データの位置情報がコンテンツファイル210のエントリ順にテーブル形式により割り当てられる。
【0095】
図8に示すように、インデックスデータアトム600には、各エントリに対して、コンテンツファイル210の管理情報の実データが割り当てられている。例えば、エントリ番号2(エントリ#2)のエントリには管理情報の実データとしてプロパティP、トラックT、サムネイル画像が割り当てられている。これに対して、インデックスデータアトム50において、プロパティトラック520、テキストトラック530、サムネイルトラック540、イントロトラック550には、インデックスデータアトム600に各エントリ毎に割り当てられるプロパティ700、トラック611、サムネイル画像612、イントロ613の実データの位置情報が割り当てられている。
【0096】
図9(a)〜(d)にプロパティトラック520、テキストトラック530、サムネイルトラック540、イントロトラック550に割り当てられる実データの位置情報の例を示す。それぞれ対応するプロパティ700、トラック611、サムネイル画像612、イントロ613の各データ(チャンク)の開始バイトの相対位置(RBP:Relative Byte Number)、データ長(Length)がフィールド名毎に割り当てられるようになっている。
【0097】
図10に示すように、プロパティ700は、プロパティエントリヘッダ(Prpperty Entry Header)710、基本プロパティデータ(Basic Property Data)740、プロパティ拡張データ(Property Extension Data)750を備える。各データはチャンクにより設定される。プロパティエントリヘッダ710は、階層構造により管理対象ファイルを管理するために必要な情報が割り当てられるものである。基本プロパティデータ740は、コンテンツファイル210のファイルフォーマットに関する情報やファイルの作成日時、ファイルの更新日時、ファイル識別子等、コンテンツファイル210の基本的な属性情報が割り当てられるものである。プロパティ拡張データ750は、基本プロパティデータ740の拡張データが割り当てられる。
【0098】
図11にプロパティエントリヘッダ710の構成を示す。図11に示すように、プロパティエントリヘッダ710は、エントリ番号(Entry Number)711、親エントリ番号(Parent Entry Number)712、プロパティエントリフラグ(Property Entry Flags)720、プレイオーダー(Play Order)713、データサイズ(Entry Data Size)714、ネクスト拡張エントリ(Next-extends-entry)715等を備える。
【0099】
エントリ番号711は、エントリの識別データであり、固有のコードが与えられる。エントリ番号711として、インデックスファイル220に管理対象のコンテンツファイル210(又はフォルダ)がインデックスファイル220に登録(エントリ)された順に0から歩進する番号を割り振ることができる。このエントリ番号711により、管理されているコンテンツファイル210が特定される。なお、エントリ番号をエントリされた順に歩進する番号を割り当てるように定義した場合、このエントリ番号領域を省略することもできる。親エントリ番号712は、各エントリが属するエントリのエントリ番号を示す。
【0100】
プロパティエントリフラグ720によりエントリの属性が設定される。プロパティエントリフラグ720の構成例を図12に示す。図12に示すように、この構成例では、エントリの属性を示すためのフラグとして、エントリがオリジナルかお気に入りかを示すフラグ(Original/Favorite)721、エントリがフォルダかファイルかを示すフラグ(File /Folder)722、エントリの拡張領域であることを示すフラグ(Extends)723、エントリが有効か無効かを示すフラグ(Valid)724、エントリに登録されたファイルが別のファイルを参照していることを示すフラグ(Reference)725、エントリに登録されたファイルが分割された子ファイルであることを示すフラグ(Child File)726、エントリに登録されたファイルが分割された子ファイルの親ファイルであることを示すフラグ(Parent File)727、それぞれこのプロパティのエントリに対応するテキスト、サムネイル画像、イントロが拡張領域を有しているか否かを示すフラグ728、729、731等が設けられている。
【0101】
これらのうち、1ビット目に割り当てられるエントリがファイルかフォルダを示すフラグ722は、そのエントリがファイルに係るエントリか、エントリをまとめるフォルダに係るエントリ(Folder)かを示すフラグである。フォルダに係るエントリはユーザの設定等により設けることができる。
【0102】
エントリが有効か無効かを示すフラグ724は、そのエントリが有効か無効を示す。本実施の形態では、例えば、1つのコンテンツファイル210を削除した場合、このフラグ724を切り替えて、対応するコンテンツファイル210が無効であることを示すことにより、インデックスファイル220の内容を更新するようになっている。
【0103】
基本プロパティデータ740は、図13に示すように、対応する管理対象のコンテンツファイル210について、ファイルフォーマットの情報(Format Brand)741、復号化(デコード)に関する情報(Media Profile)742、コンテンツファイル210の内容に関するフラグであるコンテンツステータスフラグ(Contents Status Flag)743、ファイル作成日時(Creation Time)744、ファイル更新日時(Modification Time)745、デュレーション(Duration)746、ファイル識別子(Binary File Identifier)747、参照ファイル数(Referred Counter)748により構成される。
【0104】
この基本プロパティデータ740のうち、ファイル作成日時745には、そのコンテンツファイル210が作成された日時を示す情報が割り当てられる。ファイル更新日時746には、そのコンテンツファイル210が編集される等により更新された日時を示す情報が割り当てられる。この基本プロパティデータ740におけるファイル作成日時745およびファイル更新日時746にそれぞれ割り当てられる情報に基づいて、それぞれ不整合検出情報を生成することができる。
【0105】
また、コンテンツステータスフラグ743には、そのコンテンツファイル210の管理情報にタイトル、サムネイル画像、イントロのチャンクが存在するか否かを示すフラグや、コンテンツの種類(動画、静止画、オーディオ等の種類)を示す情報が割り当てられる。
【0106】
また、ファイル識別子748には、そのコンテンツファイル210の所在が記述されて構成される。ファイル識別子748を参照することにより、管理対象のコンテンツファイル210がファイルシステム上において所属するディレクトリを特定することができる。
【0107】
なお、この実施の形態では図14に示すように、ファイル識別子748には記録媒体200に記録された管理対象のコンテンツファイル210のファイル名又は対応するフォルダのフォルダ名が割り当てられる。このファイル識別子748に割り当てられるコンテンツファイル210のファイル名に基づいて、不整合検出情報の一つを生成することができる。
【0108】
なお、ファイルの所在をこのファイル識別子748の領域により表し得ない場合、このファイル識別子748に代えて、インデックスデータアトム600のプロパティ700に含まれるプロパティ拡張データ750(図10参照)に記載される。プロパティ拡張データ750にコンテンツファイル210の所在が記載される場合、URL(Uniform Resource Locator)により表現される。
【0109】
以上のインデックスファイル220において、インデックスデータアトム600のプロパティ700に含まれるコンテンツファイル210のエントリ番号711、プロパティエントリフラグ720、親エントリ番号712、ファイル識別子748又はプロパティ拡張データ750に記載されたURLにより、コンテンツファイル210が図14(a)、(b)に示すような仮想的なフォルダ構造が構築される。
【0110】
なお、図14(a)は、図4(b)で表すフォルダ構造における各エントリのエントリ番号711、プロパティエントリフラグ720のうちエントリがファイルかフォルダを示すフラグ722、親エントリ番号712、ファイル識別子748又はURLを示している。
【0111】
図14(a)に示す例では、インデックスファイル220にエントリ番号「0」から「7」のエントリが含まれている。これらのうち、フラグ722により示されるように、エントリ番号「0」、「3」、「4」、「8」に係るエントリは、フォルダに係るエントリ(フォルダエントリ)である。これに対して、エントリ番号「1」、「2」、「5」、「6」、「7」はファイルに係るエントリ(ファイルエントリ)である。
【0112】
各エントリは、親エントリ番号712により、それぞれのエントリが属するエントリが示されている。また、ファイル識別子748により、各ファイルエントリと記録媒体200に記録されているコンテンツファイル210がファイル名により対応付けられている。
【0113】
上記のインデックスファイル220の構成により、図14(b)に示すようなフォルダ構造が設定される。すなわち、図14(b)では、インデックスファイル220により、フォルダエントリE−0の下層にフォルダエントリE−3とファイルエントリE−1、E−2とが設けられ、フォルダエントリE−3の下層にフォルダエントリE−4とファイルエントリE−5とが設けられ、フォルダエントリE−4の下層にファイルエントリE−6、E−7が設けられた仮想的なフォルダ構造がファイルシステムにおけるディレクトリ構造とは独立して設定されている。
【0114】
次に、図15に示す不整合検出情報について説明する。不整合検出情報は、インデックスファイル220の内容と、記録媒体200に実際に記録されているコンテンツファイル210の記録状態との間の不整合の有無を検出するために用いられる情報である。この不整合検出情報は、例えば、インデックスファイル220のヘッダ部に設けることができる。上述したQTムービーファイルに対応するインデックスファイル220の構成例においては、ムービーヘッダアトム510に不整合検出情報を割り当てることができる。
【0115】
図15に本発明の実施の形態における不整合検出情報800の構成の一例を示す。コンテンツファイル210が所定のファイルシステムに従ってディレクトリ構造により記録媒体200に記録されている場合、不整合検出情報800もファイルシステム上の各ディレクトリ毎に設けられる。
【0116】
不整合検出情報800として、図15には、各ディレクトリに設けられたコンテンツファイル210の全ファイル数を示す「ファイル数」に関する不整合検出情報810、各ディレクトリに設けられたコンテンツファイル210の全ファイルの更新日時から生成されるファイルの更新日時に関する不整合検出情報を示す「更新日時のチェックサム」820、各ディレクトリに設けられたコンテンツファイル210の全ファイル名から生成されるファイル名に関する不整合検出情報を示す「ファイル名のチェックサム」830の3種類を具備する例を示した。
【0117】
なお、図15に示す不整合検出情報800は、図4(b)に対応するもので、図4(b)に示すファイルシステム上のディレクトリDirA、ディレクトリDirAの下に設けられるディレクトリDirB(DirA/DirB)およびディレクトリDirC(DirA/DirC)毎に「ファイル数」に関する不整合検出情報(以下、「ファイル数」とする)810、「更新日時のチェックサム」820、「ファイル名のチェックサム」830が設けられている。
【0118】
上記の各不整合検出情報810、820、830は、ユーザがファイルシステム上において直接ファイル操作を行うことによりインデックスファイル220の内容と記録媒体200におけるコンテンツファイル210の記録状態との間に不整合が生じる場合を想定して設けられたものである。すなわち、「ファイル数」810は、ユーザがコンテンツファイル210を直接ファイルシステム上において追加、削除した場合に生じる不整合を有効に検出させる。また、「更新日時のチェックサム」820は、ユーザがファイルシステム上でコンテンツファイル210の上書きおよび編集を行った場合、また、コンテンツファイル210の追加、削除を行った場合に生じる不整合を有効に検出される。また、「ファイル名のチェックサム」830は、ユーザがコンテンツファイル210のファイル名を直接ファイルシステム上で変更した場合、およびファイルの追加、削除した場合に生じる不整合を有効に検出させる。
【0119】
なお、不整合検出情報800の種類は上記態様に限定されるものではなく、必要に応じて、1種類または2種類の不整合検出情報のみを保持するものとしてもよいし、他の種類の不整合検出情報を保持するものとしてもよい。
【0120】
また、上記以外の不整合検出情報として、例えば、各ディレクトリに含まれるファイルのうち最も新しく作成されたファイルの作成日時に関する情報や各ディレクトリにおいて最後に更新されたファイルの更新日時に関する情報等が挙げられる。これらは、ファイルの作成日時あるいはファイルの更新日時を示すデータそのものであってもよいし、各データから求められるチェックサムであってもよい。これにより、管理対象のコンテンツファイル210の追加、編集によりインデックスファイル220の内容と記録媒体200におけるコンテンツファイル210の記録状態との間に不整合が生じた場合、その不整合を高速に検出させることができる。
【0121】
各不整合検出情報810、820、830は、予め不整合生成部162(図2参照)により生成されて、インデックスファイル220の例えばヘッダ部に保持される。そして、コンテンツファイル210の追加、削除、編集が行われたとき、ファイル管理装置160のソフトウェア170を通して、インデックスファイル220の内容を更新するとともに、追加、削除、編集されたコンテンツファイル210の管理情報に対応して不整合検出情報800も更新されるようになっている。
【0122】
次に、不整合検出情報800の生成方法について説明する。
【0123】
不整合検出情報800のうち、「ファイル数」810は、ファイルシステム上に存在する各ディレクトリに含まれる全てのファイルの「数」を示す情報である。例えば、図4(b)に示す場合、ファイルシステムにおけるディレクトリDirAには、その下層にディレクトリDirBとディレクトリDirCを有するが、コンテンツファイル210は含まない。よって、図15に示すように、不整合検出情報においてディレクトリDirAの「ファイル数」810は「0」になる。同様に、ディレクトリDirBには3つのファイルFile1、File2、File3が含まれるので、ディレクトリDirA/DirBの「ファイル数」810は「3」になる。同様に、ディレクトリDirA/DirCには2つのファイルFile4、File5が含まれるので、ディレクトリDirA/DirCの「ファイル数」810は「2」となる。
【0124】
「ファイル数」810は、記録媒体200にコンテンツファイル210が追加、削除されたときに更新される。すなわち、記録媒体200に記録されるコンテンツファイル210が追加されたとき、該当するディレクトリのファイル数が「1」増加される。記録媒体200から管理対象のコンテンツファイル210が削除されたとき、そのコンテンツファイル210が削除されたディレクトリのファイル数が「1」減らされる。あるコンテンツファイル210が編集等されて更新された場合、記録媒体200に記録されているファイル数自体には変化はないので、不整合検出情報800内の「ファイル数」810も変更されない。
【0125】
次に、「更新日時のチェックサム」820について説明する。「更新日時のチェックサム」820は、ファイルシステム上に存在する各ディレクトリ毎にそのディレクトリに含まれる全てのファイルが更新された日時に基づいて生成される。具体的には、図16に基づいて説明する。
【0126】
図16に示すように、ファイルシステム上のあるディレクトリに含まれるファイル数がMである場合、そのディレクトリに含まれるコンテンツファイル210をファイルF、ファイルF、・・・、ファイルFとする。各コンテンツファイル210の更新日時のデータのバイト長がKのとき、例えば、ファイルFの更新日時のデータのKバイトのバイト列をTM1、TM2、・・・TMKと表すことができる。
【0127】
例えば、記録媒体200のファイルフォーマットがUDF(Universal Disk Format)の場合、コンテンツファイル210の更新日時のデータは、図17に示すように、「タイムゾーン」、「年」、「月」、「日」、「時」、「分」、「秒」、「100分の1秒」、「100マイクロ秒」、「マイクロ秒」から構成される。各項目において、「タイムゾーン」および「年」には2バイト割り当てられ、その他の項目については1バイトずつ割り当てられており、UDFファイルの更新日時のデータのバイト列(バイト長=12)はTi1、Ti2、・・・Ti12と表せる。
【0128】
そして、対象となるディレクトリに含まれる各コンテンツファイル210毎に、この更新日時のデータのバイト列から生成されるビット列を求める。すなわち、図16に示すように、ファイルMについてみれば、ファイルMの更新日時のデータのバイト列に含まれる各データを構成する値の排他的論理和を求めることにより生成されるビット列をCTとする。例えば、図16に示すUDFファイルについてみれば、Ti1とTi2と・・・Ti12との排他的論理和を求めることにより、1つのファイルについてファイルの更新日時から生成される1バイトのビット列CTが生成される。
【0129】
このように求められた各ファイルの更新日時のビット列について、さらに、全ファイルの排他的論理和を求めることにより、対象ディレクトリについての更新日時のチェックサムCTが生成される(図16参照)。
【0130】
「更新日時のチェックサム」820は、記録媒体200に記録されるコンテンツファイル210が追加、削除、更新されたとき、同時にその値も更新される。
【0131】
記録媒体200にコンテンツファイル210が追加されたとき、このコンテンツファイル210を含むディレクトリの「更新日時のチェックサム」820を、元のチェックサムを構成するビット列と、追加されたコンテンツファイル210の更新日時から生成されるビット列の排他的論理和とする。
【0132】
記録媒体200からコンテンツファイル210が削除されたとき、このコンテンツファイル210が削除されたディレクトリの「更新日時のチェックサム」820を、元のチェックサムを構成するビット列と削除されたファイルの更新日時から生成されるビット列の排他的論理和とする。
【0133】
記録媒体200に記録されているコンテンツファイル210の内容が更新された場合、このコンテンツファイル210を含むディレクトリの「更新日時のチェックサム」820は、元のチェックサムを構成するビット列と、内容が更新されたコンテンツファイル210の更新前の当該ファイル210の更新日時から生成されるビット列と、該当ファイル210の更新後の当該ファイル210の更新日時から生成されるビット列との排他的論理和を新たな「更新日時のチェックサム」820とする。
【0134】
次に、図18を参照して「ファイル名のチェックサム」830について説明する。「ファイル名のチェックサム」830は、ファイルシステム上に存在する各ディレクトリ毎にそのディレクトリに含まれる管理対象のコンテンツファイル210のファイル名に基づいて生成される。
【0135】
ファイルシステム上のあるディレクトリに含まれる管理対象のコンテンツファイル210のファイル数がMである場合、そのディレクトリに含まれるコンテンツファイル210をファイルF、ファイルF、・・・、ファイルFとする。各コンテンツファイル210のファイル名を示すデータのバイト長がKのとき、例えば、コンテンツファイルFのファイル名を示すデータのバイト列をNM1、NM2、・・・NMKと表すことができる。各コンテンツファイル210毎に、このファイル名を示すデータのバイト列から生成されるビット列を求める。すなわち、図18に示すように、ファイルFについてみれば、ファイルFのファイル名を示すデータのバイト列に含まれる各データを構成する値の排他的論理和を求めることにより生成されるビット列をCNとする。
【0136】
このように生成された各コンテンツファイル210毎のビット列の排他的論理和をさらに求めることにより、対象ディレクトリについてのファイル名のチェックサムCN840が生成される。
【0137】
この「ファイル名のチェックサム」830は、記録媒体200にコンテンツファイル210が追加、削除、更新されたとき、同時にその値も更新される。
【0138】
記録媒体200に管理対象のコンテンツファイル210が追加されたとき、そのコンテンツファイル210を含むディレクトリの「ファイル名のチェックサム」830を、元のチェックサムを構成するビット列と、追加されたコンテンツファイル210のファイル名から生成されるビット列との排他的論理和を新たな「ファイル名のチェックサム」830とする。
【0139】
記録媒体200から管理対象のコンテンツファイル210が削除されたとき、そのコンテンツファイル210が削除されたディレクトリの「ファイル名のチェックサム」830を、元のチェックサムを構成するビット列と削除されたコンテンツファイル210のファイル名から生成されるビット列との排他的論理和とする。
【0140】
記録媒体200に記録されているコンテンツファイル210の内容が更新された場合、更新されたコンテンツファイル210の名前の変更はないので「ファイル名のチェックサム」830の変更もない。すなわち、そのコンテンツファイル210を含むディレクトリの「ファイル名のチェックサム」830は、元のチェックサムを構成するビット列と同一である。
【0141】
なお、記録媒体200にディレクトリが新たに追加された場合、不整合検出情報800には新たなディレクトリに該当する項目が追加される。新たに追加されたディレクトリについて「ファイル数」810、「更新日時のチェックサム」820、「ファイル名のチェックサム」830のいずれも「0」に設定される。
【0142】
これに対して、記録媒体200からあるディレクトリが削除された場合、不整合検出情報800において削除されたディレクトリに対応する項目が削除される。また、ディレクトリ名が変更された場合、不整合検出情報800において該当するディレクトリ名が変更される。
【0143】
次に本発明の実施の形態におけるファイル管理装置160の動作について図面を参照して説明する。
【0144】
図19に本発明の実施の形態におけるファイル管理装置160の不整合検出処理の手順を示す。不整合検出処理が開始されると、まず、ファイルシステムにおけるディレクトリのうち、不整合チェックが行われていないディレクトリの有無が検出される(ステップS911)。
【0145】
なお、不整合チェックとは、以下に述べる手順(ステップS912〜S922)に従い、チェック対象となるディレクトリに含まれるコンテンツファイル210の記録状態とインデックスファイル220の内容との間の不整合の有無を検出することをいう。
【0146】
不整合チェックが行われていないディレクトリがある場合、そのうちの1つのディレクトリが選択される(ステップS912)。
【0147】
そして、インデックスファイル220に含まれる不整合検出情報800の中にチェック対象となるディレクトリの項目がある場合(ステップS913:Y)、記録状態検出部163により記録媒体200のファイルシステムからチェック対象のディレクトリに含まれるコンテンツファイル210の全ファイルの数が取得される(ステップS914)。
【0148】
不整合検出情報800の中に、該当するディレクトリの項目がなければ(ステップS913:N)、インデックスファイル220ではこのディレクトリに含まれるコンテンツファイル210を管理対象ファイルとしていないことを示すため、不整合検出部164によりインデックスファイル220の内容とファイルの記録状態との間に不整合ありと判断されて不整合検出処理が終了する(ステップS915)。
【0149】
一方、ファイル数が一致する場合(ステップS916:Y)、次に、記録状態検出部163によりファイルシステムから対象ディレクトリに含まれる全ファイルの更新日時が取得され、不整合検出部164において上述した方法で更新日時に関するチェックサムが計算される(ステップS917)。
【0150】
そして、不整合検出部164において、得られたチェックサムと不整合検出情報800に含まれる該当ディレクトリの「更新日時のチェックサム」820とが比較されて、両者が一致しなければ(ステップS918:N)、インデックスファイル220の内容とコンテンツファイル210の記録状態との間に不整合ありと判断されて不整合検出処理が終了する(ステップS915)。
【0151】
一方、ファイルの更新日時について両チェックサムが一致する場合(ステップS918:Y)、記録状態検出部163によりファイルシステムから対象ディレクトリに含まれる全コンテンツファイル210のファイル名が取得される(ステップS919)。
【0152】
そして、不整合検出部164において、記録状態検出部163により取得されたファイル名から上述した方法によりチェックサムが計算される。そして、この得られたチェックサムと、不整合検出情報800に含まれる該当ディレクトリの「ファイル名のチェックサム」830とが比較されて、両者が一致しなければ(ステップS921:N)、インデックスファイル220の内容とコンテンツファイル210の記録状態との間に不整合ありと判断されて処理が終了する(ステップS915)。
【0153】
一方、ファイル名についての両チェックサムが一致する場合(ステップS921:Y)、ステップS911に戻り全ディレクトリについて、上述した不整合検出処理が実行されるまで処理が継続され、全ディレクトリについて不整合検出処理が終了した場合(ステップS911:Y)、不整合なし(ステップS922)と判断されて処理が終了する。
【0154】
なお、インデックスファイル220の内容とコンテンツファイル210の記録状態との間に不整合が発見された場合、不整合があると特定されたディレクトリおよびそのディレクトリに属するファイルに対して、インデックスファイル220の内容がコンテンツファイル210の記録状態と整合するようにインデックスファイル220の該当箇所を修正し、該当するディレクトリの不整合検出情報800も修正する。この場合、インデックスファイル220および不整合検出情報800の修正後、不整合チェックがされていないディレクトリについて、不整合検出処理を再開するようにしてもよい。また、不整合を有するディレクトリを検出した後、処理を終了せずに、他の不整合チェックがされていないディレクトリについても不整合検出処理を行い、不整合を有するディレクトリを全て特定するようにしてもよい。
【0155】
このように、本発明の実施の形態によれば、インデックスファイル220の内容と記録媒体200におけるコンテンツファイル210の記録状態との間の不整合を検出する際に、インデックスファイル220に含まれる各コンテンツファイル210の管理情報と対応するコンテンツファイル210とを一つ一つ照合させることなく、不整合検出情報800に基づいて不整合を高速に検出することができる。
【0156】
また、本実施の形態では、不整合検出情報800をコンテンツファイル210が属するディレクトリ毎に設けているので、ディレクトリ毎に不整合検出情報に基づいて当該不整合を検出させることができる。ディレクトリ毎に不整合チェックを行うので、コンテンツファイル210のファイル数が多い場合でも、ファイル数の取得、作成日時のチェックサム、更新日時のチェックサムを計算に係る処理を高速に行うことができる。
【0157】
また、不整合検出情報800は、ファイルシステム上の各ディレクトリに含まれるコンテンツファイル210の「ファイル数」810を含むので、コンテンツファイル210の追加、削除によりインデックスファイル220の内容と記録媒体200に記録されているコンテンツファイル210の記録状態との間に不整合が生じた場合でもこの不整合を高速に検出させることができる。また、インデックスファイル220の内容に不整合が生じる可能性としてはファイルの追加、削除、ファイル名の変更に伴う場合が多いので、「ファイル数」810に基づく不整合の有無の検出を他の不整合検出情報よりも先に行うことで、より高速に不整合の有無を検出することができる。
【0158】
また、不整合検出情報800は、ファイルシステム上の各ディレクトリに含まれるコンテンツファイル210の「更新日時のチェックサム」820を含むので、記録媒体200にコンテンツファイル210の追加、削除、上書き、編集等によりインデックスファイル220の内容と記録媒体200に記録されているコンテンツファイル210の記録状態との間に不整合が生じてもこれを高速に検出することができる。
【0159】
また、不整合検出情報800は、ファイルシステム上の各ディレクトリに含まれるコンテンツファイル210の「ファイル名のチェックサム」830を含むので、記録媒体200にコンテンツファイル210の追加、削除、ファイル名の変更によりインデックスファイル220の内容と記録媒体200に記録されているコンテンツファイル210の記録状態との間に不整合が生じてもこれを高速に検出することができる。
【0160】
また、本実施の形態のファイル管理装置160はコンテンツファイル210の管理情報から「ファイル数」810、「更新日時のチェックサム」820、「ファイル名のチェックサム」830等の不整合検出情報を生成する不整合検出情報生成部162を備えるので、不整合検出情報を生成することができるのは勿論、記録媒体200にコンテンツファイル210が追加、削除、ファイル名の変更等がされても、それに応じて不整合検出情報800を更新させることができる。
【0161】
また、不整合検出部164は、「ファイル数」810、「更新日時のチェックサム」820、「ファイル名のチェックサム」830の三種類の不整合検出情報800に基づいて、インデックスファイル220の内容と記録媒体200におけるコンテンツファイル210の記録状態との間の不整合を検出するので、検出結果の精度を高めることができる。
【0162】
なお、本発明は上記実施の形態に限定されるものではなく、本発明の趣旨を逸脱しない範囲で適宜変更可能なのは勿論である。例えば、本実施の形態では、インデックスファイル220に基づいてコンテンツファイル210を管理する際に、コンテンツファイル210を仮想的なフォルダ構造において管理する例について示したが、ファイルシステム上のディレクトリ構造に基づいてコンテンツファイル210を管理してもよいのは勿論であり、仮想的なフォルダ構造を特に設ける必要はない。
【0163】
また、本実施の形態において、ファイル管理装置160を映像記録装置100により記録媒体200に記録されたコンテンツファイル210を管理するものとしたが、これに限定されるものではない。本発明に係るファイル管理装置は、ファイルを記録媒体に記録する装置を備えるものであれば、どのような装置にも適用可能なものである。
【0164】
また、本実施の形態においては、コンテンツファイル210のファイルフォーマットの例としてQuickTimeファイルフォーマットを適用した例を説明したが、本発明のファイル管理装置により管理されるファイルのフォーマットはこれに限定されるものではない。また、本実施の形態においてファイル管理装置160はコンテンツファイル210のファイルフォーマットと同様の構成を持つインデックスファイル220を示したが、本発明に係るインデックスファイルの構成はこれに限定されるものではない。インデックスファイルは、管理するファイルの内容の一部を抜粋した管理情報を含むものであれば、適宜、構成を変更し得る。
【0165】
また、本実施の形態において、不整合検出処理が行われる際に、「ファイル数」810に基づく不整合の有無の検出(ステップS916)、「更新日時のチェックサム」820に基づく不整合の有無の検出(ステップS918)、「ファイル名のチェックサム」830に基づく不整合の有無の検出(ステップS921)の順に不整合の有無を検出するものとしたがこれに限定されるものではなく、適宜その順序を変更してもよいのは勿論である。
【0166】
また、本実施の形態において、記録状態検出部163により検出したコンテンツファイル210の記録状態に基づき、不整合検出部164においてその記録状態から「更新日時のチェックサム」、「ファイル名のチェックサム」を計算するようにしたが、これに限定されるものではない。例えば、記録状態検出部163において、コンテンツファイル210の記録状態を検出するとともに、不整合検出情報800と対比することが可能になるようにコンテンツファイルの記録状態からチェックサム等を生成するようにしてもよい。
【0167】
なお、本発明の実施の形態は本発明を具現化するための一例を示したものであり、以下に示すように特許請求の範囲における発明特定事項とそれぞれ対応家計を有するが、これに限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変形を施すことができる。
【0168】
すなわち、請求項1または請求項12においてファイル管理装置は、例えばファイル管理装置160に対応する。また、記録媒体は、例えば、記録媒体200に対応し、ファイルは、例えば、コンテンツファイル210に対応し、インデックスファイルは、例えば、インデックスファイル220に対応する。さらに、管理状態情報は、例えば、不整合検出情報800に対応し、管理状態情報保持手段は、例えば、不整合検出情報保持部230に対応し、記録状態検出手段は、例えば、記録状態検出部163に対応し、不整合検出手段は、例えば、不整合検出部164に対応する。
【0169】
また、請求項2においてディレクトリ構造は、例えば、図4(b)に示すディレクトリ構造または図5に示すディレクトリ構造に対応する。
【0170】
また、請求項3において、ファイルの数に関する情報は、例えば、「ファイル数」810に対応する。
【0171】
また、請求項4において、ファイル名に関する情報は、例えば、「ファイル名のチェックサム」830に対応する。
【0172】
また、請求項6において、ファイルの更新日時に関する情報は、例えば、「更新日時のチェックサム」820に対応する。
【0173】
また、請求項11において、不整合検出情報生成手段は、例えば、不整合検出情報生成部162に対応する。
【0174】
また、請求項15または16において、記録媒体は、例えば記録媒体200に対応し、ファイルは、例えば、コンテンツファイル210に対応し、インデックスファイルは、例えば、インデックスファイル220に対応する。また、管理状態情報は、例えば、不整合検出情報に対応し、管理状態情報を予め保持しておく手順は、例えば、不整合検出情報保持部230に不整合検出情報生成部162により生成した不整合検出情報800を予め保持させる手順に対応し、記録媒体におけるファイルの記録状態を検出する手順は、例えば、ステップS914においてコンテンツファイル210のファイル数をファイルシステムから取得する手順や、ステップS917において更新日時のチェックサムを計算するために各コンテンツファイル21の更新日時をファイルシステムから取得する手順や、ステップS919においてファイル名のチェックサムを計算するために各コンテンツファイル210のファイル名をファイルシステムから取得する手順に対応する。また、不整合の有無を検出する手順は、例えば、ステップS913において不整合検出情報800にチェック対象のディレクトリの項目の有無を検証する手順や、ステップS916においてファイル数の一致を検証する手順や、ステップS918において更新日時のチェックサムの一致を検証する手順や、ステップS921においてファイル名のチェックサムの一致を検証する手順に対応する。
【0175】
また、請求項17において、記録媒体は、例えば、記録媒体200に対応し、ファイルは、例えば、コンテンツファイル210に対応し、インデックスファイルは、例えば、インデックスファイル220に対応し、管理状態情報は、例えば、不整合検出情報800に対応する。
【0176】
なお、本発明の実施の形態において説明した不整合検出処理に係る処理手順は、これら一連の手順を有する方法として捉えてもよく、また、これら一連の手順をコンピュータに実行させるためのプログラム乃至そのプログラムを記憶する記録媒体として捉えてもよい。
【図面の簡単な説明】
【0177】
【図1】本発明の実施の形態におけるファイル管理装置を適用した映像記録装置100の一例を示す図である。
【図2】本発明の実施尾形態におけるファイル管理装置160の機能構成例を示す図である。
【図3】映像記録装置100の動作に係るソフトウェアの構成例を示す図である。
【図4】ファイル管理装置160により管理されるコンテンツファイル210の管理構造の一例を示す図である。
【図5】コンテンツファイル210が記録媒体200に記録される際のディレクトリ構造の一例を示す図である。
【図6】コンテンツファイル210の構成の一例を示す図である。
【図7】インデックスファイル220の構成の一例を示す図である。
【図8】インデックス220におけるインデックスアトム500とインデックスデータアトム600の対応関係を示す図である。
【図9】インデックスアトム500に割り当てられるプロパティトラック520、テキストトラック530、サムネイルトラック540、イントロトラック550の構成例を示す図である。
【図10】インデックスデータアトム600に含まれるプロパティ700の構成例を示す図である。
【図11】プロパティ700に含まれるプロパティエントリヘッダ710の構成例を示す図である。
【図12】プロパティエントリヘッダ710に含まれるプロパティエントリフラグ720の構成例を示す図である。
【図13】プロパティ700に含まれる基本プロパティデータ740の構成例を示す図である。
【図14】ファイル管理装置160により管理されるコンテンツファイル210の管理構造の他の例を示す図である。
【図15】ファイル管理装置160により用いられる不整合検出情報800の構成例を示す図である。
【図16】不整合検出情報800のうち、「更新日時のチェックサム」820の生成方法の一例を説明する図である。
【図17】「更新日時のチェックサム」820の生成方法を説明する他の図である。
【図18】不整合検出情報800のうち、「ファイル名のチェックサム」830の生成方法の一例を示す図である。
【図19】ファイル管理装置160により実行される不整合検出処理の手順を示すフローである。
【符号の説明】
【0178】
100 映像記録装置
110 レンズ部
121 撮像素子
122 アナログ処理器
123 A/D変換器
124 デジタル処理器
125 タイミング生成器
126 カメラ制御部
131 ビデオ符号器
132 オーディオ符号器
133 ファイル生成器
134 ファイル復号器
135 ビデオ復号器
136 オーディオ復号器
137 メモリ
138 メモリコントローラ
139 システム制御部
141 エラー訂正器
142 データ変復調器
143 磁界変調ドライバ
144 磁界ヘッド
145 サーボ回路
146 モーター
147 光ピックアップ
150 表示操作部
160 ファイル管理装置
161 ファイル操作部
162 不整合検出情報生成部
163 記録状態検出部
164 不整合検出部
200 記録媒体
210 コンテンツファイル
220 インデックスファイル
230 不整合検出情報保持部
800 不整合検出情報
810 ファイル数
820 更新日時のチェックサム
830 ファイル名のチェックサム

【特許請求の範囲】
【請求項1】
記録媒体に記録されたファイルの管理情報を含むインデックスファイルに基づいて前記ファイルを管理するファイル管理装置において、
前記インデックスファイルにおける前記ファイルの管理状態を示す管理状態情報を保持する管理状態情報保持手段と、
前記記録媒体におけるファイルの記録状態を検出する記録状態検出手段と、
前記管理状態情報と前記記録状態検出手段により検出されたファイルの記録状態とに基づいて前記インデックスファイルにおける前記ファイルの管理状態と前記記録媒体におけるファイルの記録状態との間の不整合の有無を検出する不整合検出手段と、
を具備することを特徴とするファイル管理装置。
【請求項2】
前記管理状態情報保持手段は、ディレクトリ構造により記録媒体に記録されるファイルについて、各ディレクトリ毎にそのディレクトリに含まれるファイルの管理状態情報を保持することを特徴とする請求項1記載のファイル管理装置。
【請求項3】
前記管理状態情報は、前記ディレクトリに含まれるファイルの数に関する情報を含むことを特徴とする請求項2記載のファイル管理装置。
【請求項4】
前記管理状態情報は、前記ディレクトリに含まれるファイルの更新日時に関する情報を含むことを特徴とする請求項2記載のファイル管理装置。
【請求項5】
前記ファイルの更新日時に関する情報は、前記ファイルの作成時に基づき生成されるディレクトリ毎のチェックサムであることを特徴とする請求項4記載のファイル管理装置。
【請求項6】
前記管理状態情報は、前記ディレクトリに含まれるファイルのファイル名に関する情報を含むことを特徴とする請求項2記載のファイル管理装置。
【請求項7】
前記ファイル名に関する情報は、前記ファイル名に基づき生成されるディレクトリ毎のチェックサムであることを特徴とする請求項6記載のファイル管理装置。
【請求項8】
前記管理状態情報は、前記ディレクトリに含まれるファイルのうち各ディレクトリにおいて最も新しく作成されたファイルの作成時に関する情報を含むことを特徴とする請求項2記載のファイル管理装置。
【請求項9】
前記管理状態情報は、前記ディレクトリに含まれるファイルのうち各ディレクトリにおいて最後に更新されたファイルの更新時に関する情報を含むことを特徴とする請求項2記載のファイル管理装置。
【請求項10】
前記管理情報から前記管理状態情報を生成する管理状態情報生成手段を具備することを特徴とする請求項1記載のファイル管理装置。
【請求項11】
前記管理状態情報生成手段は、ディレクトリ構造により記録媒体に記録されるファイルについて、各ディレクトリ毎にそのディレクトリに含まれるファイルの管理状態情報を生成することを特徴とする請求項10記載のファイル管理装置。
【請求項12】
前記管理情報は前記記録媒体に記録されたファイルから生成されることを特徴とする請求項10記載のファイル管理装置。
【請求項13】
前記管理状態情報は前記管理情報から生成されることを特徴とする請求項12記載のファイル管理装置。
【請求項14】
前記管理状態情報は前記インデックスファイルに含まれる管理情報から生成されることを特徴とする請求項12記載のファイル管理装置。
【請求項15】
記録媒体に記録されたファイルの管理情報を含むインデックスファイルに基づいて前記ファイルを管理するファイル管理装置において、
前記インデックスファイルにおける前記ファイルの管理状態を示す管理状態情報を少なくとも二種類を保持する管理状態情報保持手段と、
少なくとも二種類の前記管理状態情報に対応するように記録媒体におけるファイルの記録状態を少なくとも二種類検出する記録状態検出手段と、
互いに対応する管理状態情報と前記記録状態検出手段により検出されたファイルの記録状態とに基づいて前記インデックスファイルに含まれる管理情報と前記記録媒体におけるファイルの記録状態との間の不整合の有無を検出する不整合検出手段と、
を具備することを特徴とするファイル管理装置。
【請求項16】
前記管理状態情報保持手段は、ディレクトリ構造により記録媒体に記録されるファイルについて、各ディレクトリ毎にそのディレクトリに含まれるファイルの管理状態情報を保持することを特徴とする請求項15記載のファイル管理装置。
【請求項17】
前記管理状態情報は、前記インデックスファイルにおいて管理しているファイルのファイル数に関する情報、ファイル名に関する情報および更新日時に関する情報のうち少なくとも二種類を含むことを特徴とする請求項12記載のファイル管理装置。
【請求項18】
記録媒体に記録されたファイルの管理情報を含むインデックスファイルに基づいて前記ファイルを管理するファイル管理方法において、
前記インデックスファイルにおける前記ファイルの管理状態を示す管理状態情報を予め保持しておく手順と、
前記記録媒体におけるファイルの記録状態を検出する手順と、
前記管理状態情報と前記記録状態検出手段により検出されたファイルの記録状態とに基づいて前記インデックスファイルにおける前記ファイルの管理状態と前記記録媒体におけるファイルの記録状態との間の不整合の有無を検出する手順と、
を具備することを特徴とするファイル管理方法。
【請求項19】
記録媒体に記録されたファイルの管理情報を含むインデックスファイルに基づいて前記ファイルを管理するプログラムにおいて、
前記インデックスファイルにおける前記ファイルの管理状態を示す管理状態情報を予め保持しておく手順と、
前記記録媒体におけるファイルの記録状態を検出する手順と、
前記管理状態情報と前記記録状態検出手段により検出されたファイルの記録状態とに基づいて前記インデックスファイルにおける前記ファイルの管理状態と前記記録媒体におけるファイルの記録状態との間の不整合の有無を検出する手順と、
をコンピュータに実行させることを特徴とするプログラム。
【請求項20】
記録されたファイルを管理するための前記ファイルの管理情報を含むインデックスファイルを記録した記録媒体において、
前記インデックスファイルにおける前記ファイルの管理状態と当該記録媒体におけるファイルの記録状態との間の不整合の有無を検出するために用いられる情報であって、前記インデックスファイルにおける前記ファイルの管理状態情報が記録されることを特徴とする記録媒体。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate


【公開番号】特開2006−236161(P2006−236161A)
【公開日】平成18年9月7日(2006.9.7)
【国際特許分類】
【出願番号】特願2005−52145(P2005−52145)
【出願日】平成17年2月25日(2005.2.25)
【出願人】(000002185)ソニー株式会社 (34,172)
【Fターム(参考)】