ID3,储存在MP3文件头部或尾部,记录了曲名、歌手等信息,也因为文字编码的不统一,使在不同的系统、音乐设备中中文字显示为乱码。ID3信息分为两个版本,v1和v2版。ID3 V1是一组附加在音乐文件后面的数据,它的长度是固定的128字节,没有标记信息文字编码。ID3V2有几个版本,支持较多的是第3版,既ID3v2.3,而ID3v2.4 UTF-8,不被很多软件和音乐设备支持。
经测试ID3v2.3 UTF-16在我的WindowsXP、Ubuntu、Mp3(台电X19)、山寨机(MTK6225)均能正常识别,就决定以后用这个统一我的MP3标签了。
windows下解决乱码的操作方法
一.千千静听,除了不能删除,能很好的修改ID3。在“播放列表”中全选要修改的MP3文件,单击鼠标右键,选择“批量文件属性”,在弹出的“文件属性”中,选择:“读取类型优先级:APEv2 〉ID3v2 〉ID3v1”、“写入类型:“ID3v2”、编码类型:“UTF-16”、“√ID3v2写入时使用填充数据”,单击“保存到文件”即可。
二.存在几套标签总是比较麻烦的,比如我之前在Ubuntu下用mid3iconv转换后,发现几首mp3多年前被我删除的信息又出来了,原因是mid3iconv读取了这几个的ID3v1,因此,我决定只留ID3v2,删掉其他。mp3tag可以读取、编辑mp3的ID3V1、ID3V2和APE(千千静听的文件属性中可以见到,而且默认下是同时写入APEv2 和ID3v2),使用相当简便。
1.设置软件语言。打开mp3tag,依次点击上方菜单 “工具”-〉“属性”,在弹出的“Mp3tag 选项”中,在左边导航栏选择“language”,右边找到简体中文,确定后自动换成中文。
2.转换ID3V2为UTF-16,并清除ID3V1和APE。再打开“Mp3tag 选项”,选“标签”下的“Mpeg”,右边在“写入”一栏,只勾选“ID3v2”及子项“ID3v2.3 UTF-16”,“清除”一栏选中“APEv2”、“ID3v1”,不选“ID3v2”,确定。全选要修改的MP3,单击鼠标右键,选择“保存标签”,确定,再单击鼠标右键,选择“清除标签”,确定,至此就可以了。
Ubuntu下解决乱码的操作方法
1. 安装python-mutagen,命令:sudo apt-get install python-mutagen
(对于已安装的可以省略)
2. 在终端中转到MP3文件夹,然后执行命令:mid3iconv -e GBK *.mp3
如果想转换当前目录下的所有 mp3 (包括子目录),可以配合find命令,执行:find . -iname "*.mp3" -execdir mid3iconv -e gbk {} \;
如果子目录只有一层,也可以用这个命令:mid3iconv -e GBK */*.mp3