Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

discogs: add 'Featuring' artists to the 'artist' field #3353

Closed
kergoth opened this issue Aug 30, 2019 · 6 comments
Closed

discogs: add 'Featuring' artists to the 'artist' field #3353

kergoth opened this issue Aug 30, 2019 · 6 comments
Labels
feature features we would like to implement

Comments

@kergoth
Copy link
Contributor

kergoth commented Aug 30, 2019

Use case

Currently the Discogs importer throws away info about 'featuring' artists, as this is in the credits / extraartists, not artists, along with other roles like Producer. This is quite different from the behavior of the musicbrainz importer due to how MusicBrainz stores this information. I'd expect the artist to match up when importing the same album from two different importers, other than cosmetic differences due to differing database guidelines.

Solution

For feature/behavior parity with the default MusicBrainz importer, I think we should append these to the artist field, i.e. feat. SomeArtist, AnotherArtist.

@kergoth
Copy link
Contributor Author

kergoth commented Aug 30, 2019

Ex. this track from The Amazon Groove, via the API. Specifically "role": "Featuring" on the entries in extraartists:

        {
            "artists": [
                {
                    "anv": "",
                    "id": 576190,
                    "join": ",",
                    "name": "Matty G",
                    "resource_url": "https://api.discogs.com/artists/576190",
                    "role": "",
                    "tracks": ""
                },
                {
                    "anv": "DJ Rupture",
                    "id": 63742,
                    "join": ",",
                    "name": "DJ /rupture",
                    "resource_url": "https://api.discogs.com/artists/63742",
                    "role": "",
                    "tracks": ""
                },
                {
                    "anv": "",
                    "id": 26561,
                    "resource_url": "https://api.discogs.com/artists/576190",
                    "role": "",
                    "tracks": ""
                },
                {
                    "anv": "DJ Rupture",
                    "id": 63742,
                    "join": ",",
                    "name": "DJ /rupture",
                    "resource_url": "https://api.discogs.com/artists/63742",
                    "role": "",
                    "tracks": ""
                },
                {
                    "anv": "",
                    "id": 26561,
                    "join": "",
                    "name": "Lloop",
                    "resource_url": "https://api.discogs.com/artists/26561",
                    "role": "",
                    "tracks": ""
                }
            ],
            "duration": "3:39",
            "extraartists": [
                {
                    "anv": "",
                    "id": 1685603,
                    "join": "",
                    "name": "Autumn Rain",
                    "resource_url": "https://api.discogs.com/artists/1685603",
                    "role": "Featuring",
                    "tracks": ""
                },
                {
                    "anv": "",
                    "id": 103499,
                    "join": "",
                    "name": "Elizabeth Alexander",
                    "resource_url": "https://api.discogs.com/artists/103499",
                    "role": "Featuring",
                    "tracks": ""
                }
            ],
            "position": "22",
            "title": "Layin In Bed",
            "type_": "track"
        }

For comparison, we can examine the MusicBrainz Release, but their info on this album is even worse, including the featuring artists in the track titles ((feat. Elizabeth Alexander and Autumn Rain)) when it should be in artist, and including the record label in the title. Presumably this is how they were listed on the album, but it doesn't align with MusicBrainz guidelines afaict.

@kergoth
Copy link
Contributor Author

kergoth commented Aug 30, 2019

master...kergoth:prototype-discogs-featuring is an ugly first prototype of the sort of thing I'm looking for.

@sampsyo sampsyo added the feature features we would like to implement label Aug 31, 2019
@sampsyo
Copy link
Member

sampsyo commented Aug 31, 2019

Sounds good! Something like this seems like the right thing to do.

@kergoth
Copy link
Contributor Author

kergoth commented Aug 31, 2019

Thanks for the quick feedback. I'll see about cleaning up what I have and submitting a pull req.

kergoth added a commit to kergoth/beets that referenced this issue Sep 10, 2019
With the discogs API, tracks don't always include artist, if it matches
the artist of the album, so we need to hold onto the track featuring
artists and append it to the albumartist to get the correct track
artist.

Close beetbox#3353

Signed-off-by: Christopher Larson <[email protected]>
kergoth added a commit to kergoth/beets that referenced this issue Sep 10, 2019
The extraartists from the Discogs API do not include a 'join' field the
way artists are, so they're simply joined with ', ' as is typical for
artists, and are appended to the artist after 'feat. '.

With the discogs API, tracks don't always include artist, if it matches
the artist of the album, so we need to hold onto the track featuring
artists and append it to the albumartist to get the correct track
artist.

Close beetbox#3353

Signed-off-by: Christopher Larson <[email protected]>
kergoth added a commit to kergoth/beets that referenced this issue Sep 11, 2019
With the discogs API, tracks don't always include artist, if it matches
the artist of the album, so we need to hold onto the track featuring
artists and append it to the albumartist to get the correct track
artist.

Close beetbox#3353

Signed-off-by: Christopher Larson <[email protected]>
kergoth added a commit to kergoth/beets that referenced this issue Sep 11, 2019
With the discogs API, tracks don't always include artist, if it matches
the artist of the album, so we need to hold onto the track featuring
artists and append it to the albumartist to get the correct track
artist.

Close beetbox#3353

Signed-off-by: Christopher Larson <[email protected]>
kergoth added a commit to kergoth/beets that referenced this issue Sep 11, 2019
With the discogs API, tracks don't always include artist, if it matches
the artist of the album, so we need to hold onto the track featuring
artists and append it to the albumartist to get the correct track
artist.

Close beetbox#3353

Signed-off-by: Christopher Larson <[email protected]>
kergoth added a commit to kergoth/beets that referenced this issue Sep 11, 2019
With the discogs API, tracks don't always include artist, if it matches
the artist of the album, so we need to hold onto the track featuring
artists and append it to the albumartist to get the correct track
artist.

Close beetbox#3353

Signed-off-by: Christopher Larson <[email protected]>
kergoth added a commit to kergoth/beets that referenced this issue Sep 19, 2019
With the discogs API, tracks don't always include artist, if it matches
the artist of the album, so we need to hold onto the track featuring
artists and append it to the albumartist to get the correct track
artist.

Close beetbox#3353

Signed-off-by: Christopher Larson <[email protected]>
kergoth added a commit to kergoth/beets that referenced this issue Sep 19, 2019
With the discogs API, tracks don't always include artist, if it matches
the artist of the album, so we need to hold onto the track featuring
artists and append it to the albumartist to get the correct track
artist.

Close beetbox#3353

Signed-off-by: Christopher Larson <[email protected]>
kergoth added a commit to kergoth/beets that referenced this issue Oct 4, 2019
With the discogs API, tracks don't always include artist, if it matches
the artist of the album, so we need to hold onto the track featuring
artists and append it to the albumartist to get the correct track
artist.

Close beetbox#3353

Signed-off-by: Christopher Larson <[email protected]>
kergoth added a commit to kergoth/beets that referenced this issue Oct 5, 2019
With the discogs API, tracks don't always include artist, if it matches
the artist of the album, so we need to hold onto the track featuring
artists and append it to the albumartist to get the correct track
artist.

Close beetbox#3353

Signed-off-by: Christopher Larson <[email protected]>
kergoth added a commit to kergoth/beets that referenced this issue Oct 7, 2019
With the discogs API, tracks don't always include artist, if it matches
the artist of the album, so we need to hold onto the track featuring
artists and append it to the albumartist to get the correct track
artist.

Close beetbox#3353

Signed-off-by: Christopher Larson <[email protected]>
kergoth added a commit to kergoth/beets that referenced this issue Oct 7, 2019
With the discogs API, tracks don't always include artist, if it matches
the artist of the album, so we need to hold onto the track featuring
artists and append it to the albumartist to get the correct track
artist.

Close beetbox#3353

Signed-off-by: Christopher Larson <[email protected]>
kergoth added a commit to kergoth/beets that referenced this issue Jan 16, 2020
With the discogs API, tracks don't always include artist, if it matches
the artist of the album, so we need to hold onto the track featuring
artists and append it to the albumartist to get the correct track
artist.

Close beetbox#3353

Signed-off-by: Christopher Larson <[email protected]>
@sanpoChew
Copy link
Contributor

@kergoth just curious on the status of this fix? find this very annoying personally

@JOJ0
Copy link
Member

JOJ0 commented Feb 4, 2023

This feature was implemented in #4515

FYI @sanpoChew @kergoth

@JOJ0 JOJ0 closed this as completed Feb 4, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature features we would like to implement
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants