ΣSigmaStudio English

Ограничитель (Limiter)


Ограничитель отслеживает среднеквадратичный уровень (RMS) входного аудиосигнала и пытается предотвратить его превышение заданного пользователем порога путем автоматического уменьшения усиления.Ограничитель (Limiter)

Входные пины (Input Pins)

NameFormat [int/dec] - [control/audio]Function Description
Pin 0: Audio Inputdec - audioАудиосигнал, который необходимо ограничить.

Выходные пины (Output Pins)

Начиная с SigmaStudio 4.7, пин 2 обозначен как «Limter ratio» (Коэффициент ограничения), но на самом деле является флагом активности ограничителя, в то время как пин 3 обозначен как «Limiter Active Flag» (Флаг активности ограничителя), но на самом деле является коэффициентом ограничения.
NameFormat [int/dec] - [control/audio]Function Description
Pin 1: Audio Outputdec - audioОграниченный выходной аудиосигнал.
Pin 2: Limiter Ratiodec - controlЗначение, представляющее текущий коэффициент усиления, применяемый к аудиосигналу.
Pin 3: Limiter Active Flagint - controlФлаг, выводящий 1, если ограничитель активен, или 0, если ограничитель не активен. По сути, это показывает, превысил ли входной сигнал порог или нет. Число имеет формат беззнакового целого.

Элементы управления GUI (GUI Controls)

GUI Control NameDefault ValueRangeFunction Description
RMS TC (dB/s)501 to 10000Управляет скоростью отслеживания аппроксимации RMS, используемой для отслеживания входного уровня.
Decay (dB/s)125 to 23Управляет скоростью, с которой коэффициент сжатия сигнала будет спадать после того, как уровень входного сигнала упадет ниже порога ограничителя. Большие значения приводят к более длительному спаду, при значении 23 восстановление до исходного усиления не происходит.
Threshold (dB)0-24 to 24Устанавливает пороговую точку. Если аппроксимированный RMS-уровень входного сигнала превышает пороговую точку, ограничитель применит сжатие, чтобы предотвратить превышение сигналом этого уровня. Этот пороговый уровень не обязательно должен быть целым числом; его разрешение может быть установлено с шагом менее 0,01 dB. Полномасштабная синусоида имеет уровень -3 dB из-за измерения RMS.

Информация о параметрах DSP (DSP Parameter Information)

GUI Control NameCompiler NameFunction Description
N/AlimiterAlg1slope_1Внутренний параметр. Не изменять.
N/AlimiterAlg1inter_1Внутренний параметр. Не изменять.
N/AlimiterAlg1slope_2Внутренний параметр. Не изменять.
N/AlimiterAlg1inter_2Внутренний параметр. Не изменять.
N/AlimiterAlg1slope_3Внутренний параметр. Не изменять.
N/AlimiterAlg1inter_3Внутренний параметр. Не изменять.
N/AlimiterAlg1slope_4Внутренний параметр. Не изменять.
N/AlimiterAlg1inter_4Внутренний параметр. Не изменять.
N/AlimiterAlg1comp_1Внутренний параметр. Не изменять.
N/AlimiterAlg1comp_2Внутренний параметр. Не изменять.
N/AlimiterAlg1comp_3Внутренний параметр. Не изменять.
Threshold (dB)limiterAlg1thresholdПорог ограничителя в десятичном формате.
RMS TC (dB/s)limiterAlg1RMS_MONO_TCONSTПостоянная времени для расчета аппроксимации RMS.
Decay (dB/s)limiterAlg1decayЗначение спада (decay).
Decay (dB/s)limiterAlg1decaycomplementДополнение к значению спада (decay).

Описание алгоритма (Algorithm Description)

Блок «Ограничитель» (Limiter) — это экстремальный компрессор, полностью предотвращающий превышение сигналом порога. Всякий раз, когда уровень сигнала начинает превышать его, ограничитель немедленно останавливает его и удерживает на пороге.

Этот блок может управлять обнаруженным значением rms и постоянной времени атаки (TC), а также спадом (decay) процессора.

Следующий график показывает зависимость входа/выхода для тона 1 кГц с порогами, увеличивающимися с шагом 6 дБ.

Описание алгоритма (Algorithm Description)

Выходной сигнал вычисляется по следующей формуле:

Описание алгоритма (Algorithm Description)

Сигналы ниже порога остаются без изменений; сигналы выше порога ослабляются с фиксированным коэффициентом, показанным выше.

На рисунке блока, вверху справа, синий пин выводит динамически ограниченный входной сигнал. Второй красный пин (нижний из трех пинов) выводит НОЛЬ (флаг), когда значение rms входного сигнала ниже порога. Если значение rms превышает порог, он выведет ЕДИНИЦУ, давая вам возможность считать, активен ли ограничитель.

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

Расчет значений параметров (Calculating Parameter Values)

Уравнения для параметров ограничителя:

Значение RMS dB/s, хранящееся в RAM = abs(1.0 - 10^(rms/10*fs)), где «rms» — это значение, введенное в блоке, а «fs» — частота дискретизации в Гц.

Значение спада (Decay) dB/s, хранящееся в RAM = (fs / 26373 * Decay), где «Decay» — это значение, введенное в блоке.

Дополнение к спаду (Decay complement), хранящееся в RAM = 1.0 - 2^(-1.0*(23 + DecayRAM)), где «DecayRAM» — это значение, рассчитанное по предыдущей формуле.

Дополнение к спаду используется только для определения флага выхода ограничителя и не используется в процессе ограничения.

Примечание: Для процессоров Griffin/Sharc, decay = Math.Pow(10, (double)decay / (fs + 0.000001) / 10), где «Decay» — это значение, введенное в блоке, а «fs» — частота дискретизации в Гц.

Пример (Example)

Пример проекта с использованием этого блока см. в разделе Пример процессора динамики (Dynamics Processor Example).

Вот снимок экрана, показывающий использование модуля: Пример (Example)

Вот снимок экрана его расположения в дереве Toolbox: Пример (Example)

Детали алгоритма (Algorithm Details)

Toolbox PathDynamics Processors - RMS - Limiter
Cores SupportedAD194x
ADAU170x
ADAU144x
ADAU176x
ADSP214xx
ADSP 215xx
ADSP-SC5xx
“Grow Algorithm” Supportedno
“Add Algorithm” Supportedno
Subroutine/Loop Basedno
Program RAM (ADAU144x and ADAU176x)77
Data RAM (ADAU144x and ADAU176x)13
Parameter RAM (ADAU144x and ADAU176x)15

Limiter в SigmaStudio: настройка и параметры

Limiter — это алгоритм обработки динамики в среде SigmaStudio, предназначенный для ограничения уровня аудиосигнала в процессорах семейства ADAU (SigmaDSP) от Analog Devices. Основная задача блока — не допустить превышения сигналом заданного порога, что защищает последующие каскады от перегрузки и клиппинга. Принцип работы основан на отслеживании среднеквадратичного (RMS) уровня входного сигнала. Когда этот уровень превышает установленный порог, ограничитель автоматически уменьшает усиление, не давая сигналу выйти за пределы. Скорость реакции на превышение задается параметром RMS TC (dB/s), который управляет точностью аппроксимации RMS. После того как уровень падает ниже порога, коэффициент усиления восстанавливается со скоростью, определяемой параметром Decay (dB/s). Важно учитывать, что при значении Decay, равном 23, восстановление до исходного усиления не происходит вовсе. Для настройки в проекте SigmaStudio используются три основных элемента GUI. Threshold (dB) задает пороговую точку в диапазоне от -24 до 24 дБ с разрешением менее 0,01 дБ. Стоит помнить, что полномасштабная синусоида измеряется как -3 дБ из-за особенностей RMS-измерения. RMS TC регулирует скорость отслеживания уровня, а Decay — скорость спада коэффициента сжатия после прекращения превышения порога. Блок имеет два аудиопина — вход и ограниченный выход.