lonelyp

Joined: 14 Nov 2006 Posts: 260
小企鹅: 8158
|
Posted: 2007-Mar-03 Sat, pm10:08 |
|
| Post subject: 在Zaurus上将MP3的ID3 tag转换成UTF-8编码 |
|
原文地址:
http://wells.osall.com/blog/index.php?uid=1&m=content&p=396
转载请注明出处,谢谢
============================================
在Zaurus上使用Beep Media Player来播放MP3时,常常会遇到MP3的歌曲信息无法辨认的问题,在播放器中显示一个个问号。其实,原因很简单,这是由于MP3文件的ID3标签的编码不是UTF-8编码而导致。
MP3 文件的ID3标签,是用来存放歌曲信息的 。但是ID3 1.x版本规范中,所有的字符都是按iso8859编码存放的,这也就是为什么很多播放器会显示乱码的原因。在ID3 2.3版本中实现了UTF-16编码的支持;到了ID3 2.4版本,则实现了UTF-8编码。现在越来越多的播放软件开始放弃了对非标准编码的支持(例如Amarok,Winamp等等),转而支持UTF8格式的2.4版本的ID3标签,以避免乱码的问题。而我们现在播放的MP3文件,大多是在Windows平台录制的,而Windows平台还在使用 GB2312/BIG5等非UTF-8格式的编码,加上录制软件的限制,就导致了这个问题的发生。
要解决在Zaurus上播放MP3时播放器不显示乱码的问题,就要把MP3的ID3Tag的编码转换成UTF8。我编译了开源的id3lib,然后利用它提供的功能写了一个小工具,可以在Zaurus上批量转换MP3的ID3 Tag。
首先下载安装我编译好的 id3lib。
http://wells.osall.com/files/index.php?uid=1&m=info&p=1619
然后下载安装我写的转换工具 id3convertor。
http://wells.osall.com/files/index.php?uid=1&m=info&p=1620
转换方法如下:
如果你只需要转换一个文件:
id3enc <文件名> <ID3Tag>
例如原来你的MP3文件abc.mp3的编码是gbk的,这样进行转换:
id3enc abc.mp3 gbk
如果你要转换一个目录下的所有mp3文件:
id3all [原ID3Tag编码]
例如你的一个目录下的所有的mp3文件的ID3Tag编码是gbk的,这样进行转换:
id3all gbk
或者可以省略掉gbk,这个命令没有参数时,默认认为原编码为gbk
id3all _________________ my Blog: http://wells.osall.com
请支持我的开源项目Sylvan: http://sylvan.osall.com |
|