Linux中可由Python控制的命令行音频播放器

3
我想将我的树莓派用作媒体站。它应该能够通过网络命令播放歌曲。这些命令应该由使用Python编写的服务器处理。因此,我需要一种通过Python控制音频播放的方法。
我决定使用Linux的命令行音乐播放器,因为它们应该对音频文件格式提供最大的灵活性。另外,像PyAudio和PyMedia这样的Python库似乎对我没有用。
我对音乐播放器没有太高的期望。它必须能够以尽可能多的编解码器播放和暂停声音文件,并调节音量。此外,它必须是一个无头播放器,因为我没有运行任何桌面环境。似乎有很多这样的播放器可用。例如,mpg123对我所需的所有功能都很好。
我现在遇到的问题是,所有这些播放器似乎都有一个使用ncurses编写的用户界面,我不知道如何使用Python subprocess模块访问它。因此,我需要一个带有Python绑定的音乐播放器或者可以通过subprocess模块的命令行进行控制的播放器。至少这些是我现在考虑的解决方案。
有人知道适用于Linux的命令行音频播放器可以解决我的问题吗?或者还有其他方法吗?
提前感谢。
2个回答

3

mpd对你来说应该是完美的选择。它是一个守护程序,可以被各种客户端控制,从无 GUI 的命令行客户端(如mpc)到有 GUI 的命令行客户端(如ncmpcncmpcpp),还有几个功能齐全的桌面客户端。

mpd+mpc应该能够满足你的需求,因为mpc可以通过命令行轻松控制,并且还能提供有关当前播放歌曲和其他信息的各种状态信息。

似乎已经有了一个针对 mpd 的 Python 客户库-python-mpd


1
我建议您使用可以通过D-Bus进行管理的媒体播放器,这将解决您许多问题。
像Rythmbox这样的媒体播放器可以使用D-Bus进行控制,但我猜它可能对您的树莓卡来说有点太“庞大”了?
请看一下这里,以防万一:使用D-Bus管理Rythmbox

有没有无界面的Rhythmbox版本? - scai

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接