thanks!

On 11/29/25 20:50, Fran Burstall (Gmail) wrote:
I have updated emms-listenbrainz-scrobbler.el to include a check on activation that emms-playing-mode is active.

Probably the same change should be made to emms-librefm-scrobbler.el.

---Fran



On Mon, 24 Nov 2025 at 10:04, Fran Burstall <[email protected] <mailto:[email protected]>> wrote:

    I am sure that this is the solution.

    I will update the library to explicitly require and activate emms-
    playing-time-mode.

    ---Fran

    --


    ------------------------------------------------------------------------
    *From:* Igor Sosa Mayor <[email protected]
    <mailto:[email protected]>>
    *Sent:* Monday, November 24, 2025 8:11:51 AM
    *To:* [email protected] <mailto:[email protected]>
    <[email protected] <mailto:[email protected]>>
    *Cc:* emms-help mailing list <[email protected] <mailto:emms-
    [email protected]>>
    *Subject:* Re: Listenbrainz: no permanent storage of items
    Hi Fran,

    I think I found the problem.

    I am not using emms-all, but I load the modules myself. If I look at
    the
    definition of emms-all I see there is

    (emms-playing-time-mode 1)

    which I had commented out in my own setup.

    This sould be the solution (but now listenbrainz.org <http://
    listenbrainz.org> is down and I can
    not test it...).

    Many thanks for your help.

    Best,

    --- Igor

    On 11/23/25 23:36, Fran Burstall (Gmail) wrote:
      >       (why is this necessary?)
      >
      >
      > The api places these restrictions on the submission (at least, I
    think
      > it does---cannot find a reference right now).
      >
      > Now we know how things are failing, let us try to understand why.
      >
      > 1.  While a track is playing, what is the value of emms-playing-
    time?
      > 2. What does (emms-track-get (emms-playlist-current-selected-track)
      > 'info-playing-time) return?
      >
      > I am going off the air now but will get back on this tomorrow in
    about
      > 20 hours.
      >
      > ---Fran
      >
      >
      >
      > On Sun, 23 Nov 2025 at 22:13, Igor Sosa Mayor
      > <[email protected] <mailto:[email protected]>
    <mailto:[email protected]
    <mailto:[email protected]>>> wrote:
      >
      >     I think I found the problem (or the source of the
    problem...). I
    made a
      >     simplified version of your code:
      >
      >     (defun emms-listenbrainz-scrobbler-stop-hook ()
      >         "Submit the track to listenbrainz if we have listened long
    enough.
      >
      >     That is, if it has been played for 240 seconds or half the
    length of
      >     the
      >     track."
      >         (let ((current-track (emms-playlist-current-selected-
    track)))
      >           (emms-listenbrainz-scrobbler-make-async-submission-call
      >                 current-track)))
      >
      >     Removing the code about the length (why is this necessary?) and
    now it
      >     is working. But still I do not understand why this is
    happening.
    Maybe
      >     because of this?
      >
      >             (when (and track-length
      >                       ;; only submit files
      >                       (eq (emms-track-type current-track) 'file))
      >
      >     --- Igor
      >
      >
      >     On 11/23/25 23:04, Fran Burstall (Gmail) wrote:
      >      > I wonder if there is something else in the finished hook
    that
    fails
      >      > ahead the call to the scrobbler?  What is the value of
    emms-player-
      >      > finished-hook?
      >      >
      >      > However, that would not explain the empty failed process
    buffers:
      >     does
      >      > one of these appear after every scrobble attempt?
      >      >
      >      > To see if it is the hook that fails, execute
      >      >
      >      > (emms-listenbrainz-scrobbler-make-async-submission-call
    (emms-
      >     playlist-
      >      > current-selected-track))
      >      >
      >      > and see if that records a scrobble.  For me, it does most
    of the
      >     time
      >      > but, during testing today, it has failed 4 times leaving
    a failed
      >      > process buffer.
      >      >
      >      > ---Fran
      >      >
      >      >
      >      >
      >      > On Sun, 23 Nov 2025 at 21:37, Igor Sosa Mayor
      >      > <[email protected]
    <mailto:[email protected]>
    <mailto:[email protected] <mailto:[email protected]>>
      >     <mailto:[email protected]
    <mailto:[email protected]>
      >     <mailto:[email protected]
    <mailto:[email protected]>>>> wrote:
      >      >
      >      >
      >      >      > and let me know what appears in the message buffer
    when
      >     you try
      >      >     to scrobble.
      >      >
      >      >     Exactly the same.
      >      >
      >      >     I have the impression the finished-hook is not called...
      >      >
      >      >     In the buffer URl-Debug I get the following (token
    removed
      >     obviously),
      >      >     but only after starting the track.
      >      >
      >      > https://paste.rs/8Vl5n.txt <https://paste.rs/8Vl5n.txt>
    <https://paste.rs/8Vl5n.txt <https://paste.rs/8Vl5n.txt>> <https://
      > paste.rs/8Vl5n.txt <http://paste.rs/8Vl5n.txt> <https://
    paste.rs/8Vl5n.txt <https://paste.rs/8Vl5n.txt>>>
      >      >
      >      >     After finishing there are no new messages logged.
      >      >
      >      >     But why should a hook not be triggered?
      >      >
      >      >     Thanks again.
      >      >
      >      >     --- Igor
      >      >
      >


    On 11/23/25 23:36, Fran Burstall (Gmail) wrote:
>       (why is this necessary?) > > > The api places these restrictions on the submission (at least, I think > it does---cannot find a reference right now). > > Now we know how things are failing, let us try to understand why. > > 1.  While a track is playing, what is the value of emms-playing-time? > 2. What does (emms-track-get (emms-playlist-current-selected-track) > 'info-playing-time) return? > > I am going off the air now but will get back on this tomorrow in about > 20 hours. > > ---Fran > > > > On Sun, 23 Nov 2025 at 22:13, Igor Sosa Mayor > <[email protected] <mailto:[email protected]>
    <mailto:[email protected]
    <mailto:[email protected]>>> wrote:
> >     I think I found the problem (or the source of the problem...). I made a
    >     simplified version of your code:
> >     (defun emms-listenbrainz-scrobbler-stop-hook ()
    >         "Submit the track to listenbrainz if we have listened long enough.
> >     That is, if it has been played for 240 seconds or half the length of
    >     the
    >     track."
    >         (let ((current-track (emms-playlist-current-selected-track)))
    >           (emms-listenbrainz-scrobbler-make-async-submission-call
    >                 current-track)))
> >     Removing the code about the length (why is this necessary?) and now it
    >     is working. But still I do not understand why this is happening. Maybe
    >     because of this?
> >             (when (and track-length
    >                       ;; only submit files
    >                       (eq (emms-track-type current-track) 'file))
> >     --- Igor > > >     On 11/23/25 23:04, Fran Burstall (Gmail) wrote:
    >      > I wonder if there is something else in the finished hook that fails
    >      > ahead the call to the scrobbler?  What is the value of emms-player-
    >      > finished-hook?
    >      >
    >      > However, that would not explain the empty failed process buffers:
    >     does
    >      > one of these appear after every scrobble attempt?
    >      >
    >      > To see if it is the hook that fails, execute
    >      >
    >      > (emms-listenbrainz-scrobbler-make-async-submission-call (emms-
    >     playlist-
    >      > current-selected-track))
    >      >
    >      > and see if that records a scrobble.  For me, it does most of the
    >     time
    >      > but, during testing today, it has failed 4 times leaving a failed
    >      > process buffer.
    >      >
    >      > ---Fran
    >      >
    >      >
    >      >
    >      > On Sun, 23 Nov 2025 at 21:37, Igor Sosa Mayor
    >      > <[email protected] <mailto:[email protected]>
    <mailto:[email protected] <mailto:[email protected]>>
    >     <mailto:[email protected] <mailto:[email protected]>
    >     <mailto:[email protected]
    <mailto:[email protected]>>>> wrote:
    >      >
    >      >
    >      >      > and let me know what appears in the message buffer when
    >     you try
    >      >     to scrobble.
    >      >
    >      >     Exactly the same.
    >      >
    >      >     I have the impression the finished-hook is not called...
    >      >
    >      >     In the buffer URl-Debug I get the following (token removed
    >     obviously),
    >      >     but only after starting the track.
    >      >
    >      > https://paste.rs/8Vl5n.txt <https://paste.rs/8Vl5n.txt> <https://
    paste.rs/8Vl5n.txt <https://paste.rs/8Vl5n.txt>> <https://
    >     paste.rs/8Vl5n.txt <http://paste.rs/8Vl5n.txt> <https://
    paste.rs/8Vl5n.txt <https://paste.rs/8Vl5n.txt>>>
    >      >
    >      >     After finishing there are no new messages logged.
    >      >
    >      >     But why should a hook not be triggered?
    >      >
    >      >     Thanks again.
    >      >
    >      >     --- Igor
    >      >
>


Reply via email to