emms-help
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Emmms dbus or mpris integration


From: Fran Burstall (Gmail)
Subject: Re: Emmms dbus or mpris integration
Date: Mon, 31 Oct 2022 23:01:53 +0000



On Mon, 31 Oct 2022 at 13:36, Yoni Rabkin <yoni@rabkins.net> wrote:
"Fran Burstall (Gmail)" <fran.burstall@gmail.com> writes:

> On Mon, 31 Oct 2022 at 12:05, Yoni Rabkin <yoni@rabkins.net> wrote:
>
>>
>> Björn Bidar via <emms-help@gnu.org> writes:
>>
>> > The emms manual mentions emms-dbus, where can I find that?
>>
>> That is just a reference to some code from someone's Emms config, and
>> not any official package.
>>
>> > It would be really useful to have some kind of mpris integration
>> > in emms.
>>
>> Shouldn't be too hard to implement in an Emacs with dbus.
>>
>
> In fact, I have an implementation of mpris for emms that I was thinking
> about contributing to emms.
>
> I hesitated because:
>
> 1. I thought it was an itch that only I wanted to scratch
> 2. It is not a complete implementation of the mpris2 spec.  You can use it
> to play/pause/stop/next/previous/seek over mpris but not (for various
> reasons) change things like LoopStatus/Shuffle/Volume.
>
> If you want it despite these limitations, let me know and I will push it to
> the git repo.

Please do, that would be great.

Björn, would you be willing to test Fran's implementation once it is in
the repo?

--
   "Cut your own wood and it will warm you twice"

I have pushed emms-mpris.el to a new branch called mpris in the repo.

From the commentary:

;;; Commentary:
;; This package provides a dbus interface to EMMS.

;; Usage:
;;  (require 'emms-mpris)
;;  (emms-mpris-enable)

;; Switch off with
;;  (emms-mpris-disable)

;; Caveats: this is not quite a complete implementation of the
;; org.mpris.MediaPlayer2 and org.mpris.MediaPlayer2.Player interfaces
;; (see
;; https://specifications.freedesktop.org/mpris-spec/latest/index.html).
;; What is missing:
;;  - Volume: this should be easy but there seems to be no way to get a
;; simple percentage to report the volume---every emms-volume
;; controller returns a string in a different format, sigh.
;; - Shuffle
;; - LoopStatus
;; The issue with the last two is how to allow them to be set both
;; over dbus and via lisp/emms-ui.  I do not know how to do this in a
;; simple way.

I am very open to help in improving this!

---Fran


reply via email to

[Prev in Thread] Current Thread [Next in Thread]