Преобразование из стерео в моно будет означать перекодирование, поэтому сохранение одинаковой скорости передачи будет бессмысленным. Фактически, преобразование 128 кбит / с MP3 -> нового 128 кбит / с MP3 принесет вам чертовски ужасное качество, даже если второе - моно (и, следовательно, требует более низкой скорости передачи для того же субъективного качества).
Как правило, я бы использовал настройку переменной битовой скорости (VBR) для MP3, которая нацелена на конкретное качество и позволяет кодировщику устанавливать любую необходимую битовую скорость (для полностью тихого звука требуется более низкая скорость передачи, чем у китовой песни, которая требует более низкую скорость передачи данных, чем ДАП СТЕП). Из командной строки ffmpeg может конвертировать аудио в моно с опцией -ac 1
, например так:
ffmpeg -i input.mp3 -c:a libmp3lame -q:a 2 -ac 1 output.mp3
Смотрите эту страницу для руководства по использованию -q:a
. Обратите внимание, что таблица на этой странице предназначена для стереозвука; фактические битрейты, которые вы увидите, будут несколько ниже. Обычно я рекомендую 3-4, но поскольку вы кодируете из MP3, а не с оригинального CD, вам следует стремиться к чему-то более высокому.
Это, конечно, может быть очень легко автоматизировано. В Linux/OSX/ других UNIX-подобных, для преобразования каталога MP3:
for f in *.mp3; do ffmpeg -i "$f" -c:a libmp3lame -q:a 2 -ac 1 mono-"$f"; done
Чтобы сделать это рекурсивно:
find . -type f -name "*.mp3" -exec ffmpeg -i '{}' -c:a libmp3lame -q:a 2 -ac 1 mono-'{}' \;
Если у вас есть GNU Parallel и многоядерный компьютер, вы можете найти это полезным:
find . -type f -name "*.mp3" | parallel ffmpeg -i {} -c:a libmp3lame -q:a 2 -ac 1 mono-{}