def do_songs_search(self, line): ''' Search into the songs Usage: songs_search string List all songs containing the string in the title or artist. ''' logger.debug('call function do_songs_search') search_string = line.lower() songs_pos = get_songs_search(search_string, self.songs) fancy_disp.songs_index(songs_pos, self.songs)
def do_songs_page(self, line): ''' Display a given page of the songs library Usage: songss_page [page] The page is optional, a random page is displayed without it. ''' logger.debug('call function do_songs_page') page_nb = parse_single_int(line) if not page_nb: logger.info('no page number provided') page_nb = random.randrange(int(self.nb_songs / 10) + 1) songs_pos = range((page_nb - 1) * DISPLAY_NB_LINES + 1, page_nb * DISPLAY_NB_LINES + 1) fancy_disp.songs_index(songs_pos, self.songs)
def do_songs_page(self, line): ''' Display a given page of the songs library Usage: songss_page [page] The page is optional, a random page is displayed without it. ''' logger.debug('call function do_songs_page') page_nb = parse_single_int(line) if not page_nb: logger.info('no page number provided') page_nb = random.randrange(int(self.nb_songs / 10) + 1) songs_pos = range( (page_nb - 1) * DISPLAY_NB_LINES + 1, page_nb * DISPLAY_NB_LINES + 1) fancy_disp.songs_index(songs_pos, self.songs)
def do_playlist_tasteprofile(self, line): ''' Create a playlist from echonest taste profile Usage: playlist_tasteprofile Generate and play a new playlist based on echonest taste profile. The current playlist is removed before. ''' logger.debug('call function do_playlist_tasteprofile') profile_id = get_profile_id(self.api_key) while True: song_ids = echonest_playlist(self.api_key, profile_id) fancy_disp.songs_index(song_ids, self.songs) action = fancy_disp.validate_playlist() if action <> 'r': break if action == 'p': playback_stop(self.kodi_params) kodi_api.playlist_clear(self.kodi_params) populate_playlist(song_ids, self.kodi_params) kodi_api.player_open(self.kodi_params) print
def do_playlist_taste_seed(self, line): ''' Create a playlist from echonest taste profile and seeded by a song Usage: playlist_tasteprofile song_id Generate and play a new playlist based on echonest taste profile. The current playlist is removed before. ''' #TODO: function for a single logic and several pl methods logger.debug('call function do_playlist_tasteprofile') song_id = parse_single_int(line) profile_id = get_profile_id(self.api_key) while True: song_ids = echonest_pl_seed(self.api_key, profile_id, song_id) fancy_disp.songs_index(song_ids, self.songs) action = fancy_disp.validate_playlist() if action <> 'r': break if action == 'p': playback_stop(self.kodi_params) kodi_api.playlist_clear(self.kodi_params) populate_playlist(song_ids, self.kodi_params) kodi_api.player_open(self.kodi_params) print