1

ファイルからいくつかのサウンドを再生するために FMOD を使用しており、いくつかのエフェクトを追加しています。追加された効果をプレビューし、満足のいく結果をディスクに保存したい。SetOutput と Init を使用してから createSound、playSound を使用してみましたが、サウンドが聞こえず、ディスクに保存されたファイルが間違っているようです。

4番目のパラメータ0でsetOutputとinitシステムを使用しないと、音が聞こえます。

私のコードを追加:

result = FMOD_System_SetOutput(gSystem,FMOD_OUTPUTTYPE_WAVWRITER);
result = FMOD_System_Init(gSystem, 32,FMOD_INIT_NORMAL,"/sdcard/wav.wav");
result = FMOD_System_CreateSound(gSystem, filename, FMOD_SOFTWARE | FMOD_LOOP_NORMAL, 0, &gSound);
result = FMOD_System_PlaySound(gSystem, FMOD_CHANNEL_FREE, gSound, 0, &gChannel);

あなたが私を助けてくれることを願っています!

ありがとうございました

4

1 に答える 1

0

WavWriter で setOutput を使用すると、音声はスピーカーではなくファイルに送られます。これが探しているものでない場合は、カスタム DSP でオーディオをキャプチャしてみてください。

基本的な考え方は、dsp_custom の例に従い、ユーザー作成の DSP を作成し、DSP 読み取りコールバックでデータをディスクに書き出すことです。また、DSP に入ってくるデータを出力バッファー (ダイレクト memcpy) にコピーして、オーディオがスピーカーを通過できるようにする必要があります。オーディオをキャプチャする DSP ネットワーク内の任意の場所に DSP を配置できます。最終ミックスのみに関心がある場合は、System::addDSP を使用してください。

于 2011-08-07T23:43:12.437 に答える