ΣSigmaStudio English

Масштабируемый регулятор громкости (Growable Single Volume Control)

Алгоритм «Growable Single Vol Ctrl» (или «Масштабируемый регулятор громкости») применяет усиление к входному сигналу. Усиление обновляется с использованием кривой нарастания RC-типа. Количество входных каналов масштабируется — каждый вход направляется на соответствующий выходной пин. Одно и то же усиление применяется ко всем входным каналам одновременно.growablesinglevolumecontrol1.jpg

Входные пины

NameFormat [int/dec] - [control/audio]Function Description
Pin 0: Audio Inputdecimal - audioАудиовход — канал 0

Выходные пины

NameFormat [int/dec] - [control/audio]Function Description
Pin 0: Audio Outputdecimal - audioАудиовыход — канал 0

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

GUI Control NameDefault ValueRangeFunction Description
Volume Slider (dB)0-144 to +24Управляет целевым уровнем выходного усиления

Информация о параметрах DSP

GUI Control NameCompiler NameFunction Description
Volume Control SliderGainS200AlgGrowDP1gain_targetЦелевое значение выходного усиления.
N/AGainS200AlgGrowDP1alphaСкорость, с которой выходное усиление плавно изменяется (slew) к целевому значению. Значения alpha и 1-alpha хранятся в последовательных ячейках памяти. Примечание: этот параметр хранится в не-модульной data RAM.

Описание алгоритма

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

На этом графике показана реакция входного сигнала при изменении усиления с нуля (линейное) до единицы (полная шкала, линейное):
growablesinglevolumecontrol2.jpg
На этом графике показана реакция входного сигнала при изменении усиления с единицы (полная шкала, линейное) до нуля (линейное):
growablesinglevolumecontrol3.jpg

Пример

В этом примере показана обработка 4 цифровых аудиоканалов с помощью ячейки «Growable Single Volume Control». При перемещении ползунка усиление всех 4 каналов будет изменяться равномерно, следуя RC-кривой нарастания.
growablesinglevolumecontrol4.jpg

Детали алгоритма

Toolbox PathVolume Controls - Adjustable Gain - Single/Multiple Controls - Clickless SW Slew - Growable Single Vol Ctrl
Cores SupportedADAU144x
ADAU1761
ADAU1781
“Grow Algorithm” Supportedyes - see Algorithm Growth Information
“Add Algorithm” Supportedyes - see Algorithm Addition Information
Subroutine/Loop Basedno
Program RAM7*
Data RAM3*
Parameter RAM3*

*Числа основаны на одном экземпляре алгоритма без дополнительных операций «add» или «grow»

Информация о расширении алгоритма (Growth)

DescriptionДобавляется дополнительный канал. Применение усиления к каждому каналу выполняется с помощью одного и того же вычисления.
Program RAM Repetition2 per growth
Data RAM Repetition1 per growth
Parameter RAM Repetitionnone

Информация о добавлении алгоритма (Addition)

DescriptionДобавляется дополнительный канал. Расчет усиления выполняется отдельно для каждого канала, поэтому требования к program, data и parameter RAM удваиваются.
Program RAM Repetition7 per add
Data RAM Repetition3 per add
Parameter RAM Repetition3 per add

Growable Single Volume Control в SigmaStudio: настройка и параметры

Growable Single Volume Control (Масштабируемый регулятор громкости) — это алгоритм из раздела Volume Controls среды разработки SigmaStudio, предназначенный для процессоров семейства SigmaDSP (ADAU). Его ключевая особенность — возможность масштабирования количества обрабатываемых каналов при использовании единого механизма управления уровнем сигнала. Принцип работы блока основан на применении общего усиления ко всем входным каналам одновременно. Изменение уровня происходит не скачкообразно, а плавно, по кривой, аппроксимирующей заряд и разряд RC-цепи. Это исключает щелчки и артефакты при регулировке громкости. Каждый входной канал направляется на соответствующий выходной пин, а мгновенное значение усиления всегда одинаково для всех каналов, что обеспечивает согласованное изменение громкости без расхождения уровней между каналами. В графическом интерфейсе SigmaStudio основным элементом управления является ползунок Volume Slider. Диапазон регулировки целевого выходного усиления составляет от -144 дБ до +24 дБ. За плавность перехода отвечает параметр alpha, который определяет скорость нарастания (slew) усиления к заданному целевому значению. Значения alpha и 1-alpha хранятся в последовательных ячейках не-модульной data RAM, что важно учитывать при планировании распределения памяти проекта. Для практического применения алгоритм удобен при обработке многоканальных аудиосигналов, например, при работе с четырьмя цифровыми каналами. При перемещении ползунка громкость всех каналов будет изменяться равномерно и синхронно.