JP2001222456A - イメージマスタリングapi - Google Patents

イメージマスタリングapi

Info

Publication number
JP2001222456A
JP2001222456A JP2000334167A JP2000334167A JP2001222456A JP 2001222456 A JP2001222456 A JP 2001222456A JP 2000334167 A JP2000334167 A JP 2000334167A JP 2000334167 A JP2000334167 A JP 2000334167A JP 2001222456 A JP2001222456 A JP 2001222456A
Authority
JP
Japan
Prior art keywords
data
programming interface
recording
application programming
optical media
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2000334167A
Other languages
English (en)
Other versions
JP3857039B2 (ja
Inventor
Michael Scott Mcmurdie
マイケル・スコット・マクムーディ
Daniel A Polfer
ダニエル・エー.・ポルファー
Daniel L Evers
ダニエル・エル.・エバース
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Steel Excel Inc
Original Assignee
Adaptec Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Adaptec Inc filed Critical Adaptec Inc
Publication of JP2001222456A publication Critical patent/JP2001222456A/ja
Application granted granted Critical
Publication of JP3857039B2 publication Critical patent/JP3857039B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/02Editing, e.g. varying the order of information signals recorded on, or reproduced from, record carriers
    • G11B27/031Electronic editing of digitised analogue information signals, e.g. audio or video signals
    • G11B27/034Electronic editing of digitised analogue information signals, e.g. audio or video signals on discs
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/10527Audio or video recording; Data buffering arrangements
    • G11B2020/1062Data buffering arrangements, e.g. recording or playback buffers
    • G11B2020/10814Data buffering arrangements, e.g. recording or playback buffers involving specific measures to prevent a buffer underrun
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/20Disc-shaped record carriers
    • G11B2220/21Disc-shaped record carriers characterised in that the disc is of read-only, rewritable, or recordable type
    • G11B2220/213Read-only discs
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/20Disc-shaped record carriers
    • G11B2220/21Disc-shaped record carriers characterised in that the disc is of read-only, rewritable, or recordable type
    • G11B2220/215Recordable discs
    • G11B2220/216Rewritable discs
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/20Disc-shaped record carriers
    • G11B2220/25Disc-shaped record carriers characterised in that the disc is based on a specific recording technology
    • G11B2220/2537Optical discs
    • G11B2220/2545CDs
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/20Disc-shaped record carriers
    • G11B2220/25Disc-shaped record carriers characterised in that the disc is based on a specific recording technology
    • G11B2220/2537Optical discs
    • G11B2220/2562DVDs [digital versatile discs]; Digital video discs; MMCDs; HDCDs
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/20Disc-shaped record carriers
    • G11B2220/25Disc-shaped record carriers characterised in that the disc is based on a specific recording technology
    • G11B2220/2537Optical discs
    • G11B2220/2583Optical discs wherein two standards are used on a single disc, e.g. one DVD section and one CD section
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/40Combinations of multiple record carriers
    • G11B2220/41Flat as opposed to hierarchical combination, e.g. library of tapes or discs, CD changer, or groups of record carriers that together store one title

Abstract

(57)【要約】 (修正有) 【課題】 光メディアにデータを記録するための方法お
よび装置を提供すること。 【解決手段】 方法は、記録したいデータをクライアン
トアプリケーションによって選択することを含む。イメ
ージマスタリングアプリケーションプログラミングイン
ターフェイスとの接続、光メディアフォーマットの選
択、そして光メディア記録デバイス280の選択を経た
ら、次いで選択されたデータをスタッシュファイル22
8に送信する。次に、選択されたデータを記録する際に
実行される動作からなるタスクリストが作成され、さら
に、オペレーティングシステムのカーネルモードからタ
スクリストを実行することにより、データの記録が行わ
れる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、概して光メディア
へのデータの記録に関し、特に、記録動作中にソースか
ら宛先へとデータを転送する、記録エンジンおよびシス
テムに関する。
【0002】
【従来の技術】光ディスクのデータストレージでは、比
較的小型且つ安価な光ディスクで比較的大容量(例えば
約640メガバイト)のデータストレージを提供するこ
とができる。光メディアにデータを記録する場合は、通
常は1〜99トラックを保持することができる光ディス
ク上の1つまたはそれ以上のトラックに、音声トラック
またはデータファイルを記録すること(「焼き付け」と
呼ばれることもある)を含むのが通例である。データス
トレージとして光ディスクの容量の大きさは、容量が約
1.4メガバイトのフロッピィディスクといった従来の
データストレージに対して圧倒的な進歩を示す。今後も
この傾向が続き、さらに大記憶容量の光ディスクやより
小型の光ディスクが出現すると考えられる。
【0003】光ディスクにデータの焼き付けすなわち記
録を行うプロセスでは、記録するデータまたは音声ファ
イルの選択と、これらファイルの光ディスクへの記録の
間に、いくつかのデータ処理動作が含まれるのが通常で
ある。光メディアにデータを記録するためのクライアン
トアプリケーションまたはソフトウェアは、記録プロセ
スを達成するために使用される。選択されたデータまた
は音声ファイルは、位置決めおよび検証をなされた後
に、記録される順番に順序付けられる。通例は、選択さ
れたデータファイルのデータベースが生成される。この
データベースには、データファイルをそのソースにおい
て識別および位置決めすること、宛先位置を指定するこ
と、ファイルが宛先の光デバイス上に記録される順序を
指定すること、に必要なデータ構造が含まれる。
【0004】生成されたデータベースは、クライアント
アプリケーションで処理される。このクライアントアプ
リケーションは、1つまたはそれ以上の指定ファイルシ
ステム仕様に従ってフォーマットされた選択ソースの内
容を記述する構造か、またはその選択ソースファイルか
らのデータかの、いずれかを含むメモリデータバッファ
を形成し、これらのデータバッファを記録エンジンに引
き渡す。記録エンジンは、これらのデータバッファを受
け取ると、特定の光記録デバイスとの通信に必要なコマ
ンドセットを使用して、必要なコマンドを発行し、適切
なデータを記録デバイスに引き渡すことにより、光ディ
スクを作成する。
【0005】図1は、従来技術による代表的な記録プロ
セスを示したブロック図100である。この記録プロセ
スは、光メディアに記録するためにデータを選択および
処理するようにプログラムされた、クライアントアプリ
ケーション110から開始する。クライアントアプリケ
ーション110は、光メディアにデータを記録したい旨
を、記録エンジン140に伝達する。記録エンジン14
0が、自身が記録用に構成されている旨を応答すると、
クライアントアプリケーション110は、ファイルシス
テムデータベース120のアセンブルを開始する。クラ
イアントアプリケーション110は、ファイルシステム
データベース120を介してデータベース130を識別
し、ファイルシステムデータベース120に作成するデ
ータ構造を指定する。記録されることを識別されたデー
タは、ファイルシステムデータベース120内で書き込
み順に順序付けられ、記録プロセスのためにキャッシュ
されるデータファイルが識別されて、必要なデータ構造
が形成される。ファイルシステムデータベース120の
部分部分(例えば、書き込み順や記録したいデータへの
ポインタ等)は、焼き付け動作に備えてさらに情報を処
理するCD記録エンジン140に引き渡される。
【0006】実際のまたは模擬の焼き付けが実行される
と、CD記録エンジン140は、選択されたデータをシ
ステムメモリ150のバッファに読み込む。CD記録エ
ンジン140は、システムメモリ150のバッファから
光CD記録回路を経て宛先の光デバイス170へとデー
タフローを送信する。選択データが全て読み出され記録
されて焼き付け動作が完了するまでは、データがシステ
ムメモリ150のバッファから読み出されて宛先の光デ
バイス170に記録される度に、さらなるデータがバッ
ファ150に読み込まれる。
【0007】従来技術による記録動作では、選択された
データおよび関連のデータ構造を繰り返し処理する必要
があるため、ホストシステムで実行される全アプリケー
ションが共有するシステムリソースが、かなりの大量に
消費される。光メディア記録デバイスの高速化に伴っ
て、ハードディスクデータソースがバッファメモリにデ
ータを補充できる速度を、光ディスクへの記録速度が超
えることが、頻繁に生じるようになる。バッファメモリ
が、光ディスクの所定のトラックにファイルを中断なく
記録できるように、連続してデータを供給することがで
きないと、バッファアンダーランが生じてしまう。バッ
ファアンダーランが生じると、最終的には焼き付けが停
止する。
【0008】以上から、より密接にホストオペレーティ
ングシステムと統合された、光メディアにデータを記録
するための方法、装置、およびシステムが必要とされて
いることがわかる。この方法およびシステムは、記録す
るように選択されたデータの処理を最小化することがで
き、光メディアへのデータの焼き付けを、バッファアン
ダーランおよびデータの中断を回避する方法で行い得る
べきである。この方法およびシステムは、従来技術の問
題点を回避するように構成されている。
【0009】
【発明の概要】概して本発明は、光メディアにデータを
記録するためのイメージマスタリングアプリケーション
プログラミングインターフェースを提供することによっ
て、これらのニーズを満たすものである。本発明による
方法、システム、および装置は、記録動作に使用される
コンピュータのオペレーティングシステムと統合されて
良く、選択データの記録のプロセスを、ホストコンピュ
ータオぺレーティングシステムのカーネルモードから達
成する。本発明は、プロセス、装置、システム、デバイ
ス、方法、またはコンピュータ読み取り可能メディア等
を含む、種々の方法で実現することができる。以下で
は、本発明の実施形態を幾つか取り上げる。
【0010】1つの実施形態では、光メディアにデータ
を記録するための方法を開示する。この方法は、クライ
アントアプリケーションによる記録したいデータの選択
と、その後に続く、イメージマスタリングアプリケーシ
ョンプログラミングインターフェースとの接続とを含
む。データフォーマットと記録デバイスとが選択される
と、その選択されたデータが、イメージマスタリングア
プリケーションプログラミングインターフェースのスタ
ッシュファイルに送られる。次に、選択データを記録す
るのに必要な動作のタスクリストが形成され、オペレー
ティングシステムのカーネルモードからそのタスクリス
トを実行することによって、データが記録される。
【0011】別の1つの実施形態では、光メディアにデ
ータを記録するためのイメージマスタリングアプリケー
ションプログラミングインターフェースを開示する。こ
のイメージマスタリングアプリケーションプログラミン
グインターフェースは、ディスクマスタと、スタッシュ
ファイルと、ディスクレコーダと、焼き付けエンジンと
を含む、複数のCOMオブジェクトを備える。このイメ
ージマスタリングアプリケーションプログラミングイン
ターフェースは、光メディアにデータを記録する際に達
成されるタスクのリストを作成し、このタスクリスト
は、カーネルモード動作として実行される。
【0012】さらに別の実施形態では、コンパクトディ
スクにデータを記録する方法を開示する。この方法は、
記録したいデータをクライアントアプリケーションによ
って選択することと、イメージマスタリングアプリケー
ションプログラミングインターフェイスのアプリケーシ
ョンフォーマットインタフェースを経てスタッシュファ
イルへとデータを送信することとを含む。スタッシュフ
ァイルは、光メディアデータ構造およびデータで満たさ
れており、タスクリストは、選択データをコンパクトデ
ィスク記録デバイスに記録する際に実行される動作で形
成されている。選択データは、タスクリストをオペレー
ティングシステムのカーネルモードから実行することに
よって、コンパクトディスクに記録される。
【0013】さらにまた別の実施形態では、光メディア
にデータを記録するためのプログラム命令を有したコン
ピュータ読み取り可能メディアを開示する。コンピュー
タ読み取り可能メディアは、(a)光メディアに記録さ
れるデータを選択するためのプログラム命令と、(b)
イメージマスタリングアプリケーションプログラミング
インターフェイスのアプリケーションフォーマットイン
ターフェースを介してスタッシュファイルへと選択デー
タを送信するためのプログラム命令と、(c)スタッシ
ュファイルを光メディアデータ構造およびデータで満た
すためのプログラム命令と、(d)選択データを記録す
る際に実行される動作のタスクリストを作成するための
プログラム命令と、(e)スタッシュファイルから選択
データを読み出すためのプログラム命令と、(f)オペ
レーティングシステムのカーネルモードからタスクリス
トを実行することによって選択データを記録するための
プログラム命令と、を備える。
【0014】本発明から得られる利点および効果は、記
録されることを選択されたデータが光メディアへの記録
に備えて書き込まれるスタッシュファイルを、イメージ
マスタリングアプリケーションプログラミングインター
フェイスが備えている点にある。スタッシュファイルを
使用することによって、イメージマスタリングアプリケ
ーションプログラミングインターフェイスは、選択デー
タをキャッシュおよびバッファリングする必要を回避す
ることができる。データがバッファリングされないた
め、バッファアンダーランのリスクが小さくなる。もう
1つの恩典は、イメージマスタリングアプリケーション
プログラミングインターフェイスが、光メディアに選択
データの記録する際に実行される動作のタスクリストを
作成する点にある。タスクリストは、記録されるデータ
のタイプおよびフォーマットの種類、ならびにターゲッ
トとなる記録デバイスの種類に応じて作成される。タス
クリストはメモリ構造として形成されて、焼き付けの実
行時にイメージマスタリングアプリケーションプログラ
ミングインターフェイスドライバによって読み出される
ことができる。さらにもう1つの利点は、オペレーティ
ングシステムのカーネルモードから焼き付けを実行する
イメージマスタリングアプリケーションプログラミング
インターフェイスドライバである。イメージマスタリン
グアプリケーションプログラミングインターフェイス
は、ホストシステムと統合されており、焼き付けの実行
時には、そのプロセスがカーネルモード動作として実行
される。これによって、記録動作がシステム優先順位の
動作となるため、システムリソースを争ったり共有した
りすることがなくなる。システム優先順位の動作として
実行されると、非常に大きく複雑な音声ファイルやビデ
オファイルを扱う場合ですら、データが中断されるリス
クが小さくなる。
【0015】本発明の原理を例示した添付図面と関連さ
せて、以下で行う詳細な説明から、本発明のその他の利
点がいっそう明らかになる。
【0016】同一の参照番号が同一の構造要素を意味す
る添付図面と関連させて行う以下の詳細な説明から、本
発明を容易に理解することが可能となる。
【0017】
【発明の実施の形態】光メディアに情報を記録する発明
を開示する。以下の説明では、本発明の完全な理解を促
すために、多くの詳細について項目を特定している。し
かしながら、当業者には理解できるように、本発明は、
これらの項目の一部または全てを特定しなくても実施す
ることが可能である。そのほか、本発明を不必要に不明
瞭化するのを避けるため、周知のプロセス動作および/
または構造の説明は省略した。
【0018】図2は、発明の1つの実施形態に従って示
したIMAPIのシステム図200である。システム200
は、IMAPI.EXE記録エンジン201と、クライアントア
プリケーション202と、構成アプリケーション206
と、Imapi.sys 260と、CD-ROMクラス270と、光メ
ディア記録デバイス280とを備える。
【0019】記録エンジンIMAPI.EXE201は、光メデ
ィアに焼き付けられることを選択されたデータを読み出
し、収集し、適合化する関連のインターフェースと、オ
ブジェクトとの、集合として示されている。記録エンジ
ン201は、システムに設定された光デバイスユニット
280の管理およびモニタを行って、記録されることを
選択されたデータを記録デバイス280へと送信する。
【0020】ディスクマスタ220は、記録エンジン2
01へのアクセスを提供する。アクセスは、ディスクマ
スタインターフェースであるIDiscMaster 222を介し
て記録エンジン201に付与される。アクセスが得られ
ると、クライアントアプリケーション202は、特定の
システムに設定されてIMAPI.EXE 201によって実現さ
れる全てのインターフェースおよび方法に対し、完全な
アクセスおよび使用を得ることができる。
【0021】ディスクマスタインターフェース222だ
けでなく、ディスクマスタ220内の他のインタフェー
スもまた、アプリケーションフォーマットインタフェー
スを備える。例えば、図2に示された実施形態は、IRed
bookDiscMaster 224とIJolietDiscMaster 226と
を備える。これらのインタフェースは、光メディアを読
み出し、アクセスし、実装し、再生するのに必要とされ
る、あるいは、無数の光メディアが特定の規格に従うデ
バイスを読み出し、記録し、再生するのに利用される、
論理的および物理的なデータ構造を組織および形成する
ために、データの操作を行う。このようなデバイスの例
として、CD-ROM、CD-R/W、DVD等が挙げられる。IRedboo
kDiscMasterインターフェース224は音声データのた
めのRedbook規格に従っており、記録したいデータが音
声データである場合、クライアントアプリケーション2
02は、記録動作でIRedbookDiscMasterインターフェー
ス224を使用する。IJolietDiscMasterインターフェ
ース226は、データファイルのためのJoliet規格に従
っており、記録したいデータが音声ファイル以外のデー
タファイルである場合、クライアントアプリケーション
202は、記録動作でIJolietDiscMasterインターフェ
ース226を使用する。
【0022】ディスクマスタ220は、システムにより
サポートされる全てのアプリケーションフォーマットイ
ンタフェースを含んでいる。サポートされたフォーマッ
トを利用する実際の記録デバイス280は、システムに
接続されていてもされていなくても良いし、システム上
に存在してもしなくても良いが、システムが特定のアプ
リケーションフォーマットをサポートするように構成さ
れている場合は、ディスクマスタ220に、フォーマッ
トのためのアプリケーションフォーマットインタフェー
スが存在する。例えば図3は、本発明の1つの実施形態
に従って示したディスクマスタ220aである。図3に
おいて、ディスクマスタ220aは、ディスクマスタイ
ンタフェース222と、いくつかのアプリケーションフ
ォーマットインタフェースとを備える。上述したよう
に、ディスクマスタ220aには、システムによりサポ
ートされた個々のフォーマットに対するアプリケーショ
ンフォーマットインタフェースが存在する。図3では、
上述したIRedbookDiscMaster224およびIJolietDiscM
aster 226以外にも、いくつかの付加的なアプリケー
ションフォーマットインタフェースが代表的なシステム
に設定されている。図中に示されたアプリケーションフ
ォーマットインタフェースは、ISO9660フォーマットデ
ータのためのIISO9660DiscMaster 227aと、UDFフォ
ーマットデータのためのIUDFDiscMaster 227bと、C
DエクストラフォーマットデータのためのICDExtraDiscM
aster 227cと、写真データのためのIPhotoCDDiscMa
ster227dと、音声データのためのICD3DiscMaster
227eと、ビデオデータのためのIVideoCDDiscMaster
227fと、I...DiscMaster 227gとを備える。
I...DiscMaster227gインターフェースは、示されて
いる実施形態が包括的または限定的ではなく、IMAPI 2
01によってサポートされる多種類のフォーマットを表
し得ることを示すために、列挙されている。
【0023】再び図2を見ると、クライアントアプリケ
ーション202は、複数本の破線でIMAPI 201に接続
されているように示されている。破線は、クライアント
アプリケーション202と記録エンジン201の間の概
念的な接続を表しており、実際の配線上の接続を表して
いるのではない。クライアントアプリケーション202
は、光メディアに記録されるデータを作成または選択で
きる任意のアプリケーションで良い。代表なクライアン
トアプリケーション202は、Word、Excel、Windows E
xplorerや、Real Jukebox、Media Player、Photoアプリ
ケーション、Movieアプリケーション、Backup等のAudio
Recorderを含む。記録エンジン201の任意部分への
アクセスを得るためには、クライアントアプリケーショ
ン202は、ディスクマスタインターフェース222に
アクセスしなければならない。これは、図2において、
クライアントアプリケーション202からディスクマス
タインターフェース222のインターフェースノードへ
と至る破線210によって表されている。クライアント
アプリケーション202はディスクマスタインターフェ
ース222を読み出して、記録エンジン201が存在す
るかどうか、どんなドライブが提供されるか、そしてど
んなアプリケーションフォーマットインタフェースが存
在するかを決定する。ディスクマスタインターフェース
222は、破線210を介して表されているように、サ
ポートされたフォーマットを列挙し且つ存在するアプリ
ケーションフォーマットインタフェースの識別を提供す
る列挙子を、クライアントアプリケーション202に提
供する。図2では、図示された実施形態の列挙子がRedb
ookおよびJolietフォーマットを列挙し、ディスクマス
タがIRedbookDiscMaster 224およびIJolietDiscMast
er 226の識別を提供する。ディスクマスタインター
フェース222はまた、あるフォーマットが現在アクテ
ィブとして選択されているかを決定し、そのアクティブ
フォーマットの選択をクライアントアプリケーション2
02に提供する。デフォルトフォーマットは存在しな
い。アプリケーションは、あるフォーマットをアクティ
ブとして選択しなければならない。アクティブなフォー
マットがまた選択されていない場合は、クライアントア
プリケーション202はフォーマットを1つ選択しなけ
ればならない。例えば、クライアントアプリケーション
202が音声データを焼き付ける必要がある場合は、ク
ライアントアプリケーション202は、アクティブなフ
ォーマットとしてRedbookを選択する。同様に、クライ
アントアプリケーション202がデータファイルを記録
する必要がある場合は、クライアントアプリケーション
202は、アクティブなフォーマットとしてJolietを選
択する。
【0024】列挙されたフォーマットがクライアントア
プリケーション202に提供されて、あるフォーマット
がアクティブとして選択されて、アプリケーションフォ
ーマットインターフェースの識別がクライアントアプリ
ケーション202に提供されたら、ディスクマスタイン
ターフェース222は、システムによりサポートされ、
やがてシステムに接続される記録デバイス280を列挙
する列挙子を、クライアントアプリケーション202に
提供する。システムに存在する記録デバイス280の列
挙子は、焼き付けエンジン232のIEnumDiscRecorders
インターフェース234内に属している。IEnumDiscRec
ordersインターフェース234は、存在する且つ設定さ
れた記録デバイス280の完全なリストを、233とし
て示された接続を通じてディスクマスタ220に提供す
る。ディスクマスタインターフェース222は、選択さ
れたフォーマットと互換性のある列挙されたレコーダを
クライアントアプリケーション202に提供し、アクテ
ィブとして選択された記録デバイス280が存在する場
合は、その旨をクライアントアプリケーション202に
通知する。アクティブとして選択された記録デバイス2
80が存在しない場合は、クライアントアプリケーショ
ンは、記録デバイス280を1つアクティブとして選択
しなければならない。
【0025】記録エンジン201は、ディスクレコーダ
240のシステムに設定された様々な記録デバイス28
0を維持およびモニタする。サポートされた代表的な記
録デバイスドライバ250a、250b、および250
cが、設定された任意の記録デバイスドライバを表すよ
うに示されたワイルドカード250cと共に示されてい
る。記録デバイスドライバ250a、250b、および
250cは、接続243によって示されているように、
ディスクレコーダ240との間で通信を行う。この方法
では、ディスクレコーダ240が、システムに設定され
得る個々のレコーダのためにパラメータを維持する。デ
ィスクレコーダ240は、255からImapi.sys 260
までで示された接続を介して書き込み層を横切って接続
される。以下で詳述するように、Imapi.sys 260はIM
API 201を、ホストコンピュータのオペレーティング
システムだけでなく実際のデバイス280にもリンクさ
せる。この接続は、他の機能の中でも特に、ディスクレ
コーダ240が記録デバイス280の実際の存在をモニ
タすることを可能とする。例えば、プラグアンドプレイ
記録デバイス280がシステムに追加されたまたはシス
テムから除去されたことを、オペレーティングシステム
が感知すると、その状況情報がディスクレコーダ240
に伝達される。ディスクレコーダ240は、システム内
に実在しているサポートされたデバイスから焼き付けエ
ンジン232への通信を、IDiscRecorderインターフェ
ース242と、241で示された接続とを介して行う。
従って、IEnumDiscRecorderインターフェース234に
よって列挙されるのは、システム内でサポートされて存
在するデバイスのみであり、アプリケーションフォーマ
ットインターフェース224,226が、その範囲をア
クティブフォーマットと互換性のあるもののみに絞って
いる。
【0026】1つの実施形態において、クライアントア
プリケーション202は、焼き付け動作中に進行通知を
受信するか否かを選択しなければならない。すなわち、
そのように構成されている場合、クライアントアプリケ
ーション202は、焼き付け動作の進行をアドバイスす
る状況更新を、ディスクマスタ220から受信すること
ができる。クライアントアプリケーション202が進行
通知を受信することを選択する場合は、クライアントア
プリケーション202は、専用のインターフェース、す
なわちディスクマスタ220が、進行通知を通過させて
提供するインターフェースであるIDiscMasterProgressE
ventsインターフェース204を提供する。図2では、
インターフェースノード212を介して通知が提供され
る。1つの実施形態1つの実施形態において、そのよう
な通知は、光メディアに転送されたデータの割合を示し
ているゲージまたは読み出しをグラフィカルユーザイン
タフェース上に表示するオペレータによってモニタされ
る。別の実施形態において、ゲージまたは読み出しは転
送されるデータの残りの量を示す。
【0027】焼き付け動作中、記録エンジンは、アクテ
ィブフォーマットで必要とされるあらゆる論理的および
物理的データ構造はもちろん、光メディアに転送される
ように選択されたデータをも含む、スタッシュファイル
228を作成する。クライアントアプリケーション20
2は、アプリケーションフォーマットインターフェース
224,226に対して、選択データをスタッシュファ
イル228に追加するよう指示する。ここで使用されて
いるように、IMAPI 201の1オブジェクトとして示さ
れたスタッシュファイル228は、クライアントアプリ
ケーション202によって選択されたデータと、アクテ
ィブフォーマットが必要とする論理的および物理的なデ
ータ構造とを、アプリケーションフォーマットインター
フェース224,226によって満たされたメモリ構造
である。1つの実施形態において、スタッシュファイル
228は800MBファイルであり、IDiscStashインタ
ーフェース230を介してアプリケーションフォーマッ
トインターフェース224,226によるアクセスを受
ける。アプリケーションフォーマットインターフェース
224,226は、接続235からIDiscStashインター
フェース230のインターフェースノードを介してスタ
ッシュファイル228を満たす。
【0028】スタッシュファイル228が充分に満たさ
れると、記録エンジン201は、タスクリストを作成す
ることにより、スタッシュファイル228の内容を記述
し、スタッシュファイル228の特定のレイアウトを識
別する。すると焼き付けエンジン232は、タスクリス
トを検証することにより、スタッシュデータが書き込ま
れる具体的な記録デバイス280の特定のタスクを決定
する。
【0029】実際のまたは模擬の焼き付けが実行される
際に、焼き付けエンジン232は、タスクリストに従っ
てスタッシュファイル228からデータを検索し、その
データをImapi.sys 260に引き渡す。焼き付けエンジ
ン232は、接続237からIDiscStashインターフェー
ス230のインターフェースノードを介してスタッシュ
ファイル228にアクセスする。図2に示されるよう
に、焼き付けエンジン232は、コネクタ245を介し
て書き込み層に接続されており、書き込み層は、コネク
タ255,255aを介しユーザモード/カーネルモー
ド境界(図2においてRing3/Ring0境界として示され
る)越しにImapi.sys 260に接続されている。Imapi.
sys 260は、イメージマスタリングアプリケーション
プログラミングインターフェイスドライバとして広義に
定義されている。 Imapi.sys 260は、上述した様々
なCOMオブジェクトのためのドライバを含み、IMAPI 2
01をホストオペレーティングシステムに統合させる。
【0030】図中に示された実施形態において、Imapi.
sys 260はカーネルモード動作である。従って、カー
ネルモード動作としてのImapi.sys 260は、スタッシ
ュファイルからデータを直接読み出し、そのデータをア
クティブな記録デバイス280に引き渡す。CDROMクラ
ス270は、ほとんどの光学式のディスクメディアを含
む一般のコンパクトディスクデバイスに対するシステム
インターフェースであり、IMAPIに、基本的な読み出し
機能はもちろん一般のデバイスパラメータをも提供する
ものである。実際のまたは模擬の焼き付け動作中に、デ
ータがシステムを介してバッファリングまたはキャッシ
ュされることはなく、焼き付け動作がその他のアプリケ
ーションと共有されるまたは競合することもない。ま
た、CDROMクラス270は、コマンドを記録デバイス2
80に送信するのを妨害される。焼き付け動作は、シス
テム優先順位の動作として実行される。こうして、致命
的なデータの中断およびバッファアンダーランが回避さ
れる結果、光メディアに効率的且つ正確にデータが記録
される。
【0031】そのほか図2のシステム図200に示され
ているのは、構成アプリケーション206である。構成
アプリケーション206は、ホストシステムを、IMAPI
201の特定の動作に対応するように構成する。例えば
構成アプリケーション206は、IMAPI 201によりサ
ポートされた記録デバイス280のためのホストシステ
ムを設定し、さらにそのホストシステムを、クライアン
トアプリケーション202による記録動作の開始時にIM
API 201にアクセスするように設定する。従って、構
成アプリケーション206は、IMAPI 201およびその
関連機能をホストシステム動作に組み込む機能を果た
す。
【0032】図4は、データを光メディアに記録する際
に実行される方法動作を、本発明の1つの実施形態に従
って示したフローチャート400である。この方法は、
クライアントアプリケーションが記録エンジンのディス
クマスタインタフェースと通信する動作410から開始
する。記録エンジンは、クライアントアプリケーション
が記録エンジンをコールするためのインターフェース
を、上述したように提供する。この初期の通信410に
おいて、クライアントアプリケーションは、ディスクマ
スタインターフェースを介して記録エンジンすなわちIM
APIへのアクセスを獲得する。アプリケーションは、ア
クセスを獲得すると、特定のシステムに実装された全て
のインタフェースおよび方法にフルにアクセスすること
ができる。
【0033】動作420において、アプリケーション
は、列挙子を検索することにより、フォーマットを列挙
してアプリケーションにインターフェース識別を提供す
る。1つの実施形態において、フォーマットはRedbook
音声フォーマットとJolietデータフォーマットとを含
む。他の実施形態において、フォーマットは、Redbook
音声フォーマット、Jolietデータフォーマット、ISO966
0データフォーマット、UDFデータフォーマット、CDエク
ストラ音声およびデータフォーマット、ビデオCDビデオ
データフォーマット、フォトCDフォトデータフォーマッ
ト、ならびにCD3音声フォーマット等を、特定のシステ
ム構成によって決定された任意のサポートフォーマット
の組み合わせによって含む。
【0034】動作420において、アプリケーション
は、ディスクマスタフォーマット列挙子を検索すること
により、システムがサポートするフォーマットの集合を
検証し、アクティブフォーマットとなるフォーマットを
選択する。例えば列挙子は、システムがサポートするフ
ォーマットとして、Redbook音声フォーマットおよびJol
ietデータフォーマットを列挙する。例えばWord等のア
プリケーションは、Word文書をCDに焼き付けるためのア
クティブフォーマットとしてJolietデータを選択する。
1つの実施形態において、列挙子はシステムによってサ
ポートされたフォーマットを列挙し、フォーマットが1
つ選択された場合は、ディスクマスタをコールして現在
アクティブなフォーマットを識別する。上述したよう
に、デフォルトフォーマットは存在しない。この実施形
態において、アプリケーションは、アクティブなフォー
マットがクライアントアプリケーションで必要とされる
フォーマットでない場合、またはディスクマスタによっ
てアクティブなフォーマットが識別されなかった場合
に、新しいアクティブなフォーマットを選択するもので
ある。現在アクティブなフォーマットがアプリケーショ
ンで必要とされるフォーマットと同一である場合は、そ
のフォーマットは受諾されて、方法は次の動作に進む。
【0035】動作430において、列挙子は、記録エン
ジンによってサポートされている記録デバイス、動作4
20において選択または受諾されたアクティブフォーマ
ットを利用する記録デバイス、およびシステム内に存在
している記録デバイスを、全てリストに列挙する。選択
されているアクティブなレコーダが存在しない場合、ア
プリケーションはアクティブな記録デバイスを選択しな
ければならない。サポートされた記録デバイスが全てリ
ストに列挙されたら、アプリケーションは、アクティブ
な記録デバイスを1つ選択するか、または現在アクティ
ブな記録デバイスを受諾する。
【0036】動作420,430に共通の1つの実施形
態において、デフォルトフォーマットまたは記録デバイ
スは存在しない。 光ディスクメディアにデータを書き
込むためにディスクマスタを開く初期のコールを発する
に当たり、アプリケーションは、先ずサポートフォーマ
ットのリストからフォーマットを1つ選択し(動作42
0)、次いで、選択されたフォーマットを利用する記録
デバイスのリストから記録デバイスを1つ選択し(動作
430)なければならない。
【0037】方法は、1つの実施形態において、ディス
クマスタがアプリケーションに対して進行通知を受信す
るか否かを選択するように要請する、決定ブロック44
0に進む。進行通知は例えば、焼き付け動作において記
録されたデータの割合や、まだ焼き付ける必要がある残
りのデータの割合、焼き付け動作に残された時間、そし
て動作進行に関するその他の情報等を、アプリケーショ
ンに通知することを含む。アプリケーションが進行通知
を受信する、すなわち「Yes」を選択する場合、方法
は動作450に進み、アプリケーションは記録エンジン
に進行通知インタフェースを提供する。1つの実施形態
において、進行通知インターフェースは、記録エンジン
がアプリケーションに定期的な進行情報を提供する際に
通過する特定のインターフェースノードである。
【0038】アプリケーションが進行通知をサポートま
たは受信しない、すなわち決定ブロック440で「N
o」を選択する場合、方法は迂回動作450に進み、進
行インターフェースは提供されない。すると、方法は決
定ブロック460に進み、記録されるデータが音声ファ
イルかデータファイルかによって2集合の方法動作に分
岐する。方法は、音声データの場合はコネクタAに進
み、データファイルの場合はコネクタBに進む。
【0039】図5は、データを光ディスクに記録する際
に実行される方法動作を本発明の1つの実施形態に従っ
て示したフローチャート400の、続きを示したもので
ある。図5には、音声データを記録する場合の方法が示
されている。方法は、音声データの記録のためにトラッ
クを確保するようにアプリケーションがコールする、動
作470から続きを開始する。1つの実施形態におい
て、システムは、音声ギャップが固定サイズのTrack-at
-Onceモードを利用して記録を行う。この方法は、一度
に1トラックが記録のために開いているような、マルチ
トラック音声ディスクの作成を可能とする。動作470
において、アプリケーションは、音声トラックを確保す
るようにアプリケーションフォーマットディスクマスタ
(例えばIRedbookDiscMaster)にコールする。このコー
ルは、音声データが記録される光メディアをアプリケー
ションフォーマットディスクマスタで分析し、選択され
たメディアにトラック何本分が記録されるか、記録に利
用可能である音声ブロックはいくつあるか、音声ブロッ
クがどのサイズを有するかを評価することによって、プ
ロセスを開始するものである。1つの実施形態におい
て、音声ブロックのサイズは2352バイトでハードコ
ーディングされる。
【0040】方法は次に、クライアントアプリケーショ
ンが、アプリケーションフォーマットディスクマスタに
音声データを提供し、その音声データをスタッシュファ
イルに読み込むようにアプリケーションフォーマットデ
ィスクマスタに指示する、動作480に進む。例えば、
クライアントアプリケーションが、リモートサーバに格
納された音声データのプレイリストを選択したとする。
するとアプリケーションフォーマットディスクマスタ
が、クライアントアプリケーションによってスタッシュ
ファイルへと誘導された音声データを読み出す。
【0041】図5に示された実施形態において、方法
は、音声トラックのサイズを継続的にモニタする。1つ
の実施形態において、音声トラックのサイズは、固定さ
れているかまたはセクタの最大数であるかのどちらかで
ある。決定ブロック490では、トラックが終了したか
否かをアプリケーションフォーマットディスクマスタが
決定し、アプリケーションはスペースが残っている限
り、スタッシュファイルに音声データを読み込むアプリ
ケーションフォーマットディスクマスタに音声データを
提供し続ける。使用可能なトラックのサイズには、使用
されるフォーマットに依存して、フォーマット構造で必
要とされるセクタやギャップ等が含まれる。あるトラッ
クが一杯であることをアプリケーションフォーマットデ
ィスクマスタが決定すると、方法は決定ブロック500
に進み、記録する音声データが残っているか否か、例え
ば別のトラックが必要か否かを決定する。別のトラック
が必要な場合、方法は、アプリケーションが別のトラッ
クの確保をコールする動作470に戻る。方法は、これ
以上のトラックが不要となるまで上述した動作を繰り返
す。
【0042】クライアントアプリケーションが、アプリ
ケーションフォーマットディスクマスタによってスタッ
シュファイルに読み込まれるように選択された音声デー
タを全て提供し終わり、且つこれ以上のトラックが不要
である場合、方法は、アプリケーションが音声データの
記録をディスクマスタにコールする動作510に進む。
すると方法は、図6に示される音声データの記録のため
のコネクタxに進む。
【0043】図6は、データが光ディスクに記録される
際に実行される方法動作を発明の1つの実施形態に従っ
て示したフローチャート400の、続きを示したもので
ある。コネクタxは、音声データを記録するための方法
動作の続きを表している。動作520において、クライ
アントアプリケーションは、スタッシュファイルのデー
タをメディアに記録するように、IMAPIすなわち記録エ
ンジンに指示する。この時では、IMAPIが記録動作を管
理している。
【0044】動作530において、記録エンジンは、記
録される音声データに関連付けられた情報でスタッシュ
ファイルを充分に満たす。この情報は、音声データを記
録する際に使用されるフォーマットに特有なものであ
る。
【0045】すると方法は、記録エンジンがタスクリス
トを作成してスタッシュファイルの内容を記述する、動
作540に進む。タスクリストは、種々のセクタ、ファ
イル、トラック、ファイルシステム等などの位置を含む
ように、スタッシュファイルの特定のレイアウトを識別
する。タスクリストを作成するに当たり、記録エンジン
は、データが記録されるメディアの論理的および物理的
構造をマップする。記録エンジンは、前の動作において
選択された論理的なフォーマットと、すでに選択されて
いた記録デバイスとを使用することにより、音声データ
の模擬または実際の焼き付けをターゲットメディアに対
して実行する際に、焼き付けエンジンにより実行される
タスクリストを構築する。
【0046】タスクリストが作成されると、方法は動作
550に進み、タスクリストを焼き付けエンジンに引き
渡す。1つの実施形態において、タスクリストは1メモ
リ構造として作成されており、記録エンジンによる焼き
付けエンジンへのタスクリストの引き渡しは、タスクリ
ストメモリ構造のメモリからの読み出しを、焼き付けエ
ンジンに対してコールすることである。タスクリストを
実行し、ターゲットメディアへの音声データの記録を達
成するのは、焼き付けエンジンである。
【0047】ここで注意が必要なのは、この時点におけ
る本発明の1つの実施形態では、データの模擬または実
際の焼き付けを実行する焼き付けエンジンのドライバ
が、imapi.sys構造(図2を参照のこと)内に配置され
ており、カーネルモードで動作することである。焼き付
けエンジンとimapi.sysに関しては、以下でより詳しく
議論することにする。
【0048】次に、方法は動作560に進み、焼き付け
エンジンがタスクリストを検証する。焼き付けエンジン
は、完了しなければならないタスクと、書き込みを行う
特定のドライブおよびデバイスのために達成されなけれ
ばならない任意のデータ操作とを、決定する。
【0049】方法は、動作570において終了する。焼
き付けを実行するに当たり、焼き付けエンジンは、スタ
ッシュファイルの音声データをタスクリストに従って検
索する。音声データは、光メディアへの書き込みのため
に、imapi.sysを経て選択ドライブへと引き渡される。
実際または模擬の焼き付け動作の間、焼き付けエンジン
は、カーネルモードで動作を実行しているimapi.sysの
ドライバに制御される。図2との関連で上述したよう
に、imapi.sysは一般に、IMAPIの様々なオブジェクトに
対するドライバの集合であり、IMAPIをホストオペレー
ティングシステムに統合させるように機能する。1つの
実施形態において、imapi.sysは、それが実行される個
々のオペレーティングシステムに対して具体的にコード
化される。例えば、Windows95/98オペレーティングシス
テムのためのimapi.sysがあり、WindowsNTオペレーティ
ングシステムのためのimapi.sysがあり、それが実行さ
れるあらゆる特定のオペレーティングシステムのための
imapi.sysがある。上でより詳しく議論したように、本
発明の特徴は、タスクリストを実行し、スタッシュファ
イルからスタッシュ音声データを読み出して、それをカ
ーネルモードの選択記録デバイスに焼き付けることにあ
る。従って、模擬または実際の焼き付けの最中に、音声
データがシステムメモリ内でキャッシュおよびバッファ
リングされることはなく、このためバッファアンダーラ
ンを回避することが可能となる。さらに、カーネルモー
ドのプロセスとしては、タスクリストの実行と、完全に
イメージ化されたスタッシュファイルからの音声データ
の読み出しとにおけるimapi.sysの動作が、システム優
先順位の動作となる。従って、他のアプリケーションと
の間によく見られるプロセッサの共有や、致命的な音声
データの中断等の他のリスクも、やはり回避することが
できる。
【0050】選択デバイスにデータファイルを記録する
ための方法動作は、音声データの記録のそれと類似して
いる。図4との関連で議論されるように、データを記録
するための方法動作は、決定ブロック460において分
岐する。記録されるデータが音声データ以外のデータで
ある場合、方法はコネクタBに進み、図7に示された動
作を継続する。
【0051】図7は、データが光ディスクに記録される
際に実行される方法動作を本発明の1つの実施形態に従
って示したフローチャート400の、続きを示したもの
である。コネクタBは、音声データ以外のデータを記録
するための方法動作の続きを表している。方法は、ISto
rageと呼ばれるCOMストレージ構造をクライアントアプ
リケーション(例えばWord、Excel、Access等)が作成
する、動作600から続きを開始する。IStorageは、CO
Mアプリケーションのための1データ構造であり、IMAPI
を備えたデータファイルのビークルとして機能する。IS
torageは、ファイルおよびフォルダの両方と、それらに
関連付けられた名前および属性とを含んだ内部構造を有
しており、IMAPIを備えたデータファイルアプリケーシ
ョンのために使用される。
【0052】クライアントアプリケーションが、光メデ
ィアに書き込まれる全データでIStorageを満たしたら、
方法は動作620に進む。動作620において、クライ
アントアプリケーションは、格納されたデータをスタッ
シュファイルに追加するように、アプリケーションイン
ターフェースディスクマスタ(例えばIJolietDiscMaste
r)にコールする。方法は、データをスタッシュファイ
ルに追加するコールに続いて動作630に進み、記録エ
ンジンは、IStorageからスタッシュファイルにデータを
読み込む。1つの実施形態において、この動作は、イメ
ージに構造を追加する動作と呼ばれる。アプリケーショ
ンフォーマットディスクマスタ、例えばIJolietDiscMas
terは、イメージまたはスタッシュファイルに追加する
ためにデータを操作する。
【0053】次に、方法は決定ブロック640を評価す
る。決定ブロック640において、方法は、スタッシュ
ファイルに追加するデータがまだあるか否かを見るため
にチェックを行う。スタッシュファイルに追加するデー
タがまだある場合、方法は、追加するデータのためにク
ライアントアプリケーションがCOMストレージ構造を作
成する動作600にループバックし、次いで、上述した
ような方法動作に進む。スタッシュファイルに追加する
データがもうない場合、方法は、図6で示された方法動
作の続きであるコネクタyに進む。
【0054】図6は、データが光ディスクに記録される
際に実行される方法動作を本発明の1つの実施形態に従
って示したフローチャート400の、続きを示したもの
である。コネクタyは、音声データ以外のデータを記録
するための方法動作の続きを表している。ここで、この
先の方法動作が音声データの記録において実行される動
作と同一であり、上で充分に説明されていることに、注
意する必要がある。方法は、クライアントアプリケーシ
ョンが記録エンジンに対し、スタッシュファイルに配置
されたデータを選択記録デバイスに記録することをコー
ルする、動作520から続きを開始する。
【0055】すると、方法は動作530に進み、記録エ
ンジンは、スタッシュファイルのデータと関連付けられ
た情報でスタッシュファイルを充分に満たす。情報は、
アクティブなフォーマットによって決定されて、ボリュ
ーム記述子およびファイルシステムのような構造を含む
ことができる。例えばIJolietDiscMasterは、主要なボ
リューム記述子、補足的なボリューム記述子、ボリュー
ム記述子の集合終止符、パステーブル、ディレクトリレ
コード等などで、スタッシュを満たす。このような構造
およびその他の情報は、記録デバイスにデータを書き込
むために選択された特定のフォーマットに関連付けられ
たエレメントである。
【0056】次に方法は、音声データの記録との関連で
上述したように記録エンジンがタスクリストを作成す
る、動作540を実行する。動作550において、記録
エンジンはタスクリストを焼き付けエンジンに引き渡
し、動作560において、焼き付けエンジンはタスクリ
ストを検証する。動作570において、焼き付けエンジ
ンはタスクリストに従ってスタッシュファイルからデー
タを検索し、データをimapi.sysを介して選択記録デバ
イスに引き渡し、方法を終了させる。上で詳しく述べて
いるように、動作570におけるスタッシュファイルか
らのデータの読み出しがカーネルモードで達成されるた
め、バッファアンダーランおよびデータの中断のリスク
が回避される。
【0057】本発明は、コンピュータシステムに格納さ
れたデータを使用する、コンピュータに実装された種々
の動作を利用しても良い。これらの動作は、物理量の物
理的操作を必要とするものである。これらの物理量は、
必然ではないものの、格納、転送、結合、比較、および
その他の操作が可能な電気信号または磁気信号の形を採
る。さらに、実行される操作は、生成する、識別する、
決定する、または比較する等の用語で呼ばれることが多
い。
【0058】本明細書で記述した、本発明の一部をなす
任意の動作は、有用なマシン動作である。本発明はま
た、これらの動作を実行するためのデバイスまたは装置
に関する。装置は、必要とされる目的のために特別に構
築されても良いし、あるいは、コンピュータに格納され
たコンピュータプログラムによって選択的にアクティベ
イトまたは構成される汎用コンピュータであっても良
い。特に、ここで教示される内容に従って記述されたコ
ンピュータプログラムと共に、種々の汎用マシンを使用
して良い場合もあるし、あるいは、必要とされる動作を
実行するために、より専用化された装置を構築する方が
便利な場合もある。
【0059】本発明はまた、コンピュータ読み取り可能
メディア上のコンピュータ読み取り可能コードとして具
体化することもできる。コンピュータ読み取り可能メデ
ィアは、データを格納し、格納したデータをコンピュー
タシステムに読み取らせることができる、任意のデータ
ストレージデバイスである。コンピュータ読み取り可能
メディアは、例えば、読み取り専用メモリ、ランダムア
クセスメモリ、CD-ROM、CD-R、CD-RW、磁気テープ、お
よびその他の光データストレージデバイスを含む。コン
ピュータ読み取り可能メディアが、ネットワークで接続
されたコンピュータシステム間で分散できるため、コン
ピュータ読み取り可能コードは、分散方式によって格納
および実行される。
【0060】以上では、明瞭な理解を目的として本発明
を詳しく説明したが、添付した請求の範囲の範囲内で、
一定の変更および修正を実施できることは明らかであ
る。したがって、以上で取り上げた実施形態は、例示を
目的としたものであって、本発明の内容を限定するもの
ではく、このため本発明は、本明細書で特定した詳細に
限定されることなく、添付した特許請求の範囲および等
価物の範囲内で、種々の変更を加えることが可能であ
る。
【図面の簡単な説明】
【図1】従来技術による代表的な記録プロセスを示した
ブロック図である。
【図2】本発明の1つの実施形態に従って示したIMAPI
のシステム図である。
【図3】本発明の1つの実施形態に従って示したディス
クマスタである。
【図4】データが光ディスクに記録される際に実行され
る方法動作を、本発明の1つの実施形態に従って示した
フローチャートである。
【図5】データが光ディスクに記録される際に実行され
る方法動作を本発明の1つの実施形態に従って示したフ
ローチャートの、続きを示したものである。
【図6】データが光ディスクに記録される際に実行され
る方法動作を本発明の1つの実施形態に従って示したフ
ローチャートの、さらなる続きを示したものである。
【図7】データが光ディスクに記録される際に実行され
る方法動作を本発明の1つの実施形態に従って示したフ
ローチャートの、さらなる続きを示したものである。
【符号の説明】
110…クライアントアプリケーション 120…データベース 130…ソース 140…記録エンジン 150…システムメモリバッファ 160…光デバイス 201…記録エンジンIMAPI.EXE 202…クライアントアプリケーション 204…IDiscMasterProgressEventsインターフェース 206…構成アプリケーション 212…インターフェースノード 220…ディスクマスタ 220a…ディスクマスタの1つの実施形態 222…ディスクマスタインターフェースIDiscMaster 224…IRedbookDiscMaster 226…IJolietDiscMaster 227a…IISO9660DiscMaster 227b…IUDFDiscMaster 227c…ICDExtraDiscMaster 227d…IPhotoCDDiscMaster 227e…ICD3DiscMaster 227f…IVideoCDDiscMaster 227g…I...DiscMaster 228…スタッシュファイル 230…IDiscStashインターフェース 232…焼き付けエンジン 234…IEnumDiscRecordersインターフェース 240…ディスクレコーダ 242…IDiscRecorderインターフェース 250a…記録デバイスドライバ 250b…記録デバイスドライバ 250c…ワイルドカード 260…Imapi.sys 270…CD-ROMクラス 280…光メディア記録デバイス 210,214,216…概念的な接続 233,235,237,239,241、243,2
45,255,255a…配線上の接続、コネクタ
───────────────────────────────────────────────────── フロントページの続き (72)発明者 ダニエル・エー.・ポルファー アメリカ合衆国 フロリダ州32707 ウィ ンター・パーク,バルモラル・ロード, 410 (72)発明者 ダニエル・エル.・エバース アメリカ合衆国 フロリダ州32765 オビ エド,アルビナ・レーン,1038

Claims (27)

    【特許請求の範囲】
  1. 【請求項1】 光メディアにデータを記録するための方
    法であって、 前記光メディアに記録するデータをクライアントアプリ
    ケーションで選択し、 イメージマスタリングアプリケーションプログラミング
    インターフェース(IMAPI)と接続し、 前記IMAPIによってサポートされる複数の光メディアフ
    ォーマットの中から1つを選択し、 前記IMAPIによってサポートされる複数の光メディア記
    録デバイスの中から1つを選択し、 前記選択されたデータを、前記複数のメディアフォーマ
    ットのなかから選択された1つのメディアフォーマット
    に関連付けられたアプリケーションフォーマットインタ
    ーフェースを介して前記IMAPIの一部をなすスタッシュ
    ファイルへと送信し、 前記選択されたデータを前記光メディアデバイスに記録
    するために実行する動作のタスクリストを作成し、 オペレーティングシステムのカーネルモードから直接前
    記タスクリストを実行することによって、前記スタッシ
    ュファイルに格納された前記選択されたデータを記録す
    ることを備える方法。
  2. 【請求項2】 請求項1記載の、光メディアにデータを
    記録するための方法であって、 前記IMAPIは、COMオブジェクトの集合であり、前記オペ
    レーティングシステムに統合されている、方法。
  3. 【請求項3】 請求項1記載の、光メディアにデータを
    記録するための方法であって、 前記サポートされた複数のメディアフォーマットは、Re
    dbook、Joliet、ISO 9660、UDF、HFS、VideoCD、PhotoC
    D、CDExtra、Mixed Mode、Raw Mode、Cue Sheet、アン
    フォーマット、およびCD3のうちの1つを含む、方法。
  4. 【請求項4】 請求項1記載の、光メディアにデータを
    記録するための方法であって、 前記スタッシュファイルは、IMAPIのCOMオブジェクト内
    で作成される、方法。
  5. 【請求項5】 請求項1記載の、光メディアにデータを
    記録するための方法であって、 前記IMAPIは、前記選択されたメディアフォーマットに
    従って前記スタッシュファイルをデータ構造で満たす、
    方法。
  6. 【請求項6】 請求項1記載の、光メディアにデータを
    記録するための方法であって、 前記IMAPIは、焼き付けエンジンが、前記選択されたデ
    ータを前記選択された光メディア記録デバイスに記録す
    るために、前記タスクリストを作成する、方法。
  7. 【請求項7】 請求項6記載の、光メディアにデータを
    記録するための方法であって、 前記焼き付けエンジンは、前記IMAPI内のCOMオブジェク
    トであり、前記オペレーティングシステムのカーネルモ
    ード内からのドライバによって制御される、方法。
  8. 【請求項8】 請求項7記載の、光メディアにデータを
    記録するための方法であって、 前記スタッシュファイルは、前記焼き付けエンジンによ
    って読み出されて、前記焼き付けエンジンによって前記
    選択された光メディア記録デバイスに送信される、方
    法。
  9. 【請求項9】 光メディアにデータを記録するためのイ
    メージマスタリングアプリケーションプログラミングイ
    ンターフェースであって、 複数のCOMオブジェクトを備え、前記複数のCOMオブ
    ジェクトの各々は、前記光メディアにデータを記録する
    際に処理を実行し、前記複数のCOMオブジェクトは、デ
    ィスクマスタと、スタッシュファイルと、ディスクレコ
    ーダと、焼き付けエンジンとを含む、イメージマスタリ
    ングアプリケーションプログラミングインターフェー
    ス。
  10. 【請求項10】 請求項9記載の、光メディアにデータ
    を記録するためのイメージマスタリングアプリケーショ
    ンプログラミングインターフェースであって、 前記ディスクマスタは、前記イメージマスタリングアプ
    リケーションプログラミングインターフェースの全処理
    および全機能へのアクセスを、クライアントアプリケー
    ションに提供する、イメージマスタリングアプリケーシ
    ョンプログラミングインターフェース。
  11. 【請求項11】 請求項10記載の、光メディアにデー
    タを記録するためのイメージマスタリングアプリケーシ
    ョンプログラミングインターフェースであって、 前記スタッシュファイルは、光メディアへの記録が前記
    クライアントアプリケーションによって選択されたデー
    タが書き込まれるファイルである、イメージマスタリン
    グアプリケーションプログラミングインターフェース。
  12. 【請求項12】 請求項9記載の、光メディアにデータ
    を記録するためのイメージマスタリングアプリケーショ
    ンプログラミングインターフェースであって、 前記ディスクレコーダは、データが記録される光メディ
    ア記録デバイスの状況情報および構成情報を提供する、
    イメージマスタリングアプリケーションプログラミング
    インターフェース。
  13. 【請求項13】 請求項9記載の、光メディアにデータ
    を記録するためのイメージマスタリングアプリケーショ
    ンプログラミングインターフェースであって、さらに、 前記イメージマスタリングアプリケーションプログラミ
    ングインターフェースによって作成されるタスクリスト
    であって、光メディアにデータを記録する際に達成され
    るタスクのリストを含むタスクリストを備える、イメー
    ジマスタリングアプリケーションプログラミングインタ
    ーフェース。
  14. 【請求項14】 請求項13記載の、光メディアにデー
    タを記録するためのイメージマスタリングアプリケーシ
    ョンプログラミングインターフェースであって、 前記焼き付けエンジンは、前記スタッシュファイルのデ
    ータを読み出し、光メディア記録デバイスによって記録
    される前記データを前記タスクリストに従って送信す
    る、イメージマスタリングアプリケーションプログラミ
    ングインターフェース。
  15. 【請求項15】 請求項9記載の、光メディアにデータ
    を記録するためのイメージマスタリングアプリケーショ
    ンプログラミングインターフェースであって、さらに、 イメージマスタリングアプリケーションプログラミング
    インターフェースドライバを備える、イメージマスタリ
    ングアプリケーションプログラミングインターフェー
    ス。
  16. 【請求項16】 請求項15記載の、光メディアにデー
    タを記録するためのイメージマスタリングアプリケーシ
    ョンプログラミングインターフェースであって、 前記イメージマスタリングアプリケーションプログラミ
    ングインターフェースドライバは、コンピュータオペレ
    ーティングシステムのカーネルモードで作動し、前記イ
    メージマスタリングアプリケーションプログラミングイ
    ンターフェースドライバを前記コンピュータオぺレーテ
    ィングシステムのカーネルモードで作動させる結果、光
    メディアへのデータの記録がカーネルモードの動作とな
    る、イメージマスタリングアプリケーションプログラミ
    ングインターフェース。
  17. 【請求項17】 請求項16記載の、光メディアにデー
    タを記録するためのイメージマスタリングアプリケーシ
    ョンプログラミングインターフェースであって、 前記イメージマスタリングアプリケーションプログラミ
    ングインターフェースドライバは、前記イメージマスタ
    リングアプリケーションプログラミングインターフェー
    スを前記コンピュータオぺレーティングシステムに統合
    させる、イメージマスタリングアプリケーションプログ
    ラミングインターフェース。
  18. 【請求項18】 コンパクトディスクにデータを記録す
    るための方法であって、 前記コンパクトディスクに記録するデータをクライアン
    トアプリケーションによって選択し、 前記選択されたデータを、イメージマスタリングアプリ
    ケーションプログラミングインターフェイスのアプリケ
    ーションフォーマットインタフェースを介してスタッシ
    ュファイルに送信し、 前記選択されたコンパクトディスクに記録するデータを
    含む前記スタッシュファイルを、光メディアデータ構造
    で満たし、 前記選択されたデータをコンパクトディスク記録デバイ
    スに記録する際に実行される処理からなるタスクリスト
    を作成し、 前記選択されたデータを、前記イメージマスタリングア
    プリケーションプログラミングインターフェースの前記
    焼き付けエンジンを使用し、前記タスクリストに従って
    前記スタッシュファイルから読み出し、 オペレーティングシステムのカーネルモードから直接前
    記タスクリストを実行することによって、前記選択され
    たデータを記録することを備える方法。
  19. 【請求項19】 請求項18記載の、コンパクトディス
    クにデータを記録するための方法であって、 前記選択されたデータは、音声データ、データファイ
    ル、ビデオデータ、写真データ、テキスト、およびイメ
    ージよりなる群から選択された、方法。
  20. 【請求項20】 請求項18記載の、コンパクトディス
    クにデータを記録するための方法であって、 前記イメージマスタリングアプリケーションプログラミ
    ングインターフェースは前記オペレーティングシステム
    に統合されている、方法。
  21. 【請求項21】 請求項18記載の、コンパクトディス
    クにデータを記録するための方法であって、 前記スタッシュファイルは、前記イメージマスタリング
    アプリケーションプログラミングインターフェース内の
    COMオブジェクト内に作成される、方法。
  22. 【請求項22】 請求項18記載の、コンパクトディス
    クにデータを記録するための方法であって、 前記焼き付けエンジンは、前記イメージマスタリングア
    プリケーションプログラミングインターフェース内のCO
    Mオブジェクトである、方法。
  23. 【請求項23】 請求項18記載の、コンパクトディス
    クにデータを記録するための方法であって、 前記イメージマスタリングアプリケーションプログラミ
    ングインターフェースは、前記オペレーティングシステ
    ムのカーネルモード内からのドライバによって制御され
    る、方法。
  24. 【請求項24】 光メディアにデータを記録するための
    プログラム命令を有するコンピュータ読み取り可能メデ
    ィアであって、 前記光メディアに記録するデータを、クライアントアプ
    リケーションを使用して選択するための、プログラム命
    令と、 前記選択されたデータを、イメージマスタリングアプリ
    ケーションプログラミングインターフェイスのアプリケ
    ーションフォーマットインターフェースを介してスタッ
    シュファイルに送信するための、プログラム命令と、 前記選択された光メディアに記録するデータを含む前記
    スタッシュファイルを、光メディアデータ構造で満たす
    ための、プログラム命令と、 前記選択されたデータを光メディア記録デバイスに記録
    するために実行する処理からなるタスクリストを作成す
    るための、プログラム命令と、 前記選択されたデータを、前記イメージマスタリングア
    プリケーションプログラミングインターフェースの焼き
    付けエンジンにより、前記タスクリストに従って前記ス
    タッシュファイルから読み出すための、プログラム命令
    と、 オペレーティングシステムのカーネルモードから直接前
    記タスクリストを実行することによって、前記選択され
    たデータを記録するための、プログラム命令とを備える
    コンピュータ読み取り可能メディア。
  25. 【請求項25】 請求項24記載の、光メディアにデー
    タを記録するためのプログラム命令を有したコンピュー
    タ読み取り可能メディアであって、 前記イメージマスタリングアプリケーションプログラミ
    ングインターフェースは、COMオブジェクトの集合であ
    り、前記オペレーティングシステムに統合されている、
    コンピュータ読み取り可能メディア。
  26. 【請求項26】 請求項24記載の、光メディアにデー
    タを記録するためのプログラム命令を有したコンピュー
    タ読み取り可能メディアであって、 前記焼き付けエンジンは、前記イメージマスタリングア
    プリケーションプログラミングインターフェース内のCO
    Mオブジェクトであり、前記オペレーティングシステム
    のカーネルモード内からのドライバによって制御され
    る、コンピュータ読み取り可能メディア。
  27. 【請求項27】 請求項24記載の、光メディアにデー
    タを記録するためのプログラム命令を有したコンピュー
    タ読み取り可能メディアであって、 前記イメージマスタリングアプリケーションプログラミ
    ングインターフェースは、前記オペレーティングシステ
    ムのカーネルモード内からのドライバによって制御され
    る、コンピュータ読み取り可能メディア。
JP2000334167A 1999-11-01 2000-11-01 イメージマスタリングapi Expired - Fee Related JP3857039B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US16287999P 1999-11-01 1999-11-01
US60/162879 1999-11-01

Publications (2)

Publication Number Publication Date
JP2001222456A true JP2001222456A (ja) 2001-08-17
JP3857039B2 JP3857039B2 (ja) 2006-12-13

Family

ID=22587510

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000334167A Expired - Fee Related JP3857039B2 (ja) 1999-11-01 2000-11-01 イメージマスタリングapi

Country Status (2)

Country Link
EP (1) EP1096496A3 (ja)
JP (1) JP3857039B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020143779A1 (en) * 2001-03-27 2002-10-03 Backman Drake A. Data structures and methods for imaging computer readable media
JP2005100095A (ja) * 2003-09-25 2005-04-14 Ricoh Co Ltd イメージデータ作成方法、記録方法、プログラム及び記録媒体、光ディスク、並びに情報記録システム
CN106911831B (zh) 2017-02-09 2019-09-20 青岛海信移动通信技术股份有限公司 一种终端的麦克风的数据处理方法和具有麦克风的终端

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03119574A (ja) * 1989-10-02 1991-05-21 Sony Corp 記録情報発生方法
US5611066A (en) * 1994-02-28 1997-03-11 Data/Ware Development, Inc. System for creating related sets via once caching common file with each unique control file associated within the set to create a unique record image
CA2169131C (en) * 1995-02-28 2004-08-10 Fabrizio Caffarelli Compact disc recording system and method
JPH08279153A (ja) * 1995-04-04 1996-10-22 Pioneer Video Corp 転送レート変換装置及び原盤記録装置
JPH0991706A (ja) * 1995-09-26 1997-04-04 Ricoh Co Ltd 追記型cd作成システム
JP2000057747A (ja) * 1998-08-05 2000-02-25 Sanyo Electric Co Ltd オーディオダビングシステム及び記録媒体
US6693869B1 (en) * 1999-03-31 2004-02-17 Microsoft Corporation Locating information on an optical media disc to maximize the rate of transfer

Also Published As

Publication number Publication date
EP1096496A2 (en) 2001-05-02
EP1096496A3 (en) 2004-04-28
JP3857039B2 (ja) 2006-12-13

Similar Documents

Publication Publication Date Title
US7359626B2 (en) Image mastering API
JP3355333B2 (ja) コンパクトディスク記録装置とその方法
US5825726A (en) Multi-session disc and a high-speed access method thereto
JP4100913B2 (ja) 情報再生装置、データ管理情報取得方法、データ管理情報取得プログラム、記憶媒体、及び再生システム
US6721489B1 (en) Play list manager
US4775969A (en) Optical disk storage format, method and apparatus for emulating a magnetic tape drive
JP2001243096A (ja) ファイル管理方法
JP2003114817A (ja) 情報記憶媒体及び情報記録方法
JP4300669B2 (ja) 記録方法および装置、ならびに、記録媒体
JP2008507797A (ja) 記録担体に情報を記録する装置及び方法
KR20060045693A (ko) 정보 처리 장치, 정보 처리 방법, 프로그램 및 프로그램기록 매체
JP2001117806A (ja) コンパクトディスクメディアのデータの読み書き方法
US7716412B2 (en) Data storage apparatus and data access method for controlling address information for data writing using a free area control table
JP2001243102A (ja) 記録装置および方法、ならびに、記録媒体
JP3857039B2 (ja) イメージマスタリングapi
JP2002015516A (ja) 光ディスクへの記録に備え、システムメモリに転送されたデータを処理するための方法
JPH0876935A (ja) バックアップデータ作成再生システム
JP2003173285A (ja) 情報記録方法及び情報記録再生装置
JP2001043117A (ja) ディスク媒体管理方法
JPH03217972A (ja) ファイル検索装置
JPH10302397A (ja) 光ディスク記録装置
JP2005122252A (ja) 再生装置、再生記録装置および映像編集装置
JP2007128286A (ja) 再生装置、再生方法および再生プログラム
JP2000149427A (ja) 記録装置および方法、再生装置および方法、記録再生装置および方法、並びに提供媒体
JP2001291366A (ja) 記録方法および装置、ならびに、記録媒体

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20041214

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20050311

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20050316

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050613

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060117

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060301

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20060815

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20060913

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090922

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100922

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110922

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120922

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130922

Year of fee payment: 7

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees