Форум русскоязычного сообщества Ubuntu


Получить помощь и пообщаться с другими пользователями Ubuntu можно
на irc канале #ubuntu-ru в сети Freenode
и в Jabber конференции ubuntu@conference.jabber.ru

Автор Тема: Notify-OSD для DeaDBeeF  (Прочитано 1360 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн RazrFalcon

  • Автор темы
  • O_o
  • Старожил
  • *
  • Сообщений: 3129
  • Zombie Mod
    • Просмотр профиля
    • Я на GitHub
Notify-OSD для DeaDBeeF
« : 08 Февраля 2011, 13:56:19 »
(Нажмите, чтобы показать/скрыть)

Простенький скрипт, который раз в 2-е секунды проверяет не сменился ли трек в плеере, и если сменится выдает OSD с Артистом, Песней и Обложкой альбома.

Пример:


* зависимости: libnotify-bin
* должно быть включено скачивание обложек из Last.fm
* имена вида "There Is a Hell, Believe Me I've Seen It. There Is a Heaven, Let's Keep It a Secret" не читает =/ (запятые не обрабатывает по чему то)
« Последнее редактирование: 08 Февраля 2011, 13:59:12 от RazrFalcon »
Gentoo + KDE, Official Windows Hater
Хотите помочь нашей вики: https://help.ubuntu.ru/wiki/fixme

Оффлайн ende_neu

  • Старожил
  • *
  • Сообщений: 2473
    • Просмотр профиля
Re: Notify-OSD для DeaDBeeF
« Ответ #1 : 08 Февраля 2011, 14:24:08 »
Лучшеб штатный нотификатор расковыряли@переделали.
А это такой хелловорлд что стыдно в нём писать #deadOSD by RazrFalcon.

Что не так с запятыми?Названия с запятыми должны верно отображаться, баг с notify-send есть с иконками - когда запятая в пути.Cоветую заюзать питон и соответственно pynotify - там нет этого бага.Ну и вобще можно грамотно сделать, например через слушанье dbus о смене, а не тупой sleep.

Да, скрипт завершается когда узер закрывает плеер?

Оффлайн RazrFalcon

  • Автор темы
  • O_o
  • Старожил
  • *
  • Сообщений: 3129
  • Zombie Mod
    • Просмотр профиля
    • Я на GitHub
Re: Notify-OSD для DeaDBeeF
« Ответ #2 : 08 Февраля 2011, 14:47:09 »
Ну напишете свой вариант реализации.
Я просто предложил свой вариант. Написанный за 10 мин.
Работает - работает.

python, dbus - не знаю

нет не завершается, он ничего и не ест по сути... 150кб озу и 0... ЦП. Может кому то пригодится.
Gentoo + KDE, Official Windows Hater
Хотите помочь нашей вики: https://help.ubuntu.ru/wiki/fixme

Оффлайн ende_neu

  • Старожил
  • *
  • Сообщений: 2473
    • Просмотр профиля
Re: Notify-OSD для DeaDBeeF
« Ответ #3 : 08 Февраля 2011, 15:10:02 »
>нет не завершается,

Непорядок!Надо проверять тогда, например pgrep deadbeef, либо плеер запускать через (блин, забыл как это называется - wrapper?), который будет завершать ваш скрипт при закрытии плеера; собственно функцию этого wrapper-а в скрипт и можно вставить - т.е. запускать не deadbeef а ваш скрипт.

Оффлайн RazrFalcon

  • Автор темы
  • O_o
  • Старожил
  • *
  • Сообщений: 3129
  • Zombie Mod
    • Просмотр профиля
    • Я на GitHub
Re: Notify-OSD для DeaDBeeF
« Ответ #4 : 08 Февраля 2011, 15:15:22 »
проще сделать

Цитировать
if [ "`deadbeef --nowplaying "%t"`" == "nothing" ]; do exit 0;fi
Gentoo + KDE, Official Windows Hater
Хотите помочь нашей вики: https://help.ubuntu.ru/wiki/fixme

Оффлайн ende_neu

  • Старожил
  • *
  • Сообщений: 2473
    • Просмотр профиля
Re: Notify-OSD для DeaDBeeF
« Ответ #5 : 08 Февраля 2011, 16:27:47 »
Неа.Это сработает и при работающем, но остановленном плеере.
Сейчас поставил его, посмотрел.Что-то плохо у него с командами - cтатус (play/pause/stop) получается не узнать?

Оффлайн RazrFalcon

  • Автор темы
  • O_o
  • Старожил
  • *
  • Сообщений: 3129
  • Zombie Mod
    • Просмотр профиля
    • Я на GitHub
Re: Notify-OSD для DeaDBeeF
« Ответ #6 : 08 Февраля 2011, 16:31:58 »
Да. Если нажать стоп - отрубится.
А у плеера можно узнать  что сейчас играет и все.

(Нажмите, чтобы показать/скрыть)
« Последнее редактирование: 08 Февраля 2011, 16:34:53 от RazrFalcon »
Gentoo + KDE, Official Windows Hater
Хотите помочь нашей вики: https://help.ubuntu.ru/wiki/fixme

Оффлайн ende_neu

  • Старожил
  • *
  • Сообщений: 2473
    • Просмотр профиля
Re: Notify-OSD для DeaDBeeF
« Ответ #7 : 08 Февраля 2011, 17:56:48 »
Вот модернизированный вариант, этакий башепитон - на чистом питоне что-то прожорливый получился(^_^) Надо-таки dbus заюзать.
(Нажмите, чтобы показать/скрыть)
-отображает обложки при запятых и закрывается при выходе из плеера.
notify-send ему не нужен, а нужен pyinotify.

Оффлайн RazrFalcon

  • Автор темы
  • O_o
  • Старожил
  • *
  • Сообщений: 3129
  • Zombie Mod
    • Просмотр профиля
    • Я на GitHub
Re: Notify-OSD для DeaDBeeF
« Ответ #8 : 08 Февраля 2011, 18:47:11 »
Пашет  :D
А в чем разница?
Ну кроме того,  что питон уж очень на с++ смахивает, даже split как в кьюте.  :idiot2:
Про pgrep вообще не слышал...


* пора в программирование
Gentoo + KDE, Official Windows Hater
Хотите помочь нашей вики: https://help.ubuntu.ru/wiki/fixme

Оффлайн Vertrum

  • Новичок
  • *
  • Сообщений: 3
    • Просмотр профиля
Re: Notify-OSD для DeaDBeeF
« Ответ #9 : 01 Марта 2011, 18:25:02 »
Подскажите нубу, плз) куда чего делать что бы работало? На убунте просто совсем недавно =/

Оффтоп: falcon, где такую обоину взять? ^__^
« Последнее редактирование: 01 Марта 2011, 18:34:48 от Vertrum »

Оффлайн RazrFalcon

  • Автор темы
  • O_o
  • Старожил
  • *
  • Сообщений: 3129
  • Zombie Mod
    • Просмотр профиля
    • Я на GitHub
Re: Notify-OSD для DeaDBeeF
« Ответ #10 : 01 Марта 2011, 18:37:38 »
>>куда чего желать?? что бы работало?
sudo apt-get install python-pyinotifyЗатем в домашней директории создаете файл, к примеру osd.sh, и в него вставляете следующее:
(Нажмите, чтобы показать/скрыть)
Затем:
chmod +x osd.shи далее, alt+f2, запустить файл, выбираете osd.sh и нажимаете запустить. Все.

>>Оффтоп: falcon, где такую обоину взять? ^__^
http://mjv-art.org/jvwall/view_post/105437?lang=en
Gentoo + KDE, Official Windows Hater
Хотите помочь нашей вики: https://help.ubuntu.ru/wiki/fixme

Оффлайн aliftin

  • Старожил
  • *
  • Сообщений: 1398
    • Просмотр профиля
Re: Notify-OSD для DeaDBeeF
« Ответ #11 : 30 Июня 2011, 17:28:34 »
Какая отличная идея использовать "башепитон". Интерфейс можно рисовать через pygtk, а все остальное делать через bash.
Если мы не можем до чего то дотянуться, мы виним в этом не свой рост, не отсутствие табуретки, а свою цель.

 

Страница сгенерирована за 0.04 секунд. Запросов: 24.