6

いくつかの wav ファイルと、場合によっては 1 つの wav または mp3 ファイルにミックスしたい mp3 があります。C/C++/Obj-C (iPhone) を使用しています。私はこの種のことについて本当に経験がありません。誰かが私にいくつかの指針を与えることができれば、私はとても感謝しています.

基本的に私がやりたいことは、たとえばAudacityができることと似ていますが、プログラム的にです。オーディオ ファイルを簡単に開いて、定義された位置に新しいファイルに「貼り付ける」ことができるサウンド ライブラリはありませんか? ミキシングを心配する必要がないのはどこですか?

ありがとう。

4

3 に答える 3

3

リニア PCM の 2 つのサウンド バッファを混合することは、それらの各サンプル値を一緒に追加するだけの問題であり、もちろんオーバーフローしないように注意してください。ただし、通常はバッファで浮動小数点値を使用するため、問題はファイルに戻るときです。また、CoreAudio を iPhone で利用できるようにする必要があります。これには、さまざまな形式のサウンド ファイルを開いたり、読み込んだり、書き込んだりするためのすべての手段があります。Mac にない iPhone で利用できる、より高レベルの API もあると思います。Apple ドキュメントを参照してください。

于 2010-04-18T17:14:01.523 に答える
2

特に Audacity の機能を探している場合は、内部でPortAudioを使用しています (MIT ライセンスのように見えます)。おそらく、あなたはそれを使ってみることができますか?

于 2010-04-23T13:32:46.420 に答える
0

多くの情報が含まれているマルチメディアサポートを出発点として読んでください。ここに抜粋があります:

iPhone でオーディオをミックスするには 3 つの方法があります。

  • Audio Unit フレームワーク
    • マルチチャンネル ミキサー - 「複数のオーディオ ストリームを 1 つのストリームにミックスできます」
    • 3D ミキサー ユニット - 「複数のオーディオ ストリームをミックスし、ステレオ出力のパンを指定し、サンプル レートを操作できます」
  • ゲーム開発で使用される OpenAl

次のサンプルもチェックしてください: iPhoneMultichannelMixerTest :

2 つの入力バスが作成され、それぞれに入力ボリューム コントロールがあります。全体的なミキサー出力ボリューム コントロールも提供され、各バスを有効または無効にすることができます。

于 2010-04-18T16:41:24.710 に答える