(57)【要約】【課題】バッファオーバーフローを発生させることなく、管理情報の更新を行う。【解決手段】記録メディア３７上のファイル管理情報６３を更新する際に、撮像装置１内のストリームバッファ７１の空き容量を確認する。ファイル管理情報６３の更新に要する時間分ストリームデータを溜められる空き容量がストリームバッファ７１に無い場合、ファイル管理情報６３の更新を一旦保留し、更新に要する時間分の空き容量が確保できるまでストリームバッファ７１にあるデータを先に記録メディア３７に書き出す。その後、空き容量が確保できたらファイル管理情報６３の更新を行う。【選択図】図１５
2013225760.tif 000002
【特許請求の範囲】
【請求項１】
入力されたストリームデータを蓄積するバッファ部と、
前記バッファ部に蓄積されたストリームデータのファイルと、該ファイルを管理する管理情報を記録媒体に記録するファイル記録処理部と、
前記バッファ部の空き容量を監視するバッファ監視部と、
前記バッファ監視部から通知される前記バッファ部の空き容量に基づいて、前記ファイル記録処理部による前記管理情報の更新タイミングを制御するファイルシステム制御部と、を備える
記録装置。
【請求項２】
前記ファイルシステム制御部は、前記バッファ監視部から通知される前記バッファ部の空き容量と、前記管理情報の更新に要する時間分のデータ量とを比較し、前記バッファ部の空き容量が前記管理情報の更新に要する時間分のデータ量より小さい場合、前記ファイル記録処理部を制御して、前記バッファ部に蓄積されている前記ストリームデータを前記記録媒体へ記録させる
請求項１に記載の記録装置。
【請求項３】
前記ファイルシステム制御部は、前記バッファ部に蓄積されている前記ストリームデータを前記記録媒体へ記録させた後に、前記バッファ部の空き容量が前記管理情報の更新に要する時間分のデータ量より大きくなってから、前記ファイル記録処理部に前記記録媒体の前記管理情報の更新を行わせる
請求項２に記載の記録装置。
【請求項４】
キャッシュ録画の録画開始時に、前記バッファ部の空き容量が前記管理情報の更新に要する時間分のデータ量より小さい場合、前記ファイルシステム制御部は、前記ファイル記録処理部に前記バッファ部に蓄積されている前記ストリームデータを前記記録媒体へ記録させるべく制御を行う
請求項３に記載の記録装置。
【請求項５】
前記ストリームデータが一の記録領域と他の記録領域間に跨って記録される場合、前記バッファ部の空き容量が前記管理情報の更新に要する時間分のデータ量より小さい場合、前記ファイルシステム制御部は、前記ファイル記録処理部に前記バッファ部に蓄積されている前記ストリームデータを前記記録媒体へ記録させるべく制御を行う
請求項３に記載の記録装置。
【請求項６】
撮像部と、
前記撮像部より供給されるストリームデータを蓄積するバッファ部と、
前記バッファ部に蓄積されたストリームデータのファイルと、該ファイルを管理する管理情報を記録媒体に記録するファイル記録処理部と、
前記バッファ部の空き容量を監視するバッファ監視部と、
前記バッファ監視部から通知される前記バッファ部の空き容量に基づいて、前記記録処理部による前記管理情報の更新タイミングを制御するファイルシステム制御部と、を備える
撮像記録装置。
【請求項７】
入力されたストリームデータをバッファ部に蓄積することと、
バッファ監視部により前記バッファ部の空き容量を監視することと、
ファイルシステム制御部により、前記バッファ監視部から通知される前記バッファ部の空き容量に基づいて、記録媒体に記録されるファイルについての管理情報の更新タイミングを制御すること、を含む
記録方法。
【請求項８】
入力されたストリームデータをバッファ部に蓄積することと、
バッファ監視部により前記バッファ部の空き容量を監視することと、
ファイルシステム制御部により、前記バッファ監視部から通知される前記バッファ部の空き容量に基づいて、記録媒体に記録されるファイルについての管理情報の更新タイミングを制御すること、
を含む処理をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、半導体メモリなどを記録媒体として、データを記録する記録装置、及びその記録装置を備えた撮像記録装置、並びにその記録装置や撮像記録装置に適用される記録方法、さらにその記録方法を実行するプログラムに関する。
【背景技術】
【０００２】
ビデオカメラなどの撮像装置として、記録機能を備えた撮像記録装置が各種実用化されている。この撮像記録装置として、近年、半導体メモリの普及及び低価格化により、半導体メモリを備えたメモリカードを、記録媒体としたものが開発されている。
【０００３】
メモリカードは、従来、撮像記録装置が記録媒体として使用していた磁気テープ、各種ディスクなどに比べて、小型軽量であり、メモリカードを記録媒体として使用することで、撮像記録装置の小型化に貢献する。また、メモリカードは、撮像記録装置本体に設けたカードスロットへの装着及び抜き取りが容易に行える。
【０００４】
ビデオカメラなどの記録装置において、メモリカードなどの半導体メモリを記録媒体とした場合、以下のような処理が行われる。
例えば撮像記録装置のカードスロットに装着されたメモリカード内の半導体メモリに、ビデオデータなどを記録させる場合には、撮像部で撮像して得られたビデオデータが、逐次メモリカードに供給されて、そのメモリカード内の半導体メモリに記録される。なお、半導体メモリへのデータ記録は、記憶や書き込み（書き出し）とも称されるが、本明細書では、記録と記憶と書き込みを特に区別しない。
【０００５】
半導体メモリは、決められた単位のデータ量ごとに書き込みや消去を行うことで、書き込み速度を高速化できる。従って、供給されるビデオデータをそのまま逐次半導体メモリに供給して記録させるのではなく、決められた単位のデータ（記録単位）ごとにまとめた上で、半導体メモリに記録させることを行って、記録を高速化している。半導体メモリにおいては、消去ブロックと呼ばれるものが、この記録単位に該当する。
ここで、撮像記録装置で撮像して得られるビデオデータの転送レートがある程度高い場合には、生成されるビデオデータが、比較的短い間隔で記録単位のデータ量に到達し、ビデオデータが逐次記録メディア側に転送され、半導体メモリに記録される。
得られるビデオデータの生成レートは、撮像条件などによって変動があり、例えば、被写体に変化がほとんどない映像を連続して撮像している場合には、生成されるビデオデータのデータ量が低下して、生成レートが低くなる場合がある。また、間欠撮影のようなフレーム周期が非常に長い撮像を行う場合にも、転送レートが低下する場合がある。
【０００６】
特許文献１には、半導体メモリを記録媒体として使用した撮像装置の構成例についての記載がある。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００８−３５３９４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
ところで、撮像記録装置は、何らかの要因で撮像動作が突然中断すると、撮像部で撮像して得られたビデオデータの内で、上述した記録単位に到達していないデータについては、メモリカードに記録されない状態になってしまう。
また、記録メディアに記録したデータであっても、そのことが記録メディアのファイル管理情報に反映されないと、記録済みのデータとしては扱えず、実質的に記録データが消失してしまい、記録メディアに記録されない状態になってしまう。
通常のビデオカメラでは、撮像を停止させる操作をしたときには、撮像した全てのビデオデータが記録メディアに記録され管理情報も対応したデータとなるように更新させて、撮影停止処理が行われる。これに対して、例えば、撮像記録装置への電源供給の突然の停止、記録メディアの撮像途中での抜き取り、などがあると、記録単位に到達する前のデータや、管理情報が更新されていないデータは消失してしまう。
【０００９】
一般に、撮像記録装置等のストリームデータ（ビデオデータとオーディオデータ）を扱う機器には、管理情報の更新時にストリームデータを蓄積するストリームバッファ（バッファメモリ）が設けられている。記録メディアに記録されるストリームデータに対応させて当該記録メディアの管理情報を更新する場合、機器内のストリームバッファの空き容量とは関係なく、特定のタイミングで管理情報の更新を行っていた。更新情報の更新を記録メディアに対して行う際に、更新中はストリームデータの書き出しを行わずにストリームバッファに溜めることになる。これまでは、管理情報の更新に時間がかからなかったため、ストリームバッファがオーバフローする前に更新を完了することができた。
【００１０】
しかしながら、管理情報の更新に時間がかかる低速記録メディアの使用時やストリームバッファの容量が小さいシステム、ストリームデータ発生量が多いフォーマット等では、更新情報を更新中に発生したストリームデータをストリームバッファに全て格納することができずにバッファオーバーフローの発生が起こり得る。例えば、ＮＡＮＤフラッシュメモリメモリの世代が進むと、記録メディアの処理が低速化する傾向にある。特にランダムアクセス性能が低下するため、ファイル管理情報の更新時間が延びる。従来方法では、ファイル管理情報の更新が終わるまではストリームバッファにストリームを溜めていたため、記録メディアの低速化が進むと、バッファオーバーフローが発生することになる。バッファオーバーフローが起こった場合、例えば撮像記録装置などでは記録されたクリップのフレームの欠落や録画の中断につながる。クリップ（素材）は、任意長のビデオデータの単位であり、一つのファイルとして構成されたＡＶ（Audio Visual）素材のことも意味する。AudioとVideoが別ファイルの場合もある。クリップは、所定長の区間を切り出して別のクリップとしたり、分割して分割クリップ（または分割素材）としたりすることができる。
【００１１】
本開示はかかる点に鑑みてなされたものであり、ストリームバッファのバッファオーバーフローを発生させることなく、記録メディア内の管理情報の更新を行う。
【課題を解決するための手段】
【００１２】
本開示は、入力されたストリームデータをバッファ部に蓄積し、バッファ監視部により上記バッファ部の空き容量を監視する。そして、ファイルシステム制御部により、上記バッファ監視部から通知される上記バッファ部の空き容量に基づいて、記録媒体に記録されるファイルについての管理情報の更新タイミングを制御する。
【００１３】
上記構成によれば、バッファ部の空き容量に基づいて管理情報の更新タイミングが制御される。よって、バッファ部に十分な空き容量を確保してから管理情報の更新を行うことが可能である。
【発明の効果】
【００１４】
本開示によると、バッファ部のバッファオーバーフローを発生させることなく、記録媒体内の管理情報の更新を行うことができるという効果を有する。
【図面の簡単な説明】
【００１５】
【図１】本開示の一実施の形態による撮像装置の構成例を示すブロック図である。
【図２】本開示の一実施の形態によるデータ記録構成例を示すブロック図である。
【図３】本開示の一実施の形態によるデータ記録単位の例を示す説明図である。
【図４】本開示の一実施の形態による書き込み処理例を示すフローチャートである。
【図５】本開示の一実施の形態による書き込み履歴情報のデータ生成処理例を示すフローチャートである。
【図６】本開示の一実施の形態によるデータ記録状態の例（予約時の処理）を示す説明図である。
【図７】本開示の一実施の形態によるデータ記録状態の例（１書き込み単位分のデータが入力した状態）を示す説明図である。
【図８】本開示の一実施の形態によるデータ記録状態の例（書き込み履歴情報の生成）を示す説明図である。
【図９】本開示の一実施の形態によるデータ記録状態の例（メディアバッファからの書き込み）を示す説明図である。
【図１０】本開示の一実施の形態によるデータ記録状態の例（付加情報ファイルがファイル配置単位に到達した例）を示す説明図である。
【図１１】本開示の一実施の形態によるデータ記録状態の例（２サイクル目のメディアバッファへの入力）を示す説明図である。
【図１２】本開示の一実施の形態によるデータ記録状態の例（２サイクル目のメディアバッファからの書き込み処理）を示す説明図である。
【図１３】本開示の一実施の形態による管理データの振り分け例（管理情報未記録の状態）を示す説明図である。
【図１４】本開示の一実施の形態によるデータ記録状態の例（管理情報が記録された状態）を示す説明図である。
【図１５】本開示の一実施形態によるファイル管理情報の更新処理例を示すフローチャートである。
【図１６】従来（同期ピークシフト対応前）のキャッシュ録画における録画開始時の記録メディアへの書き込み例を説明する図である。
【図１７】本開示の一実施の形態による（同期ピークシフト対応後の）キャッシュ録画における録画開始時の記録メディアへの書き込み例を説明する図である。
【図１８】従来（同期ピークシフト対応前）のメディア跨ぎにおける記録メディアへの書き込み例を説明する図である。
【図１９】本開示の一実施の形態による（同期ピークシフト対応後の）メディア跨ぎにおける記録メディアへの書き込み例を説明する図である。
【発明を実施するための形態】
【００１６】
以下の順序で、本開示の一実施の形態を説明する。
１．撮像装置全体の構成例（図１）
２．記録メディアへのデータ記録構成例（図２）
３．データの記録単位の説明（図３）
４．データ記録処理動作（図４，図５）
５．データ記録動作の具体的例（図６〜図１２）
６．管理データの振り分け例（図１３，図１４）
７．管理情報の更新処理例（図１５〜図１９）
８．変形例
【００１７】
［１．撮像装置全体の構成例］
本実施の形態では、取り外し可能な記録メディアであるメモリカードを用いて、映像と音声の記録と再生を行うことが可能な撮像装置１に適用した例として説明する。従って、撮像装置１は記録機能を備えた撮像記録装置、或いは撮像記録再生装置であるが、ここでは単に撮像装置と述べる。
なお、本実施の形態では記録媒体を記録メディアと称するが、半導体メモリを内蔵した着脱自在な記録媒体であれば、カード形状のものである必要はなく、メモリカード以外でも、製品化されている各種メモリ装置が適用可能である。半導体メモリ以外の記録メディアでもよい。以下の説明では、本実施の形態で使用する記録媒体を、記録メディアと称する。
【００１８】
図１は、本例の撮像装置１の内部構成例を示したブロック図である。撮像装置１は、大別して、ビデオカメラを制御し、ビデオデータを生成する撮像部２と、ビデオデータ、オーディオデータ、メタデータを半導体メモリに記録し、再生する記録部３とで構成される。
【００１９】
まず、撮像部２を構成する各部について説明する。レンズ、絞り、フィルタ等で構成された光学部１１を介して入力した撮像光を、撮像部１２が光電変換して、アナログビデオ信号を生成する。撮像部１２は、例えばＣＣＤ（Charge Coupled Devices）イメージャ等の固体撮像素子で構成される。撮像部１２で得た撮像信号は、アナログ／デジタル変換器、画像調整機能等を有するビデオプロセッサ１３に供給する。ビデオプロセッサ１３は、供給された撮像信号をデジタルビデオデータに変換し、画像調整を行う。そして、ビデオプロセッサ１３は、デジタルビデオデータを所定の方式で圧縮するビデオ信号圧縮部１６に、変換したデジタルビデオ信号を供給する。ビデオ信号圧縮部１６は、供給されたデジタルビデオ信号をＭＰＥＧ（Moving Picture Experts Group）方式などで圧縮符号化する。ビデオ信号圧縮部１６は、ビデオインタフェース１７を介して、圧縮したビデオデータをデータバス２０に供給する。圧縮したビデオデータは、後述する記録部インタフェース２６を介して記録部３に供給し、後述する記録メディア３７内の半導体メモリに保存させる。撮像部２で用いられる各データは、データバス２０を介して各部に伝送される。
【００２０】
後述する操作部３９でユーザ操作された結果、操作信号が、記録部３から後述する撮像部インタフェース４１，記録部インタフェース２６，データバス２０を介して、ＣＰＵ２１に供給される。ＣＰＵ（Central Processing Unit）２１は、撮像部２内の各部の処理
を制御する制御手段であり、供給された操作信号を解釈する。操作信号を解釈する際に、ＣＰＵ２１は、ＲＯＭ２２より、所定のタイミングで制御プログラムを読み出すと共に、一時データ、パラメータ等を、ＲＡＭ２３に一時保存する。ＲＯＭ（Read Only Memory）２２は読み出しのみ可能なメモリであり、ＲＡＭ（Random Access Memory）２３は、書き込み可能なメモリである。
【００２１】
ＣＰＵ２１は、操作部３９から供給された操作信号を、撮像部１２を駆動する制御信号に変換し、カメラコントローラインタフェース１５を介してカメラコントローラ１４に供給する。カメラコントローラ１４は、供給された制御信号に基づいて、撮像部１２の絞り、ズーム、フィルタ等の制御を行う。また、ＣＰＵ２１は、画像処理を指示する画像処理信号を、ビデオプロセッサインタフェース１８を介してビデオプロセッサ１３に供給する。ビデオプロセッサ１３は、供給された画像処理信号に基づいて、デジタルビデオ信号の圧縮処理等を行う。
【００２２】
撮像部２は、撮影中の画像、再生画像、メタデータ等を表示するビューファインダ２５を備えている。データバス２０を介して伝送された撮影中の画像、再生画像、メタデータ等は、ビューファインダインタフェース２４を介して、液晶画面を有するビューファインダ２５に表示される。
【００２３】
次に、記録部３を構成する各部について説明する。被写体の方向に向けられたマイクロフォン３０が周囲の音声を集音し、アナログオーディオデータを生成する。マイクロフォン３０は、アナログ／デジタル変換器、音声調整機能等を有するオーディオプロセッサ３１に、アナログオーディオ信号を供給する。オーディオプロセッサ３１は、供給されたアナログオーディオ信号をデジタルオーディオデータに変換し、音声調整を行う。そして、オーディオプロセッサ３１は、オーディオインタフェース３２を介してデジタルオーディオデータをデータバス５０に供給する。デジタルオーディオデータは、後述する記録メディア３７内の半導体メモリに保存される。記録部３で用いられる各種データは、データバス５０を介して各部に伝送される。
【００２４】
図示しないボタン、スイッチ等で構成されている操作部３９は、撮像部２と記録部３の記録、再生、編集操作で用いられる。撮像開始等の手動操作によって、操作部３９は操作信号を生成する。生成された操作信号は、操作部３９から操作部インタフェース４０とデータバス５０を介して、記録部３内の各部の処理を制御するＣＰＵ３４に供給される。また、記録時には、後述する撮像部インタフェース４１を介して撮像部２に操作信号が供給される。そして、ＣＰＵ３４は、供給された操作信号を解釈し、読み出しのみ可能なＲＯＭ３５より、所定のタイミングで制御プログラムを読み出すと共に、一時データ、パラメータ等を、書き込み可能なＲＡＭ３６に一時保存する。
【００２５】
本例の撮像装置１は、記録部３がカードスロット４６を備え、そのカードスロット４６に記録メディア（メモリカード）３７を着脱自在に装着できる構成としてある。記録メディア３７は、内蔵された半導体メモリを備えた記録メディアである。記録メディア３７でのデータの記録状態については後述する。
カードスロット４６に装着された記録メディア３７は、記録メディアインタフェース３８を介して記録部３内のデータ処理部とデータ転送が可能である。
なお、図１の構成では、１つのカードスロット４６だけを示してあるが、記録部３が複数のカードスロットを備えた構成としてもよい。また、カードスロット４６に装着された記録メディア３７とは別に、記録部３がメモリやハードディスクなどの記録媒体を備えて、ビデオデータなどを記録させてもよい。
【００２６】
記録部３は、撮像部２とデータをやりとりするため、撮像部インタフェース４１がデータバス５０に接続されている。撮像部２で撮像されたビデオデータは、記録部インタフェース２６，撮像部インタフェース４１，データバス５０，記録メディアインタフェース３８を介して記録メディア３７に供給されて記録される。この記録の際には、ＣＰＵ３４が記録制御部として機能して、記録のための制御処理が実行される。
【００２７】
ＣＰＵ３４は、データバス５０，液晶表示インタフェース４３を介して、液晶画面を有する液晶表示部４４にモニタ映像、タイムコード、オーディオレベル、メタデータ、各種メニュー等を表示させる。記録メディア３７から読み出されたビデオデータ、オーディオデータ等は、液晶表示部４４で再生したビデオ画像として表示することもできる。
【００２８】
撮像装置１は、外部のコンピュータとの間でデータをやりとりするために用いられるコンピュータインタフェース４２を備えている。コンピュータインタフェース４２は、例えばＵＳＢ規格に準拠したインタフェースであり、図示しない外部のコンピュータ装置を接続してデータを伝送したり、スピーカを接続して再生したオーディオデータを放音したりすることができる。また、撮像装置１は、ネットワーク経由でデータのやりとりを行うために用いられるネットワークインタフェース４５を備えている。ネットワークインタフェース４５は、図示しないサーバや外部のコンピュータ装置に接続してデータを伝送することができる。
【００２９】
［２．記録メディアへのデータ記録構成例］
次に、この撮像装置１で記録メディア３７にビデオデータなどを記録するための処理構成について、図２を参照して説明する。
図２は、記録されるデータの流れから見た機能ブロック図であり、図１に示したビデオプロセッサ１３，ＣＰＵ２１，ＣＰＵ３４，ＲＡＭ２３，ＲＡＭ３６などを使用して、図２に示したそれぞれの処理が行われる。
【００３０】
本実施の形態の場合には、記録メディア３７にビデオデータを記録する際には、主データであるビデオデータとオーディオデータの他に、付加データである付加情報ファイルと、書き込み履歴情報とを記録処理するようにしてある。付加情報ファイルのデータは、タイムコードなどのビデオデータの生成に付随して生成されるデータ（メタデータ）である。これらの付加データは、撮像部２や記録部３内の所定ブロックで生成されて、記録部３の記録系に入力する。タイムコードは、各フレーム位置の時間を示すコードである。
なお、以下の説明では、これらの付加データを、第１の付加データとし、後述する第２の付加データと区別する。
【００３１】
図２に示すように、ビデオデータとオーディオデータと第１の付加データは、コーデック部５１に供給して、それぞれ記録用に圧縮符号化等の処理を行った後、それぞれのデータごとに個別のバッファに一端蓄積される。即ち、ビデオバッファ５２とオーディオバッファ５３と第１付加データバッファ５４とを備えて、それぞれのバッファ５２，５３，５４に対応した入力データが蓄積される。各バッファには、例えばリングバッファが用いられる。これらのバッファを総称する場合あるいは各バッファを区別しない場合には、ストリームバッファ７１という。ストリームバッファ７１は、バッファ部の一例である。
【００３２】
各バッファ５２，５３，５４に蓄積したデータは、合成処理部５５に供給されて、１系統のデータに合成して、メディアバッファ５８に蓄積される。メディアバッファ５８は、記録メディア３７で記録する際の、１回の記録でデータが記録されるデータ量である、１記録単位のデータ量の記憶手段である。本例の場合には、記録メディア３７に１回の記録でデータが記録されるデータ量は、記録メディア３７からデータを消去する際の最小の１単位のデータ量としてある。
合成処理部５５には、第２の付加データ生成部５６と書き込み履歴情報生成部５７とが接続してある。第２の付加データ生成部５６は、ビデオデータとオーディオデータとの対応を示すポインタとしてのデータ（第２の付加データ）を生成させて、合成処理部５５に入力させる。
書き込み履歴情報生成部５７は、記録メディア３７に１単位のデータ記録を行う毎に付加される、書き込み履歴情報を生成させる処理部である。書き込み履歴情報の詳細については後述する。
【００３３】
生成された第２の付加データと書き込み履歴情報についても、合成処理部５５で合成させる。なお、図示はしないが、第２の付加データについても、第２の付加データ生成部５６内で生成されたデータが内部バッファで蓄積されてある程度のデータ量単位で、合成処理部５５に供給される構成としてある。書き込み履歴情報は、記録メディア３７に１単位のデータ記録を行う毎に生成される。
【００３４】
合成処理部５５からメディアバッファ５８に記録データが供給されて、メディアバッファ５８へのデータ蓄積量が、１単位の記録単位のデータ量となったとき、記録制御部であるＣＰＵ３４の制御で、メディアバッファ５８からファイル記録処理部５９に出力される。ファイル記録処理部５９に供給されたデータは、記録メディア３７に出力され、記録メディア３７内のファイル６２として記録される。ファイル６２の管理データについては、ファイル管理情報６３として、ファイル６２とは別の領域に記録される。このファイル管理情報６３として記録されるデータ及び記録動作は、ファイル記録処理部５９に接続されたファイルシステム制御部６１により制御される。
【００３５】
撮像装置１は、ストリームバッファ７１の空き容量を常時又は定期的に監視し、その結果をファイルシステム制御部６１に通知するストリームバッファ監視部７２を備えている。ストリームバッファ監視部７２は、バッファ監視部の一例である。ファイルシステム制御部６１は、ストリームバッファ監視部７２から通知された空き容量の情報に基づいて、例えばファイル管理情報６３の更新タイミングを遅らせる等、ファイル管理情報６３の更新タイミング（更新時間間隔）を制御する。
【００３６】
なお、メディアバッファ５８の蓄積データは、先頭のブロックから順に記録メディア３７に送られて、その送られた順序で記録メディア３７内のファイル６２に記録される。
【００３７】
［３．データの記録単位の説明］
図３は、記録メディア３７にデータが記録される単位の概要を示した図である。
図３に示すように、１ファイル配置間隔（１ブロック）の整数倍の容量で、１単位の書き込み単位（１記録単位）を設定してある。即ち、ＳＦ１，ＳＦ２，・・・・，ＳＦｎ（ｎは整数）のブロック配置で、１ファイル書き込み単位を構成してある。１ファイル書き込み単位は、ここでは記録メディア３７内の半導体メモリの消去ブロック単位と一致させてある。本実施の形態で使用する記録メディア３７は、この１ファイル配置間隔でアクセスすることで、高速なアクセスが行える性質を持つ。１ファイル配置間隔は、最小の単位である「１セクタ」の整数倍の容量の「複数セクタ単位」で構成され、その１ファイル配置間隔のデータについて高速なアクセスが行える。
各データ量の一例を示すと、ある記録メディアでは、１セクタは例えば５１２Byteで、読み出しが高速となる複数セクタは、例えば３２ＫＢとされる。ここで、本例での１ファイル配置間隔は、この読み出しが高速となる複数セクタ（３２ＫＢ）の倍数の容量とし、１ファイル配置単位で記録データの高速読み出しが行えるようにしてある。
１ファイル配置間隔（１ブロック）は、例えば２ＭＢとし、１書き込み単位を１６ＭＢとすると、１書き込み単位は８ブロックで構成されることになる。１書き込み単位を消去ブロック単位と一致させることで、書き込みが高速で行える。
図２に示したメディアバッファ５８は、この１書き込み単位の記憶容量を備える。これらの値やブロック数は１つの例である。
【００３８】
［４．データ記録処理動作］
次に、図４及び図５を参照して、本実施の形態の撮像装置でのデータ記録処理動作について説明する。
図４に示すように、ビデオデータの記録（録画）処理が開始されると、記録制御を行うＣＰＵ３４では、記録メディアの記録領域を予約する処理が行われる（ステップＳ１１）。この記録領域の予約処理は、図３に示した１書き込み単位の整数倍の単位で行われる。その予約を確定させるために、記録メディア３７のファイル管理情報６３に管理データを書き込ませる（ステップＳ１２）。
このように予約は、記録メディアのファイル管理情報への書き込みだけで行われ、その予約された実際の記録領域は、予約されただけでは特に何も処理を行わず、以前に書き込まれたデータがある場合には、記録データが残ったままの状態である。
【００３９】
そして、記録制御を行うＣＰＵ３４では、メディアバッファ５８に、１書き込み単位分の記録データの蓄積があるか否か判断する（ステップＳ１３）。その判断で、１書き込み単位分の記録データの蓄積があると判断した場合には、メディアバッファ５８に蓄積されたデータを、記録メディア３７に転送して、記録メディア３７の記録部であるファイル６２に記録させる（ステップＳ１４）。このときには、例えばメディアバッファ５８の先頭のデータから順に記録メディア３７に送り、先頭のデータから順に記録メディア３７内の記録部に書き込ませ、１書き込み単位分の記録データを単一のファイルとして記録させる。
【００４０】
その後、１記録単位で一括して記録されたデータは、データ種類ごとの振り分け処理を行う（ステップＳ１５）。この振り分け処理は、ファイルシステムが管理するファイル管理情報の書き換えで行われ、記録データをメディアバッファ５８に配置させた際のデータを元に振り分けるデータ種類が判別される。データの振り分け処理は、図２のファイルシステム制御部６１で行われ、この時点ではまだ記録メディア３７のファイル管理情報６３にはまだ書き込まれてなく、振り分け処理が行われた管理データは、ファイルシステム制御部６１が保持している。
そして次に、記録メディア３７の予約領域が一定残量未満で、予約領域を増やす必要があるか否か判断する（ステップＳ１６）。この判断で、予約領域を増やす必要がある場合には、対応した領域予約処理を行う（ステップＳ１７）。この領域予約処理も、図２のファイルシステム制御部６１で行われ、この時点ではまだ記録メディア３７のファイル管理情報６３にはまだ書き込まれてなく、振り分け処理が行われた管理データは、ファイルシステム制御部６１が保持している。
【００４１】
その後、更新されずに保持された、ステップＳ１５の振り分け処理で生成された管理データと、ステップＳ１７の帯域予約処理で生成された管理データを、記録メディア３７内のファイル管理情報６３に一括して記録させる更新処理を行う（ステップＳ１８）。この更新処理後、ステップＳ１３のデータ量の判断処理に戻る。なお、ステップＳ１８における管理情報の更新処理の詳細については、後述する。
【００４２】
また、ステップＳ１３でメディアバッファ５８に１書き込み単位分の記録データの蓄積がないと判断した場合には、前回の記録メディア３７へのデータの書き込みから、予め設定された時間ｔ０が経過したか否か判断する（ステップＳ１９）。設定時間ｔ０は、例えば２０秒とする。
そして、その時間ｔ０が経過したと判断した場合には、ステップＳ１４に移り、その時点でメディアバッファ５８に蓄積されたデータについて、記録メディア３７側に書き込ませる。このときにも、書き込ませるデータには、書き込み履歴情報のデータを付加させる。
ステップＳ１９で前回の書き込みから時間ｔ０が経過していない場合には、ステップＳ１３の判断に戻る。
また、ステップＳ１６で、予約領域を増やす必要がないと判断した場合にも、ステップＳ１３の判断に戻る。従って、記録メディア３７のファイル管理情報６３の更新は、予約領域を増やす場合にだけ、それまでの書き込みデータに関する管理データとともに一括して更新され、ファイル管理情報６３の更新回数を少なくしてある。
【００４３】
次に、図５のフローチャートを参照して、書き込み履歴情報のデータを生成させる処理例を説明する。この書き込み履歴情報のデータの生成は、図２の書き込み履歴情報生成部５７で実行される。
図５に示すように、メディアバッファ５８に蓄積された、１書き込み単位の記録メディア３７への書き込みタイミングであるか否か判断する（ステップＳ２１）。書き込みタイミングでない場合には、書き込みタイミングになるまで待機する。
そして、書き込みタイミングになったと判断した場合には、第１付加データ及び第２付加データで、１ファイル配置のデータ量に満たないデータの蓄積があるか否か判断する（ステップＳ２２）。
【００４４】
ここで、１ファイル配置のデータ量に満たないデータがある場合には、書き込み履歴情報のデータとして、その第１付加データ及び第２付加データの１ファイル配置のデータ量に満たないデータを配置する（ステップＳ２３）。但し、前回に生成させた書き込み履歴情報でも、同じ第１付加データ及び第２付加データについて配置させた場合には、その前回の書き込み履歴情報の第１付加データ及び第２付加データとの差分のデータを配置する。
【００４５】
さらに、書き込み履歴情報のデータとして、１書き込み単位のデータの内の各種類のデータの配置を示すデータを付加する。また、書き込み履歴情報のデータとして、バージョンや、データが完成しているのか等のデータを、必要により付加する。これらのデータを付加して、書き込み履歴情報のデータは、１書き込み単位のデータ量となるようにしてある。
そして、生成された書き込み履歴情報のデータを、メディアバッファ５８に供給して、メディアバッファ５８の末尾の領域に記憶させる。書き込み履歴情報のデータをメディアバッファ５８の末尾に配置することで、メディアバッファ５８から記録メディア３７へのデータ転送時には、この書き込み履歴情報は、最後に読出されて、記録メディア３７に転送されて書き込まれる。従って、書き込み履歴情報が記録メディア３７に正しく書き込まれた状態では、その書き込み履歴情報と一緒に書き込まれた１書き込み単位の各データは、正しく記録メディア３７に書き込まれた有効なデータとして扱うことができる。
このように配置されて記録メディア３７に書き込まれる書き込み履歴情報を使うことで、何らかの原因で、記録メディア３７への記録が中断した場合の復旧を行うことが可能になる。即ち、予約領域の中のどこまでデータが書かれたかを、この書き込み履歴情報から判別できるようになる。
【００４６】
［５．データ記録動作の具体的例］
次に、図６〜図１２を参照して、具体的な記録動作の例を説明する。
図６〜図１２は、それぞれの図において、（ａ）として、記録部への入力データ又は記録部で生成されたデータの蓄積状態を示す。具体的には、図２の各バッファ５２，５３，５４などに蓄積したデータに相当する。本線データとは、主データであるビデオデータ及びオーディオデータが多重化されたビデオオーディオ多重ファイルのデータである。第１付加データ及び第２付加データは既に説明した付加データであり、書き込み履歴情報は、記録の際に生成される既に説明したデータである。
また、それぞれの図において、（ｂ）として、メディアバッファ５８のデータの蓄積状態を示す。
さらに、それぞれの図において、（ｃ）として、記録メディア３７の各領域の記録状態（但しその一部）を示す。
さらにまた、それぞれの図において、（ｄ）として、ファイル管理情報として書き込まれた管理データについて示す。
図６〜図１２では、１記録単位を８ファイル配置として構成した例として説明してあり、記録メディア３７の記録領域は８つの記録エリアＭ１〜Ｍ８だけを示してある。１つの記録エリアＭ１は、１記録単位のデータが記録される記録容量を有する。
図６〜図１２において、それぞれの領域が空白である状態は、データの書き込みがない状態であり、斜線などで埋めてある領域は、データの書き込みがある状態又は予約された状態を示す。
【００４７】
以下、図６から順に説明する。
まず、図６に、ステップＳ１１での予約処理、及びステップＳ１２でのその予約情報を管理データとして書き込ませる処理の例について説明する。
図６の状態では、図６（ａ）に示すように、入力データや生成データは何もない状態であり、図６（ｂ）に示すように、メディアバッファ５８にも何も蓄積がない。この状態で、予めメモリカードの複数の記録エリアを予約する。この例では、図６（ｃ）に示すように、５つの記録エリアＭ１〜Ｍ５を、予約領域Ｒ１として確保してある。
【００４８】
この予約領域Ｒ１についてのデータ（記録エリアＭ１〜Ｍ５が予約されたことを示すデータ）が、ステップＳ１２で、記録メディア３７側のファイルシステムが管理する、ファイル管理情報６３の領域に管理データとして記録される。
【００４９】
図７は、図６の予約が行われた状態で、１記録単位のデータが、入力又は生成した状態を示す。ここでは、図７に示すように、本線データ（ビデオデータ及びオーディオデータ）として、例えば７ファイル配置単位を越えるデータ量の本線データｄ１１がバッファに蓄積している状態である。第１付加データｄ２１及び第２付加データｄ３１については、それぞれ１記録単位のデータ量未満である。
【００５０】
図８は、図７のデータ入力があった場合の、書き込み履歴情報の生成及びメディアバッファへの書き込み例を示した図である。
この状態では、１記録単位のデータ量未満のデータである、第１付加データｄ２１及び第２付加データｄ３１が、書き込み履歴情報のデータｄ４１内にそのまま配置される。この配置処理が、図５のフローチャートのステップＳ２３の処理に相当する。なお、第１付加データｄ２１及び第２付加データｄ３１の内で、省略可能なデータについては省略して、書き込み履歴情報に配置してもよい。
また、メディアバッファ５８に配置される８ファイル配置単位のデータの内の、それぞれのファイル配置単位のデータが、どのデータであるのかを示す配置データが、書き込み履歴情報内に付加される。この処理が、図５のフローチャートのステップＳ２４の処理に相当する。ここまでの処理で生成された書き込み履歴情報のデータは、１ファイル配置単位のデータ量のデータとされる。
【００５１】
そして、本線データとして、例えば７ファイル配置単位を越えるデータ量の本線データｄ１１の内の７ファイル配置単位分の本線データｄ１２が、メディアバッファ５８に転送されて、蓄積される。さらに、メディアバッファ５８の末尾の１ファイル配置単位分の領域には、書き込み履歴情報のデータｄ４１が蓄積される。なお、本線データのうち１ファイル配置単位未満の本線データｄ１３は、ビデオバッファなどに残った状態であり、そのまま蓄積処理が行われる。書き込み履歴情報のデータｄ４１内に配置した、第１付加データｄ２１及び第２付加データｄ３１についても、それぞれのバッファに残ったままで、そのまま継続して蓄積処理が行われる。
ここまでの処理で、１記録単位分のデータがメディアバッファ５８に蓄積され、図９の書き込み処理に移る。
【００５２】
図９の書き込み処理では、メディアバッファ５８に蓄積された１記録単位のデータが、そのままバッファの先頭のデータから順に記録メディア３７側に転送されて、予約した領域の内の先頭のエリア（ここでは記録エリアＭ１）に記録される。記録エリアＭ１に記録された状態も、メディアバッファ５８に蓄積された状態と同じ状態で、先頭から７ファイル配置単位の区間に、本線データｄ１２が配置され、末尾の１ファイル配置単位の区間に、書き込み履歴情報のデータｄ４１が配置される。
このデータ記録があると、図９（ｄ）に示すように、管理データで、記録エリアＭ１に、本線データｄ１２と書き込み履歴情報のデータｄ４１が配置されたことが示される。また、記録エリアＭ１は予約領域から記録済み領域に変化し、予約領域Ｒ２は、記録エリアＭ２〜Ｍ５に変化する。但し、この時点では更新された管理データは、図２のファイルシステム制御部６１内に保持され、まだ記録メディア３７側には記録されていない。
【００５３】
図１０は、さらに図９の書き込みが行われた状態で、新たに１記録単位である１ＢＵのデータが、入力又は生成した状態を示す。ここでは図１０に示すように、本線データ（ビデオデータ及びオーディオデータ）として、例えば６ファイル配置単位を越えるデータ量の本線データｄ１４がバッファに蓄積した状態である。なお、図１０（ａ）などに示す本線のバッファは、リングバッファとして示してあり、蓄積位置が順に変化している。
さらに、第１付加データｄ２２についても、１ファイル配置単位のデータが蓄積した状態である。第２付加データｄ３２については、依然として１ファイル配置単位のデータ量未満である。
【００５４】
図１１は、この図１０の状態に蓄積したときの、メディアバッファ５８に書き込ませる状態及び書き込み履歴情報の生成状態を示した図である。
この状態では、本線データとして、例えば６ファイル配置単位を越えるデータ量の本線データｄ１４（図１０）の内の６ファイル配置単位分の本線データｄ１５が、メディアバッファ５８に転送されて、蓄積される。また、１ファイル配置単位分の第１付加データｄ２２が、メディアバッファ５８に転送されて、蓄積される。さらに、メディアバッファ５８の末尾の１ファイル配置単位分の領域には、書き込み履歴情報のデータｄ４２が蓄積される。
【００５５】
この書き込み履歴情報のデータｄ４２には、１ファイル配置単位のデータ量未満のデータである、第２付加データｄ３２が配置される。このときには、前回の書き込み履歴情報のデータｄ４１に配置した第２付加データｄ３１と、第２付加データｄ３２との差分のデータが、データｄ４２として配置される。
【００５６】
ここまでの処理で、１記録単位（１ＢＵ）である８ファイル配置単位分のデータがメディアバッファ５８に蓄積され、図１２の２サイクル目の書き込み処理に移る。なお、各データのバッファには、１ファイル配置単位未満の本線データｄ１６が残り、１ファイル配置単位未満の第２付加データｄ３２が残っていて、そのままその残ったデータに続けて蓄積が行われる。
【００５７】
図１２の書き込み処理では、メディアバッファ５８に蓄積された１記録単位のデータが、そのままバッファの先頭のデータから順に記録メディア３７側に転送されて、予約した領域の内の空いている先頭のエリア（ここでは記録エリアＭ２）に記録される。記録エリアＭ２に記録された状態も、メディアバッファ５８に蓄積された状態と同じ状態で、先頭から６ファイル配置単位の区間に、本線データｄ１５が配置され、次の１ファイル配置単位の区間に、第１付加データｄ２２が配置され、末尾の１ファイル配置単位の区間に、書き込み履歴情報のデータｄ４２が配置される。
このデータ記録があると、図１２（ｄ）に示すように、管理データで、記録エリアＭ２に、本線データｄ１２と書き込み履歴情報のデータｄ４１が配置されたことが示される。また、記録エリアＭ２は予約領域から記録済み領域に変化し、予約領域Ｒ３は、記録エリアＭ３〜Ｍ５に変化する。この時点でも、更新された管理データは、図２のファイルシステム制御部６１内に保持され、まだ記録メディア３７側には記録されていない。
【００５８】
そして、予約領域が変化して、その予約領域の残量が所定量以下となったとき、予約領域を拡張する処理が行われる。この予約領域を拡張する処理は、図４のフローチャートのステップＳ１７で行われる。その後、その予約領域を拡張した管理データと、ステップＳ１５で振り分けた結果の管理データとが、ステップＳ１８で同時に記録メディア３７側のファイル管理情報６３に一括して記録される。
【００５９】
［６．管理データの振り分け例］
次に、図１３及び図１４を参照して、図４のフローチャートのステップＳ１５で行われる、データの振り分け処理の具体例について説明する。ここでは、記録メディア上の１組のビデオデータ及びオーディオデータが記録される、連続した領域の１つのデータに対して、その管理データを振り分けた管理データとする処理が行われる。
【００６０】
図１３の例では、図１３（ａ）として、記録メディアの各エリアでの記録状態を示し、図１３（ｂ）として、管理データの生成状態を示す。但し、図１３（ｂ）の状態では、管理データを生成させただけであり、記録メディア３７のファイル管理情報６３（図２）には、生成されたデータが記録されていない状態を示す。
【００６１】
この例では、図１３（ａ）に示すように、３つの記録エリアＭ１，Ｍ２，Ｍ３にデータが記録された状態を示し、本線データｄ１１，ｄ１２，ｄ１３と第１付加データｄ２１，ｄ２２と、第２付加データｄ３１が、３つのエリアに分かれて記録されている。この３つの記録エリアＭ１，Ｍ２，Ｍ３への記録は、図６〜図１２で説明したように、データが生成された順で記録されている。
このとき、各記録エリアＭ１，Ｍ２，Ｍ３の末尾の書き込み履歴情報のデータｄ４１，ｄ４２，ｄ４３を位置した記録アドレス（記録領域）を、１つの書き込み履歴情報の管理データＤ４０として、一括したデータとする。
【００６２】
また、メディアバッファ５８にそれぞれのデータを配置した制御を行った際の情報に基づいて、本線データｄ１１，ｄ１２，ｄ１３を記録した記録アドレスを判断する。そして、その本線データｄ１１，ｄ１２，ｄ１３の記録アドレスなどを示す管理データＤ１０を生成させる。
同様に、また、メディアバッファ５８にそれぞれのデータを配置した制御を行った際の情報に基づいて、第１付加データｄ２１，ｄ２２を記録した記録アドレスを判断し、その第１付加データｄ２１，ｄ２２の記録アドレスなどを示す管理データＤ２０を生成させる。
さらに、また、メディアバッファ５８にそれぞれのデータを配置した制御を行った際の情報に基づいて、第２付加データｄ３１を記録した記録アドレスを判断し、その第２付加データｄ３１の記録アドレスなどを示す管理データＤ３０を生成させる。
この図１３に示す状態は、管理データを生成させただけであり、図４のフローチャートのステップＳ１５の処理が行われた状態であり、管理データは、記録メディア３７のファイル管理情報６３としてはまだ記録されていない。
【００６３】
次に、図４のフローチャートのステップＳ１６，Ｓ１７の処理が行われて、図１４に示す状態の処理に移行する。
即ち、まず、図４のフローチャートのステップＳ１６に示すように、予約領域として、必要なデータ量（ここでは５ファイル配置単位分）が確保される。このため、新たに記録エリアＭ６，Ｍ７，Ｍ８が予約領域となり、そのことが管理データで示される。
【００６４】
さらに、図４のフローチャートのステップＳ１７の処理として、図１３に示した処理で生成された管理データと、新たに予約領域となった記録エリアＭ６，Ｍ７，Ｍ８についての管理データ、つまり図１４に示した管理データが、一括して書き込まれる。即ち、記録メディア３７のファイル管理情報６３が、図１４に示した管理データとなる。
【００６５】
以上説明したように、本実施の形態の撮像装置によると、撮像して生成されたビデオデータやオーディオデータとそれらの付加データは、バッファに生成（入力）した順序で、ファイル構成単位で各データが混在した状態でメモリカード側に書き込まれる。このため、書き込みを行う際に、記録装置（撮像装置）と記録メディアとの間でのデータ遅延を最低限に抑えた上で、１記録単位ごとにデータが記録メディアに書き込まれるようになる。従って、書き込み途中で予期しない電源断などの中断があっても、記録メディアに未記録のデータを最低限に抑えることができ、何らかのトラブル発生時に、撮像して記録メディアに記録させる途中のデータの消失を最低限にすることができる。
そして、記録メディアに書き込ませた後で、管理データを更新させて、ファイル管理上は、それぞれの種類ごとに連続したデータとして扱える。従って、再生する際には、管理データを使った良好かつ迅速な再生が行える。
【００６６】
また、メディアバッファ５８から記録メディア７３に転送して記録する際には、１記録単位のデータ毎に、案内データである書き込み履歴情報のデータを付加した。このため、その書き込み履歴情報のデータから、記録されたビデオデータやオーディオデータについての付加データを復元できる。即ち、書き込み履歴情報のデータには、ファイル構成単位未満の第１付加データや第２付加データを付加するようしたので、その第１付加データや第２付加データが本来のデータとしてメモリカード側に記録されないで記録動作が中断した場合でも、付加データの復元が行える。
【００６７】
［７．管理情報の更新処理例］
次に、図１５〜図１９を参照して、本実施の形態に係る撮像装置による記録メディア側の管理情報の更新処理についてより具体的に説明する。
本例は、更新情報として、記録メディア３７側のファイルシステムのファイル管理情報６３を適用した例である。本実施の形態は、ファイルシステムのファイル管理情報６３の更新を行う前に、ストリームバッファ７１に蓄積された、主データであるビデオデータ及び／又はオーディオデータを、記録メディア３７に適宜吐き出すものである。
【００６８】
図１５は、本実施の形態におけるファイル管理情報の更新処理例を示すフローチャートである。
まず、記録メディア３７のファイルシステムの更新処理の動作が開始されると、記録制御を行うＣＰＵ３４（図１参照）は、記録メディア３７側のファイルシステムのファイル管理情報６３を更新するタイミングか否かを判定する（ステップＳ３１）。更新タイミングではない場合には、ＣＰＵ３４は、更新タイミングになるまで待機する。
【００６９】
そして、更新タイミングになったと判定された場合、ストリームバッファ監視部７２は、ストリームバッファ７１の空き容量を監視してその空き容量をファイルシステム制御部６１に通知する（ステップＳ３２）。
【００７０】
ファイルシステム制御部６１は、ストリームバッファ監視部７２から通知されるストリームバッファ７１の空き容量とファイル管理情報６３の更新に要する時間分のデータ量（閾値）とを、比較する（ステップＳ３３）。
更新情報の更新に必要なストリームバッファ７１の空き容量は、例えば、予め算出してファイルシステム制御部６１もしくはＲＯＭ３５に保存しておく方法がある。あるいは、記録メディア３７の種別、処理速度、ファイルシステム更新のアクセスパターンにより動的に算出する方法がある。アクセスパターンは、例えば記録メディア３７へのストリームデータ書き出し時に確認することができる。
【００７１】
ファイルシステム制御部６１は、ステップＳ３２の比較処理後、ストリームバッファ７１の空き容量がファイル管理情報６３の更新を行うのに十分であるか否かを判定する（ステップＳ３４）。ここで、ストリームバッファ７１の空き容量が十分であると判定された場合、ファイルシステム制御部６１は、ファイル記録処理部５９に対し、直ちにファイル管理情報６３の更新を行うよう指示する。ファイル記録処理部５９は、ファイルシステム制御部６１からの指示を受けて、記録メディア３７側のファイル管理情報６３の更新を実行する（ステップＳ３５）。
【００７２】
一方、ステップＳ３４の判定処理においてストリームバッファ７１の空き容量が十分ではないと判定された場合、ファイルシステム制御部６１は、ファイル記録処理部５９による記録メディア３７側のファイル管理情報６３の更新を一旦保留する（ステップＳ３６）。そして、この間に、ストリームバッファ７１に蓄積されたストリームデータ（ビデオデータとオーディオデータ）を記録メディア３７へ書き出す（ステップＳ３７）。この処理が終了後、ステップＳ３２の処理に戻る。
【００７３】
そして、再度、ファイルシステム制御部６１は、ステップＳ３２〜Ｓ３４の処理を実行し、ストリームバッファ７１の空き容量とファイル管理情報６３の更新に要する時間分のデータ量とを比較し、空き容量の過不足を判定する。ここで、ストリームバッファ７１の空き容量が十分であると判例された場合、ファイル記録処理部５９は、ファイル管理情報６３の更新を行う。ストリームバッファ７１の空き容量が十分ではないと判例された場合には、ステップＳ３６，Ｓ３７の処理が行われる。
【００７４】
上述した本実施の形態では、ストリームバッファにファイル管理情報の更新に要する時間分のストリームデータを溜められる空き容量が無い場合、ファイル管理情報の更新を一旦保留する。そして、更新に要する時間分の空き容量がストリームバッファに確保できるまでストリームバッファにあるデータを先に記録メディアに書き出し、その後、ファイル管理情報の更新を行う。
すなわち、撮像装置等の機器においてストリームバッファの空き容量に基づいて、記録メディア内のファイルシステムのファイル管理情報の更新タイミングを調整する。それゆえ、バッファオーバーフローを発生させることなく、ストリームデータの書き込み及びファイル管理情報の更新を行うことが可能となる。
【００７５】
例えば、管理情報の更新に時間がかかる低速記録メディアを使用時やストリームバッファの容量が小さいシステム、ストリームデータ発生量が多いフォーマット等に適用すると好適である。これらの形態は、ストリームバッファにデータが溜まりやすいので、本開示の技術を適用することにより、ファイル管理情報の更新に要する時間分の空き容量を確実に確保することができる。
【００７６】
（更新処理の第１例）
以下、上述したファイル管理情報の更新処理の第１例として、キャッシュ録画における録画開始時の記録メディア３７への書き込み例を説明する。
キャッシュ録画とは、撮像装置からのストリームデータをキャッシュメモリ（本例のストリームバッファ７１に相当）に繰り返し記録し、録画開始によりキャッシュメモリに記録されているストリームデータを記録メディアに書き込むことである。これにより、現在から所定時間遡って録画することができる。なお、ファイルシステム（ＦＳ）を同期中にファイル管理情報を更新するので、以下の説明において、ファイル管理情報更新中を、ＦＳ同期と記すこともある。
【００７７】
図１６は、従来（同期ピークシフト対応前）のキャッシュ録画における録画開始時の記録メディア３７への書き込み例を説明する図である。図１６のグラフの横軸は時間、縦軸はストリームバッファ内のストリームデータ量を示す。後述する図１７のグラフの横軸及び縦軸も同様である。
【００７８】
図１６に示すように、これまでの記録メディア３７への書き込みは、クリップ生成（クリップ情報書き出し）及びファイル管理情報更新（確定）の間、ストリームデータをストリームバッファ７１に蓄積し、ファイル管理情報の更新が完了後にストリームデータを書き出す、という流れであった。このように、キャッシュ録画開始後、クリップ生成処理とファイル管理情報更新が全て完了してから、ストリームバッファ７１に蓄積されたストリームデータの書き出しを行っていた。
【００７９】
この場合、ファイル管理情報更新中（ＦＳ同期中）は、ストリームデータの書き出しができないため、ストリームバッファ７１にデータが溜まる。ファイル管理情報の書き込みに時間がかかると、バッファサイズ上限を超えバッファオーバーフローが発生し、録画異常終了となってしまう。
【００８０】
ここでクリップ情報は、生成されたクリップに関するメタデータである。クリップ情報は、例えば、複数のクリップを一括管理するためのファイルと、クリップを構成するビデオデータやオーディオデータ等をクリップ毎に管理するためのファイルにより管理される。
【００８１】
図１７を参照して、本開示の一実施の形態による（同期ピークシフト対応後の）キャッシュ録画における録画開始時の記録メディアへの書き込み例を説明する。
本実施の形態では、図１７に示すように、ストリームバッファ監視部７２が、クリップ生成処理内でストリームバッファ７１の空き容量を確認する。ファイルシステム制御部６１は、ファイル管理情報の更新に必要な空き容量が確保できるまで、先にストリームバッファ７１から記録メディア３７へストリームデータの書き出しを行う。そして、ストリームバッファ７１のデータ量をＦＳ同期開始閾値まで減少させ、ストリームバッファ７１に十分な空き容量を確保した後、ファイル記録処理部５９がファイル管理情報の更新を開始する。
【００８２】
このように、ファイル管理情報の更新前に、適宜ストリームバッファ７１からストリームデータを書き出すことで、ファイル管理情報更新中（ＦＳ同期中）に発生するストリームデータを溜めるだけの空きをストリームバッファ７１に用意することができる。（同期ピークシフト）。それゆえ、バッファオーバーフローを発生させることなく、ストリームデータの書き込み及びファイル管理情報の更新を行うことができる。
【００８３】
なお、図１７に示す例では、ファイル管理情報の更新に必要な空き容量を確保するために実施するストリームバッファ７１から記録メディア３７へのストリームデータの書き出しの前に、クリップ生成（クリップ情報書き出し）を行っている。管理情報の一つであるクリップ情報の書き出しに要する時間は、ファイル管理情報更新時のＦＳ同期処理の時間と比較して短時間である。このように、現時点でのストリームバッファ７１の空き容量を利用して、まずはクリップ情報の書き出しを完了させてもよい。また、ストリームデータの書き出しの前にクリップ情報の書き出しを行うことにより、ストリームバッファ７１に十分な空き容量を確保した後に、直ちにファイル管理情報の更新処理に移行することができる。
勿論、図１５の処理に従って、ストリームデータ書き出し、クリップ情報書き出し、そしてファイル管理情報の更新の順に処理を実行してもよい。
【００８４】
（更新処理の第２例）
次に、上述したファイル管理情報の更新処理の第２例として、メディア跨ぎにおける録画開始時の記録メディアへの書き込み例を説明する。
ストリームバッファ７１は、一例として、２つのバッファを備えるリングバッファが用いられる。メディア跨ぎとは、例えばストリームデータの記録先をストリームバッファ７１内において一のバッファ（跨ぎ元）から他のバッファ（跨ぎ先）に切り換えることである。スロット跨ぎとも呼ばれる。
【００８５】
図１８は、従来（同期ピークシフト対応前）のメディア跨ぎにおける記録メディアへの書き込み例を説明する図である。図１８のグラフの横軸は時間、縦軸はストリームバッファ内のストリームデータ量を示す。後述する図１９のグラフの横軸及び縦軸も同様である。
【００８６】
図１８に示すように、これまでの記録メディア３７への書き込みは、まず跨ぎ元クリップのファイナライズデータ書き込み、跨ぎ元ファイル管理情報の更新、跨ぎ先クリップ生成（クリップ情報書き出し）、及び跨ぎ先ファイル管理情報の更新（確定）の間、跨ぎ先ストリームデータをストリームバッファ７１に蓄積する。そして、ファイル管理情報６３の更新が完了後にストリームデータを書き出す、という流れであった。このように、メディア跨ぎでは、跨ぎ元の管理情報と跨ぎ先の管理情報の更新（確定）が全て完了してから、ストリームバッファ７１に蓄積された跨ぎ先ストリームデータの書き出しを行っていた。
【００８７】
この場合、跨ぎ処理中は、ストリームデータの書き出しを行っていなかったため、ストリームバッファ７１にデータが溜まる。第１例であるキャッシュ録画と同様に、ファイル管理情報の書き込みに時間がかかると、バッファサイズ上限を超えバッファオーバーフローが発生し、録画異常終了となってしまう。
【００８８】
図１９を参照して、本開示の一実施の形態による（同期ピークシフト対応後の）メディア跨ぎにおける記録メディアへの書き込み例を説明する。
本実施の形態では、図１９に示すように、ストリームバッファ監視部７２が、跨ぎ処理内でストリームバッファ７１の空き容量を確認する。ファイルシステム制御部６１は、ファイル管理情報の更新に必要な空き容量が確保できるまで、先にストリームバッファ７１から記録メディア３７へ跨ぎ先ストリームデータの書き出しを行う。そして、ストリームバッファ７１のデータ量をＦＳ同期開始閾値まで減少させ、ストリームバッファ７１に十分な空き容量を確保した後、ファイル記録処理部５９がファイル管理情報の更新を開始する。
【００８９】
このように、跨ぎ先ファイル管理情報の更新前に、適宜ストリームバッファ７１から跨ぎ先ストリームデータを書き出すことで、跨ぎ先ファイル管理情報更新中（ＦＳ同期中）に発生するストリームデータを溜めるだけの空きをストリームバッファ７１に用意することができる（同期ピークシフト）。それゆえ、バッファオーバーフローを発生させることなく、跨ぎ先ストリームデータの書き込み及び跨ぎ先ファイル管理情報の更新を行うことができる。
【００９０】
なお、図１９に示す例では、跨ぎ元ファイル管理情報の更新に必要な空き容量を確保するために実施するストリームバッファ７１から記録メディア３７への跨ぎ先ストリームデータの書き出しの前に、跨ぎ先クリップ生成（跨ぎ先クリップ情報書き出し）を行っている。管理情報の一つである跨ぎ先クリップ情報の書き出しに要する時間は、跨ぎ先ファイル管理情報更新時のＦＳ同期処理の時間と比較して短時間である。したがって、図１７の例と同様に、現時点でのストリームバッファ７１の空き容量を利用して、まずは跨ぎ先クリップ情報の書き出しを完了させてもよい。また、跨ぎ先ストリームデータの書き出しの前に跨ぎ先クリップ情報の書き出しを行うことにより、ストリームバッファ７１に十分な空き容量を確保した後に、直ちに跨ぎ先ファイル管理情報の更新処理に移行することができる。
勿論、図１５の処理に従って、跨ぎ先ストリームデータ書き出し、跨ぎ先クリップ情報書き出し、そして跨ぎ先ファイル管理情報の更新の順に処理を実行してもよい。
【００９１】
第１例及び第２例を参照して説明したように、まず、ファイルシステムのファイル管理情報の更新を行うタイミングで、ストリームバッファの空き容量を確認する。そして、空き容量が設定した閾値（少なくともファイル管理情報の更新に要する時間分のデータ量）より小さい場合は、ファイル管理情報の更新を遅らせ、先にストリームバッファ内のストリームデータを書き出してから、ファイル管理情報の更新を行う。これによりバッファオーバーフローを回避することができる。
【００９２】
（詳細）
例えば、ストリームバッファに溜められるストリームデータ量をa秒分と想定する。ｂ秒分の余裕を考えるとＦＳ同期時間に割り当てられる時間の最大値は（ａ−ｂ）秒となる。
録画開始又は録画中あるいはファイナライズ時のＦＳ同期のタイミングで、ストリームバッファの空き容量を確認し、一例として（ａ−ｂ）秒分以上の空き容量がある場合、今まで通りＦＳ同期を先に実行する。
一方、ストリームバッファの空き容量が（ａ−ｂ）秒分未満の場合、（ａ−ｂ）秒分以上の空き容量ができるまでストリームデータを書き出した後、ＦＳ同期を行う。
【００９３】
ＦＳ同期を開始するストリームバッファの空き容量は、今回は固定値としたが、記録メディアの速度に応じて動的に変更する方法もある。記録メディアの速度は記録メディアから該当データを読み出して取得できるものもある。あるいは実際にストリームデータを記録メディアに書き込むことにより、記録メディアの速度を求める方法もある。
【００９４】
上述した第１例であるキャッシュ録画では、ストリームバッファにストリームデータが（ａ−ｂ）秒分以上蓄積した状態のキャッシュ録画開始時は、クリップ生成（クリップ情報書き出し）⇒（ａ−ｂ）秒分以上の空き容量ができるまでストリームデータ書き出し⇒ＦＳ同期という流れになる。
【００９５】
また、第２例であるメディア跨ぎに適用すると、ストリームバッファに空き容量が無い場合、跨ぎ元クリップのファイナライズ⇒跨ぎ先クリップの生成（クリップ情報書き出し）⇒（ａ−ｂ）秒分以上の空き容量ができるまで跨ぎ先ストリームデータ書き出し⇒跨ぎ元ＦＳ同期⇒跨ぎ先ＦＳ同期という流れになる。
【００９６】
なお、ファイル管理情報の更新時の処理の第１例としてキャッシュ録画における録画開始時の記録メディアへの書き込み例、第２例としてメディア跨ぎにおける録画開始時の記録メディアへの書き込み例を説明したが、これらの例に限られるものではない。
例えば、ユーザが撮像装置に設けられた録画ボタンを連打した場合には、短い間隔で新しいストリームデータが生成されるので、ストリームバッファにストリームデータが次々に蓄積される。そこで、本開示の技術を適用してファイル管理情報の更新前にストリームバッファに蓄積されたデータを書き出して、空き容量を確保することが好ましい。また、定常状態におけるファイル管理情報の更新時に本開示の技術を適用してもよく、上述例と同様にバッファオーバーフローを回避することができる。
また、図４のステップＳ１２における領域の予約の確定処理時のＦＳ同期処理に対しても本開示の技術を適用することが可能である。例えば記録メディアが何らかの理由で一時的に書き込み性能が低下し、ストリームバッファにストリームデータが溜まってしまった後の領域の予約の確定時のＦＳ同期処理において、バッファオーバーフローを回避することができる。
【００９７】
また、上述した第２例では、メディア跨ぎを例に説明したが、クリップ跨ぎ、ＦＳ跨ぎ、などがある。クリップ跨ぎはクリップ間の跨ぎ処理である。またＦＳ跨ぎはファイルシステムの管理単位間の跨ぎ処理である。このように、第２例は、物理的又は論理的いずれの記録領域間の跨ぎ処理であってもよい。
【００９８】
［８．変形例］
なお、ここまで説明した実施の形態では、ビデオカメラである撮像装置に組み込まれた記録装置の構成及び処理動作について説明したが、その他の各種記録装置にも本開示を適用することは可能である。即ち、撮像装置以外のビデオデータやオーディオデータを記録媒体に記録させる記録装置に、同様の記録処理を適用してもよい。或いは、ビデオデータやオーディオデータ以外の主データと、その主データの付加データとを同時に記録させる記録装置にも、本開示は適用可能である。
また、図６〜図１４に示した具体的なデータ配置状態についても、実施の形態の原理を示したものであり図示のものとは異なるデータ配列としてもよい。
【００９９】
また、図１に示した撮像装置のような、それぞれの用途の専用の記録装置に本開示の処理を行うように構成させる場合の他に、例えばパーソナルコンピュータ装置とその周辺機器とで構成される情報処理装置（システム）に適用してもよい。即ち、パーソナルコンピュータ装置に、本開示の処理を行うプログラム（ソフトウェア）をインストールさせて、そのプログラムを実行することにより、コンピュータ装置上で同じように、記録メディアなどに各データを記録させるようにしてもよい。
【０１００】
また、上述した書き込み履歴情報などの記録データのデータ構造については、一例を示したものであり、その他の構成としてもよい。データ配列についても好適な一例を示したものであり、その他のデータ配列でもよい。
【０１０１】
なお、本開示は以下のような構成も取ることができる。
（１）
入力されたストリームデータを蓄積するバッファ部と、
前記バッファ部に蓄積されたストリームデータのファイルと、該ファイルを管理する管理情報を記録媒体に記録するファイル記録処理部と、
前記バッファ部の空き容量を監視するバッファ監視部と、
前記バッファ監視部から通知される前記バッファ部の空き容量に基づいて、前記ファイル記録処理部による前記管理情報の更新タイミングを制御するファイルシステム制御部と、を備える
記録装置。
（２）
前記ファイルシステム制御部は、前記バッファ監視部から通知される前記バッファ部の空き容量と、前記管理情報の更新に要する時間分のデータ量とを比較し、前記バッファ部の空き容量が前記管理情報の更新に要する時間分のデータ量より小さい場合、前記ファイル記録処理部を制御して、前記バッファ部に蓄積されている前記ストリームデータを前記記録媒体へ記録させる
前記（１）に記載の記録装置。
（３）
前記ファイルシステム制御部は、前記バッファ部に蓄積されている前記ストリームデータを前記記録媒体へ記録させた後に、前記バッファ部の空き容量が前記管理情報の更新に要する時間分のデータ量より大きくなってから、前記ファイル記録処理部に前記記録媒体の前記管理情報の更新を行わせる
前記（２）に記載の記録装置。
（４）
キャッシュ録画の録画開始時に、前記バッファ部の空き容量が前記管理情報の更新に要する時間分のデータ量より小さい場合、前記ファイルシステム制御部は、前記ファイル記録処理部に前記バッファ部に蓄積されている前記ストリームデータを前記記録媒体へ記録させるべく制御を行う
前記（３）に記載の記録装置。
（５）
前記ストリームデータが一の記録領域と他の記録領域間に跨って記録される場合、前記バッファ部の空き容量が前記管理情報の更新に要する時間分のデータ量より小さい場合、前記ファイルシステム制御部は、前記ファイル記録処理部に前記バッファ部に蓄積されている前記ストリームデータを前記記録媒体へ記録させるべく制御を行う
前記（３）に記載の記録装置。
（６）
撮像部と、
前記撮像部より供給されるストリームデータを蓄積するバッファ部と、
前記バッファ部に蓄積されたストリームデータのファイルと、該ファイルを管理する管理情報を記録媒体に記録するファイル記録処理部と、
前記バッファ部の空き容量を監視するバッファ監視部と、
前記バッファ監視部から通知される前記バッファ部の空き容量に基づいて、前記記録処理部による前記管理情報の更新タイミングを制御するファイルシステム制御部と、を備える
撮像記録装置。
（７）
入力されたストリームデータをバッファ部に蓄積することと、
バッファ監視部により前記バッファ部の空き容量を監視することと、
ファイルシステム制御部により、前記バッファ監視部から通知される前記バッファ部の空き容量に基づいて、記録媒体に記録されるファイルについての管理情報の更新タイミングを制御すること、を含む
記録方法。
（８）
入力されたストリームデータをバッファ部に蓄積することと、
バッファ監視部により前記バッファ部の空き容量を監視することと、
ファイルシステム制御部により、前記バッファ監視部から通知される前記バッファ部の空き容量に基づいて、記録媒体に記録されるファイルについての管理情報の更新タイミングを制御すること、を含む
をコンピュータに実行させるためのプログラム。
【符号の説明】
【０１０２】
１…撮像装置、２…撮像部、３…記録部、３４…ＣＰＵ、３５…ＲＯＭ、３６…ＲＡＭ、３７…記録メディア、３８…記録メディアインタフェース、５１…コーデック部、５２…ビデオバッファ、５３…オーディオバッファ、５４…第１付加データバッファ、５５…合成処理部、５６…第２付加データ生成部、５７…書き込み履歴情報生成部、５８…メディアバッファ、５９…ファイル記録処理部、６１…ファイルシステム制御部、６２…ファイル、６３…ファイル管理情報、７１…ストリームバッファ、７２…ストリームバッファ監視部
【図１】
2013225760.tif 000003
【図２】
2013225760.tif 000004
【図３】
2013225760.tif 000005
【図４】
2013225760.tif 000006
【図５】
2013225760.tif 000007
【図６】
2013225760.tif 000008
【図７】
2013225760.tif 000009
【図８】
2013225760.tif 000010
【図９】
2013225760.tif 000011
【図１０】
2013225760.tif 000012
【図１１】
2013225760.tif 000013
【図１２】
2013225760.tif 000014
【図１３】
2013225760.tif 000015
【図１４】
2013225760.tif 000016
【図１５】
2013225760.tif 000017
【図１６】
2013225760.tif 000018
【図１７】
2013225760.tif 000019
【図１８】
2013225760.tif 000020
【図１９】
2013225760.tif 000021