0

デバイスに保存された .3gp 形式の録音のリストにオーディオ エフェクトを作成する必要があります。

私が必要とするオーディオ効果は、残響音の追加、または交通や群衆の音を含む別のオーディオ ファイルとのミキシングです。

オーディオ録音とオーディオ効果をミックスする最良の方法は、SoundPool クラスを使用することだと思います。SoundPool を作成するために、次のチュートリアルに従いました: Android の SoundPool で足を濡らす

エコー効果については、クラス PresetReverb および EnvironmentalReverb で audiofx パッケージを使用しようとしていますが、私のコードでは効果がありませんでした:

public void playSoundPresetReverb(){

       PresetReverb pReverb  = new PresetReverb(1, 0);
       mp.attachAuxEffect(pReverb.getId());
       pReverb.setPreset(PresetReverb.PRESET_LARGEHALL);
       pReverb.setEnabled(true);

       mp.setAuxEffectSendLevel(1.0f);


    }

public void playSoundEnvironmentReverb(){

       eReverb = new EnvironmentalReverb(0, 0);
       eReverb.setDecayHFRatio((short) 1000);
       eReverb.setDecayTime(1000);
       eReverb.setDensity((short) 1000);
       eReverb.setDiffusion((short) 1000);
       eReverb.setReverbLevel((short) -1000);
       eReverb.setReverbDelay((short) 50);
       eReverb.setEnabled(true);
       //mp.attachAuxEffect(eReverb.getId());
       mp.setAuxEffectSendLevel(1.0f);


    }

ただし、リバーブをかけた演奏音は効果なし。mp.start(); の前の後に効果が適用されると思います。しかし、MediaPlayer の準備が必要かどうかはわかりません。

これは、アクティビティの LogCat です。

http://imageshack.us/photo/my-images/339/sinttulohh.jpg/

私の最後の質問は、効果の後にメディアプレーヤーを保存する方法です。

4

1 に答える 1