目前,用户可以在我的Qt应用程序上选择一首歌曲并使用他的默认媒体播放器播放。我使用QDesktopServices :: openUrl()实现了这个。
但是我希望用户能够选择多首歌曲并在他的媒体播放器中加入。一旦用户选择第二首歌曲,当前实现第一首歌曲停止而第二首歌曲开始播放。
最好的方法是什么?
答案 0 :(得分:2)
我担心,只能使用QDesktopServices::openUrl()
将歌曲排入队列。我认为有两种主要方法可以做到这一点:
您可以调整播放器以将所有歌曲排入队列,使用QDesktopServices::openUrl()
打开(实际上相当于双击文件管理器)。
我认识的大多数玩家都有参数,告诉他们将列出的文件排入队列。例如,可以使用参数deadbeef
启动--queue
。您可以使用QProcess::startDetached
启动带参数的播放器。
在这两种方式中,你需要知道你正在使用的确切玩家。
答案 1 :(得分:0)
如果您的播放器支持MPRIS(如果它是一个媒体播放器,预计会集成到现代Unix桌面,它确实如此),用于轨道列表操作的D-BUS MPRIS接口的addTrack方法应该有帮助您。您可能希望在第一个文件上调用QDesktopServices::openUrl
以确保播放器在调用之前正在运行。