exponenta event banner

Настраиваемая фильтрация и визуализация с использованием аудиоплагинов

В этом примере показано, как визуализировать амплитудную характеристику настраиваемого фильтра. Фильтры в этом примере реализованы в виде аудиоплагинов. В этом примере используется visualize и audioTestBench функции звукового Toolbox™.

Настраиваемые примеры фильтров

Audio Toolbox содержит несколько примеров настраиваемых фильтров, реализованных в виде аудиоплагинов:

audiopluginexample.BandpassIIRFilter
audiopluginexample.HighpassIIRFilter
audiopluginexample.LowpassIIRFilter
audiopluginexample.ParametricEqualizerWithUDP
audiopluginexample.ShelvingEqualizer
audiopluginexample.VarSlopeBandpassFilter

visualize

Все эти примеры аудиоплагинов могут использоваться с visualize функция для просмотра амплитудной характеристики фильтров при их настройке в реальном времени.

audioTestBench

Любой аудиоплагин можно настроить в реальном времени с помощью audioTestBench. Инструмент позволяет тестировать аудиоплагин со звуковыми сигналами из файла или устройства. Инструмент также позволяет просматривать спектр мощности и форму сигнала во временной области для входных и выходных сигналов.

Обновить визуализацию во время работы подключаемого модуля

audiopluginexample.BandpassIIRFilter, audiopluginexample.HighpassIIRFilter, и audiopluginexample.LowpassIIRFilter являются простейшими из шести примеров, поскольку код записывается так, что визуализация обновляется только при обработке данных фильтром. Создайте аудиоплагин, затем вызовите visualize и audioTestBench

hpf = audiopluginexample.HighpassIIRFilter;
visualize(hpf)

audioTestBench(hpf)

Обратите внимание, что перемещение частоты отсечки в audioTestBench не обновляет график амплитудной характеристики. Однако после нажатия кнопки «Run» (или «play») можно увидеть и услышать изменяющуюся амплитудную характеристику фильтра при настройке частоты отсечки в реальном времени.

Обновление визуализации в любое время

audiopluginexample.ShelvingEqualizer и audiopluginexample.VarSlopeBandpassFilter имеют visualize функции, которые обновляют график амплитудной характеристики даже при отсутствии обработки данных. Визуализация также обновляется в реальном времени после обработки звука.

audioTestBench('-close')
varfilter = audiopluginexample.VarSlopeBandpassFilter;
visualize(varfilter)

audioTestBench(varfilter)

Визуализация индивидуальной и комбинированной амплитудной характеристики

audiopluginexample.ParametricEqualizerWithUDP иллюстрирует, как визуализировать отдельные секции в 3-секционном биквадратном фильтре вместе с общей реакцией 3 секций вместе взятых.

audioTestBench('-close')
equalizer = audiopluginexample.ParametricEqualizerWithUDP;
visualize(equalizer)

audioTestBench(equalizer)

audioTestBench('-close')