beetbox / beets

music library manager and MusicBrainz tagger
http://beets.io/
MIT License
12.84k stars 1.82k forks source link

mpdstats: Work with Mopidy #1164

Open Freso opened 9 years ago

Freso commented 9 years ago

E.g.:

mpdstats: playing /mnt/media/Music/local:track:August%20Alsina/2012%20-%20Throwback%20EP/05.%20400%20Degreez%20feat.%20Lucci%20Lou.mp3
mpdstats: item not found: /mnt/media/Music/local:track:August%20Alsina/2012%20-%20Throwback%20EP/05.%20400%20Degreez%20feat.%20Lucci%20Lou.mp3

Obviously the local:track: is throwing things off.

Freso commented 9 years ago

My initial thought was to add a new boolean option mpt.mopidy and catch URLs based on that, "rewriting" local:track: ones to omit just that and ignore tracks using spotify: and other URLs.

sampsyo commented 9 years ago

Good catch; thanks. It seems like we could have a transparent solution, though—just strip local:track: off the beginning if it exists (seems very unlikely to come up "in the wild").

Freso commented 9 years ago

Well, there's at least https://musicbrainz.org/recording/4e091c0e-1da0-47af-ac78-bde620957a1c ;)

Anyway, it'll probably work as a work-around for now. However, as we've seen time and time again in the MusicBrainz community, artists will eventually break any assumptions that they will or will not do something. :| The proper solution is to somehow get support for the usecases directly into the MPD protocol: https://botbot.me/freenode/mopidy/2014-12-22/?msg=28128648&page=1#28128648

sampsyo commented 9 years ago

:)

Another option would be to somehow detect that we're connected to Mopidy, e.g., by its version string if it self-identifies.

Freso commented 9 years ago

Another option would be to somehow detect that we're connected to Mopidy, e.g., by its version string if it self-identifies.

Possibly, although https://botbot.me/freenode/mopidy/2014-12-22/?msg=28130195#28130195