Форум обсуждения систем  

Вернуться   Форум обсуждения систем "Умный дом", проектов Ардуино, OpenWRT и других DIY устройств > Форум умного дома > Сделай сам > OpenWRT/LEDE

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
Старый 14.10.2012, 18:01   #11
Babah
Junior Member
 
Регистрация: 14.10.2012
Сообщений: 4
Вес репутации: 0
Babah is an unknown quantity at this point
По умолчанию

Для прослушивания онлайн радио для мпд можно создать m3u плейлист со ссылками на потоки
radio.m3u:

http://188.127.226.185:80
http://ogg2.as34763.net/vc160.ogg
Babah вне форума   Ответить с цитированием
Старый 14.10.2012, 18:48   #12
andr128
Senior Member
 
Аватар для andr128
 
Регистрация: 16.09.2012
Адрес: Irkutsk
Сообщений: 555
Вес репутации: 1602
andr128 has a reputation beyond reputeandr128 has a reputation beyond reputeandr128 has a reputation beyond reputeandr128 has a reputation beyond reputeandr128 has a reputation beyond reputeandr128 has a reputation beyond reputeandr128 has a reputation beyond reputeandr128 has a reputation beyond reputeandr128 has a reputation beyond reputeandr128 has a reputation beyond reputeandr128 has a reputation beyond repute
По умолчанию

Babah мы тут вроде OpenWrt обсуждаем. И было бы полезно показать пример компиляции для этой версии (и желательно для роутера mr3020).
andr128 вне форума   Ответить с цитированием
Старый 14.10.2012, 21:28   #13
Babah
Junior Member
 
Регистрация: 14.10.2012
Сообщений: 4
Вес репутации: 0
Babah is an unknown quantity at this point
По умолчанию

Optware одинаков для всех, для прошивок от Олега, для dd-wrt, openwrt, обо всем этом вы можете прочитать на сайте википедии http://en.wikipedia.org/wiki/Optware
В данном случае для openwrt меняется одна строчка:
OPTWARE_TARGET ?= nslu2 на OPTWARE_TARGET = openwrt (в вашем случае)

Последний раз редактировалось Babah; 14.10.2012 в 21:31.
Babah вне форума   Ответить с цитированием
Старый 23.10.2012, 11:46   #14
tayanov
Junior Member
 
Регистрация: 23.10.2012
Сообщений: 13
Вес репутации: 0
tayanov is an unknown quantity at this point
По умолчанию

Звук через звуковую от usb колонок SVEN только с одного канала.
Помогите примонтировать медиатеку при загрузке, монтирую через ssh все ок.
А как сделать при загрузке?
Монтирую вот так
mount.cifs //192.168.1.4/Allmedia /mnt/Allmedia -o user=*****, password=***
Закидывал в вебморду в раздел Startup, не помогло ...
tayanov вне форума   Ответить с цитированием
Старый 26.10.2012, 19:37   #15
susanin
Junior Member
 
Регистрация: 26.10.2012
Адрес: 127.0.0.1
Сообщений: 4
Вес репутации: 0
susanin is a splendid one to beholdsusanin is a splendid one to beholdsusanin is a splendid one to beholdsusanin is a splendid one to beholdsusanin is a splendid one to beholdsusanin is a splendid one to beholdsusanin is a splendid one to behold
Lightbulb

Цитата:
Сообщение от tayanov Посмотреть сообщение
Звук через звуковую от usb колонок SVEN только с одного канала.
Помогите примонтировать медиатеку при загрузке, монтирую через ssh все ок.
А как сделать при загрузке?
Монтирую вот так
mount.cifs //192.168.1.4/Allmedia /mnt/Allmedia -o user=*****, password=***
Закидывал в вебморду в раздел Startup, не помогло ...
есть в /etc замечательный файлик - rc.local (/etc/rc.local), он исполняется одноразово, когда система полность "поднялась".
все что вы туда напишете будет исполнено.

у меня так:

# это вызывает загрузку всех установленных модулей
# (у меня часть модулей на флэшке и при буте ее еще нет)

. /lib/functions/extmount.sh && er_load_modules

# проверяю наличие видеокамеры и запускаю стриминг

test -r /dev/video0 && test -e /opt/www/dd/mjpg.sh && sh /opt/www/dd/mjpg.sh >/tmp/video_log 2>&1 &

главное, все свои комманды писать до "exit 0" и фоновые демоны запускать в фоне (&)

ЗЫ: а по хорошему, это должно монтироваться через fstab, загугли "openwrt fstab cifs"

Последний раз редактировалось susanin; 26.10.2012 в 19:43.
susanin вне форума   Ответить с цитированием
Старый 25.01.2013, 11:32   #16
star003
Junior Member
 
Регистрация: 25.01.2013
Адрес: Рыбинск,Ярославская обл
Возраст: 45
Сообщений: 8
Вес репутации: 0
star003 is an unknown quantity at this point
По умолчанию

Городил я подобного рода огород. Самая большая трудность в написании демона , который бы при скачке потока передавал управление дальше на скрипт слушающий кнопки. Не силен в BASH потому огород нагородил. Переключение станций осуществлял кнопкой WPS
star003 вне форума   Ответить с цитированием
Старый 25.01.2013, 11:35   #17
star003
Junior Member
 
Регистрация: 25.01.2013
Адрес: Рыбинск,Ярославская обл
Возраст: 45
Сообщений: 8
Вес репутации: 0
star003 is an unknown quantity at this point
По умолчанию

После опытов с коробочкой в частности создания VPN сервера
для раздачи итернета в замен жужжашего и кушающего электричесво системника
- мне захотелось сделать радио в замен приемника на кухне котоое почему то не очень
хорошо ловит десяток местных радиостанций.
Выбор очередной раз пал на коробочку TP-LINK 3020 .
Перепрошил ей мосг по инструкции , которых множество в интернете.
В начальной версии устройства я использовал место USB звуковой карты - старый USB
телефон , которые мы в множестве использавали для скайпа на работе ,
пока не настроили нормальную связь через АТС.

Роутер берет интернет через WI-FI с домашнего DLINK-320 в режиме клиента.
После перепрошивки воткнул трубку в хаб и дал команду
(предварительно нужно поставить madplay):

wget -q -O- http://stream.makradio.ru/retrohit128.mp3/title | madplay -

результатом из трубки заиграла музыка, что меня немного удивило и порадовало.
Далее стало интересно как сделать переключение фикированого количества радиостанций
по средствам одной имеющейся кнопки (WPS) на устройстве.

После непродолжительного копания в инете я нашел как управлять светодтдами
и читать состояние кнопки.

смотрим какие светодиоды есть:
ls /sys/devices/platform/leds-gpio/leds/

Включить светодиод 3g
echo 1 > /sys/devices/platform/leds-gpio/leds/tp-link\:green\:3g/brightness
Выключить светодиод 3g
echo 0 > /sys/devices/platform/leds-gpio/leds/tp-link\:green\:3g/brightness

читаем статус
cat /sys/devices/platform/leds-gpio/leds/tp-link\:green\:3g/brightness
если 0 то светодиод не горит , иначе горит.

Чтение значений кнопки сделал как рассказано во тут :
http://wiki.openwrt.org/doc/howto/hardware.button

в скрипте обработки нажатия кнопки WPS я подвесил запуск своего
скрипта start.sh . Все мои скрипты лежат в папке /mnt/usb/ т.к.
я не очень силен в лнуксе и не знаю как примонтировать домашнюю папку.

содержимое скрипта start.sh

if [ $(cat /mnt/usb/prog.ini) == "0" ]
then
echo 1 > /mnt/usb/prog.ini;
exit 0;
fi

if [ $(cat /mnt/usb/prog.ini) == "1" ]
then
echo 2 > /mnt/usb/prog.ini;
exit 0;
fi

if [ $(cat /mnt/usb/prog.ini) == "2" ]
then
echo 3 > /mnt/usb/prog.ini;
exit 0;
fi

if [ $(cat /mnt/usb/prog.ini) == "3" ]
then
echo 4 > /mnt/usb/prog.ini;
exit 0;
fi

if [ $(cat /mnt/usb/prog.ini) == "4" ]
then
echo 5 > /mnt/usb/prog.ini;
exit 0;
fi

if [ $(cat /mnt/usb/prog.ini) == "5" ]
then
echo 6 > /mnt/usb/prog.ini;
exit 0;
fi

if [ $(cat /mnt/usb/prog.ini) == "6" ]
then
echo 0 > /mnt/usb/prog.ini;
exit 0;
fi



данный скрипт пишет номер каждого послеующего вызова в файл prog.ini , количество
вызовов 6 , по количеству в данный момен настроенных радиостанций. После 6 начинаем
сначала.
Нужно это вот для чего :

Как оказалось в начале , что при запуске воспроизведения система попросту
блокировалась не не воспринимала последующие команды нажатия кнопки WPS
После безуспешных попыток использовать оператор exec или && - пришлось
написать обработчик , который в бесконечном цикле читает значение из
файла prog.ini и выполняет определенные действия не блокируя при этом
скрипт обработки нажатия кнопки.
Данный обработчик пришлось запускать из crontab , так как запуск
через rc.local зацикливал загрузку устройства кнопка wps при этом
постоянно мигала.
Но проблемы при этом вовсе не закончились. Для запуска обработчика
пришлось написать еще один скрипт который не прерывал загрузку.

Ставим данный скрипт в cron с интервалом запуска 1 минута.

Обработчик t1.sh

#!/bin/bash
if [ -z $(ps | grep -v grep | grep 01.sh) ]
then
echo "NOT WORK !!!";
$(sh /mnt/usb/01.sh);
else
echo "WORK!!!";
exit 0;

fi

данный скрипт проверяет не запущен ли обработчик 01.sh и если он
запущен - ничего не делает. В противном случае стартует обработчик.


Обработчик 01.sh
#!/bin/bash
sh /mnt/usb/onradio.sh
while true
do
if [ $(cat /mnt/usb/prog.ini) = "1" ]
then
if [ -z $(ps | grep -v grep | grep wget) ]
then
sh /mnt/usb/ledoff.sh;
sh /mnt/usb/stop.sh;
echo "------MAKRADIO-----";
sh /mnt/usb/macradio.sh;
fi
fi
if [ $(cat /mnt/usb/prog.ini) = "2" ]
then
if [ -z $(ps | grep -v grep | grep wget) ]
then
sh /mnt/usb/ledoff.sh;
sh /mnt/usb/stop.sh;
echo "-----DOROJNOE RADIO-----";
sh /mnt/usb/doradio.sh;
fi
fi
if [ $(cat /mnt/usb/prog.ini) = "3" ]
then
echo "on";
if [ -z $(ps | grep -v grep | grep wget) ]
then
sh /mnt/usb/ledoff.sh;
sh /mnt/usb/stop.sh;
echo "-----SILVER RAIN-----";
sh /mnt/usb/dojd.sh;
fi
fi

if [ $(cat /mnt/usb/prog.ini) = "4" ]
then
echo "on";
if [ -z $(ps | grep -v grep | grep wget) ]
then
sh /mnt/usb/ledoff.sh;
sh /mnt/usb/stop.sh;
echo "-----europpa plus-----";
sh /mnt/usb/r04.sh;
fi
fi

if [ $(cat /mnt/usb/prog.ini) = "5" ]
then
echo "on";
if [ -z $(ps | grep -v grep | grep wget) ]
then
sh /mnt/usb/ledoff.sh;
sh /mnt/usb/stop.sh;
echo "-----vesti24------";
sh /mnt/usb/r05.sh;
fi
fi

if [ $(cat /mnt/usb/prog.ini) = "6" ]
then
echo "on";
if [ -z $(ps | grep -v grep | grep wget) ]
then
sh /mnt/usb/ledoff.sh;
sh /mnt/usb/stop.sh;
echo "-----zaucev vet pop------";
sh /mnt/usb/r06.sh;
fi
fi

if [ $(cat /mnt/usb/prog.ini) = "0" ]
then
echo "-----wait-----";
if [ -z $(ps | grep -v grep | grep wget) ]
then
echo "1";
else
sh /mnt/usb/stop.sh;
echo "-----STOP......";
fi
fi
sleep 1;
done;

данный обработчик как было написано выше крутится в бесконечном цикле и
выполняет команды переданные через файл prog.ini

Алгоритм работы следующий:
1. Загрузка системы
2. Запуск радио на станцию 1
3. воспроизведение.

если меняется команда , то прибивается процесс wget. Это конечно не очень
хорошее решение , но оно работает. Данное действие производится вызовом скрипа
stop.sh

killall $(ps | grep -v grep | grep wget);
exit 0;

После остановки воспроизведения , происходит запуск скрипта для
следующей радиостанции согласно номеру в файле prog.ini.
В последствие я из стал называть в видемr05.sh , где 05 это номер радиостанции.

пример 05.sh

wget -q -O- http://81.19.85.195:80/vesti64.mp3 | madplay -

если в названии потока есть скобки то адрес берем в одинарные кавычки:

wget -q -O- 'http://radio.zaycev.fm:9002/ZaycevFM(128)' | madplay -

после прохождения 6й позици идет позиция 0 . В данном режиме ничего не играет.

Что плохо работает:
1. Долгое переключение
2. Не работает индикация при переключении. Нужно что бы при начале переключения
индикатор wps гас и загорался при начале воспроизведения.
3. Последующая индикация номера канала. Тут скорей всего придется ставить
микроконтроллер.
4. Долгая загрузка через crontab обработчика t1.sh
@reboot sh /mnt/usb/t1.sh
0-59 * * * * sh /mnt/usb/t1.sh

Последний раз редактировалось star003; 25.01.2013 в 11:37.
star003 вне форума   Ответить с цитированием
Старый 27.01.2013, 19:30   #18
Kit
Junior Member
 
Регистрация: 24.09.2012
Сообщений: 10
Вес репутации: 0
Kit is an unknown quantity at this point
По умолчанию

посмотрите тут может чего подглядите )
http://piie.net/index.php?section=tplink-radio
Kit вне форума   Ответить с цитированием
Старый 28.01.2013, 03:31   #19
andr128
Senior Member
 
Аватар для andr128
 
Регистрация: 16.09.2012
Адрес: Irkutsk
Сообщений: 555
Вес репутации: 1602
andr128 has a reputation beyond reputeandr128 has a reputation beyond reputeandr128 has a reputation beyond reputeandr128 has a reputation beyond reputeandr128 has a reputation beyond reputeandr128 has a reputation beyond reputeandr128 has a reputation beyond reputeandr128 has a reputation beyond reputeandr128 has a reputation beyond reputeandr128 has a reputation beyond reputeandr128 has a reputation beyond repute
По умолчанию

star003 посмотрите в сторону mpd и клиента к нему mpc в репозитории есть.
andr128 вне форума   Ответить с цитированием
Старый 30.01.2013, 23:52   #20
Admin
Administrator
 
Аватар для Admin
 
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 9,612
Вес репутации: 9815
Admin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant future
По умолчанию

Сегодня поигрался с веб радио
Представляю тестовый, корявый вариант кода radio.rar
Распакуйте в папку radio на вашем роутере, в домашней директории сервера lighttpd . В браузере на удавленном ПК вбейте адрес , у меня адрес выглядит вот так http://192.168.1.20:81/radio/ , у вас может отличатся IP и порт
В окне браузера должны появится кнопки.
Нажмите кнопку с нужной станцией и наслаждайтесь прослушиванием
Название: radio.jpg
Просмотров: 4725

Размер: 10.0 Кб
Admin вне форума   Ответить с цитированием
Ответ


Здесь присутствуют: 2 (пользователей: 0 , гостей: 2)
 
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


Текущее время: 19:09. Часовой пояс GMT +3.


Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2022, Jelsoft Enterprises Ltd. Перевод: zCarot
Яндекс.Метрика