exponenta event banner

Психоакустическое усиление басов для сигналов с ограниченной полосой частот

В этом примере показан аудиоплагин, предназначенный для повышения воспринимаемого уровня звука в нижней части звукового спектра.

Введение

Небольшие громкоговорители обычно имеют плохую низкочастотную характеристику, что может оказывать негативное влияние на общее качество звука. Этот пример реализует психоакустическое усиление басов для улучшения качества звука, воспроизводимого на небольших громкоговорителях.

Пример основан на алгоритме в [1]. Нелинейное устройство сдвигает низкочастотный диапазон сигнала в высокочастотный через генерацию гармоник. Тон исходного сигнала сохраняется благодаря психоакустическому явлению «виртуальный тон».

Алгоритм реализуется с помощью объекта аудиоплагина.

Алгоритм

На рисунке ниже показан алгоритм, используемый в [1].

1. Входной стереосигнал разделяется на компоненты нижних и верхних частот с помощью перекрестного фильтра. Частота пересечения фильтра равна частоте отсечки громкоговорителя (в данном примере установлена в 60 Гц).

2. Компонент high pass, hpstereo, разделяется на левый и правый каналы: hpleft и hpright соответственно.

3. Компонент нижних частот, lpstereo, преобразуется в mono, lpmono, путем добавления левого и правого каналов по элементам.

4. lpmono пропускают через полноволновый интегратор. Полноволновый интегратор сдвигает lpmono в высшие гармоники.

  • u [n] - входной сигнал, lpmono

  • y [n] - выходной сигнал

  • n - индекс времени

5. y [n] пропускают через полосовой фильтр с нижней частотой отсечки, установленной на частоту отсечки громкоговорителя. Верхняя частота отсечки полосы пропускания может быть отрегулирована для точной настройки качества выходного звука.

6. yBP [n], полосовой отфильтрованный сигнал, проходит через настраиваемое усиление, G.

7. yG добавляется к левому и правому каналам верхних частот.

8. Левый и правый каналы объединяются в единую матрицу и выходные данные.

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

Аудиоплагин Bass Enhancer

audiopluginexample.BassEnhancer - объект аудиоплагина, реализующий алгоритм психоакустического усиления басов. Параметрами плагина являются верхняя частота отсечки полосового фильтра и коэффициент усиления, применяемый на выходе полосового фильтра (G на схеме выше). Можно включить объект в моделирование MATLAB или использовать его для создания аудиоплагина с помощью generateAudioPlugin.

Вы можете открыть испытательный стенд для audiopluginexample.BassEnhancer использование звукового стенда. Стенд тестирования предоставляет графический интерфейс пользователя, помогающий тестировать аудиоплагин в MATLAB. При выполнении тестового стенда можно настроить параметры плагина. Также можно открыть timescope и dsp.SpectrumAnalyzer для просмотра и сравнения входного и выходного сигналов в временной и частотной областях соответственно.

bassEnhancer = audiopluginexample.BassEnhancer;
audioTestBench(bassEnhancer)

Также можно использовать audiopluginexample.BassEnhancer в MATLAB так же, как можно использовать любой другой объект MATLAB. Вы можете использовать configureMIDI для включения настройки объекта с помощью MIDI-устройства. Это особенно полезно, если объект является частью потокового моделирования MATLAB, в котором окно команд не является свободным.

HelperBassEnhancerSim является простой функцией, которая может использоваться для выполнения расширения басов в рамках более крупного моделирования MATLAB. Функция создает экземпляр audiopluginexample.BassEnhancer подключаемый модуль и использует setSampleRate метод установки его частоты дискретизации для входного аргумента Fs. Параметры плагина настраиваются путем установки их значений для входных аргументов Fcutoff и Gсоответственно. Обратите внимание, что также можно создать MEX-файл из этой функции с помощью codegen команда. Производительность улучшается в этом режиме без ущерба для возможности настройки параметров.

Ссылки

[1] Аартс, Рональд М, Эрик Ларсен и Даниэль Шоббен. «Улучшение воспринимаемых басов и реконструкция высоких частот для сигналов с ограниченной полосой». Материалы 1-го семинара IEEE Benelux по модельному кодированию аудио (MPCA-2002), 15 ноября 2002, 59-71.