← Back to team overview

cairo-dock-team team mailing list archive

[Bug 1052162] Re: MPRIS2: the trackID is not updated

 

@John: thank you for this answer!

Yes, our musicPlayer applet is connected to the "PropertiesChanged"
signal but it checks if the trackid has changed in order to know if it
has to notify the user and to not update informations if it's not
needed.

Following MPRIS2 spec, if there is a current track, this must have a "mpris:trackid" entry (of D-Bus type "o") at the very least, which contains a D-Bus path that uniquely identifies this track.
This is why this applet only checks the trackid. It's just to not check if the artist, title, album, cover, etc. have changed. (now we just check if the title has changed too to avoid these kind of bugs)

But about the trackid, it's maybe better to add something even if it's
not the id  (e.g. something like a md5 sum of URI, or the address of the
pointer). Clementine devs use the position of the song in the current
playlist.

> Think of internet streams, or of the case where a user edits the tag on a file while it is playing.
You're right! If the trackid is not modified (e.g. if it's not a signature made with the metadata), it's a problem :-/ (and it's maybe useful to check if the artist has changed too to modify the icon's label if it's needed)

-- 
You received this bug notification because you are a member of Cairo-
Dock Team, which is subscribed to Cairo-Dock Plug-ins.
https://bugs.launchpad.net/bugs/1052162

Title:
  MPRIS2: the trackID is not updated

Status in Cairo-Dock: Plug-ins:
  Invalid
Status in “audacious” package in Ubuntu:
  New

Bug description:
  I've been working with the source trying to get a feel for the
  project. I "partially" fixed one of my issues, the music player not
  updating the cover when songs change. I got the icon to update
  whenever a new cover is not found, but still haven't gotten the tool
  tip text to update.

  static gboolean _on_got_cover (CDSharedMemory *pSharedMemory)
  {
  	CD_APPLET_ENTER;
  	if (pSharedMemory->bSuccess)
  	{
   		...
   	}
    else 
  // I added the 3 following lines
    {
   		cd_musicplayer_apply_status_surface (myData.iPlayingStatus);
    }
  ...
  }

To manage notifications about this bug go to:
https://bugs.launchpad.net/cairo-dock-plug-ins/+bug/1052162/+subscriptions


References