Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Feature request] "Follow" mode for the now-playing subcommand #6

Closed
mradermaxlol opened this issue Mar 25, 2022 · 4 comments
Closed

Comments

@mradermaxlol
Copy link

This would allow integrating empress with e.g. WM bars/panels without extra quirks, similar to playerctl metadata -F.

@ray-kast
Copy link
Owner

I think this should be semi-easy to handle. The empress daemon already listens for metadata changes to maintain its internal player priority list and runs a hook to update the player state it keeps internally tracked, so adding a D-Bus signal shouldn't be too complex. The big question is how best to propagate the player metadata sent by the daemon for a normal now-playing call, as this constitutes three or four D-Bus calls so having each listener perform a metadata query may not be desirable.

Current steps for this issue:

  • Add a D-Bus signal to the Empress interface for metadata updates
  • Investigate ways to mitigate unnecessary metadata calls from the daemon to MPRIS players
  • Add support for -F for raw JSON-lines output
  • Add support for -Ff ... for plaintext output with \n or \0 as a delimiter

@ray-kast
Copy link
Owner

Due to tech-debt reasons I'm gonna try to sneak #7 in first.

@ray-kast
Copy link
Owner

@mradermaxlol just a heads-up, I'm still working on this but some life stuff has gotten in the way so it's taking longer than I expected...

@ray-kast
Copy link
Owner

ray-kast commented Aug 1, 2023

Completed by #10.

@ray-kast ray-kast closed this as completed Aug 1, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants