В идеале я хочу конвертировать из MP3 в FLAC и обратно. Я также должен быть в состоянии написать это.
В идеале я хочу конвертировать из MP3 в FLAC и обратно. Я также должен быть в состоянии написать это.
Ответы:
Основным инструментом для преобразования звукового формата и простых преобразований является SoX, швейцарский армейский нож программ обработки звука .
sox foo.mp3 foo.flac
Если вы работаете в Debian, поддержка записи MP3-файлов sox
нарушается в lenny и squeeze (и, насколько я знаю, та же проблема затрагивает Ubuntu 10.04 и 10.10). Эта ошибка была исправлена в начале марта 2011 года, поэтому захват последнего источника (или двоичного sox
файла для 14.3.1-1build1 или новее) и перекомпиляция его должны работать.
Альтернативой для кодирования .mp3
является lame
. Он не читает .flac
, но вы можете использовать sox
или flac
для преобразования из .flac
в, .wav
а затем lame
из .wav
в .mp3
.
flac -d foo.flac -c | lame - foo.mp3
Sox версии 13 и выше поддерживает FLAC, а также многие другие форматы . sox может многое сделать с аудиофайлом, а не просто конвертировать из одного формата в другой. Для аудио это то же, что ImageMagick для графики.
Конечно, вы можете использовать SoX, как уже упоминали другие люди, но я предлагаю использовать lame
и flac
:
Ваш первый вопрос будет от .mp3
до .flac
(см ниже , почему это, как правило , плохая идея):
lame --decode <file>.mp3 - | flac -o <file>.flac -
При этом будут использоваться заголовки WAV, которые имеют ограничения, когда дело доходит до очень длинных файлов (четыре часа или более длинных звуковых файлов и т. Д.)
Ваш второй вопрос: как перейти .flac
к .mp3
:
flac -d -c <file>.flac | lame - <file>.mp3
Эти настройки предполагают уровни качества по умолчанию и т. Д. Прочтите справочную страницу lame
и / или flac
чтобы лучше понять, как их настроить.
Возможно, у вас очень длинные записи, которые вы затем хотите перекодировать в формат с потерями. Это был один из моих вариантов использования, и я придумал это:
Переход от .flac
к с .mp3
использованием параметров качества по умолчанию:
flac -d --force-raw-format --endian=little --sign=signed <file>.flac -c | lame -r -s 48 - <file>.mp3
Это предполагает, что необработанный формат представляет собой данные PCM. Частота дискретизации 48 кГц, два канала. Каждый образец 16-битный, младший порядковый номер, целое число со знаком.
Процесс кодирования lame
использует здесь настройки качества по умолчанию, которые могут быть недостаточно сложными для вас.
Следует отметить, что нет смысла делать FLAC-файл из MP3-файла, потому что MP3 уже закодирован с потерями.
Переход от MP3 -> FLAC, а затем FLAC -> MP3 не имеет смысла, так как качество будет ухудшаться с первого, оригинального этапа кодирования MP3.
Однако я предполагаю, что у вас есть разумный вариант использования для этого ...