4

DirectSound は Windows 用の最高のオーディオ抽象化レイヤーですか? 特定のチップセット用に構築された非常に悪いサウンド実装から、アブストレーション レイヤーにアプリを切り替えます。

アプリはネイティブの Winform、.net 3.5 です。DirectX/DirectSound を選択する可能性が高いですが、オーバーヘッドが少し気になります。他のオプションはありますか?それとも、他のことを考えるのはばかげていますか?

4

6 に答える 6

6

DirectSound は、過去に受けたほど、現在 Microsoft から愛されていません。DirectX に関する限り、代わりに XAudio2 または XACT を試すことができます。それらを愛する人もいれば、嫌う人もいます。XAudio2 はより低レベルですが、XACT はかなり高レベルです。どちらもマネージド DirectX に似ていますが、積極的に開発されている Microsoft XNA からアクセスできます。

ただし、DirectX に付属しているものを使用することに制限されているわけではありません。素晴らしいものが必要な場合は、FModを試してください。大金を払いたくない場合に備えて、Shareware/Hobbyist ライセンス モデルと Freeware ライセンス モデルがまだあります。

どちらを選択するかは、サウンドで何をしたいかによって異なります。

于 2008-10-01T15:48:40.627 に答える
2

代わりにOpenALを試すことができます。Direct3Dに対するOpenGLとは、DirectSound(3D)に対するOpenALです。インターフェイスはOpenGLと非常によく似ていますが、それが気に入らない場合は、OpenALも気に入らないでしょう。また、このlibのWindowsバージョンが独自のネイティブ実装なのか、DirectSoundを呼び出すだけなのか、その上に(薄い?)ラッパーがあるのか​​どうかもわかりません。

于 2008-10-01T16:36:48.887 に答える
2

SDLが改善されているかどうかを確認します。

于 2008-10-01T15:46:47.917 に答える
1

waveOut ... APIは引き続きオプションです。マネージ コードから操作するのは難しいですが、この方法で一度に複数のサウンドを再生できます (少なくとも XP と Vista では)。

ときどきサウンドを再生する必要がある場合は、System.Media.SoundPlayerを使用すると非常に簡単です。ただし、このコンポーネントで同時に複数のサウンドを再生することはできません。

DirectSound は、他の唯一の主要な代替手段です。必要に応じて、ソフトウェアシンセサイザーが組み込まれています。

編集:SDLは面白そうです。ありがとう、シジン。

于 2008-10-01T16:10:33.787 に答える
1

DirectSound はかなり良いです。

同時に複数のサウンドカードを介した低遅延またはサウンド入出力の優れたサポートが必要な場合は、ASIO も検討することをお勧めします。

http://de.wikipedia.org/wiki/Audio_Stream_Input/Output

于 2008-10-01T15:58:51.210 に答える
0

SharpDXは面白そうです。マネージド DirectX には x86 の制限があるため、マネージド DirectX の代わりとして試してみるつもりです。

于 2011-09-22T03:55:21.323 に答える