Суббота, 25 Октябрь 2008
Конвертируем музыку в mp3
У меня в машине есть mp3-магнитола. И еще у меня есть большая коллекция музыки в flac/ogg. Давно еще, возникло желание слушать не радио, а музыку из коллекции, но как-то все руки не доходили.
Сегодня дошли. Собственно постановка задачи: есть у меня несколько директорий с flac/ogg, требуется перегнать их в mp3, перенеся теги и создать iso образ, который будет позже записан.
Мой zshrc пополнился таким вот кодом:
function ogg2mp3 {
if [ -z "$1" ]; then
echo usag: $0 dir [dir2] [dir]
exit 1
fi
find $@ -iname "*.ogg" | while read filename
do
eval `ogginfo "$filename" | grep -e "\w\+=\w\+" | cut -f2 | awk -F = '{print toupper($1) "=\"" $2 "\""}'`
test -e ${filename%*ogg}mp3 || oggdec -Q -o — "$filename" | lame --silent -V8 --ignore-tag-errors --tg "${GENRE}" --tt "${TITLE}" --ta "${ARTIST}" --ty "${DATE}" --tn "${TRACKNUMBER}" — "${filename%*ogg}mp3" || exit 1
done
}
function flac2mp3 {
if [ -z "$1" ]; then
echo usag: $1 dir [dir2] [dir]
exit 1
fi
find $@ -iname "*.flac" | while read filename
do
eval `metaflac --export-tags-to=- $filename | awk -F = '{print toupper($1) "=\"" $2 "\""}'`
test -e ${filename%*flac}mp3 || flac -d -c -s $filename | lame --silent -V8 --ignore-tag-errors --tg ${GENRE} --tt ${TITLE} --ta ${ARTIST} --ty ${DATE} --tn ${TRACKNUMBER} — ${filename%*flac}mp3 || exit 1
done
}
function make-car-iso {
if [ -z "$2" ]; then
echo usage $0 /path/to/iso dir1 [dir2] [dir3]
exit 1
fi
iso=$1
shift
ogg2mp3 $@
flac2mp3 $@
rm -f $iso.path-list
find $@ -iname "*.mp3" | awk '{print $0"="$0}' > $iso.path-list
genisoimage -o $iso -iso-level 4 -l -r -hide-rr-moved -J -joliet-long -graft-points --path-list $iso.path-list
rm -f $iso.path-list
find $@ -iname "*.mp3" | xargs rm -f
}
Комментарии
Форма комментирования для «Конвертируем музыку в mp3»