Online video hd

Смотреть русское с разговорами видео

Официальный сайт ysaa 24/7/365

Смотреть видео бесплатно

Ymilij 23.04.2010 18:38

Скрипты — OSD в mocp при прослушивании интернет-радио

Люблю я «Наше Радио», иногда слушаю его через интернет. Только вот mocp не выводит уведомления при изменении title проигрываемого трека — в самом mocp есть только обработчик смены трека - и для того, чтобы узнать что-же за песню там крутят приходится открывать mocp и смотреть. Думал, как бы выйти из этого положения... Результатом этих думок стал аккуратный, но несколько костыльный скрипт.


Тэги: libnotify mocp OSD perl интернет-радио костыль
+ 3 -
Похожие Поделиться

ner_uto 23.04.2010 18:57 #
+ 2 -
Спасибо:)
Ymilij 23.04.2010 18:58 #
+ 1 -
Пожалуйста ;)
ner_uto 23.04.2010 19:00 #
+ 2 -
Кстати, чтобы не ронять скрипт, можно в автозапуск добавить не мок и скрипт, а скрипт для запуска сначала мок, а потом через некоторое время скрипта. Правда с выходом непонятно как быть.
Ymilij 23.04.2010 19:04 #
+ 1 -
Думал об этом :)
Для выхода можно ещё один скрипт написать и кинуть оба в bin и использовать их для запуска/останова mocp.
goblinyara 23.04.2010 20:33 #
+ 1 -
а никто не в курсе, в mpd есть ли возможность запуска скриптов при смене песни? а то вроде слышал, да нигде найти не могу информации:-(
ner_uto 23.04.2010 20:39 #
+ 2 -
Тут где-то Мухас писал, глянь в этом блоге.
ner_uto 23.04.2010 20:40 #
+ 2 -
Виноват, там был не запуск скрипта, а вывод названия песни.
goblinyara 23.04.2010 21:21 #
+ 0 -
пасиб за наводку=) порыскал, нашёл, и приспособил для своих нужд=)
ner_uto 24.04.2010 18:44 #
+ 0 -
Ну вот, решил попробовать, а тут...
./OSD_1: 57: sleep: not found
./OSD_1: 57: <<: not found
./OSD_1: 57: !=: not found
./OSD_1: 57: sleep: not found
./OSD_1: 57: <<: not found
./OSD_1: 57: !=: not found
./OSD_1: 57: sleep: not found

И так далее.

Со вторым скриптом примерно то же.
Ymilij 24.04.2010 20:38 #
+ 0 -
Хех, чрезвычайно странно.
Попробуй
1) переименовать файл скрипта в smting.sh
2) изменить в скрипте /bin/sh на /bin/bash
3) chmod +x <имя_скрипта>
Надеюсь, поможет.
А что делает "sleep 5" из консоли?
ner_uto 24.04.2010 22:49 #
+ 0 -
А что делает "sleep 5" из консоли?

Ничего:) Ровно 5 секунд.

После замены /bin/sh на /bin/bash пропали ошибки в 57 строке, теперь появилось:
warl0ck@warl0ck-pc:~/.moc$ ./smting.sh
./smting.sh: строка 39: sleep: команда не найдена
./smting.sh: строка 39: sleep: команда не найдена

и так далее. В этой строке как раз sleep 1.
Ymilij 24.04.2010 22:55 #
+ 0 -
Странно, даже не знаю, что и посоветовать. У меня нет никаких проблем.
Разве что.., попробуй "sleep 1" заменить на "$(sleep 1)".
Хотя, если даже удалишь строку "sleep 1", ничего катастрофического не произойдёт, просто скрипт будет насиловать mocp non-stop, а так делает это каждую секунду :)
ner_uto 24.04.2010 22:55 #
+ 0 -
Ггг... Все чудесатее и чудесатее. Сообщения про "./smting.sh: строка 39: sleep: команда не найдена" идут в консоль, но сам скрипт работает. По крайней мере при запуске он вывел название трэка. Не знаю пока, как будет при смене. Сейчас жду конца песни.
Ymilij 24.04.2010 22:56 #
+ 0 -
Он работает так, как буд-то там и нет команды sleep, то есть насилует mocp non-stop :)
ner_uto 24.04.2010 23:23 #
+ 0 -
Бедный несчастный MOC.
sleep 1 заменил на $(sleep 1), не помогло. Закомментировал до лучших времен:)

Вот только с радио не все гладко. Пытаюсь вкурить, что именно не так. Смотри, такой вот вывод:
warl0ck@warl0ck-pc:~/.moc$ mocp --info
State: PLAY
File: http://xradio.su:8000/high.ogg
Title: XRadio.Su - Музыкальный NONSTOP (Foot In Mouth)
Artist: XRadio.Su
SongTitle: Музыкальный NONSTOP
Album: Foot In Mouth
CurrentTime: 19:49
CurrentSec: 1189
Bitrate: 128kbps
AvgBitrate: 320kbps
Rate: 44kHz

Следующая песня:
warl0ck@warl0ck-pc:~/.moc$ mocp --info
State: PLAY
File: http://xradio.su:8000/high.ogg
Title: XRadio.Su - Музыкальный NONSTOP (Achtung Fire)
Artist: XRadio.Su
SongTitle: Музыкальный NONSTOP
Album: Achtung Fire
CurrentTime: 20:44
CurrentSec: 1244
Bitrate: 105kbps
AvgBitrate: 320kbps
Rate: 44kHz

Вывода уведомления нет.
Нет, сделаю диплом - займусь изучением какого-нибудь языка%)
Ymilij 24.04.2010 23:36 #
+ 0 -
Дело в том, что SongTitle остался такой же. Скрипт выводит нотификацию если изменился File или SongTitle. А на этой радиостанции он не меняется. Надо немножко изменить скрипт.

А именно:
-if << $SONGTITLE != "$(mocp -Q %song)" || $FILENAME != "$(mocp -Q %file)" >>
+if << $SONGTITLE != "$(mocp -Q %title)" || $FILENAME != "$(mocp -Q %file)" >>
-SONGTITLE=$(mocp -Q %song)
+SONGTITLE=$(mocp -Q %title)
Хотя, если на этой станции выводится название трека в title следует изменить и здесь:
-else SONG=$(mocp -Q %song)
+else SONG=$(mocp -Q %title)

Должно работать.
ner_uto 24.04.2010 23:37 #
+ 0 -
Ну это просто сейчас идет этот самый нон-стоп, так-то у них меняются SongTitle. Сейчас попробую.
ner_uto 24.04.2010 23:43 #
+ 0 -
Да, вот так все работает. Проверил и на локальной коллекции, и в интернете.
Ymilij 25.04.2010 00:27 #
+ 0 -
Рад, что, наконец, разобрались.
ner_uto 24.04.2010 23:05 #
+ 0 -
Ну да, не работает. Вернее с радио не работает. А при воспроизведении локальной музыки выводятся названия.

В хорошем качестве hd видео

Онлайн видео бесплатно


Смотреть русское с разговорами видео

Online video HD

Видео скачать на телефон

Русские фильмы бесплатно

Full HD video online

Смотреть видео онлайн

Смотреть HD видео бесплатно

School смотреть онлайн