A DoubanFM client
C++ QMake Shell
Latest commit 199b55d Jul 8, 2016 @zonyitoo Fixed #13
Permalink
Failed to load latest commit information.
data fix translation; fix exe file icon (for Windows) Feb 6, 2016
i18n update translation. May 15, 2016
img remove unused images. May 15, 2016
libs format code, fix #41 Dec 5, 2015
plugins format code, fix #41 Dec 5, 2015
.gitignore .gitignore add qrc_*.cpp May 15, 2016
ChangeLog swap channel widget buttons Dec 28, 2013
Copyright add changing log Nov 3, 2013
LICENSE Add kbps Nov 4, 2013
QDoubanFM.desktop Add desktop Jan 23, 2013
QDoubanFM.ico add missing files Apr 27, 2014
QDoubanFM.png modify main icon png Aug 24, 2013
README.md Fixed #13 Jul 8, 2016
albumimage.cpp add more animations, modified layout Aug 27, 2013
albumimage.h Updated layout, add open album url Nov 1, 2013
albumwidget.cpp Updated layout, add open album url Nov 1, 2013
albumwidget.h
albumwidget.ui 增加i18n功能(仅框架,不完善) Jul 16, 2014
channelwidget.cpp fixed bug under os x Oct 13, 2015
channelwidget.h when login success not change channel Apr 26, 2014
channelwidget.ui finished borders and animations Nov 3, 2013
channelwidgettrigger.h
controlpanel.cpp Make channel and lyric button shape with mask. May 15, 2016
controlpanel.h Change hover interaction to click interaction on channel button. May 15, 2016
controlpanel.ui Change hover interaction to click interaction on channel button. May 15, 2016
doubanfm-qt.pro fixed bug under os x Oct 13, 2015
horizontalslider.cpp add douban channel manager Apr 29, 2014
horizontalslider.h add douban channel manager Apr 29, 2014
icon.png New icon Aug 24, 2013
imgs.qrc remove unused images. May 15, 2016
install.sh install script Aug 24, 2013
lyricwidget.cpp [#40] use douban official lyric api Oct 12, 2015
lyricwidget.h
lyricwidget.ui finished borders and animations Nov 3, 2013
main.cpp Fix translation missing problem. May 14, 2016
mainwidget.cpp Tray icon interaction to hide, show and bring window to front. May 18, 2016
mainwidget.h
mainwidget.ui add ui border Nov 3, 2013
pausemask.cpp removed shared_ptr Nov 6, 2013
pausemask.h Add shortcut Aug 24, 2013
pausemask.ui 增加i18n功能(仅框架,不完善) Jul 16, 2014
screenshot.png updated screenshot Nov 3, 2013
settingdialog.cpp 增加i18n功能(仅框架,不完善) Jul 16, 2014
settingdialog.h removed shared_ptr Nov 6, 2013
settingdialog.ui 增加i18n功能(仅框架,不完善) Jul 16, 2014
triggerarea.cpp fixed rte Nov 4, 2013
triggerarea.h add more animations, modified layout Aug 27, 2013
volumetimepanel.cpp Add volumetime panel Aug 24, 2013
volumetimepanel.h Add volumetime panel Aug 24, 2013
volumetimepanel.ui Make volume icon bigger (20x20px). May 14, 2016

README.md

DoubanFM 客户端

使用Qt5编写的DoubanFM客户端

如果你喜欢本项目的话,给我买瓶啤酒喝好不;)

支付宝

注意

  • Ubuntu由于不支持Qt的QSystemTrayIcon,直接使用会有Bug,必须在生成Makefile前在doubanfm-qt.pro中删除DEFINES += WITH_SYSTEM_TRAY_ICON

  • KDE用户在打开时载入会出现SIGSEGM,目前原因未知,如果有人知道解决方法请告诉我谢谢!Issues中有提及。

  • Ctrl+W后软件界面消失为正常行为,只要重新点图标(启动器)就可以唤醒。若强行Kill会导致此功能失效,需要手动删除/tmp/QDoubanFM_LocalSocket,或者会在其他位置,不同发行版可能位置不同。

  • Windows及OSX上的有兼容性问题,但功能大致正常。

API接口文档

依赖

  • qt5-base
  • libqt5network5 libqt5gui5 libqt5core5 libqt5multimedia5 qtmultimedia5-dev
  • gstreamer0.10-fluendo-mp3
  • libpulse0 libpulse-dev
  • libqt5dbus5
  • libqt5multimedia5-plugins

不同平台相应的包名不一样,基本需求是Qt5的基础包,Qt5 Multimedia模块,Qt5 DBus模块,mp3解码器

截图

截图

安装方法

  • 在Archlinux上测试通过
lupdate doubanfm-qt.pro
lrelease doubanfm-qt.pro
qmake doubanfm-qt.pro
make

得到doubanfm-qt后直接运行即可

或运行install.sh脚本来安装到系统中(For Linux Only),安装好后在桌面系中的的启动器中找到QDoubanFM运行即可

  • Ubuntu

已经在Ubuntu 13.04 x86_64至Ubuntu 15.04 x86_64上测试通过。

在Ubuntu版本低于15.04时,Qt的系统托盘不能正常工作,所以 先使用编辑器打开doubanfm-qt.pro,删除

DEFINES += WITH_SYSTEM_TRAY_ICON

剩余步骤与上面相同。

  • openSUSE

一键安装

  • Windows或OSX

这两个系统比较特殊,建议到官网下载QtCreator打开doubanfm-qt.pro选择Release编译。

快捷键

Ctrl + W 隐藏窗口,最小化到托盘

Ctrl + Q 退出

Space 暂停

S 跳过

D 不再播放

F 标记/取消标记红心

TODO

  • 基本播放功能
  • 频道选择
  • 用户登录
  • 快捷键
  • 动画
  • i18n支持
  • Linux的播放提示 + DBus
  • 后台播放 + 托盘提示
  • 歌词

KNOWN BUGS

  • 在长时间暂停后重启播放会崩溃
  • 在网络不好时卡住会崩溃
  • 动画有Bug,若打开了频道界面然后鼠标离开,则会让控制面板滑动位置出错
  • KDE4.9 上未知原因崩溃 (Fixed in KDE5)
  • Ubuntu不支持QSystemTrayIcon导致软件不能正常退出

LICENSE

本项目基于MIT协议发布

MIT: http://rem.mit-license.org