一,让DeaDBeeF支持GBK/GB18030中文ID3标签和文件名,彻底解决乱码问题
说下,好多童鞋貌似喜欢把MP3等音乐文件的ID3 tag转为UTF-8的,对于用win7+ linux双系统的同学,建议还是不要转的好。UTF-8的东西,至少在win7的资源管理器和windows media player里会乱码。当然,如果你就是想转码或者你就是不用windows,那是你的自由。
有同学可能会说:我不用media player,我不在意资源管理器里显示问号,好吧,这也是你的自由。我这里只是讨论一种更好一点的解决方案。
PS:我不用windows media player.
有同学问“我想知道win7下什么东西会显示问号”,好吧,让你知道下: 这是通过修改Deadbeef源码实现的。作者好像是俄罗斯人?里面只有对英文和俄文的判断,没有 考虑中文编码。。。
在论坛看到有patch可以实现显示中文GBK字符的,不过看了它源码,发现它只是通过把cp1251修改为gbk而已。这样显示中文的确是没有问题的,但是如果是俄文等使用cp1251的语言,则会显示成乱码。从追求完美的角度来讲,这样修改有些勉强。
这里我制作了一个patch,经自己测试使用没有问题: 补丁应用:
代码: 全选
cd deadbeef-0.5.1
cat ../deadbeef-0.5.1-Chinese-GB-patch.diff | patch
在我使用的Archlinux + xfce4 环境下,貌似自己下载源码编译后播放的图标没法显示,于是hack了一下(有些勉强,呵呵),如果你是用gnome或KDE那就按你自己的系统hack之了:
二,增加歌词显示
这里要用到两个插件,一个给deadbeef添加dbus支持的插件deadbeef-mpris,另一个则是显示歌词的插件lrcShow-X(基于pyqt开发)
deadbeef-mpris下载地址:http://sourceforge.net/projects/deadbeef-mpris/
https://code.google.com/p/deadbeef-mpris-plugin
目前最新版是2.1 ,下载后解压目录到deadbeef源码的plugins目录下面,然后跳转到该目录,然后:
代码: 全选
./configure --prefix=你编译deadbeef时的PREFIX
make
sudo make install
https://launchpad.net/lrcshow-x
下载后解压运行 lrcShow-X.py 即可。
如果没有安装过pyqt,先安装一下,不然无法运行:
archlinux用户:
代码: 全选
sudo pacman -S python2-pyqt
代码: 全选
sudo apt-get install python-qt4
背景透明歌词秀+完美中文显示: 全屏歌词显示效果: OSD显示模式: 本文来自:荒野无灯weblog[/size]