Coder Social home page Coder Social logo

Comments (7)

kawaiiDango avatar kawaiiDango commented on June 8, 2024

Can you give an example?
image
In this song, the album artist is the record label, which shouldn't be scrobbled. So, implementing this feature will have side effects.

from pano-scrobbler.

Fureon avatar Fureon commented on June 8, 2024

Even though the Album Artist value in your example would be considered incorrect by most (if not all) tagging and scrobbling guidelines (which dictate "Various Artists" in this case), the inability to scrobble the album artist tag prevents Last.FM from ever creating a correct and complete entry for such an album.

Also, the current mechanism of excluding the album artist tag creates way more garbage data than the unreasonably feared side effect of an occasional incorrectly filled Album Artist tag ever possibly can.
Implementing the feature will entail a risk of user-generated garbage entries, but not implementing it already makes the program create garbage entries invariably each time, which is far worse.
Let me explain what I mean.

Here are 2 scenarios of what will happen if the tag will be sent (best case/worst case),
and 1 of what's actually happening at the moment when the tag is not being sent:

Case 1 (correct tag is sent)

Case: A track from the "Found" album is scrobbled; album artist is "Various Artists".
Outcome: Last.FM creates a correct entry for the album "Found" by Various Artists + an entry for the scrobbled track in its exact position in the album (assuming the track number is also scrobbled - important!).
Final outcome: After all the tracks on the album have been scrobbled (not necessarily in one go), the album entry for "Found" by Various Artists will have a complete and correct tracklist of the actual album.

0 garbage, incomplete entries;
1 correct, complete entry:

Various Artists - Found

1. Shion Hinano - Strawhat & Diary
2. Tanchiky - Found
3. ShimaL - Alphaseeker
4. Street - Hypothesis
5. ShimaL - Nimbus (Tanchiky Remix)
6. Mizuki Ohkawa - Solar System
7. Noshi - Overseer
8. Spide - Like Or Dislike

Case 2 (incorrect tag is sent)

Case: Case: A track from the "Found" album is scrobbled; album artist is "Riparia Records" (or, in worst-WORST case, garbage value).
Outcome: Last.FM creates an entry for the album "Found" by Riparia Records + an entry for the scrobbled track in its exact position in the album.
Final outcome: Last.FM creates a complete entry for the album "Found" by "Riparia Records". Even though technically Riparia Records is not an artist, it is an album released by Riparia Records and the entry has all the tracks that are actually on the album. In case of garbage value, only 1 garbage entry for the album will be created, and at least it will have the complete tracklist.

0 garbage, incomplete entries;
1 arguably (in)correct, complete entry:

Riparia Records - Found

1. Shion Hinano - Strawhat & Diary
2. Tanchiky - Found
3. ShimaL - Alphaseeker
4. Street - Hypothesis
5. ShimaL - Nimbus (Tanchiky Remix)
6. Mizuki Ohkawa - Solar System
7. Noshi - Overseer
8. Spide - Like Or Dislike

Case 3 (no tag sent)

Case: Tracks from the "Found" album are scrobbled; album artist tag is not sent, and thus assumed by Last.FM to be the same as the Artist, in each individual track.
Outcome: Last.FM creates a garbage entry for a non-existant release by each artist each time a track is scrobbled. This clone entry will only have the track(s) by this artist and nothing else.
Final Outcome: No correct album entry is created. Last.FM does not have an entry for an album "Found" by Various Artists with 8 tracks, instead it has 7 non-existant releases by different artists, 1-2 tracks each: https://www.last.fm/music/tanchiky/Found, https://www.last.fm/music/Shimal/Found, etc. - none of these releases exist, but scrobbling without the album artist tag made Last.FM enter the compilation as 7 separate releases by 7 artists instead of one actual release by Various Artists.

0 (ZERO) correct, complete entries;
7 (SEVEN!) garbage, incomplete entries:

Shion Hinano - Found
1. Strawhat & Diary
Tanchiky - Found
2. Found
ShimaL - Found
3. Alphaseeker
5. Nimbus (Tanchiky Remix)
Street - Found
4. Hypothesis
Mizuki Ohkawa - Found
6. Solar System
Noshi - Found
7. Overseer
Spide - Found
8. Like Or Dislike

So, basically:

  • feature implemented = lots of correct entries + occasional bad one here and there due to user error
  • feature not implemented = zero correct entries, garbage entries each time due to program error

I think the choice is pretty obvious.

from pano-scrobbler.

kawaiiDango avatar kawaiiDango commented on June 8, 2024

If you look up, https://www.last.fm/music/Shimal/_/Nimbus(Tanchiky+Remix) has 60 scrobbles probably because they are indie and was released last fall,
and https://www.last.fm/search?q=Riparia+Records+nimbus has 0 results.

Also, tags like "Various Artists", "Unknown Artist" etc cannot be scrobbled and result in a scrobble ignored error.

from pano-scrobbler.

Fureon avatar Fureon commented on June 8, 2024

I'm not sure what you meant to show by looking up the track name and artist/album artists.
https://www.last.fm/music/Shimal/_/Nimbus(Tanchiky+Remix) is correct,
and of course there isn't "Riparia Records - Nimbus" because there shouldn't be.
If you scrobble a track with both Artist and Album Artist tags, the track still will be credited to the Artist.
There should be an ALBUM entry "Riparia Records - Found" which contains all the tracks by different artists: https://www.last.fm/music/Riparia+Records/Found

Better example:
https://www.last.fm/music/Various+Artists/Festive+Greetings+from+Hibernate+and+Home+Normal

Let's break it down further.
Upon sending a scrobble, two entries are created:

However! In case the Album Artist tag is empty (which is the issue), Last.FM uses the value in the Artist tag in its place, assuming they are the same, and resulting in creation of garbage album entries:
https://www.last.fm/music/Shimal/Found
https://www.last.fm/music/Noshi/Found
https://www.last.fm/music/Street/Found
etc... - this is incorrect.
None of these artists have an album named "Found" consisting of 1 track.
There is only the 8-track album named "Found" by Riparia Records (or Various Artists, depending on how they tag it). But the creation of an entry for this album is impossible using your scrobbler because the proper Album Artist is not sent and Last.FM always uses the Artist tag assuming the album belongs to the specific track's artist (and if it's a compilation, it does not)..

Also, tags like "Various Artists", "Unknown Artist" etc cannot be scrobbled and result in a scrobble ignored error.

Incorrect, they can. Perhaps what you've said is true for the Artist tag? For the Album Artist tag, "Various Artists" is a valid, legitimate value. I have scrobbled tons of tracks like that with no problem on every other scrobbler. Other people obviously have if you look up any compilation or split. I still scrobble such releases on Windows without any issue. So the problem is obviously not on Last.FM's side.

from pano-scrobbler.

kawaiiDango avatar kawaiiDango commented on June 8, 2024

Did you mean that the album artist should be sent along with the artist? Lastfm has only one artist field.

from pano-scrobbler.

Fureon avatar Fureon commented on June 8, 2024

Did you mean that the album artist should be sent along with the artist?

Yes.

Lastfm has only one artist field.

LastFM scrobble (and now playing) method includes both Artist and Album Artist fields - precisely for this purpose.
https://www.last.fm/api/show/track.scrobble
https://www.last.fm/ru/api/show/track.updateNowPlaying

albumArtist (Optional) : The album artist - if this differs from the track artist.

The problem is your app simply never uses this field in either method and always leaves it empty.
Please get your app to account for it and send it when it's present in the tags.

from pano-scrobbler.

kawaiiDango avatar kawaiiDango commented on June 8, 2024

implemented 5b55692

from pano-scrobbler.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.