Москва: проверенные б/у ноутбуки с гарантией и проверкой перед оплатой
+7 906 722-94-45

Главная → Статьи → Обработка аудио: нормализация громкости

Нормализация громкости аудио: измерение и выравнивание

Обработка аудио: измерение громкости, нормализация по пику и по громкости, двухпроходная обработка и проверка уровня результата.

Прямой ответ

Нормализация выравнивает громкость записи по измеренному значению, поэтому уровень звука становится одинаковым между файлами и фрагментами.

Способ Что выравнивается
Нормализация по пику Максимальное значение сигнала
Нормализация по громкости Воспринимаемая громкость
Двухпроходная обработка Точное значение после измерения
Целевой уровень Значение, к которому приводится громкость
# проход 1: измерение
ffmpeg -i input.wav -af loudnorm=print_format=json -f null -

# проход 2: применение
ffmpeg -i input.wav -af loudnorm=I=-16:TP=-1.5 out.wav

Измерение выполняется до применения, поэтому целевой уровень задаётся по фактическому значению, а не по предположению. О командах — в статье про FFmpeg.

Измерение громкости и целевой уровень

Измерение определяет фактический уровень записи, поэтому нормализация выполняется от измеренного значения, а не от произвольного.

Измерение уровня. Фактическая громкость записи измеряется до обработки, поэтому целевой уровень задаётся по результату измерения.

Целевой уровень. Значение, к которому приводится громкость, поэтому уровень выбирается исходя из назначения записи.

Пиковое значение. Максимальное значение сигнала ограничивает усиление, поэтому превышение пика приводит к искажению.

Практическое следствие: нормализация без измерения применяет усиление произвольно, поэтому результат может превышать допустимый пик и давать искажение.

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

Нормализация по пику и по громкости

Способ нормализации определяет, какое значение выравнивается, поэтому результат различается для записей с разным распределением сигнала.

Нормализация по пику. Максимальное значение приводится к целевому, поэтому запас по пику соблюдается, но воспринимаемая громкость может различаться.

Нормализация по громкости. Воспринимаемая громкость приводится к целевому значению, поэтому записи звучат одинаково громко.

Ограничение пика. Целевой пик задаётся отдельно, поэтому усиление не приводит к превышению допустимого значения.

Практическое следствие: нормализация только по пику оставляет записи с разной воспринимаемой громкостью, поэтому разница в уровне звука сохраняется.

Двухпроходная обработка и проверка результата

Двухпроходная обработка измеряет уровень на первом проходе и применяет усиление на втором, поэтому результат точнее однократной обработки.

Первый проход. Уровень измеряется без изменения файла, поэтому фактическое значение громкости и пика получено до применения.

Второй проход. Усиление применяется по измеренному значению, поэтому целевой уровень достигается точнее.

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

Практическое следствие: однократная обработка может дать уровень, отличающийся от целевого, поскольку усиление применяется без предварительного измерения.

Об извлечении дорожки — в статье про извлечение аудио; о потоковой передаче — в статье про медиасервер и HLS.

Компрессия динамики и ограничение пика

Компрессия сокращает разницу между тихими и громкими участками, поэтому воспринимаемая громкость выравнивается без роста пикового значения.

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

Компрессия. Разница между участками сокращается, поэтому тихие фрагменты становятся слышнее без превышения пикового значения.

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

Практическое следствие: усиление записи с широким динамическим диапазоном без компрессии приводит к превышению пика на громких участках, поэтому возникает искажение.

Отдельный аспект — побочный эффект компрессии. Сокращение динамического диапазона делает запись ровнее по громкости, но снижает выразительность тихих фрагментов, поэтому степень компрессии подбирается под назначение записи.

Практика: нормализация громкости аудио

1. Измеряйте уровень записи до обработки. Целевой уровень задаётся по фактическому значению, а не по предположению.

2. Выбирайте способ нормализации под задачу. Нормализация по громкости выравнивает воспринимаемый уровень, по пику — максимальное значение.

3. Задавайте целевой пик отдельно. Усиление не приводит к превышению допустимого значения и искажению.

4. Используйте двухпроходную обработку для точного результата. Усиление применяется по измеренному значению.

5. Проверяйте уровень выходного файла. Соответствие целевому значению подтверждается повторным измерением.

6. Применяйте единый целевой уровень к набору записей. Записи звучат одинаково громко, поэтому разница в уровне устраняется.

7. Сравнивайте записи до и после нормализации. Изменение уровня подтверждается измерением, а не на слух.

Рекомендации:

  1. Не нормализуйте без измерения. Усиление применяется произвольно, поэтому результат может превышать допустимый пик.
  2. Учитывайте разницу пика и воспринимаемой громкости. Равный пик не означает равную громкость звучания.
  3. Сопоставляйте целевой уровень с назначением записи. Уровень для речи и для музыки выбирается разный.
  4. Фиксируйте параметры нормализации в скрипте. Повторная обработка даёт одинаковый результат.
  5. Пересматриваем целевой уровень при изменении назначения. Новый канал воспроизведения может требовать иного уровня.

Практический сценарий: записи звучали с разной громкостью

Контекст: набор записей воспроизводился с заметно разной громкостью, при этом пиковые значения были близки.

  1. Диагностика. Измерение показало, что пиковые значения записей совпадали, а воспринимаемая громкость различалась. Нормализация выполнялась по пику, поэтому выравнивалось максимальное значение, а не уровень звучания.
  2. Причина. Пиковое значение не отражает воспринимаемую громкость, поэтому нормализация по пику не устранила разницу в уровне звука.
  3. Действия. (а) Заменили нормализацию по пику на нормализацию по воспринимаемой громкости с единым целевым уровнем; (б) применили двухпроходную обработку, чтобы усиление задавалось по измеренному значению; (в) задали целевой пик отдельно, чтобы усиление не приводило к искажению; (г) измерили уровень выходных файлов и убедились в соответствии целевому значению; (д) сравнили записи между собой и убедились в одинаковой громкости звучания.
  4. Результат. Записи звучат с одинаковой громкостью, поскольку выравнивается воспринимаемый уровень, а не пиковое значение.

Вывод: нормализация по пиковому значению не устраняет разницу в воспринимаемой громкости, поскольку пик не отражает уровень звучания. Нормализация по громкости с двухпроходной обработкой и отдельным ограничением пика даёт записи с одинаковым уровнем звука.

FAQ

Чем нормализация по пику отличается от нормализации по громкости? По пику выравнивается максимальное значение сигнала, по громкости — воспринимаемый уровень. Равный пик не означает равную громкость звучания.

Зачем нужна двухпроходная обработка? Первый проход измеряет уровень, второй применяет усиление по измеренному значению, поэтому целевой уровень достигается точнее.

Почему важно задавать целевой пик отдельно? Усиление без ограничения пика может превысить допустимое значение, поэтому возникает искажение сигнала.

Как проверить результат нормализации? Повторным измерением уровня выходного файла. Соответствие целевому значению подтверждается измерением, а не на слух.

Источники: FFmpeg filters, FFmpeg documentation, ffprobe — ссылки в шапке.