Esempio n. 1
0
File: library.py Progetto: pscn/ads
  def lookup(self, track, locked=False):
    if not locked: self.acquire()
    ArtistRelationFactory.load_artist(track.artist)
    TrackRelationFactory.load_track(track)
    # queue similar artists / tracks lookup from lastfm
    if self._lastfm:
      self._lastfm.similar_artists(self.similar_artists, track.artist.name,
          self._thres_lastfm_lookup)
      self._lastfm.similar_tracks(self.similar_tracks, track.artist.name,
          track.title, self._thres_lastfm_lookup)

    # queue similar artists / tracks lookup from echonest
    if self._echonest:
      self._echonest.similar_artists(self.similar_artists, track.artist.name,
          self._thres_echonest_lookup)
      self._echonest.similar_tracks(self.similar_tracks, track.artist.name,
          track.title, self._thres_echonest_lookup)
    if not locked: self.release()