CoreAudioは、1つのチャンネルにミキシングするときに音波を加えているようです。私のプログラムは合成音を作ります。私はそれぞれの音の振幅を知っています。私がそれらを一緒に演奏すると、私はそれらを一緒に追加し、範囲内に保つために結果としての波を掛ける必要がありますか?私はこれのようにすることができます:サウンドウェーブをミキシングする(iOSのCoreAudio)
MaxAmplitude = max1 + max2 + max3 //Maximum amplitude of each sound wave
if MaxAmplitude > 1 then //Over range
Output = (wave1 + wave2 + wave3)/MaxAmplitude //Meet range
else
Output = (wave1 + wave2 + wave3) //Normal addition
end if
私はこのようにすることはできますか?実際の最大振幅を見つけるために音波を事前に解析する必要があります(最大点がタイムライン上で一致しない可能性があるため)。
私が欲しいのは、非常に音量を下げずにいくつかの合成音をシームレスに再生する方法です。私がいくつかの合成楽器で和音を演奏する場合、私は単音を実際には静かにする必要はありません。
ありがとうございます。
ありがとうございます。私はさまざまなテクニックを試して、何が最善であるかを見ていきます。私は最良の解決策が見つかるまで、より多くの答えを歓迎します。 –