can3p (can3p) wrote,
can3p
can3p

Уведомления о смене песни в mpd

Интро: Как известно, вышла новая версия linux-дистрибутива Ubuntu 9.04, в которой помимо всего прочего внедрили централизованую систему уведомлений, которая в принципе была и раньше, но использовалась не в таком масштабе,  к тому же не выглядела так же стильно. Я слушаю музыку через mpd, клиент gmpc -> сразу захотелось, чтобы название новой песни выводилось именно через централизованную систему.

gmpc сам по себе имеет возможность выводить сообщение о смене песни рядом с системным лотком + имеет плагин mpd_osd, которые выводит текст о смене песни. Первый имеет тот плюс, что выводит еще и обложку альбома, второй имеет тот плюс, что его легко переделать.

Вот что нашлось о notifyOSD:
https://wiki.ubuntu.com/NotifyOSD
https://wiki.ubuntu.com/NotificationDevelopmentGuidelines

По ссылкам есть также примеры программ, которые что-то выводят в виде уведомлений. На деле можно ограничиться более простым вариантом - есть программа notify-send, которая выводит уведомление с заданым заголовком, текстом и картинкой.

Решение оказалось еще проще: http://mpd.wikia.com/wiki/Hack:mpdnotify

Берем скрипт оттуда, меняем путь к музыке (hint: если у вас, как и у меня несколько каталогов с музыкой, то путь должен указывать на папку, где лежат ссылки на все каталоги - /var/lib/mpd/music/).  Дальше нужно сохранить скрипт, сделать файл исполняемым и зыпускать любым удобным способом при старте системы - например прописать в менеджере сессий GNOME.

Скрипт обладает тем удесным свойством, что смотрит обложку в папке альбома и по возможности ее выводит, так что если у вас в каталоге каждого альбома лежит обложка альбома, то на выходе получается прекрасное решение задачи.

Если это не так, да к тому же вы пользователь gmpc, то у вас есть прекрасный шанс потренировать свои программистские навыки и переделать плагин gmpc_osd - gmpc умеет дергать обложки с помощью своих плагинов, так что путь к обложкам там можно достать. В теории плагин дает больше возможностей, чем дубовое bash-решение, но и реализовать это труднее. Но каждый решает сам.

P. S. Интересно, как можно было бы решить данную задачу в Windows.


Оригинал: http://blog.dpetroff.ru/tech/mpd_libnotify
Subscribe
  • Post a new comment

    Error

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

    When you submit the form an invisible reCAPTCHA check will be performed.
    You must follow the Privacy Policy and Google Terms of use.
  • 0 comments