2

私は20年前に書かれたC++プログラムを更新して、音の正確な開始と停止を含む科学実験を実行しています。プログラムはまた、再生音量の制御、サウンドの一時停止または指定された位置での開始、指定された回数のループサウンド、およびチャネルマッピングの制御ができる必要があります。

研究者たちはこのプログラムを最新のMacOSXで実行したいと思っていますが、私はこれまでMacで開発を行ったことがありません。MacのC++で上記の目標を達成するための最も簡単な方法は何ですか?

CoreAudio複雑すぎるようです。NSSound私が望むすべての機能を備えているようですが、私が知る限り、Objective-Cでのみ利用可能ですか?Objective-CとC++を混在させることは可能ですか?または、QuickTimeSDKの使用を検討する必要がありますか?

助けてくれてありがとう。

4

2 に答える 2

2

はい、Objective-CとC++を混在させることができます。これはObjective-C++と呼ばれるハイブリッド言語です。NSSound必要な機能がすべて揃っている場合は、それを選択してください。そうでない場合は、CoreAudioが最適です。QuickTime、OpenAL、FMODなどのより大きなライブラリをセットアップして統合することははるかに困難です。

于 2012-05-24T15:19:10.917 に答える
1

はい、Objective-CとC++を混在させることができます。Objective-Cはいくつかのものが追加された単なるCであり、Objective-C++を取得する代わりに同じものをC++の上に重ねることができます(特にObjective-C++にはObjective-CにはあるがC++にはないC機能はありません)。

非常に低いレイテンシーが必要な場合は、CoreAudioを直接使用すると便利です。

別のオプションとしてOpenALがあります。これは、別の組み込みフレームワークであるOpenAL.frameworkとして利用できます。

于 2012-05-24T15:20:03.963 に答える