Online video hd

Смотреть крупно видео

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

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

23.04.10 18:38 Ymilij

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

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



ner_uto 23.04.10 18:57 # +2
Спасибо:)
Ymilij 23.04.10 18:58 # +1
Пожалуйста ;)
ner_uto 23.04.10 19:00 # +2
Кстати, чтобы не ронять скрипт, можно в автозапуск добавить не мок и скрипт, а скрипт для запуска сначала мок, а потом через некоторое время скрипта. Правда с выходом непонятно как быть.
Ymilij 23.04.10 19:04 # +1
Думал об этом :)
Для выхода можно ещё один скрипт написать и кинуть оба в bin и использовать их для запуска/останова mocp.
goblinyara 23.04.10 20:33 # +1
а никто не в курсе, в mpd есть ли возможность запуска скриптов при смене песни? а то вроде слышал, да нигде найти не могу информации:-(
ner_uto 23.04.10 20:39 # +2
Тут где-то Мухас писал, глянь в этом блоге.
ner_uto 23.04.10 20:40 # +2
Виноват, там был не запуск скрипта, а вывод названия песни.
goblinyara 23.04.10 21:21 # +0
пасиб за наводку=) порыскал, нашёл, и приспособил для своих нужд=)
ner_uto 24.04.10 18:44 # +0
Ну вот, решил попробовать, а тут...
1
2
3
4
5
6
7
./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.10 20:38 # +0
Хех, чрезвычайно странно.
Попробуй
1) переименовать файл скрипта в smting.sh
2) изменить в скрипте /bin/sh на /bin/bash
3) chmod +x <имя_скрипта>
Надеюсь, поможет.
А что делает "sleep 5" из консоли?
ner_uto 24.04.10 22:49 # +0
А что делает "sleep 5" из консоли?

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

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

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

Вот только с радио не все гладко. Пытаюсь вкурить, что именно не так. Смотри, такой вот вывод:
1
2
3
4
5
6
7
8
9
10
11
12
13
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
 

Следующая песня:
1
2
3
4
5
6
7
8
9
10
11
12
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.10 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.10 23:37 # +0
Ну это просто сейчас идет этот самый нон-стоп, так-то у них меняются SongTitle. Сейчас попробую.
ner_uto 24.04.10 23:43 # +0
Да, вот так все работает. Проверил и на локальной коллекции, и в интернете.
Ymilij 25.04.10 00:27 # +0
Рад, что, наконец, разобрались.
ner_uto 24.04.10 23:05 # +0
Ну да, не работает. Вернее с радио не работает. А при воспроизведении локальной музыки выводятся названия.

Лучшие блоги (все 112)
Топ пользователей Топ блогов
Топ пользователей Топ блогов
Элита (все 2165 из 161 города)
Топ пользователей Топ блогов
welinux.ru

Смотреть онлайн бесплатно

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


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

Online video HD

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

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

Full HD video online

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

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

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