Логарифмическое изменение уровня громкости
Человеческое ухо воспринимает громкость логарифмически, а не линейно. Поэтому для измерения громкости используют децибелы (дБ) — единицу, отражающую относительное изменение уровня сигнала по логарифмической шкале.
При управлении звуковым оборудованием, работающим со значениями в дБ, важно, чтобы шаг изменения громкости был динамическим: более чувствительным вблизи 0 дБ и менее чувствительным при больших отрицательных значениях. Это позволяет избежать “мёртвых зон”, когда при перемещении ползунка громкость практически не изменяется.
Для этой цели используется стандартный элемент Level со специальными настройками:
- Scale — при выборе режима Logarithmic поведение уровня изменяется: шаг рассчитывается динамически по логарифмической формуле.
- Min / Max — пределы регулирования уровня, задающие диапазон значений, в котором перемещается ползунок.
Рекомендуемый диапазон: от -90 до +12.
Ограничения: от -100 до +20.
- Curve — параметр кривизны логарифмической функции, используемой для расчёта шага. Доступен только при включённом логарифмическом режиме.
Значение задаётся в диапазоне от 0.01 до 0.99. Чем выше значение, тем ближе шкала к линейной. Чем ниже — тем более плавно изменяется громкость вблизи 0 дБ.
Изменяя этот параметр, можно управлять плавностью изменения громкости без дополнительной обработки значений на JavaScript.
Пример изменения шага с значением Curve = 0.4