具有自动更新库的无 GUI 音乐播放器

具有自动更新库的无 GUI 音乐播放器

我已经到了想要编写自己的音乐播放器的地步(我们所有人都会这么做)。但是,我想要做的所有事情都是基于 UI 的;如果我必须重新实现管理库、读取 ID3 标签、创建播放列表等功能,那就太愚蠢了。因此,我正在寻找一个不显示 UI(或者可以隐藏 UI)的音乐播放器,这样我就可以实现完全自定义的 UI,而不必构建所有基础架构。这个“底层”音乐播放器可能是带有远程控制套接字协议的 curses 接口;它可能是一个带有 Python 绑定的库;它可能是一个 Gtk 应用程序,可以选择不显示其 GUI 并可以通过 D-Bus 进行控制……我不知道。

我绝对希望这个“后端”能做的事情:

  1. 可以通过 Python 程序进行远程控制。(如上所述,我接受多种远程控制方法;套接字、D-Bus、CLI 工具等等)
  2. 维护一个音乐库 - 即扫描我的音乐中的元数据并能够通过该元数据来寻址音乐(这样我就可以搜索“披头士”并找到曲目,而不仅仅是那些与文件名匹配的曲目)
  3. 监视文件夹的变化并将这些变化(新文件、修改的文件、删除的文件)加载到库中,而无需被告知这样做
  4. 让我提供自己的 GUI(因此需要远程控制能力)

我非常非常非常喜欢但却没有的东西严格必要的:

  1. Ubuntu 声音菜单集成
  2. 已为 Ubuntu 打包并在软件中心

我考虑过一些替代方案并拒绝了它们,但我可能是错的:如果我对其中任何一个有误,请纠正我。

  • cmus:无法监控库的变化(需要使用更新命令进行提示)。另外,据我所知,远程控制主要是让 curses 界面执行操作;使用远程控制说“给我一个与‘beatles’匹配的所有歌曲的列表”几乎是不可能的
  • mpd(和一些客户端):无法监视库的变化(需要使用“更新”命令进行提示)
  • moc:无法监视库的变化
  • banshee(以及 banshee 的后端,Nereid (?)):据我所知,无法由 Python 程序控制:我需要用 C# 编写我的新前端
  • rhythmbox、guayadeque、audacious、quodlibet、clementine、noise、beatbox、deadbeef、gmusicbrowser、xnoise:无法关闭 GUI 并将其替换为我自己的

因此,我正在寻找有关如何使用上述内容做我想做的事情的解释,或者寻找可以用来替代这些工具的替代工具的建议!

答案1

多媒体信息管理系统 安装 xmms2

此命令行播放器是 XMMS 的进一步开发。它具有许多功能,例如:

  • 播放你的音乐。
  • 管理您的音乐库
  • 使用收藏夹来帮助你按照自己的喜好整理音乐
  • 允许您使用各种客户端来控制它。
    来自 XMMS2 Wiki

还有大量关于如何开发 XMMS2 客户端


关于如何使用 Python 完成任务的另一个信息来源是埃克赛勒项目。

相关内容