和ape那个同时写的,内容也基本一致。之前没能让它正常工作,现在弄好了,也贴出来。
将整轨的flac音乐(flac+cue文件)转换成分轨的ogg文件(质量为q8,可以自己在脚本中修改),自动将cue文件从GBK转码到UTF-8(适用于网上大部分cue文件),再跟据其内容给ogg文件命名,并填写Comment(音轨信息)。
依赖:
libogg0
flac
mp3splt
代码:
#!/bin/sh
PARAM=$#
if [ $PARAM -eq 2 ]; then
echo ""
echo ""
echo "***********************************"
echo *****Step1 转换flac为wav*****
echo "***********************************"
echo ""
echo ""
flac -o `echo $1 | sed -e 's/.flac$//'`.wav -d $1
echo ""
echo ""
echo "***********************************"
echo *****Step2 转换wav为ogg*****
echo "***********************************"
echo ""
echo ""
oggenc -q 8 `echo $1 | sed -e 's/.flac$//'`.wav
rm `echo $1 | sed -e 's/.flac$//'`.wav
echo "**************************************************"
echo *****Step3 将cue文件转换成UTF-8编码*****
echo "**************************************************"
echo ""
echo ""
iconv -f GBK -t UTF-8 -o `echo $2 | sed -e 's/.cue$//'`_utf8.cue $2
echo "************************************"
echo *****Step4 切分ogg文件*****
echo "************************************"
mp3splt `echo $1 | sed -e 's/.flac$//'`.ogg -c `echo $2 | sed -e 's/.cue$//'`_utf8.cue
rm `echo $2 | sed -e 's/.cue$//'`_utf8.cue
rm `echo $1 | sed -e 's/.flac$//'`.ogg
echo ""
echo ******转换完成!*****
else
echo -e "usage: flac2ogg filename(flac) filename(cue)"
fi
推荐:
1. Ogg编码器是有各种MOD版本的,推荐使用aoTuV版本的,这算是目前最好的有损压缩编码器了(参见
http://www.hydrogenaudio.org/forums/index.php?showtopic=36465)。下面的源里有各种编码器的MOD,其中oggenc-aotuv包即为aoTuV版本。安装之后记得修改脚本,以调用新的编码器。
引用:
2. 源里的Mp3splt似乎不能正常填写ogg文件的comment(在我的机器上不能),推荐使用最新的2.2rc1版本,官方有deb包下载(注意连同Libmp3splt一起下,有依赖关系)。
http://mp3splt.sourceforge.net/mp3splt_page/unstable_downloads.php