31.01.2010 02:57
booley — Смена песни в mpd
Давным-давно на WeLinux уже был пост про OSD в MPD за авторством muhas. И хотя OSD для MPD мне не нужен, очень понравилась первая часть скрипта.Она понадобилась для music_logger, дабы оповещать сервер о смене песни. Скрипт был всем хорош, но срабатывал также в таких случаях, когда я останавливал воспроизведение (mpc stop), что давало, ввиду специфики music_logger (сохранение проигранных названий композиции), неудобоваримый результат (запись в логе, вместо %artist% - %track%: -
Не обрадовавшись этим фактом, я решил погуглить другие решения.
Если кратко, был нужен %script%, запускающий %my_script%, когда начинала играть новая песня в mpd. mpd.wikia.com предложила скрипт для уведомлений Growl. Я поначалу обрадовался, но выяснилось, что скрипт написан косячно и не удовлетворяет текущую версию Audio::MPD.
Поэтому я его доработал, получился скрипт на Perl, который делает то, что нужно :)
Вариант для music_logger'a (то, что мне нужно, собственно). Процедура song_change осталась от первоначального скрипта для Growl.
"Ванильный вариант". Сюда можно подставить и notify, и вывод в файл (можно XMMP Tune реализовать)
Изначальный скрипт на mpd.wikia.com.
Во велосипед мог бы в моем скрипе поменять в функции пишущей в файл mpc |head -1 чтобы он только песня выдирал (вроде хватит добавить|grep -volume) и запускал бы любую функцию при смене трека если файл не пустой :)
Но перл тоже ничего ибо не требует mpc ( хотя требует перловый модуль, а чего уж по требует я не знаю)
Но перл тоже ничего ибо не требует mpc ( хотя требует перловый модуль, а чего уж по требует я не знаю)
Muhas, во-первых, да, скрипт не требует mpc. Во-вторых, Audio::MPD предоставляет удобный объектно-ориентированный интерфейс, можно выдирать не только %artist% - %track%. Про mpc --format знаю.
В-третих, я не отрицаю того, что это велосипед :)
Как и весь music_logger, скрипт является "практикой" решения мною поставленной задачи опять же мною, в целях набраться опыта. Считаю, что для таких целей полезно построить пару-другую велосипедов.
В-третих, я не отрицаю того, что это велосипед :)
Как и весь music_logger, скрипт является "практикой" решения мною поставленной задачи опять же мною, в целях набраться опыта. Считаю, что для таких целей полезно построить пару-другую велосипедов.
Ну если опыта, то велосипеды оправданы
Почему многие мой ник пишут с заглавной буквы? Это же ник а не имя, а в нике строчная :)
Почему многие мой ник пишут с заглавной буквы? Это же ник а не имя, а в нике строчная :)
Первое слово в предложении пишется с заглавной буквы. Как и имена собственные (имя не в смысле Вася Пупкин, Москва - тоже имя собственное).
Но если предпочитаешь, чтобы писал с маленькой, буду писать с маленькой :)
Но если предпочитаешь, чтобы писал с маленькой, буду писать с маленькой :)
Когда-то написал такой виджет
http://picasaweb.google.com/aleksey.lashin/Burgua#5387303658834678482