tulskiy/musique

Move last.fm functionality to a plugin

Opened this issue · 6 comments

also switch to a new last.fm api

Good to see submit queue saved to disk if it is not empty at quit app step. Restored and submitted at next app run of course :)

Кстати, по поводу интеграции с либре.фм - поддерживают ли они 2.0 версию апи для скробблинга?

Честно сказать, не знаю :) Упоминания конкретной версии мне не встречалось, у них есть лишь ссылка на api-страницу last.fm (http://libre.fm/api/).

Кстати, у меня иногда не скробблит трек безо всякой видимой причины. Запускаю его же ещё раз - скробблится. Закономерности не выявил, дебагом тоже подозрительного сходу не выявил. Может, дело в потоках или нотификациях; или какой-нибудь nowPlayingLength не обновляется...
Но повторяется весьма периодически, так его растак :)

Удалось выяснить причину странного скробблинга.
Происходит в случае, когда проигрался короткий трек, а затем начал играть следующий значительно длиннее его. При этом сначала происходит initNowPlaying, который обновляет длину скробблируемого трека на новую, и только затем сабмитается старый - учитывая длину уже нового, что в корне неверно!

if (time >= 240 || time >= nowPlayingLength / 2) {

Таким образом условие не срабатывает (time - старый/короткий, nowPlayingLength - новый/длинный), и получаем "забытый" трек.
Пока не чувствую в себе достаточных знаний по внесению таких микрофиксов через Pull Request, так что надеюсь, что тебе не составит труда закрыть проблему своими силами :)

ок, учту при переезде на на новую библиотеку.