|
これまでの方法
Macintosh に CD-ROM
が組み込まれて以来、オーディオはアナログサウンドストリームとして再生されてきました。CD-ROM
ドライブは、マイクロフォンとまったく同様にアナログサウンドを出力していました。また、Mac
はそのようなオーディオを録音し、必要な場合は、それをスピーカ経由で出力していました
(同時再生)。
オーディオデータの流れ (便宜上 CD-ROM からの)
を図式化すると、次のようになります。
オーディオデータは CD-ROM ドライブから読み込まれ、CD-ROM
ドライブの内部でアナログオーディオに変換されていました。そこからアナログオーディオは
Macintosh
上のサウンドハードウェアに出力されます。また、アナログオーディオは再度デジタルデータに変換され、Sound
Manager に渡されます。Sound Manager では、CD
オーディオ入力源を録音しているアプリケーションにこのオーディオを渡していました。同時再生が「入」になっていると、サウンドハードウェアは、オーディオを聴取するために
CPU
の介在またはオーバーヘッドを必要とすることなく、再度アナログに変換したサウンドをスピーカ
(またはヘッドフォン)
に出力していました。このような度重なるオーディオの変換はノイズ発生や音質低下の原因になるだけでなく、再生されたものをサンプリング精度で厳密に認識することを困難にしていました。
しかし、Mac OS 9.0 によってすべてが変わりました。
ページの先頭に戻る
これからの方法
Mac OS 9.0 以降、「内部
CD」と呼ばれる新しいサウンド入力デバイスが導入されました。内部
CD が入力源として選択されていると、Macintosh は CD
から直接的にデジタルデータを読み込み、それをデジタルオーディオとして再生します。これにより、アプリケーションは標準的な
Sound Input Manager 録音呼び出しを使って、CD
から高品位のデジタルオーディオを録音できるようになります。なお、ユーザが
CD を聴くために内部 CD
入力ドライバを選択する必要はありません。このドライバの選択が必要なのは録音を行うときだけです。

CD-ROM に内蔵されているデジタル - アナログコンバータ
(これが、オーディオファンに評判の悪い音質の原因になっていました)
を使用するのではなく、通常のファイルが CD
から読み込まれるときとまったく同様に、オーディオはデジタルデータとして読み込まれます。さらに、このデジタルオーディオは、これまで同様に
Sound Manager に渡されて再生されます。
これにより、サウンドが Macintosh
の組み込みサウンドハードウェアや組み込みスピーカ、あるいは
USB
スピーカなどのその他のハードウェアから再生することが可能になります。これまでは、サードパーティ製のハードウェアを使わないと内部オーディオ
CD を再生することは不可能でした。
オーディオデータの流れは次のようになります。

ただし、このことは、CPU
がオーディオを再生するコードを実行するようになったということを意味します。この新機能をサポートするために、ごくわずかですがパフォーマンスの低下が認められます。サウンド出力レートが
44.1 kHz に設定されているとき、PowerBook G3 300MHz
では計測結果から判断すると約 0.5% の CPU
が消費されます。この数値には、サウンド出力に必要な Sound
Manager サウンドチャネルの CPU
消費量は含まれていません。
ページの先頭に戻る
アプリケーションに必要な変更
組み込み入力ドライバから内部 CD
を選択するオプションは今後提供されません。ユーザの CPU
がデジタル CD オーディオをサポートできる場合、Macintosh
に一貫したユーザインタフェースを提供するため、古いアナログ方式で内部
CD を選択するオプションは削除されました。
アプリケーションのユーザに新しい内部 CD
入力源を使ってデジタル CD
オーディオを録音する機能を提供したい場合は、録音源として内部
CD
を選択する必要があります。これは、組み込みサウンド入力デバイスの異なる入力源ではなく、まったく独立したサウンド入力ドライバです。デフォルトの入力デバイスであることを前提にできないため、さまざまな入力源を選択するための方法が必要になります。
ユーザが全面的な変更を必要としないかぎり、「サウンド」コントロールパネルを使って、ユーザにデフォルトの入力源を変更させることはお勧めできません。通常、ただ
1 つのアプリケーションだけが内部 CD
入力源からの録音を必要とするような場合に、この方法は適切ではありません。大部分のアプリケーションがマイクロフォンからの録音や入力への関与を要求する可能性があるためです。したがって、ユーザにシステム全体の動作を変更させることは得策とはいえません。
このための独自のインタフェース要素を用意するには、アプリケーション内ですべてのサウンド設定を変更する方法を提供するのが望ましいといえます。内部
CD
入力源を選択する最適な方法は、すべてのサウンド入力ドライバのリストを作成して
(繰り返し SPBGetIndexedDevice
に対する呼び出しを使って)、その内容をメニューまたはリストボックスに展開することです。アプリケーションでは、これらの設定をその初期設定に格納し、起動のたびにその初期設定にしたがってサウンド入力ドライバとサウンド出力コンポーネントを設定する必要があります。「サウンド」コントロールパネルでユーザにこれらの項目を設定させないでください。また、それらの設定が常にデフォルトのサウンド設定であるとは考えないでください。
次に、内部 CD
入力源に関して注意すべきキーポイントを示します。
- 内部 CD
入力源は独立した入力デバイスであるため、ユーザはあるアプリケーション
(音声認識プログラムなど)
でマイクロフォンから録音を行いながら、同時に CD
オーディオを聴くことができます。
- アプリケーションが CD から録音を行っているとき、内部
CD
入力デバイスはビジーになります。この状況をうまく処理するための準備が必要です。なお、CD
を再生しているだけでは内部 CD
入力デバイスはビジーになりません。
- 同時再生は常に「入」になります。将来的には大部分のアプリケーションが、今後削除される予定の
siPlayThruOnOff
セレクタがサポートされていない状況を正しく処理できるように更新されることが望ましいといえます。今のところは、入力ソースの同時再生設定をチェックまたは設定できない状況を正しく処理できるようにアプリケーションのコードを更新してください。なお、siPlayThruOnOff
セレクタはオプションであるため、すべての入力デバイスがこのセレクタをサポートしているわけではありません。
|