Как стать автором
Обновить

Слушаем last.fm в любом desktop-плеере

В данном топике я расскажу про то как слушать музыку с last.fm в любом desktop-плеере, взамен использования штатного web-плеера. Многие плееры содержат плагины для прослушивания last.fm, но порой они работают нестабильно. Я расскажу про более стабильный вариант. Основное приимущество использования desktop-плеера в возможности настройки эквалайзера и привычном управлении громкостью, переключением треков и т.п.

Нам понадобится утилита lastfmproxy. Текущую версию можно взять с домашней странички. Утилита из себя предсталяет набор скриптов написанных на python, следовательно, он должен быть установлен в системе. Суть работы lastfmproxy состоит в том что она запускает локальный proxy сервер, который мы можем использовать для прослушивания композиций в любимом плеере. Также утилита содержит простой web-интерфейс, как альтернативу штатному от last.fm. Подробное описание утилиты находится в README.txt.

Первым делом необходимо взять патчные файлы main.py и lastfm.py и заменить их в распакованной директории. Подробности ошибки описаны здесь.

Все настройки храняться в файле config.py:
# Port and address to listen to
listenport = 1881
bind_address = "127.0.0.1"

# Stick your last.fm username and password between the quotes below.
username = "yourusername"
password = "yourpassword"

# Which theme (skin) to use
theme = "default"

# Change "useproxy" to True and set the host and port if
# you need an external proxy.
useproxy = False
proxyhost = "my.proxy.host"
proxyport = 8000
# Set these if your proxy requires authentication.
# Note: Only "Basic" authentication is supported.
proxyuser = ""
proxypass = ""

Все они интуитивно понятны:
  • username, password — имя и пароль на last.fm
  • bind_address, listenport — хост и порт на котором будет работать proxy
  • theme — если не ошибаюсь, это параметр темы для web-интерфейса утилиты, но кроме default видимо пока ничего не доступно
  • useproxy, proxyhost, proxyport, proxyuser, proxypass — позволяют использовать внешний proxy, но учтите что это скорее всего будет противозаконно для стран, которые не входят в список бесплатных на last.fm

После настройки запускаем main.py. Если все прошло успешно мы получаем локальный proxy сервер. Для прослушивания нам необходимо лишь обратиться по нужному URL, например:
  • localhost:1881/lastfm://globaltags/rock
  • localhost:1881/lastfm://artist/Madonna/similarartists
  • localhost:1881/lastfm://user/vidarino/neighbours

Линки запрашивают музыку в соответсвии с глобальным тегом, артистом или пользователем last.fm. Линк по артисту у меня не заработал, но артиста можно вписать и в глобальный тег. Думаю разницы никакой не будет. Для прослушивания можно запустить например mplayer:
  • mplayer -playlist «localhost:1881/globaltags/alternative.m3u»
  • mplayer -playlist «localhost:1881/globaltags/The Offspring.m3u»

Как я уже упоминал утилита имеет web-интерфейс. Открыв в браузере localhost:1881 вы получите простой web-плеер, отображающий текущую композицию, прослушанные мелодии, время трека, артиста, альбом и его иконку. Возможно данный плеер кому-то придется по душе, взамен шатному от last.fm.
imageimage
Теги:
Хабы:
Данная статья не подлежит комментированию, поскольку её автор ещё не является полноправным участником сообщества. Вы сможете связаться с автором только после того, как он получит приглашение от кого-либо из участников сообщества. До этого момента его username будет скрыт псевдонимом.