(57)【要約】【課題】  ディスクに交互に記録された動画又は音声データを連続記録領域の途中でジャンプが発生することがなくデータを読み込むことで、画像データの連続再生を可能とすることにある。【解決手段】  ディスク媒体上の単位領域毎に、交互に記録された動画及び／又は音声データを再生するために記録再生装置に指示するためのプログラムにおいて、前記単位領域毎に記録されたデータの配置情報に基づいて、記録再生装置に対して、前記データを単位領域毎に再生の指示を行う。【選択図】  図１
2006164383.tif 000002
【特許請求の範囲】
【請求項１】
異なる情報が所定のサイズ毎に交互に記録された記録媒体を駆動可能なディスクドライブ装置と接続可能に構成され、前記記録媒体に記録されている情報を再生可能なコンピュータシステムにおいて、メモリと、前記メモリ上のオペレーティングシステムおよびアプリケーションプログラムを実行するＣＰＵと、前記記憶媒体から前記異なる情報を読み出して再生する場合、前記記録媒体上の交互に記録された各領域の配置情報とエクステントサイズをディスクドライブ装置から取得する手段と、前記取得したエクステントサイズを読み出しの単位として、前記記録媒体から異なる情報を交互に読み出す手段とを備えることを特徴とするコンピュータシステム。
【請求項２】
上位のコンピュータシステム上で動作しているアプリケーションプログラムからの指令に基づいて、記録媒体上に互いに異なる一連の情報を所定のサイズ毎に交互に記録する情報記録装置において、前記アプリケーションプログラムからの指令に基づいて、前記交互に記録されるデータサイズを可変としながら前記異なる一連の情報を交互に前記記録媒体上に記録する手段を有することを特徴とする情報記録装置。
【請求項３】
上位のコンピュータシステム上で動作しているアプリケーションプログラムからの指令に基づいて、記録媒体上に所定のサイズ毎に交互に記録された互いに異なる一連の情報を再生する情報再生装置において、  前記記録媒体上に交互に記録された各領域の配置情報とエクステントサイズを、前記コンピュータシステムへ転送する手段と、
前記アプリケーションプログラムからの指令に基づいて、前記互いに異なる一連の情報を前記エクステントサイズを読み出し単位として交互に読み出し再生する手段とを備えることを特徴とする情報再生装置。
【請求項４】
異なる情報が所定のサイズ毎に交互に記録された記録媒体を駆動可能なディスクドライブ装置と接続可能に構成され、前記記録媒体に記録されている情報を再生可能なコンピュータシステム上で動作可能なアプリケーションプログラムにおいて、前記記録媒体上の交互に記録された各領域の配置情報とエクステントサイズをディスクドライブ装置から取得する段階と、前記取得したエクステントサイズを読み出しの単位として記録媒体から異なる情報を交互に読み出すために前記ディスクドライブ装置へ再生コマンドを発行する段階とを備えるアプリケーションプログラム。
【請求項５】
請求項1乃至４において、
前記エクステントサイズは、前記記録媒体上の管理情報領域又は前記ファイルシステムの配置情報に格納されている。
【請求項６】
請求項１乃至４において、
前記情報は動画／音声情報であり、前記エクステントサイズは一定時間の動画／音声サイズに対応する。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ディスクカムコーダ等の動画あるいは音声データ記録再生装置において、3Dカメラ等で撮影したデータのディスク媒体上への記録再生方法に関するものである。
【背景技術】
【０００２】
3Dカメラ等で撮影したデータは左右二つの動画が作成されるため、ディスク媒体上に記録すると、シーク動作をできるだけ生じさせないために、図１に示すような配置で交互に記録される。すなわち、データAが右側のカメラで撮影された動画で、データBが左側のカメラで撮影された動画である。撮影時に二つのデータをバッファメモリに蓄えながら交互に記録すると、記録中に発生するシーク動作を最小限に抑えることができる。
【０００３】
再生時は二つのデータを交互に再生しながら3D表示を行うのであるが、再生コマンドを発行するアプリケーションは、ディスク上のデータ配置がわからないため、ファイルの先頭から適当なサイズで再生コマンドを発行することになる。図 1に示すようにデータAが10MBのエクステント（連続記録領域）3つ、データBが10MBのエクステント3つから構成されているとき、従来の再生コマンドは図６に示すようにエクステントサイズに関係なく、所定量のサイズ（たとえば8MB）で再生を行っていた。すなわち、データAは30MBのデータを8MBづつ3回再生し最後が6MB、データBも30MBのデータを8MBづつ3回再生し最後が6MBとなる。
【特許文献１】特開2003-059196号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、従来の再生方法では図７に示すように再生ヘッドのジャンプが11回も発生してしまう。すなわち、データAのエクステントを読み込んでいる途中でデータBにジャンプし、データBのエクステントを読み込んでいる途中でデータAにジャンプする。さらにデータAやデータBのエクステント末尾で、次のエクステント先頭までジャンプすることになる。図７の数字はジャンプの順番を示すが、全部で11回のジャンプが発生することがわかる。
【０００５】
これではジャンプに時間が取られてしまい、画像データの連続再生ができなくなってしまう可能性がある。
【０００６】
そこで、本発明の目的は、連続記録領域の途中でジャンプが発生することがなくデータを読み込むことで、画像データの連続再生を可能とすることにある。
【課題を解決するための手段】
【０００７】
前記課題は、以下の発明によって達成される。異なる情報が所定のサイズ毎に交互に記録された記録媒体を駆動可能なディスクドライブ装置と接続可能に構成され、前記記録媒体に記録されている情報を再生可能なコンピュータシステムにおいて、
メモリと、前記メモリ上のオペレーティングシステムおよびアプリケーションプログラムを実行するＣＰＵと、前記記憶媒体から前記異なる情報を読み出して再生する場合、前記記録媒体上の交互に記録された各領域の配置情報とエクステントサイズをディスクドライブ装置から取得する手段と、前記取得したエクステントサイズを読み出しの単位として、前記記録媒体から異なる情報を交互に読み出す手段とを備えることを特徴とするコンピュータシステム。
【発明の効果】
【０００８】
本発明では、連続記録領域の途中でジャンプを発生することなくデータを読み込むことで、画像データの連続再生を可能とすることができる。
【発明を実施するための最良の形態】
【０００９】
以下図面を用いて、本発明における実施例を詳細に説明する。図２は本発明の構成概略図である。11は装置全体を制御するCPUで、アプリケーションプログラム1やファイルシステムドライバ2を含む。アプリケーションプログラム1は、入出力デバイス3を通してデータ10の入出力を制御し、コーデック4にデータ10のエンコードとデコードを指示し、メモリ5上に符号化されたデータを蓄積するとともに、ディスク媒体上へのデータの記録再生や編集等をファイルシステムドライバ2に指示する。ファイルシステムドライバ2は、ディスク上の空き領域やファイルの記録位置を調べて、ディスクコントローラ6にディスク8に対するデータ読み書きの指示を与える。このとき、アプリケーションプログラム1はデータのディスク上の位置は気にする必要はなく、ファイルシステムドライバ2がディスク上の空き領域を探して記録したり、データのディスク上の位置を検索して読み出したりする。ディスクコントローラ6はディスク8上へ実際にデータを書き込んだり読み込んだりする。9はディスク8上に書き込まれた実際のデータであり、7の記録再生ヘッドにより読み書きが行われる。本実施例においては、一つのファイルは連続した領域に記録されていても、異なる領域に記録された複数のデータであってもよく、ファイルの一部を成す連続領域に記録された一塊のデータをエクステントと呼ぶ。
【００１０】
図１は本実施例において再生するデータのディスク上での配置であり、データAとデータBとが交互に10MB単位で記録されている。本実施例における記録単位は10MBであるが、これは一例であり記録単位は10MBでなくてもよく、さらに各記録領域のサイズが可変であっても構わない。また図１に示すように、各エクステントはディスク上で分散配置されていてもよい。この二つのデータを交互に再生するわけであるが、従来の方法だとディスク上での連続記録領域を考慮しないので、図６に示すようにアプリケーションプログラム1がファイルシステム2に対して適当に再生サイズを指示する（この例では8MB単位）。その結果、データAのエクステント途中からデータBへのジャンプ、データBのエクステント途中からデータAへのジャンプ、さらに各データのエクステント末尾から次のエクステント先頭までのジャンプが発生してしまい、連続再生ができなくなる可能性がある。
【００１１】
図７に実際のヘッド7の動きを示す。まずデータAの最初のエクステントを8MB分読み出し、次にデータBの先頭にジャンプ（ジャンプ1）してデータBの最初のエクステントを8MB分読み出す。そのままデータAの最初のエクステントの途中に戻り（ジャンプ2）、残り2MBを読み出すとともに、データAの次のエクステントにジャンプして（ジャンプ3）、6MB分のデータを読み出す。次にデータBの最初のエクステントの途中に戻り（ジャンプ4）、残り2MBを読み出すとともに、データBの次のエクステントにジャンプして（ジャンプ5）、6MB分のデータを読み出す。同様にして、残ったデータを読み出していくのであるが、図７に示すように全部で11回ものヘッド7のジャンプが発生してしまう。
【００１２】
そこで、本発明ではジャンプの回数を減らし、連続再生を確実に行うことを目的としている。ディスクからの読み込みサイズを含む再生命令はアプリケーションプログラム1が発行するので、ディスク上のデータ配置情報をアプリケーションプログラム1が知っておく必要がある。これは、記録時にアプリケーションプログラム1がファイルシステム2に指示して、その情報を管理情報ファイル内に保持していてもいいし、再生時にファイルシステムから受け取ってもよい。
【００１３】
図３はアプリケーションプログラム1がファイルシステム2に対して発行する書き込みコマンドである。データAとデータBを交互に記録しており、この一回の書き込みコマンドが一つの連続記録領域（エクステント）に記録されるように制限し、各データに関してサイズ情報を管理情報内に記録しておけば、アプリケーションプログラム1が各データのエクステントサイズを再生時に管理情報から入手し、エクステントを跨らないように再生コマンドを発行することができる。このとき、一回の書き込みコマンドが一つの連続記録領域（エクステント）に記録されるような制限がない場合は、アプリケーションプログラム1は各エクステントのサイズがわからないので、他の手段でエクステントサイズを入手する必要がある。
【００１４】
図４および図５は、それぞれデータAおよびデータBのファイルシステム2内の配置情報を示している。これはセクタ（2KB単位）番号で表される開始アドレスとバイトサイズで表されるサイズの組からなり、一組が一つのエクステントを表す。たとえば、各エクステントのサイズは10MBなので5000セクタ分に相当し、データAの最初のエクステントはセクタアドレス50001から開始され、セクタアドレス55000で終了となる。他のエクステントに関しても同様であり、データAとデータBの最初の二つづつ（計4つ）のエクステントは連続しており、データAとデータBの最後のエクステント（計2つ）も連続しているが、前の4つのエクステントとは離れた位置に記録されていることがわかる。このエクステント情報をアプリケーションプログラム1に渡すことによっても、アプリケーションプログラム1はエクステントを跨らないように再生コマンドを発行することができる。
【００１５】
図８は本実施例におけるディスクから2つのデータを交互に読み込むコマンドである。この例では、アプリケーションプログラム1がデータAとデータBの各エクステントを跨らないように再生コマンドを発行している。これにより、ディスクドライブ装置のヘッド位置は図９に示すような動きをし、ヘッド7のジャンプはデータAとデータBの各エクステント間でのみ発生する。なお、データAとデータBの最初の4つのエクステントと、最後の2つのエクステントはそれぞれディスク上で連続して配置されているのでジャンプは回転待ちになり、その間はシークが発生する。すなわち、図９において、ジャンプ番号1,2,3,5が回転待ちであり、ジャンプ番号4がシークを伴う。
【００１６】
ここで、回転待ちは各エクステントの読み込みが終了するのを待ってから、次のエクステントの読み込みコマンドを発行するために生じるもので、アプリケーションプログラム1が読み込みコマンドを連続して発行し、ディスクコントローラ6が読み込みコマンドを連続して処理できれば回転待ちは発生しない。そこで、アプリケーションプログラム1が読み込みコマンドを発行後、完了復帰ではなく即時復帰にして、読み込みコマンドを連続して発行した場合のヘッド7の移動を図１０に示す。この場合、ディスク上に連続して記録されたエクステント間では、ヘッドはジャンプすることなくデータを連続して読み出すことができる。すなわち、ジャンプは離れた位置に記録されたエクステント間で一度だけ発生する。
【００１７】
次に、ディスクから読み込んだデータのメモリ上での配置に関して説明する。通常、一種類のデータを連続して読み出す場合は、図１１に示すように一つのデータ用バッファ領域を準備して、その領域をリングバッファとして使用する。ところが、本実施例のように二種類の異なるデータを交互に読み出す場合は、メモリ上のバッファ領域を二つに分けた方が処理が簡単になる。図１２にデータAとデータBのそれぞれに対して、バッファ領域を設けて記録する例を示す。こうすることによって、メモリ上のエンコードされたデータをデコードするときに、バッファ内のデータを交互にコーデックに転送するだけでデコードできる。
【００１８】
一般に、ディスクからの読み取り速度はデータをコーデックに転送する速度よりも高い。そこで、再生時はメモリ容量がある程度空くまでディスクからのデータ読み込みを一時停止する待ち時間が発生する。この待ち時間を、データAとデータBのエクステント末尾から次のエクステント先頭の間に設定すれば、さらに読み取り効率は良くなる。すなわち、図１に示すように、データAとデータBの各エクステントがディスク上で連続でない場合でも、待ち時間の間にヘッドのジャンプを行うことができ、データの連続再生が途切れる可能性が一層少なくなる。図１３にヘッドがデータを読み込んでいる時間と待ち時間における、電力消費量とメモリ使用量のグラフを示す。図よりわかるように、ディスクからデータを読み込んでいる時に電力消費量は大きく、待ち状態の時には電力消費量は小さくなる。また、ディスクからデータを読み込んでいる時にメモリ上にデータが溜まっていき、待ち状態のときに減っていく。この例のように、待ち状態のタイミングを、エクステント末尾から次のエクステント先頭の間に設定すれば、一回の待ち時間が長くなり、連続再生が途切れる可能性が減るとともに、電力消費量も最小限に抑えられる。
【００１９】
なお、本実施例においては交互に二つの動画を記録再生しているが、交互に二つの音声や、動画と音声一つづつであっても本発明を適用することは可能である。
【図面の簡単な説明】
【００２０】
【図１】ディスク上のデータ配置。
【図２】本実施例の構成概略図。
【図３】ディスクへ2つのデータを交互に書き込むコマンド。
【図４】データAのファイルシステム内の配置情報。
【図５】データBのファイルシステム内の配置情報。
【図６】従来のディスクから2つのデータを交互に読み込むコマンド。
【図７】従来のディスクから2つのデータを交互に読み込む手順。
【図８】本実施例のディスクから2つのデータを交互に読み込むコマンド。
【図９】本実施例のディスクから2つのデータを交互に読み込む手順1。
【図１０】本実施例のディスクから2つのデータを交互に読み込む手順2。
【図１１】通常のメモリ上のデータ配置。
【図１２】本実施例のメモリ上のデータ配置。
【図１３】エクステントサイズ毎の間欠動作とメモリ使用量。
【符号の説明】
【００２１】
1  アプリケーションプログラム
2  ファイルシステムドライバ
3  入出力デバイス
4  コーデック
5  メモリ
6  ディスクコントローラ
7  記録再生ヘッド
8  ディスク媒体
9  記録データ
10  入力データ
11  CPU
【図１】
2006164383.tif 000003
【図２】
2006164383.tif 000004
【図３】
2006164383.tif 000005
【図４】
2006164383.tif 000006
【図５】
2006164383.tif 000007
【図６】
2006164383.tif 000008
【図７】
2006164383.tif 000009
【図８】
2006164383.tif 000010
【図９】
2006164383.tif 000011
【図１０】
2006164383.tif 000012
【図１１】
2006164383.tif 000013
【図１２】
2006164383.tif 000014
【図１３】
2006164383.tif 000015