Нормализуйте различные уровни звука в одном видео

У меня есть скрипт для обработки / кодирования видео. Некоторые из видео имеют различный уровень звука (например, 2 видео были объединены, и у одного был громкий звук, а у другого тихий звук). Я хочу нормализовать звук таким образом, чтобы громкий звук был уменьшен, а тихий звук увеличен, чтобы сделать их обоих почти равными. Хотя я использую HandbrakeCLI для кодирования, но любое другое решение, такое как ffmpeg, которое можно использовать с терминала Linux, будет работать.

Я провел некоторые исследования и разработки, но у меня очень ограниченные знания об аудио, поэтому я не мог заставить его работать. Некоторые из решений, которые я искал, - это нормализация звука и Replaygain (просто тег, но мне нужно напрямую изменить видео, когда кодирование не просто добавляет тег).

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

Входные данные:

Выход:

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

Редактировать:

Результат ffmpeg -i in.mp4 -af "dynaudnorm" -vcodec copy out.mp4:

0 ответов

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

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

Минусы: это не встроенный эффект ffmpeg; вам придется извлечь звук из видео, преобразовать его в правильный битрейт и отформатировать для vlevel-bin, а затем перекодировать звук обратно в ваше видео. Это также (обязательно) сокрушит динамический диапазон вашего аудио. Не до крайностей войн за громкость, но вершины и долины будут заметно подавлены.

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

Другие вопросы по тегам