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

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

Введение

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

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

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

Алгоритм

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

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

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

3. Lowpass компонент, lpstereo, преобразуется в моно, 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 использование Audio Test Bench. Испытательный стенд предоставляет графический пользовательский интерфейс, который поможет вам протестировать аудиоплагин в MATLAB. Вы можете настроить параметры плагина, когда испытательный стенд выполняет. Можно также открыть timescope и a 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] Aarts, Ronald M, Erik Larsen, and Daniel Schobben. «Улучшение воспринятого баса и реконструкция высоких частот для Band Limited Signals». Первый семинар IEEE Benelux по модельному кодированию аудио (MPCA-2002), ноябрь 15, 2002, 59-71 года.