26.09.2008 10:51
Вчера написал для разового применения при разгребании коллекции. Может пригодится кому-то.
Запускать в директории с *.wma. Нерекурсивный. Конвертирует в *.mp3, добавляет имеющиеся в WMA тэги. Оригиналы не трогает.
Качество 4 - стандартное. ~150-170 kbps.
Требует установленных mplayer, lame и python-mutagen.
Теги прописаны только те, которые я в своих WMA видел. Полного списка у меня нет. Найдёте - добавьте в код.
Защищённые DRC треки не катят.
Запускать в директории с *.wma. Нерекурсивный. Конвертирует в *.mp3, добавляет имеющиеся в WMA тэги. Оригиналы не трогает.
Качество 4 - стандартное. ~150-170 kbps.
Требует установленных mplayer, lame и python-mutagen.
Теги прописаны только те, которые я в своих WMA видел. Полного списка у меня нет. Найдёте - добавьте в код.
Защищённые DRC треки не катят.
#!/bin/sh
QUALITY=4
COMMENT=\"(c)2008 Your name here\"
for i in *.wma; do
#mutagen-inspect \"$i\"
A=$(mutagen-inspect \"$i\" | grep \"^WM/AlbumArtist=\")
if [ $? -eq 0 ]; then
A=\"$(echo $A | cut -d= -f2)\"
fi
A=$(mutagen-inspect \"$i\" | grep \"^Author=\")
if [ $? -eq 0 ]; then
A=\"$(echo $A | cut -d= -f2)\"
fi
L=$(mutagen-inspect \"$i\" | grep \"^WM/AlbumTitle=\")
if [ $? -eq 0 ]; then
L=\"$(echo $L | cut -d= -f2)\"
fi
T=$(mutagen-inspect \"$i\" | grep \"^WM/Track=\")
if [ $? -eq 0 ]; then
T=\"$(echo $T | cut -d= -f2)\"
fi
T=$(mutagen-inspect \"$i\" | grep \"^Title=\")
if [ $? -eq 0 ]; then
T=\"$(echo $T | cut -d= -f2)\"
fi
N=$(mutagen-inspect \"$i\" | grep \"^WM/TrackNumber=\")
if [ $? -eq 0 ]; then
N=\"$(echo $N | cut -d= -f2)\"
fi
Y=$(mutagen-inspect \"$i\" | grep \"^WM/Year=\")
if [ $? -eq 0 ]; then
Y=\"$(echo $Y | cut -d= -f2)\"
fi
#G=$(mutagen-inspect \"$i\" | grep \"^WM/Genre=\")
#if [ $? -eq 0 ]; then
# G=$(echo $G | cut -d= -f2)
# G=\"--tg '$G'\"
#fi
mplayer -quiet -vo null -vc null -ao pcm:waveheader \"$i\" || exit 1
lame -v -V $QUALITY --replaygain-accurate --add-id3v2 --pad-id3v2 audiodump.wav \"$i.mp3\" || exit 1
mid3v2 -a \"$A\" -A \"$L\" -t \"$T\" -y \"$Y\" -T$N -c $COMMENT \"$i.mp3\" || exit 1
mv \"$i.mp3\" \"`basename \"$i\" .wma`.mp3\" || exit 1
done
rm audiodump.wav