用于google play music的命令行播放器

clay-player的Python项目详细描述


< P>![粘土玩家](./images/clay banner.png)

  • [关于](粘土β)
  • [快速启动](快速启动)
  • [文档](文档)
  • [要求](要求)
  • [什么有效](什么有效)
  • [正在开发的内容](正在开发的内容)
  • [安装](安装) *[方法1(PYPI,自动)](方法1-PYPI-自动) *[方法2(来源,手册)](方法2-来源-手册) *[方法3(在docker中)](方法3-在docker中)
  • [配置](配置)
  • [控件](控件) *[概述](概述) *[歌曲](歌曲) *[回放](回放) *[均衡器](均衡器) *[其他](其他)
  • [故障排除](故障排除)
  • [学分](学分)
  • [更改日志](./changelog.rst)

#粘土[β]

< >[构建状态](https://travis-ci.org/and3rson/clay.svg?branch=master)(https://travis ci.org/and3rson/clay)[![文档状态](https://readthedocs.org/projects/clay/badge/?(http://clay.readthedocs.io/en/latest/?徽章=最新的)[![PYPI版本](https://badge.fury.io/py/clay player.svg)(https://badge.fury.io/py/clay-player" rel="nofollow">https://badge.fury.io/py/clay player.svg)(https://badge.fury.io/py/clay player)[![可维护性](https://api.codecclimate.com/v1/badges/33fc2ac7949ddd9a51ee/maintability?(https://codecclimate.com/github/and3rson/clay/maintability

用于谷歌播放音乐的独立命令行播放器。

如果没有出色的[gmusicapi]和[vlc]库,这个应用程序是不可能实现的。

该项目既不隶属于谷歌,也不得到谷歌的认可。

它正在积极开发中,但仍处于早期测试阶段,因此许多功能丢失和/或可能被窃听。

我们在IRC!

  • 服务器:irc.oftc.net
  • 渠道:粘土

屏幕截图:

< P>![粘土玩家截图](./images/clay screenshot.png)

单击下面的图像查看屏幕广播:

< >[Ascicast](https://asciinema.org/a/69ygwygrdyb5a7pfgyrwwo1ea.png?(https://asciinema.org/a/69ygwygrdyb5a7pfgyrwwo1ea

#快速入门

"巴什" sudo apt安装python gi cairo pip install--用户粘土播放器 黏土

#文档

文档[此处提供](http://clay.readthedocs.io/en/latest/" rel="nofollow">http://clay.readthedocs.io/en/latest/)。

#要求

  • python 3.x(本机)
  • [gmusicapi](pypi)
  • [urwid](pypi)
  • [皮亚姆](皮皮)
  • lib[vlc](本机,与vlc播放器一起分发)
  • [pygobject](可选)(本机,用于全局x键绑定)
  • [密钥绑定器](可选)(本机,用于全局x密钥绑定)
  • [setprocTitle](可选)pypi,用于将clay进程名从"python"更改为"clay")
  • python dbus(可选)

#什么有效 -音频均衡器 -缓存(不是为了歌曲数据,那一个很快就会到来) -可配置的钥匙扣和颜色 -配置用户界面 -过滤结果 -全局热键 -喜欢/不喜欢曲目 -喜欢的歌曲播放列表 -音乐库浏览与管理 -通知S-应用内和OSD(通过DBU) -PYPI包 回放 -播放列表 -队列管理 -无线电台 -歌曲文件缓存 -歌曲操作(添加到库、起始站等) -歌曲搜索 -令牌缓存以获得更快的授权

#正在开发的内容 -艺术家/专辑展示 -艺术家/专辑搜索 -[gmusicapi]支持的其他功能 -播放列表编辑

#安装

警告:名为python3 keybinder的aur和pypy包将 不要用粘土,因为你需要使用官方绑定。自从 ubuntu把官方绑定分成了不同的包,但是 和非官方的名字一样,它可以引起一些 混乱。因此,如果您得到一个不可用的命名空间keybinder 可能是这个原因造成的。例如,在arch linux上,您需要 取而代之的是libkeybinder3包。

  1. 从包管理器安装Python3和VLC。
  2. 也可以安装pygobject、python的dbus和keybinder plus绑定 如果您想要全局x键绑定。

##方法1(PYPI,自动)

只需使用pip安装播放器 "巴什" pip install--用户粘土播放器 黏土

##方法2(来源:手册)

  1. 克隆源代码。

  2. 使用系统软件包创建并激活Virtualenv:

    < Buff行情> "巴什" virtualenv--系统站点包 source.env/bin/激活

  3. 安装要求:

    < Buff行情> "巴什" pip安装-rrequirements.txt

  4. 运行播放器:

    < Buff行情> "巴什" /粘土/app.py

##方法3(在docker中)

有时候你想在Docker里做点什么。您也可以在Docker中运行Clay。

有两个严格要求:

  • 您需要自己构建容器(由于pulseaudio相关路径和magic cookies。)
  • 必须在启用了模块本机协议TCP的主机上运行Pulseaudio。

以下是您的操作方法:

  1. 克隆源代码

  2. 创建"~/.config/clay"目录(在Docker中拥有适当的卷权限)

    < Buff行情> "巴什" mkdir~/.config/clay

  3. 生成并运行图像

    < Buff行情> "巴什" 使跑

你应该让声音正常工作。Docker也将重用来自主机的Clay配置文件(如果有)。

#配置

  • 启动应用程序后,使用"设置"页输入登录名和密码。
  • 您还需要知道您的设备ID。由于[gmusicapi],一旦您输入错误的ID,应用程序将显示可能的ID。
  • 请注意,此应用程序尚未通过2FA测试。
  • 对于拥有2fa的用户,您只需在google账户页面中创建一个应用程序密码并正常进行。(感谢@J605)

#控件

##一般

  • <;向上向下向左向右>;-nagivate around
  • <;alt>;+0..9-切换活动选项卡

##歌曲

  • <;输入>;-播放突出显示的曲目
  • <;ctrl>;w-播放/暂停
  • <;ctrl>;e-播放下一首歌曲
  • <;ctrl>;a-将突出显示的歌曲附加到队列中
  • <;ctrl>;u-从队列中删除突出显示的歌曲
  • <;ctrl>;p-从突出显示的歌曲启动电台
  • <;alt>;m-显示此歌曲的上下文菜单
  • <;alt>;u-竖起突出显示的歌曲
  • 引用><;alt>;d-向下翻动突出显示的歌曲

##播放

  • <;ctrl>;s-切换随机播放
  • <;ctrl>;r-切换歌曲重复
  • <;shift>;<;left right>;-按歌曲时长的5%向后/向前搜索
  • <;ctrl>;q-搜索歌曲开头

##均衡器 -+-增大放大倍数 ---减小放大

##其他

  • <;esc>;<;ctrl>;/或<;ctrl>;-关闭最近的通知或弹出窗口
  • <;ctrl>;x-退出应用程序
  • 要过滤歌曲,只需输入单词。点击<;esc>;取消。

##X键绑定 注意:您需要传递带有-x-keybinds的标志,这些标志才能工作 -<;xf86audioplay>;-播放/暂停歌曲 -<;xf86audionext>;-播放下一首歌曲 -<;xf86audioprev>;-播放上一首歌曲

#故障排除

在某个时候,应用程序可能会失败。可能的原因是应用程序错误, 谷歌播放音乐API问题,[gmusicapi]错误,[urwid]错误等。

如果您遇到问题,请随时提交一个[问题](https://github.com/and3rson/clay/issues" rel="nofollow">https://github.com/and3rson/clay/issues)。 我会尽快弄清楚的。

大多数问题只能通过来自Google Play音乐服务器的特定数据重现。

使用应用程序中的"调试"选项卡选择错误,然后按"回车"将其复制到剪贴板中。 这将帮助我调查此问题。

#学分

安德鲁·杜奈制作。

感谢[gmusicapi]和[vlc]使这一切成为可能。

参与此项目的人员:

[gmusicapi]:https://github.com/simon-weber/gmusicapi rel="nofollow">https://github.com/simon-weber/gmusicapi [VLC]:https://wiki.videolan.org/python_bindings" rel="nofollow">https://wiki.videolan.org/python_bindings [urwid]:http://www.urwid.org/" rel="nofollow">http://www.urwid.org/ [pyyaml]:https://github.com/yaml/pyyaml" rel="nofollow">https://github.com/yaml/pyyaml [pygobject]:https://pygobject.readthedocs.io/en/latest/getting戋started.html [键绑定器]:https://github.com/kupferlauncher/keybinder" rel="nofollow">https://github.com/kupferlauncher/keybinder [设置程序标题]:https://pypi.org/project/setproctTitle/" rel="nofollow">https://pypi.org/project/setproctTitle/

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java迭代图形框架聚合达到内存限制的消息   反编译和开发人员向Android应用程序提供java安全密钥   活页夹中的java Vaadin上传组件,例如Crud编辑器   java如何定义0090当我有了每个字符   带有AOP的java截取私有注释方法   在Java中暂停并恢复动画(thread.sleep)   java在JavaFX中从不同的控制器向TableView添加行   java如何通过Spring使用脚本初始化inmemory HSQLDB   windows找到了绝对的java。通过编程从java代码获取exe路径   Java同步、信号量和队列的多线程性能   java异步任务回调未调用   java在迷宫中用坐标寻找最短路径   Java:并行处理数组,查找发生异常的位置   java我无法理解我收到的错误   如何调用。bat文件,并使用java中的ProcessBuilder发送字符串   java在mysql数据库中插入日期   将ArrayList的内容显示为格式正确的JSON for Java REST API   java@OneToMany注释SQLSyntaxErrorException:ORA000904无效标识符