2015-10-17 2 views
0

У меня есть простой код для обработки поплавкового буфера с фильтром нижних частот. Вот функция:Проблемы с фильтром нижних частот с использованием TarsosDSP для Android

public static float[] lowPass(float[] buffer, float frequnecy) { 

    AudioFormat audioFormat = new AudioFormat(SAMPLE_RATE, 16, 1, true, false); 
    AudioEvent audioEvent = new AudioEvent(audioFormat, 1024); 
    audioEvent.setFloatBuffer(buffer); 

    LowPassFS lowPassFilter = new LowPassFS(frequnecy, DSP.SAMPLE_RATE); 
    lowPassFilter.process(audioEvent); 

    return audioEvent.getFloatBuffer(); 
} 

В результате того, что буфер не обрабатывается вообще и возвращается как есть. Я не могу найти подходящий рабочий пример в любом месте.

Заранее спасибо

ответ

0

Попробуйте заменить getFloatBuffer() с getByteBuffer(), это может быть, что буфер поплавок имеет значение ввода, но я успешно сделал фильтр низких частот (он не работает слишком хорошо над отсечным из 300 Гц) и getByteBuffer() определенно дает отфильтрованные значения.

Смежные вопросы