(1)如果是中文专辑,.cue文件通常是乱码的
首先确定.cue的编码
我使用vim
在.vimrc中添加:
set fileencodings=utf-8,gb2312,gbk,gb18030
set termencoding=utf-8
set encoding=prc
这样打开.cue后不再乱码
然后输入:set fileencoding 出现编码方式,我的出现euc-cn的编码方式,是GB2312的别名
或者使用enca
$ enca -L zh_CN 文件名.cue
然后进行转码:使用iconv
$ iconv -f GB2312 -t UTF-8 文件名.cue -o 输出文件名.cue
(2)分割整个ape文件(参照:http://www.cnblogs.com/stephenjy/archive/2010/03/01/1675835.html)
安装shntool,以及mac解码器。 shntool可以用apt-get(ubuntu)或者yum(fedora)安装
mac解码器必须编译安装。直接yum install mac安装后,分割不成功。
到 http://shnutils.freeshell.org/shntool/ 下载 Helperprogram下的ape的patchrc
依据info,
执行:
$ CXXFLAGS="-DSHNTOOL" ./configure
$ make
$ make install
分割文件
$ shntool split -t "%n.%p-%t" -f 文件名.cue -o ape -i ape 文件名.ape
(3)转档
安装ffmpeg(yum install)
执行:
$ ffmpeg -i 文件名.ape -acodec alac 文件名.m4a
如果嫌逐个麻烦:
到该文件夹下,首先找出类型为.ape的小于200M的单个歌曲文件,然后 逐个转换
执行:
$ find -type f -size -100000k -name '*.ape' | sed -e 's/\.ape$//' | xargs -I @ ffmpeg -i @.ape -acodec alac @.m4a
加强版(歌曲名里有空格(It's True.ape))
$ find -type f -size -100000k -name '*.ape' -print0 | sed -e 's/\.ape//g'| xargs -0 -I @ ffmpeg -i @.ape -acodec alac @.m4a
最后删除原先的单个ape
$ find -type f -size -100000k -name '*.ape' -print0 | xargs -0 rm
沒有留言:
張貼留言