From a89834044c50eccaf291501fd284b4032ee38948 Mon Sep 17 00:00:00 2001 From: Henk Kalkwater Date: Wed, 1 Sep 2021 22:10:54 +0200 Subject: [PATCH] MPRIS: set several musicbrainz ids in metadata --- .../platform/freedesktop/mediaplayer2player.cpp | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/core/src/platform/freedesktop/mediaplayer2player.cpp b/core/src/platform/freedesktop/mediaplayer2player.cpp index 9a477cb..907b67e 100644 --- a/core/src/platform/freedesktop/mediaplayer2player.cpp +++ b/core/src/platform/freedesktop/mediaplayer2player.cpp @@ -135,6 +135,20 @@ QVariantMap PlayerAdaptor::metadata() const map[QStringLiteral("xesam:contentCreated")] = item->dateCreated(); map[QStringLiteral("xesam:genre")] = item->genres(); map[QStringLiteral("xesam:lastUsed")] = item->userData()->lastPlayedDate(); + + QJsonObject providers = item->providerIds(); + if (providers.contains(QStringLiteral("MusicBrainzTrack"))) { + map[QStringLiteral("xesam:musicBrainzTrackID")] = providers[QStringLiteral("MusicBrainzTrack")].toString(); + } + if (providers.contains(QStringLiteral("MusicBrainzAlbum"))) { + map[QStringLiteral("xesam:musicBrainzAlbumID")] = providers[QStringLiteral("MusicBrainzAlbum")].toString(); + } + if (providers.contains(QStringLiteral("MusicBrainzArtist"))) { + map[QStringLiteral("xesam:musicBrainzArtistID")] = providers[QStringLiteral("MusicBrainzArtist")].toString(); + } + if (providers.contains(QStringLiteral("MusicBrainzAlbumArtist"))) { + map[QStringLiteral("xesam:musicBrainzAlbumArtistID")] = providers[QStringLiteral("MusicBrainzAlbumArtist")].toString(); + } } return map; }