Создание стандартного Audio CD из любых форматов (mp3, ogg, acc, wav) через командную строку

Допустим, у вас имеется коллекция музыки, собранная в произвольных аудиоформатах (mp3, ogg, acc, wav) и вы решили записать музыкальный диск в стандартном формате Audio CD, чтобы иметь возможность воспроизводить диск в любом бытовом проигрывателе. Как думаете, потребуется ли для этой операции графический интерфейс? Энтузиасты с сайта Linuxconfig уверены, что не потребуется. Более того, они считают, что графический интерфейс для неудачников (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'
Ваша оценка: Нет Средняя оценка: 3 (4 votes)
Отправить комментарий
КАПЧА
Вы человек? Подсказка: зарегистрируйтесь, чтобы этот вопрос больше никогда не возникал. Кстати, анонимные ссылки запрещены.
CAPTCHA на основе изображений
Enter the characters shown in the image.
Яндекс.Метрика