[gnome-music/wip/jfelder/songeditor-gtk4: 55/76] grltrackerwrapper: Retrieve musicbrainz track id for songs
- From: Jean Felder <jfelder src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-music/wip/jfelder/songeditor-gtk4: 55/76] grltrackerwrapper: Retrieve musicbrainz track id for songs
- Date: Wed, 23 Feb 2022 20:36:44 +0000 (UTC)
commit 555a544d16b6310fdd4afe83f8de0c7c54272e07
Author: Jean Felder <jfelder src gnome org>
Date: Wed Jul 29 12:51:12 2020 +0200
grltrackerwrapper: Retrieve musicbrainz track id for songs
gnomemusic/grilowrappers/grltrackerwrapper.py | 17 +++++++++++++++--
1 file changed, 15 insertions(+), 2 deletions(-)
---
diff --git a/gnomemusic/grilowrappers/grltrackerwrapper.py b/gnomemusic/grilowrappers/grltrackerwrapper.py
index c7a795fe7..108bfb192 100644
--- a/gnomemusic/grilowrappers/grltrackerwrapper.py
+++ b/gnomemusic/grilowrappers/grltrackerwrapper.py
@@ -71,6 +71,7 @@ class GrlTrackerWrapper(GObject.GObject):
Grl.METADATA_KEY_FAVOURITE,
Grl.METADATA_KEY_ID,
Grl.METADATA_KEY_MB_RECORDING_ID,
+ Grl.METADATA_KEY_MB_TRACK_ID,
Grl.METADATA_KEY_PLAY_COUNT,
Grl.METADATA_KEY_TITLE,
Grl.METADATA_KEY_TRACK_NUMBER,
@@ -426,7 +427,7 @@ class GrlTrackerWrapper(GObject.GObject):
miner_fs_busname = self._tracker_wrapper.props.miner_fs_busname
query = " ".join(f"""
SELECT
- ?type ?urn ?title ?id ?mbRecording ?url
+ ?type ?urn ?title ?id ?mbRecording ?mbTrack ?url
?artist ?album
?duration ?trackNumber
?albumDiscNumber ?publicationDate
@@ -442,6 +443,7 @@ class GrlTrackerWrapper(GObject.GObject):
?song AS ?id
tracker:referenceIdentifier(?recording_id)
AS ?mbRecording
+ tracker:referenceIdentifier(?track_id) AS ?mbTrack
nie:isStoredAs(?song) AS ?url
nmm:artistName(nmm:artist(?song)) AS ?artist
nie:title(nmm:musicAlbum(?song)) AS ?album
@@ -457,6 +459,11 @@ class GrlTrackerWrapper(GObject.GObject):
?recording_id tracker:referenceSource
"https://musicbrainz.org/doc/Recording" .
}}
+ OPTIONAL {{
+ ?song tracker:hasExternalReference ?track_id .
+ ?track_id tracker:referenceSource
+ "https://musicbrainz.org/doc/Track" .
+ }}
OPTIONAL {{ ?song nie:contentCreated ?date . }}
{songs_filter}
{location_filter}
@@ -821,7 +828,7 @@ class GrlTrackerWrapper(GObject.GObject):
query = """
SELECT
- ?type ?id ?mbRecording ?url ?title
+ ?type ?id ?mbRecording ?mbTrack ?url ?title
?artist ?album
?duration ?trackNumber ?albumDiscNumber
?publicationDate
@@ -835,6 +842,7 @@ class GrlTrackerWrapper(GObject.GObject):
?song AS ?id
tracker:referenceIdentifier(?recording_id)
AS ?mbRecording
+ tracker:referenceIdentifier(?track_id) AS ?mbTrack
nie:isStoredAs(?song) AS ?url
nie:title(?song) AS ?title
nmm:artistName(nmm:artist(?song)) AS ?artist
@@ -852,6 +860,11 @@ class GrlTrackerWrapper(GObject.GObject):
?recording_id tracker:referenceSource
"https://musicbrainz.org/doc/Recording" .
}
+ OPTIONAL {
+ ?song tracker:hasExternalReference ?track_id .
+ ?track_id tracker:referenceSource
+ "https://musicbrainz.org/doc/Track" .
+ }
OPTIONAL { ?song nie:contentCreated ?date . }
FILTER (
?album = <%(album_id)s> &&
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]