酷我音乐盒 Gtk/Linux版 - v3.1.4 即将发布, 支持多媒体键盘, 也可以自定义全局快捷键

软件和网站开发以及相关技术探讨
回复
头像
icelee123
帖子: 811
注册时间: 2011-07-16 19:48
系统: Arch

Re: 酷我音乐盒 Gtk/Linux版 - v2.3 出来了 - 支持Ubuntu 12.04

#151

帖子 icelee123 » 2013-10-05 23:21

nae6taiyie0T 写了:
icelee123 写了:
nae6taiyie0T 写了:
icelee123 写了:我关心的是对cue支持行不行
个人觉得对ape这种闭源的格式也不需要太重视,无损还是多关注一下flac跟wav
不明就理.
谈不上支不支持ape.
因为程序使用的是gstreamer的多媒体框架, 它能支持相当多的音频视频格式.
你讨厌ape的, 可以不用嘛.
但是mp3不也是闭源的? 好像开源的音频格式主要就是ogg了吧. 对这些我不了解, 我没打算过分深入的发掘.
不知道是不是我机器问题 播放ape会有些小问题。
说实话到现在都没有发现一个即能很好地支持cue又可以避免乱码的播放器,国人开发的话,乱码应该不是问题,那么cue的支持就是很重要的一点了。
等到这个播放器很好地支持cue的时候我就准备使用了。。。

ps:wma之所以不再流行主要是因为微软版权的问题,而并非是它的音质问题。相反,wma在低码率段(<128kbps)在音质跟体积方面都比mp3好一些。mp3是一种开放的标准,没有版权问题因此才得以流行。ape作为一种闭源格式自然有一些缺陷,解码难度略大,容错性差等,我的机器播放ape的时候甚至出现过卡顿,flac相比要好一些,wav自然更没啥问题。。。(以上大部分内容百度得到,个人略做整理,纠正一些小错误,没有任何得瑟的成分)
另外, 对于乱码的处理, 是这样的:
Kwplayer使用了mutagenx这个python模块, 来转换编码(确切地说, 是把里面的信息全清除了, 然后写入更完备的信息, 包括歌曲名, 歌手, 专辑这三部分). 但这要使用python3.3这个版本, 如果Python3的版本太低, 这个模块就会失效, 那mp3/ape里面会仍然乱码.
但这些乱码问题, 在kwplayer中并不存在, 因为里面的显示的内容都是来自于本地数据库中.

至于它的定位: 简洁的音乐播放器. 我是这样设想的, 打开就能用, 不需要再到处搜索歌曲, 然后一点点儿的下载了.

我之前的音乐都是在top100.cn上面下载的, 一个个专辑按顺序下的, 估计有30G+. 当时我写了个程序, 可以批量地下载专辑, 很方便, 可是, 后来, 它关闭了; 然后, 就没有然后了, 我就没有地方方便地找歌了.
我非常喜欢top100(巨鲸网), 只是它的这种模式, 在国内生存下来很难. 谷歌宣布退出内地市场对top100的打击是极大的, 网站流失了大部分流量.

当然, 我也有在TPB上下载过Adele的专辑, 质量很好, 但也有明显的缺点. 最大的一点就是没有像top100那样的, 提供一个索引的界面, 可以很方便地查看一个歌手的所有歌曲.

top100关了之后, 我用了一段时间的百度music, 但发现它用起来不方便. 我写了个greasemonke脚本, 可以按页来下载歌曲. 主要是它的质量不好.

然后..省去若干字...)
这个暑假结束时就开始了这个项目.

我也喜欢用rythmbox来管理音乐, 但是它缺失了一些必要的功能. 原本是打算把kuwo的功能作为一个plugin来一发的, 可后来发现受到rythmbox的限制太大, 就把它独立出来了.
以前也很喜欢去top100 可惜被关闭了。现在的音乐基本上是来自opencd的,带cue的无损音乐比较多。
我需要的是一个像foobar2000一样的播放器,甚至连在线音乐都不用,deadbeef是个不错的替代品,可惜会乱码。。。

Sent from my MB525 using Tapatalk 2
其实我是菜鸟、、、
nae6taiyie0T
帖子: 482
注册时间: 2013-09-13 0:42
系统: Debian sid

Re: 酷我音乐盒 Gtk/Linux版 - v2.3 出来了 - 支持Ubuntu 12.04

#152

帖子 nae6taiyie0T » 2013-10-05 23:55

蒙面饿僧 写了:
nae6taiyie0T 写了:
蒙面饿僧 写了:Arch下的使用方法:

2:
旧版本是其它软件要用的,可能本程序不需要。

3:
我在2.1版本的时候移动了程序主目录,结果今天更新2.3后报如下错误:
./kwplayer

代码: 全选

[Errno 2] 没有那个文件或目录: '/home/×××/kwplayer/share/kuwo/themes/default/images.json'
Traceback (most recent call last):
/home/×××/kwplayer/ 这是旧目录
删掉~/.config/kuwo目录后解决了,难道主题路径写入配置文件里了?
关于缓存目录~/.cache/kuwo,是因为我在2.1的前一个版本时删除了它,结果新版运行时报了如下错误:

代码: 全选

b'IO error: /home/×××/.cache/kuwo/cache.db/LOCK: \xe6\xb2\xa1\xe6\x9c\x89\xe9\x82\xa3\xe4\xb8\xaa\xe6\x96\x87\xe4\xbb\xb6\xe6\x88\x96\xe7\x9b\xae\xe5\xbd\x95' <class 'plyvel._plyvel.IOError'>
Warning: Only one process can run at a time, quit!
手动创建之后解决问题,所以顺便提了一下。

4:
在python3的PATH里。

5:
我用python gi作为关键字在Arch源里搜索了一下,搜索结果中我已经安装并且是python3的只有这个pygtk:

代码: 全选

extra/pygtk 2.24.0-3 [已安装]
    Python bindings for the GTK widget set
看简介应该是它。
1. 配置文件~/.config/kuwo这个是我搞错了, 确实把theme的绝对路径放进去了, 因为当时是设想可以自定义主题嘛(一些图标啦, 按纽的样式啦, 背景, 透明之类的....). 现在看来, 也没这个必要了, 一会儿准备把它移除了.
2. 验证程序是不是第一次运行, 这个功能仍然有有问题, 不严谨. 因为它只严证~/.config/kuwo/conf.json这个文件是否存在. 一会儿还得改.
3. pygtk 2.24.0-3这个真的不需要, 它其实是python2-gtk2.24, 这个pygtk项目几年前就已经没更新了, 因为gtk3引入了GObject introspection(但愿拼写正确), 也就是所谓的gi.
4. 关于只允许一个程序实例运行的问题, 我打算用dbus来做, 可现在没时间看API; 已经把它加到TODO list里了, 有机会就会写成代码的.
头像
leavfin
帖子: 599
注册时间: 2012-01-12 13:32

Re: 酷我音乐盒 Gtk/Linux版 - v2.3 出来了 - 支持Ubuntu 12.04

#153

帖子 leavfin » 2013-10-06 7:32

nae6taiyie0T 写了:
leavfin 写了:试着安装了一下
debian wheeyz
基本使用没什么问题

一些小的细节
没歌词 显示 no lrc available
playlist 无法随机/循环播放

建议
后期开发不一定要按照官方播放器的ui来
可以试着做一个简单些的 省去不必要的图片/标签等
你如果不需要显示图标之类的, 可以在代码注释掉几行就行了嘛.

没显示歌词 因为歌词 下载失败或者就是没有可用的歌词.

playlist无法随机/循环的问题没遇到过. 你可以试试在终端中运行, 让它随机播放, 然后看看是否有错误信息提示出来. 有的话贴出来给看一下.
没有错误信息
问题是播放完一首歌 会缓存下一首
但是并不能自动播放
所以每次只能放一首
nae6taiyie0T
帖子: 482
注册时间: 2013-09-13 0:42
系统: Debian sid

Re: 酷我音乐盒 Gtk/Linux版 - v2.3 出来了 - 支持Ubuntu 12.04

#154

帖子 nae6taiyie0T » 2013-10-06 10:57

leavfin 写了:
nae6taiyie0T 写了:
leavfin 写了:试着安装了一下
debian wheeyz
基本使用没什么问题

一些小的细节
没歌词 显示 no lrc available
playlist 无法随机/循环播放

建议
后期开发不一定要按照官方播放器的ui来
可以试着做一个简单些的 省去不必要的图片/标签等
你如果不需要显示图标之类的, 可以在代码注释掉几行就行了嘛.

没显示歌词 因为歌词 下载失败或者就是没有可用的歌词.

playlist无法随机/循环的问题没遇到过. 你可以试试在终端中运行, 让它随机播放, 然后看看是否有错误信息提示出来. 有的话贴出来给看一下.
没有错误信息
问题是播放完一首歌 会缓存下一首
但是并不能自动播放
所以每次只能放一首
这个问题我也注意到了, 昨晚我在ubuntu12.04里面 试听, 确实有些情况下不能自动播放下一首.
我发现了问题, 在于gstreamer0.10在播放完一个文件后, 不会发出eos(End Of Source)这个信号, gstreamer1.0里面就没问题.

我也加入了一个时间轴检验的方法, 可并不是十分有效. 还得改.
kmyuan2006
帖子: 10
注册时间: 2013-10-02 15:38
系统: UBUNTU

Re: 酷我音乐盒 Gtk/Linux版 - v2.3 出来了 - 支持Ubuntu 12.04

#155

帖子 kmyuan2006 » 2013-10-06 11:32

啊,这个要支持啊,绝对的
头像
rapistor
帖子: 1983
注册时间: 2009-01-19 15:09

Re: 酷我音乐盒 Gtk/Linux版 - v2.3 出来了 - 支持Ubuntu 12.04

#156

帖子 rapistor » 2013-10-06 13:00

楼主这个结构好像是仿openwrt的,最近正在玩那个。 :em09
坚守在linux的天堂!
头像
rapistor
帖子: 1983
注册时间: 2009-01-19 15:09

Re: 酷我音乐盒 Gtk/Linux版 - v2.3 出来了 - 支持Ubuntu 12.04

#157

帖子 rapistor » 2013-10-06 13:02

全屏前面的那个按钮是个禁止的标志,不知道是什么原因 。
坚守在linux的天堂!
nae6taiyie0T
帖子: 482
注册时间: 2013-09-13 0:42
系统: Debian sid

Re: 酷我音乐盒 Gtk/Linux版 - v2.3 出来了 - 支持Ubuntu 12.04

#158

帖子 nae6taiyie0T » 2013-10-06 13:24

rapistor 写了:全屏前面的那个按钮是个禁止的标志,不知道是什么原因 。
程序使用了gnome-symbolic这套图标, 而在ubuntu12.04中, 打包人员没有把这个图标放到这个包里面, 所以你就看到了那个缺失的图标. 我还测试了Fedora19和debian sid, 这个图标都是有的.
解决方法在README里面已经有了介绍, 移步到此https://github.com/LiuLang/kwplayer
nae6taiyie0T
帖子: 482
注册时间: 2013-09-13 0:42
系统: Debian sid

Re: 酷我音乐盒 Gtk/Linux版 - v2.3 出来了 - 支持Ubuntu 12.04

#159

帖子 nae6taiyie0T » 2013-10-06 13:27

rapistor 写了:楼主这个结构好像是仿openwrt的,最近正在玩那个。 :em09
这个还真没模仿openwrt.
其实我是参看了kuwo2013 for windows. :em09
天羽美羽
帖子: 183
注册时间: 2013-05-22 22:29
系统: Ubuntu14.04

Re: 酷我音乐盒 Gtk/Linux版 - v2.3 出来了 - 支持Ubuntu 12.04

#160

帖子 天羽美羽 » 2013-10-06 15:43

果断马上试用 :em11
天羽美羽
帖子: 183
注册时间: 2013-05-22 22:29
系统: Ubuntu14.04

Re: 酷我音乐盒 Gtk/Linux版 - v2.3 出来了 - 支持Ubuntu 12.04

#161

帖子 天羽美羽 » 2013-10-06 16:08

试用了几分钟,感觉还不错。

关于歌词那部分,楼主可以和OSD Lyrics做个接口就更好了,里面的歌词库挺多的。大部分歌曲都有。 :em09

其他暂时没发现有什么问题

测试平台:ubuntu12.04 64位
nae6taiyie0T
帖子: 482
注册时间: 2013-09-13 0:42
系统: Debian sid

Re: 酷我音乐盒 Gtk/Linux版 - v2.3 出来了 - 支持Ubuntu 12.04

#162

帖子 nae6taiyie0T » 2013-10-06 17:09

天羽美羽 写了:试用了几分钟,感觉还不错。

关于歌词那部分,楼主可以和OSD Lyrics做个接口就更好了,里面的歌词库挺多的。大部分歌曲都有。 :em09

其他暂时没发现有什么问题

测试平台:ubuntu12.04 64位
不会考虑调用OSD lyrics.
我之前确实有试着, 可是放弃了, 有几个原因:
* 麻烦.
* OSD lyrics项目有一年多都没人维护了, 估计这个项目已死.
* OSD lyrics 的做法是收集一批提供歌词下载接口的网站, 比如千千, kuwo, kugou等, 然后一个个搜索, 直到命中. 但我只用了kuwo提供的歌词搜索API, 在酷我音乐盒里面能看到的歌词, 这里也会有. 我试听的大部分歌曲都是有歌词的.
* 如果愿意的话, 你可以试着做的. 因为这两款软件不都是开源的吗?
上次由 nae6taiyie0T 在 2013-10-06 20:58,总共编辑 1 次。
头像
wuy069
帖子: 91
注册时间: 2011-05-02 11:00

Re: 酷我音乐盒 Gtk/Linux版 - v2.3 出来了 - 支持Ubuntu 12.04

#163

帖子 wuy069 » 2013-10-06 18:52

:em11 ,必须支持;楼主可以考虑整个PPA,这样安装起来比较方便
nae6taiyie0T
帖子: 482
注册时间: 2013-09-13 0:42
系统: Debian sid

Re: 酷我音乐盒 Gtk/Linux版 - v2.3 出来了 - 支持Ubuntu 12.04

#164

帖子 nae6taiyie0T » 2013-10-06 19:17

wuy069 写了::em11 ,必须支持;楼主可以考虑整个PPA,这样安装起来比较方便
已经说明了, 不会制作ubuntu的ppa.
jinjiachen
帖子: 2148
注册时间: 2012-12-16 15:43
系统: debian

Re: 酷我音乐盒 Gtk/Linux版 - v2.3 出来了 - 支持Ubuntu 12.04

#165

帖子 jinjiachen » 2013-10-06 20:04

kwplayer
[Errno 17] 文件已存在: '/home/ifk/.config/kuwo'
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/kuwo/App.py", line 59, in on_app_startup
self.player = Player(self)
File "/usr/lib/python3/dist-packages/kuwo/Player.py", line 61, in __init__
self.bus = self.playbin.get_bus()
AttributeError: 'NoneType' object has no attribute 'get_bus'
Player.do_destroy()
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/kuwo/Player.py", line 202, in do_destroy
self.playbin.set_state(Gst.State.NULL)
AttributeError: 'Player' object has no attribute 'playbin'
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/kuwo/App.py", line 82, in on_app_activate
self.lrc.after_init()
AttributeError: 'App' object has no attribute 'lrc'

这一次是能运行,也有跳出窗口,可是什么也没出现,我兴奋了好一下下,看到错误如上,好像不是信赖问题呢,不过不知道怎么改 :em20
回复