2

私は疑問に思う; Cubase や Audacity などのオーディオ ソフトウェアは PlaySound 呼び出しを使用しますか??

低レベルのオーディオプログラミングについてどこで学ぶことができますか? Web で情報を見つけた限り、MCI は Windows で最も低いレベルのオーディオ API のようです...

ありがとう

編集: Windows のみに固有の情報は求めません。

4

3 に答える 3

8

選択できるオーディオAPIがいくつかあります。最も古く、最も広くサポートされているのはAPIです。MSDNでwaveOut始まる関数を探してください。waveOut少し新しいものは、ゲーム向けのDirectSoundですが、waveOutの主な機能は、プロのオーディオソフトウェアが使用しない位置3Dサウンドです(waveOutよりもレイテンシが低いはずですが、実際には実現しませんでした)。低レイテンシーオーディオには、ASIOがあります。プロフェッショナルオーディオアプリはこのAPIをサポートしていますが、すべてのドライバーがサポートしているわけではありません(これはプロフェッショナルサウンドカードの標準機能ですが、ゲームやオンボードハードウェアではありません)。ASIOは、waveOutやDirectSoundよりもはるかに低いレイテンシーを提供できます。最後に、カーネルストリーミングインターフェイスがあります。これは、ユーザーモードコードから引き続きアクセスできる最低レベルのオーディオインターフェイスです。これは、現在サウンドを再生しているすべてのアプリからの出力をサウンドカードに送信される信号に結合するWindowsの内部ミキサーへの直接パイプです。しかし、それはほとんど文書化されていません。ASIO4ALLカーネルストリーミングインターフェイスの上にASIOAPIを実装することにより、ASIOドライバーなしでサウンドカードにASIOサポートを提供する(単にgoogle it)と呼ばれるドライバーがあります。

于 2010-11-14T00:30:51.560 に答える
1

実際、Windows のみの出力サポート以上のものを探している場合は、この記事の執筆時点でhttp://www.portaudio.com/で入手できる Phil Burk のPortAudioを確認することから始めるのが最善の方法です。

ASIO は高品質のインターフェイスですが、Steinberg が独自に所有しています。

最新の Windows には、MCI よりもオーディオ出力への下位レベルのインターフェイスが多数あります。これらには、少なくともDirectSoundXAudio、およびWASAPIが含まれます。

Windows API はできるだけ使用せず、代わりに PortAudio を学習することをお勧めします。

于 2015-09-20T19:16:06.480 に答える