diff options
| author | Shravan Mandava <shravan@mandava8.com> | 2025-12-31 01:57:36 +0000 |
|---|---|---|
| committer | Shravan Mandava <shravan@mandava8.com> | 2025-12-31 01:57:36 +0000 |
| commit | 39b49156115cef7d3914502294da40643a3ee2bf (patch) | |
| tree | 3b296ce62c21ccc33a84e404fd595a7e6bae8d22 | |
| parent | 0ad094125b8048b6c66b5d431f44e4c94c419612 (diff) | |
Print Track Details
Get and Print current player data from DBus
| -rw-r--r-- | src/musefetch/__main__.py | 29 |
1 files changed, 28 insertions, 1 deletions
diff --git a/src/musefetch/__main__.py b/src/musefetch/__main__.py index 73d8e8d..5c03b21 100644 --- a/src/musefetch/__main__.py +++ b/src/musefetch/__main__.py @@ -1,5 +1,32 @@ +import dbus +import json + + +def get_players(): + players = [] + + for name in dbus.SessionBus().list_names(): + if name.startswith("org.mpris.MediaPlayer2."): + players.append(name) + + return players + + def main(): - print("Hello World :)") + player = dbus.Interface( + dbus.SessionBus().get_object(get_players()[0], "/org/mpris/MediaPlayer2"), + "org.freedesktop.DBus.Properties", + ) + + playing = ( + True + if player.Get("org.mpris.MediaPlayer2.Player", "PlaybackStatus") == "Playing" + else False + ) + metadata = player.Get("org.mpris.MediaPlayer2.Player", "Metadata") + + print(f"Playing: {playing}") + print(json.dumps(metadata, indent=4)) if __name__ == "__main__": |
