[民工日记]自己写个简单MP3 ID3 tag转码工具
Select messages from
# through # 帮助
[/[Print]\]

海归论坛 -> 海归茶馆

#1: [民工日记]自己写个简单MP3 ID3 tag转码工具 (3249 reads) 作者: mmpower来自: 3333 文章时间: 2008-4-14 周一, 13:35
    —
作者:mmpower海归茶馆 发贴, 来自【海归网】 http://www.haiguinet.com

MP3 ID3 tag自动转码工具

老版本ID3 tag的标准本来只支持ISO-8859-1,也就是只能用西方拉丁字母。新的ID3 tag还支持Utf-16, 所以中文啊越南文之类的都能支持了。

问题是许多网上的mp3歌曲id3 tag编码很不规范。。。拿我来说吧,我有7000多首中文mp3。。。而这些中文歌曲的Id3编码是五花八门:

Gb2312/big5/big5hkjcs 甚至utf-8都有,还有很多根本没有tag而是把作者和歌名都放在文件名上。 这样听歌的时候就比较头痛了--在播放器里不知道现在听的是什么歌, 哪个歌手、专辑等。浏览、搜索歌曲也很不方便。在windows还好点,因为许多windows上的jukebox支持GBK编码能看不少繁体字,但到了苹果的OSX上就无法忍受了:OSX只支持unicode, itunes严格只支持ISO-8859-1和UTF-16.

查了一下网上,有些工具但没法满足我的要求:或者只能一次转几个文件--我几千个文件在几百个目录里怎么搞啊,或者一次只支持一种编码的转换--这有个问题:比如用gb2312来转,会把用big5/utf-8码的文件tag弄坏了。

所以只好自己动手写个小utility了。。。

这是个简单python script, 基于一位在英国的澳洲华人写的开源pytagger library (https://www.liquidx.net/pytagger/) , 以及他的tagencoder程序。

pytagger被我稍微改动了一下增强robustness.


下载: 点击下载


用法:

--下载后把文件后缀改为 .tar.gz (或.tgz)

--系统需求:需要在机器上有python. unix/linux一般都有,windows自己去python.org下载安装就行了。

在命令行敲:
python ConvertMp3.py < 目录名>

-- 自动 将该目录下以及所有子目录下所有.mp3 和.mp2文件的ID3 tag转换成 UTF-16.

-- 如果id3 tag的"title"/"artist"空白, 自动根据文件名和路径填上。


可能的enhancement: 自动根据网上的音乐识别服务鉴别mp3的信息并填写tags. 注意不是指CDDB一类识别CD tracks的,而是根据声学曲线识别音乐(acoustics recognition)的musicBrainz一类服务。但是目前musicBrainz里中文歌曲信息太少所以效果估计不好。


作者:mmpower海归茶馆 发贴, 来自【海归网】 http://www.haiguinet.com



海归论坛 -> 海归茶馆


output generated using printer-friendly topic mod. 所有的时间均为 北京时间

1页,共1

Powered by phpBB © 2001, 2005 phpBB Group