Запись Audio CD из MP3, OGG, ACC, WAV, FLAC и так далее через командную строку

Допустим, у вас имеется коллекция музыки, собранная в произвольных аудиоформатах (mp3, ogg, acc, wav) и вы решили записать музыкальный диск в стандартном формате Audio CD, чтобы иметь возможность воспроизводить диск в любом бытовом проигрывателе. Как думаете, потребуется ли для этой операции графический интерфейс? Спецы уверяют: не потребуется. Более того, они считают, что графический интерфейс для неудачников (GUI is for losers)! Так какое решение предлагают они?

Прежде всего, установим необходимый софт, если он еще не был установлен:

# apt-get install cdrecord ffmpeg normalize-audio libavcodec52

Теперь переместим записываемые композиции в одну директорию и назовем ее, например, burn:

ls ~/burn/
03.Come As You Are.mp3
07 - Crystal Mountain.mp3
09-We Who Are Not as Others.mp3
Lemuria_-_05_-_Lemuria.ogg

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

$ for f in *; do mv "$f" `echo $f | tr ' ' '_'`; done

Теперь сконвертируем все треки в формат wav:

$ for i in $( ls ); do ffmpeg -i $i $i.wav; done

Теперь сама нормализация:

$ normalize-audio -m *.wav

Вывод программы будет похож примерно на следующее:

Computing levels...
Lemuria_-_05_-_Le 100% done, ETA 00:00:00 (batch 100% done, ETA 00:00:00)
Applying adjustment of 4.15dB to 03.Come_As_You_Are.mp3.wav...
03.Come_As_You_Ar 100% done, ETA 00:00:00 (batch 22% done, ETA 00:00:00)
Applying adjustment of -0.91dB to 07_-_Crystal_Mountain.mp3.wav...
07_-_Crystal_Moun 100% done, ETA 00:00:00 (batch 52% done, ETA 00:00:01)
Applying adjustment of -0.82dB to 09-We_Who_Are_Not_as_Others.mp3.wav...
09-We_Who_Are_Not 100% done, ETA 00:00:00 (batch 75% done, ETA 00:00:01)
Applying adjustment of -1.37dB to Lemuria_-_05_-_Lemuria.ogg.wav...
Lemuria_-_05_-_Le 100% done, ETA 00:00:00 (batch 100% done, ETA 00:00:00)

Можно, конечно, производить нормализацию сразу в mp3 или ogg, для этого даже существуют соответствующие команды normalize-mp3 и normalize-ogg, но это очень плохая идея (из-за транскодирования mp3->wav->mp3, если кто не догадался — прим. перев.).

Почти все. Теперь нужно узнать каким именем кодируется записывающее устройство:

$ wodim --devices

Вывод будет примерно следующим, из которого можно понять, что привод обозначается как /dev/scd0:

wodim: Overview of accessible drives (1 found) :
-------------------------------------------------------------------------
0 dev='/dev/scd0' rwrw-- : 'TSSTcorp' 'CD/DVDW SH-S183L'
-------------------------------------------------------------------------

И теперь запись:

$ cdrecord -v -nofix -eject dev='/dev/scd0' -audio -pad *.wav

Обратите внимание, что ключ -nofix оставляет сессию открытой, что делает возможным дозапись диска. Если вы пожелаете закрыть сессию, то сделать это можно командой:

$ cdrecord -v -fix -eject dev='/dev/scd0'

field_vote: 
Ваша оценка: Нет Средняя: 3 (4 оценки)
Главная тема: 
Программное обеспечение: 

Комментировать

Filtered HTML

  • Use [fn]...[/fn] (or <fn>...</fn>) to insert automatically numbered footnotes.
  • Доступны HTML теги: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd> <blockquote> <strike> <code> <h2> <h3> <h4> <h5> <del> <img>
  • Адреса страниц и электронной почты автоматически преобразуются в ссылки.
  • Строки и параграфы переносятся автоматически.

Plain text

  • HTML-теги не обрабатываются и показываются как обычный текст
  • Адреса страниц и электронной почты автоматически преобразуются в ссылки.
  • Строки и параграфы переносятся автоматически.