Сделайте несколько звуковых эффектов и сохраните их в медиаплеере.

Мне нужно сделать некоторые звуковые эффекты для списка записей в формате .3gp, которые были сохранены на устройстве.

Звуковые эффекты, которые мне нужны, — это добавление реверберирующих звуков или микширование с другими аудиофайлами со звуками движения или толпы.

Я считаю, что лучший способ микшировать аудиозаписи и звуковые эффекты — использовать класс SoundPool. Чтобы создать SoundPool, я следовал следующему руководству: Намочите ноги в Android SoundPool< /а>

Для эффекта эха я пытаюсь использовать пакет audiofx с классами PresetReverb и EnvironmentReverb, но не делаю этого с моим кодом:

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/

Мой последний вопрос, как сохранить медиаплеер после эффекта.


person velas16v    schedule 13.01.2013    source источник


Ответы (1)


Вы должны связать новый объект (реверберацию) с вашим сеансом медиаплеера.

Вы можете сделать это следующим образом:

eReverb = new EnvironmentalReverb(0, mp.getsessionid()); 

// mp — ваш объект аудиоплеера

Гриц!

person andy stroke    schedule 02.05.2013
comment
Привет, я столкнулся с той же проблемой, у вас есть какое-либо решение для этого. Я ищу решение в течение стольких дней, но не получил ни одного. Пожалуйста, поделитесь своим решением проблемы с реверберацией, заранее спасибо и с нетерпением жду вашего ответа ...... - person Ram; 12.07.2013