Open sakeoftest opened 4 years ago
mpv has many mpris support plugins. but i change mpv and vlc to GStreamer as player beacuse of the libmpv it's diffcult to compile on macOS. finally i choose the GStreamer. I will change GStreamer and make it more generic for Linux/mac system. and also will support MPRIS D-Bus Interface
Add dbus mpris support as features
You can use this feature by cargo run --features dbus_mpris
Apparently mpris can be very different implementation on macOS and linux. Like Spotifyd/spotifyd#316
Spotifyd implements the [MPRIS D-Bus Interface Specification][mpris-specification], meaning that it can be controlled by generic media playback controllers such as [playerctl][playerctl-homepage] as well as some tools specifically designed for use with the official Spotify client such as [sp][sp-homepage].
While the dbus-send command works, the current code doesn't really register on both KDE and playerctl.
I hope this issue be kept open and maybe I can send some patches soon
I think i need add media player2 interface. I only add a media player2 player interface. I will try it later. thank for your suggestion. I'm looking forward to your PR.
看了一些隔壁,是直接加了一个mpris_player的依赖,好像也挺好的....
看了一些隔壁,是直接加了一个mpris_player的依赖,好像也挺好的....
I've been busy lately. And i add media player2 interface. You can find in my recent commit, It works. but still have some bugs to fix
thread 'Result::unwrap()
on an Err
value: D-BUs error: Failed to read/write data, disconnected from D-Bus? (org.freedesktop.DBus.Error.Failed)', src/dbus_mpris.rs:49:17
brew install dbus
or install dbus on your system? can you comfirm your D-BUS service start or stop?
Sorry, that might have been a problem from my end.
Still, I got a few issues unresolved. I understand you may primary use macOS so it may seems trivial. Also I may have suggested the wrong project as example.
The same problem as Spotifyd/spotifyd#457 , properties doesn't actually get updated externally. So clients that connecting will not receive new information.
An easy example to reproduce bug: playerctl metadata -F
With a result like spotifyd did. I'm not familiar with GStreamer, is there any easy way like plugins to introduce?