tulskiy / musique

Java audio player. Supports mp3, ogg, flac, wavpack, ape, wav, au, aiff. Builtin support for cue files, gapless playback, SHOUTCast/IceCast Radio, last.fm scrobbling.
http://tulskiy.github.com/musique/
GNU Lesser General Public License v3.0
131 stars 44 forks source link

Move last.fm functionality to a plugin #23

Open tulskiy opened 13 years ago

tulskiy commented 13 years ago

also switch to a new last.fm api

bassstorm commented 13 years ago

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 :)

tulskiy commented 13 years ago

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

bassstorm commented 13 years ago

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

bassstorm commented 13 years ago

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

bassstorm commented 13 years ago

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

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

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

tulskiy commented 13 years ago

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