(57)【要約】【課題】  ＳＤメモリカードなどの不揮発性の記憶媒体に動画像データを記録する場合であっても、チューニング処理を適切なタイミングで実行し、バッファオーバーフローの発生を抑制する。【解決手段】  バッファメモリに蓄積されつつある動画像データが閾値に達した場合には、チューニング処理を行った後に、動画像データを書き込みを行う。一方、動画像データを管理するための付加データのデータ量が閾値に達した場合には、チューニング処理を介さずに、記録処理を行う。【選択図】  図３
2015126417.tif 000002
【特許請求の範囲】
【請求項１】
記録媒体に対してクロック信号を出力する出力手段と、
前記記録媒体に命令を送信すると共に、前記クロック信号を遅延させることにより得られたタイミング信号に応じて、前記記録媒体から送信されたデータを取得する通信手段と、
前記通信手段により、所定のデータ列を有するデータの出力命令を前記記録媒体に送信させ、前記出力命令に応じて前記記録媒体から送信され、前記通信手段が取得したデータに基づいて前記タイミング信号の遅延量を決定するチューニング処理を行うチューニング手段と、
動画像データを一時的に記憶する記憶手段と、
前記動画像データの付加データを生成する生成手段と、
前記動画像データの記録開始の指示の後、前記記憶手段に記憶された動画像データの書き込み命令を繰り返し前記記録媒体に送信して前記動画像データを前記記録媒体に記録すると共に、前記生成手段により生成された付加データの書き込み命令を繰り返し前記記録媒体に送信して前記付加データを前記記録媒体に記録するように、前記通信手段を制御する制御手段とを備え、
前記制御手段は、
前記通信手段により前記動画像データの書き込み命令を出力する前に前記チューニング手段によるチューニング処理を実行させると共に、当該チューニング処理の後に、前記動画像データを前記記録媒体に記録するように前記通信手段を制御し、
前記通信手段により前記付加データの書き込み命令を出力する前には前記チューニング手段によるチューニング処理を行わずに、前記付加データを前記記録媒体に記録するように前記通信手段を制御することを特徴とする記録装置。
【請求項２】
前記制御手段は、前記記憶手段に記憶された前記動画像データのデータ量が所定量に達したことに応じて、前記チューニング手段によるチューニング処理を実行するように制御し、
前記記録媒体に記録される付加データのデータ量が決められた値に達したことに応じて、前記付加データの書き込みを行うように前記通信手段を制御することを特徴とする請求項１に記載の記録装置。
【請求項３】
前記通信手段は、前記決められた値のデータ量の前記付加データを前記記録媒体に記録するために、所定回数の書き込み命令を前記記録媒体に対して発行することを特徴とする請求項２に記載の記録装置。
【請求項４】
記録媒体に対してクロック信号を出力する出力手段と、
前記記録媒体に命令を送信すると共に、前記クロック信号を遅延させることにより得られたタイミング信号に応じて、前記記録媒体から送信されたデータを取得する通信手段と、
前記通信手段により、所定のデータ列を有するデータの出力命令を前記記録媒体に送信させ、前記出力命令に応じて前記記録媒体から送信され、前記通信手段が取得したデータに基づいて前記タイミング信号の遅延量を決定するチューニング処理を行うチューニング手段と、
動画像データを一時的に記憶する記憶手段と、
前記動画像データの記録開始の指示の後、前記記憶手段に記憶された動画像データの書き込み命令を繰り返し前記記録媒体に送信して前記動画像データを前記記録媒体に記録するように、前記通信手段を制御する制御手段とを備え、
前記制御手段は、前記通信手段により前記動画像データの書き込み命令を出力する所定期間前に前記チューニング手段によるチューニング処理を開始させると共に、当該チューニング処理の後に、前記動画像データを前記記録媒体に記録するように前記通信手段を制御することを特徴とする記録装置。
【請求項５】
前記制御手段は、前記動画像データのデータレートに基づいて前記チューニング手段により前記チューニング処理を開始させるタイミングを決めることを特徴とする請求項４に記載の記録装置。
【請求項６】
書き込み可能な不揮発性の記憶媒体に、動画像データ並びに当該画像データを管理するための付加データを含むファイルを記録する記録装置の制御方法であって、
メモリに、動画像データを一時的に記憶するための第１のバッファ領域と、前記付加データを一時的に記憶するための第２のバッファ領域とを確保する工程と、
前記第１、第２のバッファ領域に、記録すべき動画像データ並びに付加データを格納していくと共に、前記第１、前記第２のバッファ領域それぞれに、それぞれに対して設定したデータ量が格納されるたびに、それぞれのバッファ領域内のデータを前記記憶媒体に記録する記録工程と、
前記記憶媒体へのアクセスのためのチューニング処理を行うチューニング工程とを有し、
前記記録工程では、
前記第１のバッファ領域に前記設定したデータ量の動画像データが格納されるたびに、前記チューニング工程によるチューニング処理を行い、当該チューニング処理の後に前記動画像データの記録処理を行い、
前記第２のバッファ領域に前記設定したデータ量の付加データが格納された場合には、前記チューニング工程によるチューニング処理を行わずに、前記付加データの記録を行う
ことを特徴とする記録装置の制御方法。
【請求項７】
書き込み可能な不揮発性の記憶媒体に、動画像データを記録する記録装置の制御方法であって、
メモリに、記録する動画像データを一時的に記憶するためのバッファ領域を確保する工程と、
前記のバッファ領域に記録すべき動画像データを格納していくと共に、第１の閾値のデータ量が格納されたことに応じて、前記バッファ領域内の動画像データを前記記憶媒体に記録する記録工程と、
前記記憶媒体へのアクセスのためのチューニング処理を行うチューニング工程とを有し、
前記記録工程では、
前記バッファ領域に前記第１の閾値に対応する動画像データが蓄積されるタイミングより、前記チューニング工程によるチューニング処理に要する期間だけ前のタイミングで前記チューニング処理の実行を開始する
ことを特徴とする記録装置の制御方法。
【請求項８】
コンピュータに読み込ませ実行させることで、前記コンピュータに、請求項６又は７に記載の方法の各工程を実行させるためのプログラム。
【請求項９】
請求項８に記載のプログラムを格納した、コンピュータが読み込み可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、メモリカードなどの記憶媒体への情報を記録する技術に関するものである。
【背景技術】
【０００２】
従来、ＳＤメモリカードに対してデータの読み出しを行う場合、ホストからカードに与えられるクロックに対する、カードからのデータ送信の遅延量は規格化された固定値であった。したがって、ホスト側はクロック送信に対して規定量の遅延タイミングでデータラッチを行うことにより、カードからのデータ読み出しを行うことが出来た。しかし、近年、ＳＤメモリカードの転送レートの向上によるクロックの高速化が進み、前述の遅延量は固定値では規定できなくなった。このため、ＳＤメモリカードの高速規格であるＵＨＳ−Ｉ（Ｕｌｔｒａ  Ｈｉｇｈ  Ｓｐｅｅｄ）においては、高速のクロックを使用する場合は、カードごとに前記データラッチのタイミングを調整した上でデータ読み出しを行うように規定されている。このラッチタイミングの調整作業はチューニングと呼ばれる（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００８−９０５５６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、ビデオカメラなどでは、メモリカードに対する多量の動画データの書き込みが連続して実行されるため、記録開始後では装置の温度上昇などにより、データをラッチするためのクロックの遅延量が変動し、データを正確に取得することができなることがある。
【０００５】
そこで、上記のチューニング処理を動画データの記録時においても行うことが考えられる。チューニング処理を行っている間は、メモリカードへの書き込みが行えない。そこで、チューニング処理の間は別途用意したバッファメモリ等に動画データを蓄積しておき、チューニング処理が完了した後、再度、バッファメモリに蓄積された動画データを書き込む構成が考えられる。しかしながら、チューニング処理を頻繁に行ってしまうと、記録媒体に動画データを書き込む期間が短くなり、今度は、バッファメモリがオーバーフローする可能性が高くなる。
【０００６】
本発明はかかる問題に鑑みなされたものであり、チューニング処理を適切なタイミングで実行し、バッファオーバーフローの発生を抑制する技術を提供しようとするものである。
【課題を解決するための手段】
【０００７】
この課題を解決するため、例えば本発明の記録装置は、
記録媒体に対してクロック信号を出力する出力手段と、
前記記録媒体に命令を送信すると共に、前記クロック信号を遅延させることにより得られたタイミング信号に応じて、前記記録媒体から送信されたデータを取得する通信手段と、
前記通信手段により、所定のデータ列を有するデータの出力命令を前記記録媒体に送信させ、前記出力命令に応じて前記記録媒体から送信され、前記通信手段が取得したデータに基づいて前記タイミング信号の遅延量を決定するチューニング処理を行うチューニング手段と、
動画像データを一時的に記憶する記憶手段と、
前記動画像データの付加データを生成する生成手段と、
前記動画像データの記録開始の指示の後、前記記憶手段に記憶された動画像データの書き込み命令を繰り返し前記記録媒体に送信して前記動画像データを前記記録媒体に記録すると共に、前記生成手段により生成された付加データの書き込み命令を繰り返し前記記録媒体に送信して前記付加データを前記記録媒体に記録するように、前記通信手段を制御する制御手段とを備え、
前記制御手段は、
前記通信手段により前記動画像データの書き込み命令を出力する前に前記チューニング手段によるチューニング処理を実行させると共に、当該チューニング処理の後に、前記動画像データを前記記録媒体に記録するように前記通信手段を制御し、
前記通信手段により前記付加データの書き込み命令を出力する前には前記チューニング手段によるチューニング処理を行わずに、前記付加データを前記記録媒体に記録するように前記通信手段を制御することを特徴とする。
【発明の効果】
【０００８】
本発明によれば、不揮発性の記憶媒体に動画像を記録中に、その記憶媒体に対するアクセスのチューニングを行っても、動画データのバッファオーバーフローを抑制することが可能になる。
【図面の簡単な説明】
【０００９】
【図１】実施形態の記録装置の構成を説明する図。
【図２】実施形態における記録装置の動作時におけるソフトウェア構成を示す図。
【図３】実施形態における制御方法について説明するフローチャート。
【図４】実施形態における動作の概要を示す図。
【図５】第２の実施形態の動作の概要を示す図。
【図６】動画記録装置のメモリマップを説明する図。
【図７】実施形態におけるメモリカード用のメモリＩ／Ｆのブロック構成図。動画記録装置のメモリマップを説明する図。
【発明を実施するための形態】
【００１０】
以下、本発明に係る実施の形態を詳細に説明する。
【００１１】
［第１の実施形態］
図１は、本発明を適用できる記録装置の構成例を示すブロック図である。以下、図１を参照して、第１の実施形態による全体システムの構成について説明する。
【００１２】
記録装置１００において、入力部１０１は装置外部から動画データを入力する。動画データの入力源は特に問わないが、例えば撮像装置とする。信号処理部１０２は入力された動画データに対してＭＰＥＧ方式等の公知の符号化処理を施して情報量を圧縮する。メモリ１０３は入力された動画データや符号化された動画データあるいは管理情報などの各種情報を記録する。システム制御部１０４はマイクロコンピュータで構成され、不揮発性メモリ１０８に記録されたプログラムを実行することで、記録装置１００の全体の動作を制御する。また、システム制御部１０４は、メモリカード１１１に記録されるファイルを管理するためのファイルシステムを有する。操作部１０５は、電源スイッチや動画の記録開始、停止を指示するためのスイッチ等、各種のスイッチを備える。ユーザは操作部１０５を操作することにより、記録装置１００に対する動作を指示する。
【００１３】
不揮発性メモリ１０８は、システム制御部１０４を動作させるためのプログラムを記憶する。ＲＡＭ１０９はシステム制御部１０４の処理に必要な各種のデータを記憶する。メモリインターフェース（ＩＦ）１０７は、不図示のコネクタを介してメモリカード１１１と通信を行い、メモリカード１１１に対して各種のコマンドやデータを送信すると共に、メモリカード１１１からの情報を受け取って、システム制御部１０４に送る。また、バス１１０は各処理を接続し、それら間のデータを送受信するものである。チューニング部１０６は図２で後述する方法で最適なデータラッチタイミングを決定する。
【００１４】
なお、実施形態における記録装置が記録する対象である、書き込み可能な不揮発性の記憶媒体であるメモリカード１１１は、ＵＨＳ−Ｉ仕様に準拠するＳＤメモリカードとして説明するが、先に説明した課題となり得る記憶媒体（又は記録媒体）であれば本実施形態では対応することができるので、必ずしもＳＤメモリカードに限定されるものではない。また、本実施形態では、メモリカード１１１は不図示の装置、排出機構により記録装置１００に対してユーザが自由に取り外しできるように構成している。しかし、メモリカード１１１を記録装置１００に内蔵する構成としてもよい。
【００１５】
次に、本実施形態のメモリＩＦ１０７の詳細構成について説明する。図７（Ａ）は、メモリＩＦ１０７の機能構成の一例を示すブロック図である。メモリＩＦ１０７は、メモリカード１１１へのデータの書き込み及び読み出しにおいて、ＣＬＫライン、ＣＭＤライン、及びＤＡＴラインを介して信号及びデータの送受信を行う。具体的に、クロック発生部７０１は、読み書きのタイミング制御に利用され、クロックパルスで構成されたクロック信号（ＣＬＫ信号）をＣＬＫラインを介して出力する。クロック信号は、メモリカード１１１に対してホスト（記録装置１００）からのデータ書き込み、および、カードからホストへのデータ読み出しのデータタイミングを与える。即ち、メモリカード１１１は、ホストから送信されたクロックに同期して、レスポンスやデータをホストに送信する。また、クロック信号は、以下に説明するホストコントローラ７０２に対してデータ送出および受信のタイミングを与える。
【００１６】
ホストコントローラ７０２は、読み書きに係るコマンド（命令）信号の出力、及びメモリカード１１１からのコマンドに対するレスポンス信号の受信を、ＣＭＤラインを介して行う。またホストコントローラ７０２は、メモリカード１１１に書き込むデータ、あるいはメモリカード１１１から読み出したデータを、ＤＡＴラインを介して送受信する制御を行う。
【００１７】
データの読み書きにおいて、上述したようにクロックパルスとデータの送受信のタイミングは異なる。このため遅延素子７０３は、メモリカード１１１からのデータ読出時に、クロック発生部７０１からのクロック信号の位相をシステム制御部１０４からの制御に従って遅延させ、メモリカード１１１から出力されたデータをラッチするタイミング信号を生成する。フリップフロップ７０４は、遅延素子７０３からのタイミング信号に従ってメモリカード１１１から出力されたデータをラッチする。フリップフロップ７０５は、ホストコントローラ７０２から出力されたデータをラッチして、メモリカード１１１へデータを出力するタイミングをＣＬＫラインのタイミングと同期させる。なお、コマンドの入出力、及びデータの送受信に応じたＣＭＤラインとＤＡＴラインとの間の切り替えは、ホストコントローラ７０２の制御に従って信号分岐部７０６により行われる。
【００１８】
なお、本実施形態のメモリＩＦ１０７は、記録装置１００内に内蔵されているが、ＵＳＢインターフェースやその他のインターフェースを介して外付けされるＳＤカードリーダ／ライタ等に内蔵された構成とすることもできる。また、本実施形態では、メモリカードＩＦ１０７に接続される制御対象のメモリとしてＳＤカードを例に挙げ説明するが、これに限らず、データ受信時の遅延量が固定されておらず、サンプリング位置の位相設定が必要になるその他のメモリカードであってもよい。
【００１９】
さらに、遅延素子７０３の内部構成について、図７（Ｂ）を用いて説明する。遅延素子７０３は、所定数の遅延回路７１０と、各遅延回路７１０からの出力のうちの１つを選択するセレクタ７１１とで構成される。本実施形態の遅延素子７０３は、一例として１５個の遅延回路７１０を有し、遅延段数を１６段階に変更可能であるものとして説明する。各遅延回路７１０は、クロック発生部７０１が出力したクロック信号、あるいは直前の遅延回路７１０から出力されたクロック信号を、クロック信号の１周期よりも短い所定の時間だけ遅延させる。本実施形態では、各遅延回路７１０における遅延量は、メモリカード１１１からのレスポンスデータが、ハイレベル（論理１）とローレベル（論理０）の間での反転に要する期間（反転期間）に基づいて決められる。本実施形態では、各遅延回路７１０における遅延量が、反転期間の約１／２となるように決定されるが、これより短い期間とすることも可能である。前述のように、各遅延素子の遅延量は、温度特性等により変動することがある。また、反転期間の長さは、メモリカード１１１に対するデータの書き込み、読み出しのための規格等により規定される。また、遅延段数は１６に限らず、適宜設定することが可能である。１つの遅延回路７１０の遅延量は、クロック発生部７０１から出力されるクロックパルス周期の１／１６の期間であるとする。つまり、全ての遅延回路７１０で遅延がなされることでクロックパルスは１周期分の遅延量となるものとする。セレクタ７１１は、システム制御部１０４からの指示に応じて、クロック発生部７０１及び各遅延回路７１０のいずれかが出力したクロック信号を、フリップフロップ７０４の動作クロック（ラッチクロック）として出力する。このように、セレクタ７１１が選択するクロック信号を変更することで、フリップフロップ７０４の動作クロックが有する遅延量を調整可能である。
【００２０】
次に、本実施形態における動画記録時のシステム構成と個々の役割ついて説明する。図２は、主として、システム制御部１０４がソフトウェアを実行した際の、動画記録のシステム構成を説明する図である。
【００２１】
アプリケーション２０１は記録装置１００のメモリ１０３に蓄積された動画データ、付加情報データを管理するモジュールである。アプリケーション２０１はメモリ１０３上の所定量の動画データに対してファイルシステム２０２にファイル単位でライト、リード要求を実行する。また、アプリケーション２０１はチューニングドライバ２０４を制御し、チューニングの実施、非実施の制御を行う。ファイルシステム２０２は本記録装置で生成するデータをファイルとして管理するためのモジュールであり、アプリケーション２０１からのライト、リード要求に応じてデバイスドライバ２０３へライト、リード要求を実行する。チューニングドライバ２０４はデバイスドライバ２０４を制御して、メモリカード１１１にテストパターンの出力を要求するコマンド（出力命令）を送信する。デバイスドライバ２０３はメモリカード１１１から出力されるテストパターン信号をデータラッチタイミングを変えながら受信し、最適なデータラッチタイミングを決定する。テストパターン出力要求コマンド送信から最適なデータラッチタイミング決定までの制御をチューニング制御と呼ぶ。デバイスドライバ２０４はメモリＩＦ１０７を制御するドライバであり、メモリカード１１１に対し、前述したチューニングに必要なコマンド、また、データライト、リード等の要求を実行する。
【００２２】
次に、以上の構成を有する本実施形態のデジタルカメラ１００におけるチューニング処理について説明する。チューニング処理は、チューニングドライバ２０４がデバイスドライバ２０３を制御することにより実行される。
【００２３】
まずアプリケーション２０１によってチューニング動作が指示されると、以降はチューニングドライバ２０４とデバイスドライバ２０３による制御となる。システム制御部１０４は、メモリＩＦ１０７のクロック発生部７０１にクロック信号の送信を開始させる。またシステム制御部１０４は遅延素子７０３におけるクロック信号の遅延段数を初期化（「１」に設定）する。ホストコントローラ７０２は、テストデータを送信させるためのテストデータ送信コマンドを発行する。この結果、テストデータ送信コマンドが、ＣＭＤラインを介してメモリカード１１１に送信される。テストデータは、予め定められた所定パターンの６４バイトのデータ列であり、メモリカード１１１は受信しているクロック信号に同期して該データ列を送信するものとする。次に、システム制御部１０４は、ホストコントローラ７０２経由でメモリカード１１１から６４バイトのテストデータを受信する。その際、フリップフロップ７０４は、遅延素子７０３により供給されるタイミング信号に応じてメモリカード１１１からＤＡＴラインを介して受信したデータをラッチし、ホストコントローラ２０２へ供給する。遅延素子７０３により供給されるタイミング信号は、現在設定されている遅延段数に従って遅延素子７０３がクロック信号を遅延させることで生成される。受信データはメモリ１０３に格納される。
【００２４】
システム制御部１０４は、メモリ１０３に格納したデータ列（メモリカード１１１が返却したデータ列のパターン）が、テストデータの所定パターンと一致するか否かを判断する。システム制御部１０４は、受信したデータ列の６４バイト全てが所定パターンと一致すると判断した場合、例えばメモリ１０３に格納されている受信結果テーブルに、現在の遅延段数に関連付けて受信成功の情報を記録する。また、受信したデータ列が、テストパターンに一致しない場合、システム制御部１０４は、受信結果テーブルに、現在の遅延段数に関連付けて受信失敗の情報を記録する。作成されたテーブルはメモリ１０３に格納される。
【００２５】
これ以降、システム制御部１０４は、遅延素子７０３に設定した遅延段数を一つずつ変更しながら同様の処理を繰り返す。遅延素子７０３の最大遅延段数まで、処理を行い、受信結果テーブルが完成すると、システム制御部１０４は、メモリ１０３に格納されている受信結果テーブルを参照して、メモリカード１１１へのアクセス時に遅延素子２０３に設定すべき最適遅延段数を決定する。例えば、受信した遅延段数ｎ乃至ｍの範囲内（ｎ，ｍは共に０乃至１５であり、ｎ＜ｍの関係ある）で、受信成功であった場合、その中央の遅延段数を最適遅延段数として決定する。なお、割り切れない場合には、（ｎ＋ｍ＋１）／２とする。決定された最適遅延段数は、設定遅延量として遅延素子７０３に設定され、これによりマウント時チューニング処理が完了する。
【００２６】
次に記録装置１００による動画データの記録動作について説明する。図３は第１の実施形態における記録動作について説明するフローチャートである。図３の処理はシステム制御部１０４が先に説明したアプリケーション２０１に従って、各処理部を制御することにより実行される。また、図６は記録動作時におけるメモリ１０３の各データの記憶領域（メモリマップ）を示している。図示のごとく、システム制御部１０４は、記録処理に先立って、メモリ１０３内に、符号化された動画像データを一時的に蓄積するための第１の領域（動画像データバッファメモリ）２００１、付加データを一時的に蓄積する第２の領域（付加データバッファメモリ）２００２それぞれを確保する。
【００２７】
ユーザが操作部１０５を操作して記録開始を指示すると、ステップＳ３０１では、システム制御部１０４は、メモリカード１１１に対して、書き込みのためのファイルをオープンする。
【００２８】
ステップＳ３０２では、システム制御部１０４は信号処理部１０２を制御して入力部１０１から入力した動画データを符号化し、符号化された動画データを、メモリ１０３内の動画データ用に割り当てた第１の領域２００１に蓄積していく。
【００２９】
ステップＳ３０３では、システム制御部１０４は再生時に必要なタイムコード、メタデータ等の付加データを、メモリ１０３内の付加データ用に割り当てた第２の領域２００２に蓄積していく。
【００３０】
なお、本実施形態の各付加情報のサイズは数セクタと小さい。そのため、付加情報はメモリカード１１１におけるランダムなアドレスに書き込まれることになり、メモリカード１１１に対して、小さいサイズのデータの書き込みを指示する書き込みコマンドが連続して発行されることになる。
【００３１】
ステップＳ３０４では、システム制御部１０４は、第１の領域２００１に蓄積された未記録の動画データのデータ量が、所定の閾値に達したか否かを判別する。本実施形態では、閾値としてαＭＢを設定する。このαの値は、システム構成やメモリ１０３の容量、更にはメモリカード１１１の書き込み速度を考慮して決定するものとする。さて、メモリ１０３における第１の領域２００１に記憶された未記録の動画データのデータ量が閾値以上の場合はステップＳ３０７に進む。また、第１の領域２００１に蓄積された符号化済みの動画データのデータ量が閾値に達していない場合はステップ３０５に進む。
【００３２】
ステップＳ３０７に処理が進んだ場合、システム制御部１０４はチューニング部１０６を制御して、メモリカード１１１に対して、図２で説明したチューニング処理を実行する。そして、システム制御部１０４は、ステップＳ３１５にて、チューニング処理が完了したか否かを判定し、否の場合にはチューニング処理を継続する。また、チューニングが完了した場合、ステップＳ３１６に進み、メモリカード１１１に対して、ライトコマンドを発行する。そして、オープン状態のファイルに対し、第１の領域２００１に蓄積された動画像データのうち閾値に相当するαＭＢの動画像データをメモリカード１１１への書き込みを行う。なお、本実施形態では、メモリ１０３に書き込まれる動画データのデータレートよりも、メモリカード１１１に対して書き込み可能なデータレートの方が大きい。そのため、メモリ１０３からメモリカード１１１への動画データの転送を開始した後、メモリ１０３に蓄積されている未記録の動画データのデータ量は徐々に減少する。
【００３３】
また、処理がステップＳ３０５に進んだ場合、システム制御部１０４はメモリカード１１１に対して付加データを書き込む必要があるか否かを判別する。付加データの記録が必要な場合、ステップＳ３０６に進み、不要な場合はステップＳ３０２に戻り動画データの符号化を継続する。
【００３４】
ステップ３０６では、システム制御部１０４は、今回メモリカード１１１に対して付加データを書き込むために、書き込みコマンドを所定回数（Ｎ回）以上発行する必要があるか否か判別する。例えば、記録すべき付加データの種類やサイズなどにより、発行される書き込みコマンドの回数を検出することができる。今回付加データを書き込むために発行される書き込みコマンドの回数がＮ回に満たない場合には、ステップＳ３０２に戻る。またＮ回以上書き込みコマンドを発行する場合はステップＳ３０８に進む。このステップＳ３０８では、システム制御部１０４はメモリＩＦ１０７を制御してメモリカード１１１に対してライトコマンドを発行する。そして、メモリ１０３の第２の領域２００２に保持された付加データを、オープンしたファイルに追加してメモリカード１１１に書き込む。メモリカード１１１へのライトコマンドはアプリケーション２０１、ファイルシステム２０２が指定した回数発行する。
【００３５】
ステップＳ３０９では、システム制御部１０４は、動画データの記録中に、記録開始からのファイルサイズがファイルシステムにて規定されている上限のサイズに達したか否かを判別する。例えば、ＦＡＴ３２ファイルシステムの場合には、上限のサイズが４ギガバイトとなる。ファイルサイズが上限に達していない場合、ステップＳ３１１に進み、記録停止の指示があったかどうかを判別する。ファイルサイズが上限に達している場合は、ステップＳ３１０に進み、システム制御部１０４は現在書き込み用にオープン状態のファイルをクローズする。そして、ステップＳ３０１に戻り、後続する動画像データを格納するための新しいファイルをオープンする。
【００３６】
ステップＳ３１１では、システム制御部１０４はメモリカード１１１の容量がフルになった、もしくは記録停止指示があるかを判別する。ＮＯの場合、ステップＳ３０２に戻り、そのまま記録を続ける。一方、ＹＥＳの場合は、システム制御部１０４はステップＳ３１２で動画データの符号化を停止して、ステップＳ３１３でメモリデータ１１１に対する動画データ、付加データの書き込みを停止する。ステップＳ３１４で記録中の動画データファイル、付加データファイルをクローズして処理を終了する。
【００３７】
図４は、動画の記録中における、メモリ１０３の第１の領域２００１に記憶された未記録の動画データのデータ量の推移と、メモリカード１１１へのライトアクセスタイミングとを示す図である。４００は、メモリ１０３の第１の領域２００１に記憶された動画データデータ量を示している。バッファモデル４００の縦軸は第１の領域２００１に蓄積された未記録の動画データのデータ量であり、横軸は時刻ｔである。メモリカード１１１、記録装置を制御するアプリケーション２０１は図１、図２で説明したものと同様である。
【００３８】
４０１、４０３はメモリカード１１１に対しメモリ１０３に蓄積された動画データを書き込むためのアクセスを実行する期間である。メモリカード１１１に対して所定サイズ（αＭＢ）の動画データの書き込みコマンドが発行され、期間４０１、４０３が開始される。４０２は、付加情報やＦＡＴの更新等、数セクタ単位の小さいサイズデータをメモリカード１１１に書き込むための期間を示し、これら付加データなどの書き込みのためのアクセスを実行する期間である。期間４０２において、付加データの書き込みを指示する書き込みコマンドが発行される。アプリケーション２０１は、ユーザにより動画の記録開始の指示があった後、メモリ１０３の第１の領域２００１における未記録の動画データのデータ量が閾値（αＭＢ）を超える時刻Ａ２において、チューニングドライバ２０４に対し、チューニング処理を行うように指示する。チューニング完了後、時刻Ｂ２において、アプリケーション２０１は、ファイルシステム２０２経由でメモリカード１１１にαＭＢの書き込みを実行するよう要求する。
【００３９】
メモリカード１１１に対し、時刻Ｃ２において、アプリケーション２０１は小さいデータサイズである付加データの書き込みアクセスがＭ回発生する。このとき、アプリケーション２０１は、動画像データのライト処理とは異なり、チューニングドライバ２０４に対するチューニング開始を指示せず、ファイルシステム２０２経由でメモリカード１１１に当該付加データの書き込みを実行するように要求する。
【００４０】
以上のように、第１の実施形態によれば、メモリカード１１１への動画データの書き込みコマンドを発行する直前にチューニング処理を行うため、動画データの記録中に、適切なタイミングでメモリカードからのレスポンスを受信することが可能となる。また、動画の記録開始の指示の後、ＦＡＴや付加情報の更新等、小さいサイズのデータの書き込みコマンドが連続して発行される場合は、チューニング処理を実施しない。そのため、付加データの書き込みに要する時間が長い場合であっても、第１の領域２００１（動画データバッファ）のオーバーフローを防ぐことができる。
【００４１】
なお、ステップＳ３０５で判定条件は付加情報の更新としたが、ＦＡＴの更新でもよく、データの種類を限定するものではない。
【００４２】
［第２の実施形態］
次に、第２の実施形態について説明する。上記第１の実施形態では、動画データが動画データバッファにαＭＢ蓄積された時にチューニング処理とライトコマンドを実行するとした。本第２の実施形態においては、動画記録レートとチューニング処理時間を鑑みてチューニング実行タイミングを決定する例を説明する。
【００４３】
また、本第２の実施形態の場合、第１の実施形態で説明した付加データは、動画像データと一体にして記録されるものとする。そのため、記録するためのバッファ領域（第１の領域）は１つでよい。
【００４４】
本第２の実施形態における記録装置の構成およびチューニング動作は、前記第１の実施形態で説明した、図１から図４で説明した構成及び動作と同様である。本第２の実施形態では、ユーザの指示により、信号処理部１０２による動画データの圧縮率を変更することで、記録される動画データのデータレートを変更することができる。
【００４５】
第２の実施形態におけるシステム要件は以下のとおりとする。
・記録される動画データのデータレート（ビットレート）：ＢＲ（Bit Rate(Byte/s）)
・チューニング時間：Ｔｔ（Tuning Time）
・ライトコマンドを発行する第１の領域２００１の閾値：ＷＴ（Write Threshold）
・チューニング実行する第１の領域２００１の閾値：ＴＢＴ（Tuning Buffer Threshold）
なお、上記において、ＴＢＴ＜ＷＴの関係にある。
【００４６】
図５は第２の実施形態における動画データの記録時の、第１の領域２００１に記憶される動画データとメモリカード１１１に対するデータのアクセスを示す図である。図５において、５００は第１の領域２００１に蓄積される動画データのデータ量を示す。５００の縦軸は第１の領域２００１に蓄積された動画データのサイズであり、横軸は時刻ｔである。なお、第１の領域２００１は記録装置１００のメモリ１０３に割り当てられている点は第１の実施形態と同じである。メモリカード１１１、記録装置を制御するアプリケーション２０１は図１、図２で説明したものと同様である。
【００４７】
５０１はアプリケーション２０１がメモリカード１１１に対しライトコマンドを発行するためのバッファの閾値ＷＴである。領域２００１に蓄積されたデータ量がＷＴに達した時点でライトコマンドが発行される。そのため、アプリケーション２０１は、チューニング中に蓄積される動画データ量を算出してチューニング処理を実施するタイミングを決定する。本実施形態では、チューニング処理時にチューニング時間を計測し、メモリ１０３に保持する。アプリケーション２０１はメモリ１０３に保持したチューニング時間を取得できる。また、アプリケーション２０１は、信号処理部１０２から出力される動画データのデータレートを取得できる。
【００４８】
ここで、チューニング中に第１の領域２００１に蓄積される動画データサイズＭＳ（Movie Data Size）は次式で求められる。
条件式１：ＭＳ ＝ ＢＲ×Ｔｔ
よって、チューニング実行する第１の領域２００１の閾値は次式のようになる。
条件式２：ＴＢＴ ＝ ＷＴ − ＭＳ
【００４９】
アプリケーション２０１はメモリ１０３の第１の領域２００１において、閾値ＴＢＴでチューニング処理を開始することにより、目標とする閾値ＷＴでＳＤメモリカード１１１にライトコマンドを発行することができる。
【００５０】
以上のように、第２の実施形態によれば、目標とする動画データサイズの閾値ＷＴでＳＤメモリカード１１１にライトコマンドを発行することができる。つまり、バッファ領域内に蓄積されつつある動画像データのデータ量が、書き込みのための閾値に至るタイミングより所定期間前の段階で、チューニング処理を開始できるので、バッファ領域にバッファオーバーフローを防ぐことができる。
【００５１】
（その他の実施例）
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【図１】
2015126417.tif 000003
【図２】
2015126417.tif 000004
【図３】
2015126417.tif 000005
【図４】
2015126417.tif 000006
【図５】
2015126417.tif 000007
【図６】
2015126417.tif 000008
【図７】
2015126417.tif 000009