关于深度音乐和深度影音在非LD系统运行很卡的原因.
Tofloor
poster avatar
186******98
deepin
2012-06-06 07:25
Author
深度音乐和深度影音都是基于深度界面库 (deepin-ui) 开发的, 我们在开发 deepin-ui 的时候发现 python-gtk2 这个包有严重的内存泄露, 并已经在 LD 中打上了相应的补丁, 我们已经把这个补丁推送到上游, 但是上游合并这个补丁还需要一段时间,如果你在非 LD 系统上运行深度音乐和深度影音非常卡, 请下载并安装打过我们补丁的 python-gtk2 包: http://packages.linuxdeepin.com/deepin/ ... n/p/pygtk/

PS: 很多人问我為什麼不用 pygobject/gtk3 ? 经过我详细的测试, gtk3 目前的绑定质量还达不到 pygtk2 的水平, 当然我们会随时关注 gtk3 的进展, 一旦 pygtk3 达到我们要的程度, 我们会积极移植 deepin-ui 到 pygtk3 .
Reply Favorite View the author
All Replies
weiminnihao9
deepin
2012-06-06 07:37
#1
我的ld用着也不是很流畅啊,不知道为什么
Reply View the author
cxbii
deepin
2012-06-06 08:02
#2
我的ld用着也不是很流畅啊,不知道为什么
接着优化呗,还是beta
Reply View the author
BoneJumper
deepin
2012-06-06 08:14
#3
在Vmware下测试了一下深度音乐。大概是Vmware现在还不支持OpenGL加速的关系,只能使用GNOME的fallback模式。歌词的显示、右键弹出菜单,卡得我蛋疼…… 等会用VBox试一下。
Reply View the author
a14331990
deepin
2012-06-07 01:06
#4
就是补丁10_fix_create_layout_unref.patch吧
  1. Index: pygtk-2.24.0/pangocairo.override
  2. ===================================================================
  3. --- pygtk-2.24.0.orig/pangocairo.override        2012-04-14 01:40:59.568703232 +0800
  4. +++ pygtk-2.24.0/pangocairo.override        2012-04-14 01:41:05.792703324 +0800
  5. @@ -119,10 +119,15 @@
  6. _wrap_pango_cairo_create_layout(PyGObject *self)
  7. {
  8.      PangoLayout *ret;
  9. +    PyObject *py_ret;
  10.      ret = pango_cairo_create_layout(PycairoContext_GET(self));
  11.      /* pygobject_new handles NULL checking */
  12. -    return pygobject_new((GObject *)ret);
  13. +    py_ret = pygobject_new((GObject *) ret);
  14. +    if (ret) {
  15. +        g_object_unref(ret);
  16. +    }
  17. +    return py_ret;
  18. }
  19. static PyObject *
Copy the Code
我在fedora17上打了
谢谢各位开发人员!
Reply View the author
cnchanghai
deepin
2012-06-07 01:59
#5
我的ld用着也不是很流畅啊,不知道为什么
我也是卡  卡的蛋碎
python   慢啊
Reply View the author
a14331990
deepin
2012-06-07 03:15
#6
[quote]我的ld用着也不是很流畅啊,不知道为什么
我也是卡  卡的蛋碎
python 55555[/quote]

你从命令行运行试下看报错不
Reply View the author
a14331990
deepin
2012-06-07 19:31
#7
深度音乐和深度影音放mp3
启动不播放
CPU 0% 内存40M 左右
开始播放
CPU 50% 内存80M 左右
正常不?

发现mpg123或mpg321放mp3的话CPU是0,内存不到1M,可否考虑调用mpg123或mpg321放mp3,或者调用mplayer算了?
大多数音乐播放器都是直接调用gstreamer的API的,深度音乐也不例外,但我注意到深度影音是调用mplayer的,好像没有直接调用gstreamer的API。

如果深度音乐和深度影音全调用mplayer,核心代码估计都可以用一样的,就界面不同而已。

估计调用播放代码的python代码有问题。
Reply View the author
yong904676468
deepin
2012-06-07 20:28
#8
怎么安装的,我的是ubuntu12.04
Reply View the author
cnchanghai
deepin
2012-06-11 07:04
#9
[quote][quote]我的ld用着也不是很流畅啊,不知道为什么
我也是卡  卡的蛋碎
python 55555[/quote]

你从命令行运行试下看报错不[/quote]


QQ截图20120610231214.png

QQ截图20120610231132.png
Reply View the author
cnchanghai
deepin
2012-06-11 07:06
#10
QQ截图20120610231214.png
Reply View the author