MPDStats requirements

I’ve got the mpdstats plugin installed, but it does not seem to get any data from mpd. No errors, just no ratings. Are there additional steps that need to be configured on the mpd end, such as enabling certain fields in metadata_to_use?

You really don’t get any output from MPD? If you connect to the wrong port, you should see something like

mpdstats: connecting to 127.0.0.1:9999
error: could not connect to MPD: [Errno 111] Connection refused

If you connect to an MPD server that isn’t playing anything you should see

mpdstats: connecting to 127.0.0.1:6600
mpdstats: stop

When the current track changes or the player is paused then you should see additional output (mpdstats: playing <path>, or mpdstats: pause).

Is there any chance that it’s connecting to a different MPD server to what you expected?

I think this is a misunderstanding on my part. I didn’t realize you needed to have beets running while mpd was playing, I assumed it was querying mpd’s sticker database.

Do folks normally just leave beets running for this purpose? Using a daemon or tmux or some other solution?

That’s right - mpdstats is an MPD client that needs to be running to listen to live changes in the MPD server. Perhaps the docs could be clearer here.

Does MPD actually record play stats in the sticker database or is that something some clients do? I haven’t really found much usage of the sticker database in clients I use so I’m interested to know what it’s used for elsewhere to know if it’s worth implementing the feature for BPD.

I proposed a change to the docs here: