(57)【特許請求の範囲】
【請求項１】
順次取得されるデータを含むファイルを記録媒体に記録する記録手段と、
前記記録媒体に記録されたファイルのうちの、修復が必要な所定のファイルの修復処理を行う修復手段と、
データの記録中に前記記録媒体の空き容量が所定量となったことに応じて、前記データの記録を停止するように前記記録手段を制御する制御手段であって、前記記録媒体に記録された前記所定のファイルを修復するために必要なデータ量に基づいて前記所定量を決定し、前記データの記録中に前記記録媒体の空き容量が前記所定量となったことに応じて、前記データの記録を停止するように前記記録手段を制御する制御手段と
を有することを特徴とする記録装置。
【請求項２】
前記データは、動画データである請求項１記載の記録装置。
【請求項３】
前記制御手段は、ユーザによって前記修復処理の実行を指示された場合に、前記修復処理を行うように前記修復手段を制御することを特徴とする請求項１又は２記載の記録装置。
【請求項４】
前記修復手段は、前記修復処理において、前記所定のファイルに含まれる前記データにおける複数のフレームのオフセットを示すオフセット情報を生成し、前記オフセット情報を前記所定のファイルに記録するように前記記録手段を制御し、
前記制御手段は、前記修復処理において生成される前記オフセット情報のデータ量に基づいて、前記所定量を決定することを特徴とする請求項２に記載の記録装置。
【請求項５】
前記制御手段は、前記記録媒体に記録されている、前記所定のファイルの数を検出し、検出された前記所定のファイルの数と、前記修復処理において生成される前記オフセット情報のデータ量とに基づいて、前記所定量を決定することを特徴とする請求項４に記載の記録装置。
【請求項６】
前記制御手段は、複数の前記所定のファイルが前記記録媒体に記録されている場合には、前記複数の所定のファイルを修復するために必要なデータ量の合計に基づいて、前記所定量を決定することを特徴とする請求項１から３のいずれか１項に記載の記録装置。
【請求項７】
前記制御手段は、前記所定のファイルの記録時間に基づいて、前記所定のファイルを修復するために必要なデータ量を取得することを特徴とする請求項１から３のいずれか１項に記載の記録装置。
【請求項８】
前記制御手段は、前記所定のファイルのファイルサイズに基づいて、前記記録時間を取得することを特徴とする請求項７に記載の記録装置。
【請求項９】
前記制御手段は、前記記録媒体に記録されたファイルの管理情報を生成し、前記管理情報を前記記録媒体に記録するように前記記録手段を制御し、前記記録媒体に記録された前記管理情報に基づいて前記所定のファイルを検出することを特徴とする請求項１から８のいずれか１項に記載の記録装置。
【請求項１０】
前記制御手段は、前記ファイルに含まれる前記データのフレーム数に関する情報を前記管理情報に格納し、前記データの記録の開始に応じて、所定値を前記フレーム数に関する情報として記録するように前記記録手段を制御し、前記データの記録の停止の指示に応じて、前記データの記録の停止の指示によって記録が停止された前記データのフレーム数を検出し、検出した前記フレーム数によって、前記記録媒体に記録された前記管理情報における前記フレーム数に関する情報を更新することを特徴とする請求項９に記載の記録装置。
【請求項１１】
撮像手段を備え、
前記記録手段は、前記撮像手段から出力された動画データを前記記録媒体に記録することを特徴とする請求項１に記載の記録装置。
【請求項１２】
修復が必要なファイルが記録媒体に記録されている場合に、前記修復が必要なファイルを修復するために必要なデータ量に基づいて所定量を決定するステップと、
前記記録媒体にデータを順次記録するステップと、
前記データの記録中に前記記録媒体の空き容量が前記所定量となったことに応じて、前記データの記録を停止するステップと
を有することを特徴とする記録装置の制御方法。
【請求項１３】
コンピュータを、
順次取得されるデータを含むファイルを記録媒体に記録する記録手段、
前記記録媒体に記録されたファイルのうちの、修復が必要なファイルの修復処理を行う修復手段、
データの記録中に前記記録媒体の空き容量が所定量となったことに応じて、前記データの記録を停止するように前記記録手段を制御する制御手段であって、前記修復が必要なファイルが前記記録媒体に記録されている場合に、前記修復が必要なファイルを修復するために必要なデータ量に基づいて前記所定量を決定し、前記記録媒体に前記データを記録し、前記データの記録中に前記記録媒体の空き容量が前記所定量となったことに応じて、前記データの記録を停止するように前記記録手段を制御する制御手段、
として機能させるためのコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、記録装置及びその制御方法並びにコンピュータプログラムに関する。
【背景技術】
【０００２】
従来、記録媒体にビデオデータを記録するためのフォーマットとして、ＭＸＦ（Ｍａｔｅｒｉａｌ  Ｅｘｃｈａｎｇｅ  Ｆｏｒｍａｔ）が知られている。また、ＭＸＦ形式でデータを記録する装置も提案されている（特許文献１参照）。
【０００３】
ＭＸＦ形式では、動画データの他、動画データのランダムアクセスのためのオフセット情報も記録される。ビデオカメラ等の記録装置において、記録中にバッテリが外れた等の理由により記録が瞬断された場合、ＭＸＦファイルの修復が必要となる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００７−２３５５７０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、ファイルの修復には長時間を要する。修復が必要なファイルが生じた際に単に修復処理に移行するようにした場合には、ファイルの修復処理中に撮影したい場面が生じても、撮影を行うことができない。
【０００６】
本発明の目的は、修復が必要なファイルが生じた場合であっても、特段の弊害を招くことなく記録を随時行い得る記録装置を提供することにある。
【課題を解決するための手段】
【０００７】
本発明の一観点によれば、順次取得されるデータを含むファイルを記録媒体に記録する記録手段と、前記記録媒体に記録されたファイルのうちの、修復が必要なファイルの修復処理を行う修復手段と、前記データの記録中に前記記録媒体の空き容量が所定量となったことに応じて、前記データの記録を停止するように前記記録手段を制御する制御手段であって、前記修復が必要なファイルが前記記録媒体に記録されている場合に、前記修復が必要なファイルを修復するために必要なデータ量に基づいて前記所定量を決定し、前記記録媒体に前記データを記録し、前記データの記録中に前記記録媒体の空き容量が前記所定量となったことに応じて、前記データの記録を停止するように前記記録手段を制御する制御手段とを有することを特徴とする記録装置が提供される。
【発明の効果】
【０００８】
本発明によれば、修復が必要なファイルが生じた場合であっても、特段の弊害を招くことなく記録を随時実行し得る記録装置を提供することができる。
【図面の簡単な説明】
【０００９】
【図１】一実施形態による記録装置の構成を示すブロック図である。
【図２】インターリーブＭＸＦファイルのファイル構造の例を示す図である。
【図３】ＭＸＦフォーマットで記録されたファイル群の例を示す。
【図４】一実施形態における記録装置において行われる動画記録処理を示すフローチャートである。
【図５】一実施形態による記録装置において行われる記録終了処理を示す図である。
【図６】一実施形態における記録装置において行われるファイル修復処理を示すフローチャートである。
【図７】サムネイル画面を示す図である。
【発明を実施するための形態】
【００１０】
以下、図面を参照して、本発明の実施形態を詳細に説明するが、この発明は、以下の実施形態に限定されるものではない。なお、以下の実施形態は、特許請求の範囲に係る発明を限定するものでなく、また、以下の実施形態で説明されている特徴の組み合わせの全てが発明の解決手段に必須のものとは限らない。
【００１１】
なお、以下の実施形態において説明される各機能ブロックは必ずしも個別のハードウェアである必要はない。すなわち、例えば、いくつかの機能ブロックの機能が、１つのハードウェアにより実行されてもよい。また、いくつかのハードウェアの連係動作によって、１つの機能ブロックの機能が実行されてもよいし、複数の機能ブロックの機能が実行されてもよい。また、各機能ブロックの機能は、ＣＰＵがメモリ上に展開したコンピュータプログラムによって実行されてもよい。
【００１２】
本実施形態では、本発明の記録装置を撮像装置に適用した場合を例に説明するが、本発明の記録装置は、撮像装置に限定されるものではなく、携帯電話、スマートフォン、タブレット型情報端末、ノート型情報端末、コンピュータ等であってもよい。
【００１３】
［一実施形態］
一実施形態による記録装置及びその制御方法並びにコンピュータプログラムについて、図１乃至図７を用いて説明する。
【００１４】
まず、本実施形態の記録装置１００の構成について図１を用いて説明する。図１は、本実施形態による記録装置の構成を示すブロック図である。
【００１５】
記録装置１００は、ＭＸＦ形式で動画データを記録するものである。主制御部１０１は、ＣＰＵ、メモリ等を備えており、記録装置１００の全体の制御を司るものである。主制御部１０１は、ＲＯＭ１１１に記憶されたプログラム、メモリ１１２に記憶された情報、操作部１０６からの情報等に従って、記録装置１００の各部を制御する。主制御部１０１は、機能ブロックとして、空き容量判定部１０２と、管理情報解析部１０３と、記録制御部１０４と、修復処理部１０５とを有している。
【００１６】
操作部１０６は、例えば、電源ボタン、記録開始、停止の指示ボタン、メニュー表示ボタン、モード切り替えスイッチ、決定ボタン等の各種操作を入力するスイッチ類である。ユーザによってこれらのキーやボタン、タッチパネル等が操作されると、操作部１０６は主制御部１０１に操作信号を送信する。また、操作部１０６は、カーソルキー、ポインティングデバイス、タッチパネル、ダイヤル等のあらゆるタイプの操作子であってもよい。操作部１０６の各操作部材は、表示部１０７に表示される種々の機能アイコンとして実現することも可能である。ユーザは、これらの機能アイコンを選択又は操作することが可能である。
【００１７】
表示部１０７は、例えば、液晶表示デバイスや、有機ＥＬ表示デバイス等を有しており、表示制御部１０８からの制御によって画像、メニュー画面、その他必用な情報等を表示する。表示制御部１０８は、記録時においては、撮像部１０９によって取得された動画や各種の情報を表示部１０７に表示する。また、表示制御部１０８は、再生時においては、再生された動画を表示部１０７に表示する。
【００１８】
撮像部（取得部）１０９は、被写体を撮影し、動画データを出力する。
信号処理部１１０は、記録時においては、撮像部１０９によって取得した動画データに対し、所定の画像処理、圧縮符号化処理等を施す。また、信号処理部１１０は、再生時においては、再生された動画データを復号して出力する。
ＲＯＭ１１１は、主制御部１０１のプログラム、固定値等の不揮発の情報を記憶する。
メモリ１１２は、ＤＲＡＭ等の揮発性メモリから構成されており、記録される動画データ、管理情報、主制御部１０１の制御のために必用な各種の情報等を記憶する。
【００１９】
記録媒体制御部１１３は、主制御部１０１からの指示に応じて、記録媒体１１４に対し、動画データ、管理情報等のデータを記録し、また、記録媒体１１４からデータを読み出す。
記録媒体１１４は、ランダムアクセスが可能な記録媒体である。記録媒体１１４は、フラッシュメモリやコントローラを内蔵した記憶装置等によって構成される。記録媒体１１４として、着脱式の記録媒体や内蔵式の記録媒体を用いることも可能である。
データバス１１５は、記録装置１００の各部の間でデータやコマンドを転送するものである。
【００２０】
主制御部１０１は、ＦＡＴ（Ｆｉｌｅ  Ａｌｌｏｃａｔｉｏｎ  Ｔａｂｌｅｓ）等のファイルシステム（図示せず）を有し、記録媒体１１４に記録される動画データや管理情報をファイルとして管理する。また、主制御部１０１は、ファイルシステム情報を記録媒体１１４から読み出してメモリ１１２に記憶する。また、主制御部１０１は、記録や消去の処理に応じてファイルシステム情報を記録媒体１１４に書き込むことで、記録媒体１１４に記録されたファイルシステム情報を更新する。
【００２１】
主制御部１０１の空き容量判定部１０２は、記録媒体１１４のうちの記録装置１００によって使用されていない領域の容量、即ち、未使用領域の容量を判定する。具体的には、ＦＡＴ等のファイルシステム情報から、動画を書き込む対象とする空き領域を検出し、空き領域の合計を定期的に算出する。かかる空き領域の検出及び算出処理は、書き込みや削除によるＦＡＴ上の変化のタイミングで行ってもよい。
【００２２】
主制御部１０１の管理情報解析部１０３は、記録媒体１１４を認識した際に、ＭＸＦ規格に規定されている管理情報ファイルを記録媒体１１４から読み込み、ＭＸＦファイルの情報や数を解析し、保持する。
主制御部１０１の記録制御部１０４は、記録媒体１１４に対する動画データや管理情報の書き込み、読み出しを制御する。具体的には、記録制御部１０４は、管理情報の生成、記録中の動画データの書き込み、管理情報の更新、動画データの記録停止時の処理等を制御する。
主制御部１０１の修復処理部１０５は、記録媒体１１４に記録されている、修復が必要な動画ファイルの修復の指示があった場合に、後述するように、動画ファイルの修復処理を行う。
【００２３】
次に、ＭＸＦフォーマットについて説明する。ＭＸＦフォーマットは、動画データと、動画データのランダムアクセスのためのインデックステーブルとが組み合わせられたフォーマットである。ＭＸＦフォーマットのインデックステーブルは、動画データのフレーム境界を示す。インデックステーブルを用いることで、動画データに対してフレーム単位でランダムアクセスすることが可能となる。ＭＸＦは、ＳＭＰＴＥ（Ｓｏｃｉｅｔｙ  ｏｆ  Ｍｏｔｉｏｎ  Ｐｉｃｔｕｒｅ  ａｎｄ  Ｔｅｌｅｖｉｓｉｏｎ  Ｅｎｇｉｎｅｅｒｓ）に規定されるファイルフォーマットである。動画データの代表的な圧縮符号化形式であるＭＰＥＧストリームに対するマッピング構造は、ＳＭＰＴＥ  ＳＴ  ３８１−３等に規定されている。ＳＭＰＴＥ  ＳＴ  ３８１−３等のＭＸＦ規定に準じ、動画データと音声データとがフレームインターリーブされた構造をもつＭＸＦファイルを、インターリーブＭＸＦファイルと称することとする。
【００２４】
図２は、インターリーブＭＸＦファイルのファイル構造の例を示す図である。図２（ａ）は、インターリーブＭＸＦファイルのファイル構造の一例を示している。図２（ａ）に示すように、インターリーブＭＸＦファイルは、ファイルヘッダ（ＦＨ）と、ファイルボディ（ＦＢ）と、ファイルフッタ（ＦＦ）とから成る。ファイルヘッダは、ヘッダパーティションパック（ＨＰＰ：Ｈｅａｄｅｒ  Ｐａｒｔｉｔｉｏｎ  Ｐａｃｋ）と、ヘッダメタデータとから成る。ファイルボディは、ボディパーティションパック（ＢＰＰ：Ｂｏｄｙ  Ｐａｒｔｉｔｉｏｎ  Ｐａｃｋ）と、エディットユニット（ＥＵ：Ｅｄｉｔ  Ｕｎｉｔ）と、インデックステーブル（ＩＴ：Ｉｎｄｅｘ  Ｔａｂｌｅ）とから成る。ファイルフッタは、フッタパーティションパック（ＦＰＰ：Ｆｏｏｔｅｒ  Ｐａｒｔｉｔｉｏｎ  Ｐａｃｋ）、インデックステーブル（ＩＴ：Ｉｎｄｅｘ  ｔａｂｌｅ）及びランダムインデックスパック（ＲＩＰ：Ｒａｎｄｏｍ  Ｉｎｄｅｘ  Ｐａｃｋ）から成る。
【００２５】
ヘッダパーティションパック（ＨＰＰ）は、ヘッダ識別子と、ファイルボディに配置されるデータの形式又はファイルフォーマットを示す情報と、フッタパーティションパック（ＦＰＰ）格納開始オフセット等から成る。ヘッダメタデータには、ファイル作成日時等のファイル単位のメタデータが格納される。
【００２６】
ボディパーティションパック（ＢＰＰ）は、ボディ識別子と、直前に配置されるパーティションパック（ＨＰＰ又はＢＰＰ）のオフセットアドレスと、当該ＢＰＰ及びフッタパーティションパック（ＦＰＰ）の格納開始オフセット等から成る。ボディパーティションパック（ＢＰＰ）で区分される領域には、０個又は１個のインデックステーブル（ＩＴ）と、１個又は複数個のエディットユニット（ＥＵ）とが配置される。エディットユニット（ＥＵ）には、フレーム毎の動画データと音声データとが格納される。ボディパーティションパック（ＢＰＰ）で区切られる領域毎のエディットユニット（ＥＵ）の集合体は、エッセンスコンテナ（ＥＣ：Ｅｓｓｅｎｃｅ  Ｃｏｎｔａｉｎｅｒ）と称され、動画データと音声データとが収容される。インデックステーブル（ＩＴ）には、対応するエッセンスコンテナ（ＥＣ）に格納されるエディットユニット（ＥＵ）の、当該エッセンスコンテナ（ＥＣ）内でのオフセット情報が格納される。
【００２７】
フッタパーティションパック（ＦＰＰ）は、フッタ識別子と、直前に配置されるボディパーティションパック（ＢＰＰ）と、当該フッタパーティションパック（ＦＰＰ）の格納開始オフセット等から成る。ランダムインデックスパック（ＲＩＰ）は、当該ランダムインデックスパックを示すヘッダ、インターリーブＭＸＦファイルにおける各パーティションパックの格納開始オフセット、及び、当該ランダムインデックスパックのデータサイズから成る。インターリーブＭＸＦファイルを構成する各要素（パーティションパック（ＰＰ）及びインデックステーブル（ＩＴ）等）の直後には、境界調整用のフィルアイテム（ＮＵＬＬデータ）が配置される。
【００２８】
図２（ａ）に示すようなファイル構造の場合、ヘッダパーティションパック（ＨＰＰ）及び各ボディパーティションパック（ＢＰＰ）に、フッタパーティションパック（ＦＰＰ）のオフセット情報を格納する必要がある。フッタパーティションパック（ＦＰＰ）のオフセット位置は、動画ファイルの記録が停止されるまでは分からない。このため、記録停止時に、フッタパーティションパック（ＦＰＰ）のオフセット情報を、離散的なアドレスにあるそれぞれのボディパーティションパック（ＢＰＰ）に書き込むことになる。メモリカード等の記録媒体１１４は離散的な書き込み速度が遅いため、大量にあるボディパーティションパック（ＢＰＰ）のそれぞれにフッタパーティションパック（ＦＰＰ）のオフセット情報を書き込む際に長時間を要する。
【００２９】
そこで、図２（ｂ）に示すようなファイル構造のインターリーブＭＸＦファイルも提案されている。図２（ｂ）は、インターリーブＭＸＦファイルのファイル構造の他の例を示している。図２（ｂ）に示すようなファイル構造のインターリーブＭＸＦファイルにおいては、ファイルボディにボディパーティションパック（ＢＰＰ）を配さず、ファイルヘッダにインデックステーブル（ＩＴ）を格納する。そして、ファイルボディには、動画データと音声データとが格納されたエディットユニット（ＥＵ）を配置する。図２（ｂ）に示すＭＸＦファイルにおいては、記録停止時において、ファイルヘッダのヘッダパーティションパック（ＨＰＰ）の１箇所にフッタパーティションパック（ＦＰＰ）のオフセット情報が記録される。そして更に、ファイルヘッダにインデックステーブル（ＩＴ）が連続的に記録される。
【００３０】
本実施形態では、記録媒体１１４の連続した領域にインデックステーブル（ＩＴ）を記録するため、動画の記録中にはインデックステーブル（ＩＴ）に格納されるオフセット情報を作成し、作成したオフセット情報をメモリ１１２に記憶しておく。そして、記録停止の指示があった場合に、メモリ１１２に記憶されたオフセット情報を読み出し、インデックステーブル（ＩＴ）として記録媒体１１４に記録する。
【００３１】
なお、本実施形態では、図２（ｂ）に示すようなファイル形式で動画を記録する場合を例に説明するが、これに限定されるものではなく、図２（ａ）に示すようなファイル形式で動画を記録するようにしてもよい。
【００３２】
次に、本実施形態による記録装置において行われる記録処理について説明する。
【００３３】
操作部１０６が操作されることによって電源がオンになると、主制御部１０１は、各部を制御し、記録装置１００を記録待機状態に設定する。記録待機状態においては、撮像部１０９は、取得した動画データを出力する。表示制御部１０８は、撮像部１０９から出力された動画データが示す動画と、その他必用な情報とを、表示部１０７に表示する。記録待機状態において、操作部１０６から記録開始の指示が出力された場合には、主制御部１０１は、記録媒体制御部１１３に対し、以下のような指示を行う。即ち、主制御部１０１は、記録媒体制御部１１３に対し、動画ファイルに対応する管理情報を記録媒体１１４に記録するとともに、信号処理部１１０から出力される動画データを記録媒体１１４に記録するように指示する。本実施形態では、ＭＸＦファイル形式に従って動画データを記録媒体１１４に記録する。また、主制御部１０１は、動画データに対応したシステム情報を生成し、記録媒体１１４に記録する。かかるシステム情報は、動画データのファイルの先頭からのオフセット、符号化形式、その他動画データを再生するために必用な情報を含む。記録媒体制御部１１３は、１回の書き込み単位としての所定量の未記録の動画データがメモリ１１２に蓄積される度に、かかる所定量の動画データをメモリ１１２から読み出して記録媒体１１４に記録する。
【００３４】
システム情報の一つであるインデックステーブル（ＩＴ）のサイズは、動画データの記録時間の長さに応じて大きくなる。このため、本実施形態では、動画の記録中においては、動画データに含まれる各エディットユニット（ＥＵ）のオフセット情報を記録制御部１０４によって生成し、生成されたオフセット情報をメモリ１１２に記憶する。そして、ユーザによる記録停止の指示に応じて動画データの記録停止処理を行う際に、オフセット情報をメモリ１１２から読み出し、ＭＸＦファイルの所定の位置にオフセット情報を記録する。
【００３５】
動画の記録中に電池が取り出されることにより電源が遮断された等の理由によって、記録が停止された場合には、メモリ１１２に記憶されていた、オフセット情報を含むインデックステーブル（ＩＴ）が、記録媒体１１４に記録されない。このような場合には、記録が停止された動画ファイルのオフセット情報を修復するための処理が必要となる。
【００３６】
図３は、ＭＸＦフォーマットで記録されたファイル群の例を示す図である。
【００３７】
図３に示すように、本実施形態では、動画データが含まれているＭＸＦファイル３０２以外に、管理ファイル３０１、即ち、ＭＩＦ（Ｍｅｄｉａ  ｉｎｆｏｒｍａｔｉｏｎ  Ｆｉｌｅ）ファイル３０１が、記録媒体１１４に記録される。管理ファイル３０１は、記録媒体１１４に記録される全てのファイルの管理情報が含まれているファイルである。ＭＩＦファイルには、例えば、総クリップ数、各クリップのフレーム数、ＭＸＦファイル名等の、管理情報が記録される。動画の記録開始時には、ＭＩＦファイルに対して新たなクリップの管理情報が追加される。例えば、クリップの情報として、各動画ファイルのフレーム数の情報等が記録される。本実施形態では、記録開始の指示に応じて、動画ファイルのフレーム数として、所定値、例えば０が、管理情報として記録される。また、記録停止の指示によって正常に記録が停止された場合には、それぞれの動画ファイルに格納された動画データのフレーム数によって、かかる所定値を更新する。
【００３８】
図４は、本実施形態による記録装置において行われる動画記録処理を示すフローチャートである。図４に示す動画記録処理は、主制御部１０１が各部を制御することによって実現される。
【００３９】
記録待機状態において、操作部１０６から記録開始の指示があった場合には、図４に示す動画記録処理が開始される。
【００４０】
まず、主制御部１０１の管理情報解析部１０３は、記録媒体１１４に記録された管理ファイル３０１を確認し、修復が必要なファイル、即ち、修復が必要な動画ファイルを検出する（ステップＳ４０１）。具体的には、管理情報解析部１０３は、管理ファイル３０１に記録された、各動画ファイルのフレーム数を確認し、フレーム数として所定値が記録された動画ファイルを、修復が必要な動画ファイルとして検出する。管理情報解析部１０３は、修復が必要な動画ファイルの数を、空き容量判定部１０２に通知する。
【００４１】
主制御部１０１の空き容量判定部１０２は、管理情報解析部１０３によって検出された、修復が必要な動画ファイルの数に基づいて、動画の記録中に記録媒体１１４の空き容量が不足した場合に記録を停止するための所定量を決定する（ステップＳ４０２）。本実施形態では、後述するように、動画の記録中に記録媒体１１４の空き容量が所定量以下となった場合に、自動的に動画データの記録を停止する。そして、本実施形態では、後述するように、インデックステーブル（ＩＴ）、即ち、オフセット等の必要なデータを記録媒体１１４に記録して、再生可能な形式の動画ファイルを生成する。
【００４２】
空き容量判定部１０２は、動画の記録を開始する前に、自動的に動画データの記録を停止するための、記録媒体１１４の空き容量を決定する。空き容量判定部１０２は、まず、記録媒体１１４に記録する前にメモリ１１２に記憶される動画データのデータ量の最大値、一つの動画ファイルのインデックステーブルの上限サイズ、及び、管理ファイル３０１に追加されるデータの上限サイズの合計値を求める。更に、空き容量判定部１０２は、修復が必要な動画ファイルの数と、インデックステーブル（オフセット情報）の上限サイズとを乗算した値（乗算値）を求める。そして、かかる乗算値と前述した合計値とを加算した値（加算値）が、自動的に動画データの記録を停止するための記録媒体１１４の空き容量（所定量）として決定される。ここで、オフセット情報のサイズは、一つのファイルに格納される動画データの記録時間に比例する。本実施形態では、一つのファイルに格納される動画データの記録時間の上限を予め決定しておき、記録中のファイルに格納される動画データの記録時間が上限に達する度に、記録中の動画ファイルをクローズし、新たに動画ファイルを作成して記録を継続する。
【００４３】
次に、主制御部１０１は、信号処理部１１０による動画データの圧縮処理を開始して、記録媒体制御部１１３に対し、動画データの記録を開始するように指示する（ステップＳ４０３）。記録媒体制御部１１３は、図２（ｂ）に示すファイル形式に従って、記録媒体１１４に動画データを記録する。また、主制御部１０１の記録制御部１０４は、動画データの記録が開始されると、信号処理部１１０によって圧縮された後の動画データのデータ量の情報に基づいて、図２（ｂ）における各エディットユニットのオフセット情報を生成し、メモリ１１２に記憶する。
【００４４】
次に、主制御部１０１の空き容量判定部１０２は、定期的に記録媒体１１４の空き容量を検出し、検出された空き容量が、ステップＳ４０２において決定した所定量以下となったか否かを判定する（ステップＳ４０４）。空き容量が所定量以下となったと判定された場合には（ステップＳ４０４においてＹＥＳ）、空き容量判定部１０２は、その旨を記録制御部１０４に通知する。この場合には、記録制御部１０４は、記録媒体制御部１１３に対して記録停止を指示し、記録終了処理（ステップＳ４０６）を行う。
【００４５】
ここで、本実施形態による記録装置において行われる記録終了処理について、図５を用いて説明する。図５は、本実施形態による記録装置において行われる記録終了処理を示す図である。
【００４６】
記録を終了する場合には、まず、図５（ａ）に示すように、記録制御部１０４は、インデックステーブル（ＩＴ）がファイルヘッダに記録されていない状態のファイルを作成する。
【００４７】
次に、図５（ｂ）に示すように、記録制御部１０４は、ヘッダメタデータの後端においてファイルを分割する。また、記録制御部１０４は、オフセット情報をメモリ１１２から読み出す。
【００４８】
そして、図５（ｃ）に示すように、記録制御部１０４は、オフセットを示すインデックステーブル（ＩＴ）を、ヘッダメタデータの後端とエディットユニット（ＥＵ）の先頭との間に順次記録する。ここでは、１つのインデックステーブル（ＩＴ）は、例えば、１０秒分の動画データのエディットユニット（ＥＵ）のオフセットを示している。
【００４９】
そして、全てのインデックステーブル（ＩＴ）を記録すると、図５（ｄ）に示すように、記録制御部１０４は、インデックステーブル（ＩＴ）の後端とエディットユニット（ＥＵ）の先頭とを接続し、１つのＭＸＦファイルを生成する。記録制御部１０４は、こうして生成したＭＸＦファイルを、記録媒体１１４に記録する。
【００５０】
なお、記録終了処理においては、記録制御部１０４は、ＦＡＴを変更することにより、図５（ｄ）に示すように、インデックステーブル（ＩＴ）をＭＸＦファイルに格納する。即ち、記録制御部１０４は、メモリ１１２から読み出したオフセット情報を含むインデックステーブル（ＩＴ）を記録媒体１１４の空き領域に記録する。その後、記録制御部１０４は、ヘッダメタデータの終端のクラスタと、インデックステーブル（ＩＴ）の先頭のクラスタとが連続し、インデックステーブルの終端のクラスタと、エディットユニットの先頭のクラスタとが連続するように、ＦＡＴを更新する。
【００５１】
ステップＳ４０４において、記録媒体１１４の空き容量が所定量以下となったと判定されない場合には（ステップＳ４０４においてＮＯ）、記録制御部１０４は、操作部１０６から記録停止の指示を受けたか否かを判定する（ステップＳ４０５）。操作部１０６からの記録停止の指示を受けていない場合には（ステップＳ４０５においてＮＯ）、そのまま記録を継続する。一方、操作部１０６から記録停止の指示を受けた場合には（ステップＳ４０５においてＹＥＳ）、記録制御部１０４は、記録終了処理（ステップＳ４０６）を行う。
【００５２】
動画記録処理中に電源が遮断した場合には、インデックステーブル（ＩＴ）が記録されない。また、管理ファイル３０１に記録された、動画ファイルのフレーム数は、０のままである。しかし、本実施形態では、動画データの記録中には、１回の書き込み単位としての所定量の動画データを記録媒体１１４に記録する毎に、記録媒体１１４に記録されたＦＡＴが記録制御部１０４によって更新される。このため、本実施形態では、動画記録処理中に電源が遮断した場合であっても、電源遮断の直前にＦＡＴが更新された時点で記録媒体１１４に記録した動画データを、記録媒体１１４から読み出すことが可能である。
【００５３】
次に、本実施形態による記録装置において行われるファイル修復処理について説明する。図６は、本実施形態における記録装置において行われるファイル修復処理を示すフローチャートである。ユーザが操作部１０６を操作することによって、再生モードへの切り替えが指示された場合には、図６に示す処理が開始される。
【００５４】
まず、主制御部１０１の管理情報解析部１０３は、記録媒体１１４に記録された管理ファイル３０１を確認し、修復が必要な動画ファイルを検出する（ステップＳ６０１）。前述したように、管理情報解析部１０３は、管理ファイル３０１に記録された、各動画ファイルのフレーム数を確認し、フレーム数として所定値が記録された動画ファイルを、修復が必要な動画ファイルとして検出する。
【００５５】
次に、主制御部１０１は、記録媒体１１４に記録されている各動画ファイルのサムネイル画像、即ち、サムネイル一覧を、表示部１０７に表示させる（ステップＳ６０２）。本実施形態では、主制御部１０１は、記録媒体制御部１１３を制御し、各動画ファイルに格納された動画データの先頭部分を読み出し、信号処理部１１０によって先頭画面を復号する。そして、信号処理部１１０は、伸張された先頭画面を縮小し、表示制御部１０８に送信する。また、主制御部１０１は、修復が必要な動画ファイルについては、先頭画面の縮小画像を表示せずに、修復が必要な動画ファイルであることをユーザに知らせるための所定の画像を表示するように、表示制御部１０８に指示する。
【００５６】
表示制御部１０８は、各動画ファイルの先頭画面の縮小画像（サムネイル画像）と、修復が必要な動画ファイルに対応する所定の画像とを含むサムネイル画面を、表示部１０７に表示する。
【００５７】
図７は、サムネイル画面を示す図である。図７に示すように、修復が必要な動画ファイルに対応した所定の画像７０１、７０２が表示される。ユーザは、操作部１０６を操作することによって、表示されたサムネイル画像のうちの何れかを選択することができる。そして、ユーザは、所定の画像７０１，７０２以外のサムネイル画像を選択した状態で、再生開始を指示することにより、選択した動画の再生を指示する。
【００５８】
このように、サムネイル画面が表示された状態で、主制御部１０１は、修復が必要な動画ファイルがユーザによって選択されたか否かを判定する（ステップＳ６０３）。図７において、所定のサムネイル画像７０１、７０２が選択された場合には（ステップＳ６０３においてＹＥＳ）、主制御部１０１は、修復が必要な動画ファイルが選択されたと判定する。修復が動画必要なファイル以外のファイルのサムネイル画像が選択された場合には（ステップＳ６０３においてＮＯ）、主制御部１０１は、再生指示、或いは、記録モードへの切り替え指示等の、他の処理の指示があったか否かを判定する（ステップＳ６０７）。そして、当該他の処理の指示があった場合には（ステップＳ６０７においてＹＥＳ）、主制御部１０１は、当該他の処理に対応する処理を行う。また、他の処理の指示がない場合は（ステップＳ６０７においてＮＯ）、ステップＳ６０２に戻る。
【００５９】
修復が必要な動画ファイルがユーザによって選択された場合には（ステップＳ６０３においてＹＥＳ）、主制御部１０１は、修復処理を行うか否かをユーザに問い合わせるための画面を、表示部１０７に表示する（ステップＳ６０４）。ユーザは、操作部１０６を操作することによって、修復処理を行うか否かを指示する（ステップＳ６０５）。修復処理の実行がユーザによって指示された場合には（ステップＳ６０５においてＹＥＳ）、主制御部１０１は、修復処理部１０５によって修復処理を行う（ステップＳ６０６）。修復処理の指示がない場合には（ステップＳ６０５においてＮＯ）、ステップＳ６０７に移行する。
【００６０】
修復処理が指示された場合には、修復処理部１０５は、まず、選択されたファイルの終端部分を検出し、瞬断等によって記録が停止された時点で記録中であったエディットユニット（ＥＵ）を削除する。次に、修復処理部１０５は、ファイルボディに格納された動画データを先頭から読み出し、各エディットユニット（ＥＵ）について、動画先頭からのフレーム位置（経過時間）とオフセットとを検出する。そして、検出されたフレーム位置とオフセットとに基づいて、インデックステーブル（ＩＴ）を生成し、修復が必要な動画ファイルのファイルヘッダに格納する。更に、修復処理部１０５は、フッタパーティションパック（ＦＰＰ）を追加し、ファイルの修復処理を終了する。記録制御部１０４は、ファイルの修復処理が完了すると、修復された動画ファイルのフレーム数を検出して、管理ファイル３０１に記録されたフレーム数の情報を更新する。
【００６１】
このように、本実施形態では、修復が必要な動画ファイルが記録媒体１１４に記録されている場合であっても、自動的に修復処理を実行するのではなく、ユーザに対して修復処理を行うか否かを問い合わせる。修復処理の指示がユーザによってなされない場合には、修復処理には移行しない。そして、修復が必要な動画ファイルが記録媒体１１４に記録されている場合であっても、ユーザによって記録の指示がなされた場合には、動画データを新たに記録する。このように、本実施形態によれば、修復が必要な動画ファイルが記録媒体に記録されている場合であっても、動画の記録を随時行い得る記録装置を提供することができる。修復が必要な動画ファイルが記録されている記録媒体１１４に対して新たに動画ファイルを記録する場合には、記録中に自動的に動画データの記録を停止するための記録媒体１１４の空き容量、即ち、所定量を決定する。即ち、修復処理の際に生成されるインデックステーブル（オフセット情報）を記録するために必要な空き容量に基づいて、かかる所定量を決定し、動画記録中に記録媒体１１４の空き容量がかかる所定量以下となったときには、自動的に記録を停止する。このため、動画記録を停止した後に、ユーザがファイルの修復を指示した場合であっても、オフセット情報を記録するための空き容量が記録媒体１１４に残っておらず、修復ができなくなってしまうのを防止することができる。このため、本実施形態によれば、ファイルの修復を確実に行い得る記録装置を提供することができる。このように、本実施形態によれば、修復が必要な動画ファイルが記録媒体に記録されている場合であっても、特段の弊害を招くことなく動画の記録を随時行い得る記録装置を提供することができる。更に、修復が必要な動画ファイルが既に記録されている記録媒体に対して動画を記録する場合であっても、修復に必要な空き容量が不足してしまい、修復ができなくなることを防ぐことが可能となる。
【００６２】
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【００６３】
［変形実施形態］
上記実施形態に限らず種々の変形が可能である。
【００６４】
例えば、上記実施形態では、修復が必要な動画ファイルの数とインデックステーブル（ＩＴ）（オフセット情報）の上限サイズとの乗算値に基づいて、所定の空き容量を決定する場合を例に説明した。しかし、修復が必要な動画ファイルの記録時間が短い場合には、インデックステーブル（ＩＴ）を記録するための容量が余分に確保されてしまう。そこで、修復が必要な動画ファイルのファイルサイズに基づいて、それぞれのファイルにおけるオフセット情報のサイズを求めるようにしてもよい。例えば、動画ファイルのファイルサイズと、動画データの圧縮後の平均データレートとに基づいて、動画データの記録時間を求める。そして、求められた記録時間に基づいて、オフセット情報のサイズを決定するようにしてもよい。また、動画データの圧縮後のデータレートを、複数の目標レートの中からユーザが設定可能な構成である場合には、最も低いデータレートとファイルサイズとに基づいて記録時間を求めるようにしてもよい。そして、求められた記録時間に基づいて、オフセット情報のサイズを決定するようにしてもよい。
【００６５】
また、上記実施形態では、記録媒体１１４に記録するデータが動画データである場合を例に説明したが、記録媒体１１４に記録するデータは動画データに限定されるものではない。本発明は、例えば、音声データ等の順次取得されるデータが記録媒体１１４に順次記録されていき、ファイルの修復時にある程度の空き容量が必要な場合に、広く適用することができる。
【００６６】
また、上記実施形態では、記録装置１００が撮像部１０９を含んでいる場合を例に説明したが、記録装置１００は撮像部１０９を含んでいなくてもよい。例えば、外部の撮像装置より出力された動画データ等を入力する構成、或いは、外部の送信装置により送信された動画データ等を受信する構成とすることも可能である。本発明は、順次取得されるデータが記録媒体１１４に順次記録されていく場合に広く適用することができる。
【符号の説明】
【００６７】
１００…記録装置
１０１…主制御部
１１５…データバス
【図１】
0006478760.tif 000002
【図２】
0006478760.tif 000003
【図３】
0006478760.tif 000004
【図４】
0006478760.tif 000005
【図５】
0006478760.tif 000006
【図６】
0006478760.tif 000007
【図７】
0006478760.tif 000008