В этом примере показано, как визуализировать амплитудную характеристику настраиваемого фильтра. Фильтры в этом примере реализованы в виде аудиоплагинов. В этом примере используется 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')