def _on_clock_tick(self, klass, tick): logger.debug("Clock tick {}, player at {} seconds".format( tick, self._gst_player.props.position)) current_song = self._playlist.props.current_song if tick == 0: self._new_clock = True self._lastfm.now_playing(current_song) if self.props.duration == -1.: return position = self._gst_player.props.position if position > 0: percentage = tick / self.props.duration if (not self._lastfm.scrobbled and self.props.duration > 30. and (percentage > 0.5 or tick > 4 * 60)): self._lastfm.scrobble(current_song, self._time_stamp) if (percentage > 0.5 and self._new_clock): self._new_clock = False # FIXME: we should not need to update static # playlists here but removing it may introduce # a bug. So, we keep it for the time being. playlists.update_all_static_playlists() grilo.bump_play_count(current_song) grilo.set_last_played(current_song) self.emit('clock-tick', int(position))
def _on_clock_tick(self, klass, tick): logger.debug("Clock tick {}, player at {} seconds".format( tick, self._gst_player.props.position)) current_song = self._playlist.props.current_song if tick == 0: self._new_clock = True self._lastfm.now_playing(current_song) if self.props.duration == -1.: return position = self._gst_player.props.position if position > 0: percentage = tick / self.props.duration if (not self._lastfm.scrobbled and self.props.duration > 30. and (percentage > 0.5 or tick > 4 * 60)): self._lastfm.scrobble(current_song, self._time_stamp) if (percentage > 0.5 and self._new_clock): self._new_clock = False # FIXME: we should not need to update smart # playlists here but removing it may introduce # a bug. So, we keep it for the time being. playlists.update_all_smart_playlists() grilo.bump_play_count(current_song) grilo.set_last_played(current_song)
def _update_seconds_callback(self): self._on_progress_value_changed(None) position = self.player.query_position(Gst.Format.TIME)[1] / 10**9 if position > 0: self.played_seconds += self.seconds_period / 1000 try: percentage = self.played_seconds / self.duration if not self.scrobbled and percentage > 0.4: current_media = self.get_current_media() self.scrobbled = True if current_media: grilo.bump_play_count(self.get_current_media()) grilo.set_last_played(current_media) just_played_url = self.get_current_media().get_url() t = Thread(target=self.scrobble_song, args=(just_played_url,)) t.setDaemon(True) t.start() except Exception as e: logger.warn("Error: %s, %s", e.__class__, e) return True
def _update_seconds_callback(self): self._on_progress_value_changed(None) position = self.player.query_position(Gst.Format.TIME)[1] / 10**9 if position > 0: self.played_seconds += self.seconds_period / 1000 try: percentage = self.played_seconds / self.duration if not self.scrobbled and percentage > 0.4: current_media = self.get_current_media() self.scrobbled = True if current_media: grilo.bump_play_count(self.get_current_media()) grilo.set_last_played(current_media) just_played_url = self.get_current_media().get_url() t = Thread(target=self.scrobble_song, args=(just_played_url, )) t.setDaemon(True) t.start() except Exception as e: logger.warn("Error: %s, %s", e.__class__, e) return True
def _update_seconds_callback(self): self._on_progress_value_changed(None) position = self.player.query_position(Gst.Format.TIME)[1] / 10**9 if position > 0: self.played_seconds += self.seconds_period / 1000 try: percentage = self.played_seconds / self.duration if (not self._lastfm.scrobbled and percentage > 0.4): current_media = self.get_current_media() if current_media: # FIXME: we should not need to update static # playlists here but removing it may introduce # a bug. So, we keep it for the time being. playlists.update_all_static_playlists() grilo.bump_play_count(current_media) grilo.set_last_played(current_media) self._lastfm.scrobble(current_media, self._time_stamp) except Exception as e: logger.warn("Error: %s, %s", e.__class__, e) return True