[Модуль] Online Radio (app_radio)

Разработка дополнительных модулей, подключение различных приложений.

Модератор: immortal

Аватара пользователя
LuckyFIA
Сообщения: 118
Зарегистрирован: Пт сен 27, 2013 6:57 am
Откуда: Россия
Благодарил (а): 3 раза
Поблагодарили: 40 раз
Контактная информация:

Re: Онлайн радио - с Маркет дополнений

Сообщение LuckyFIA » Пн июн 30, 2014 4:18 pm

electric писал(а):Ура-ура, я победил...
Поделись рецептом, интересно где был затык
electric
Сообщения: 309
Зарегистрирован: Вт сен 17, 2013 10:11 pm
Благодарил (а): 3 раза
Поблагодарили: 56 раз

Re: Онлайн радио - с Маркет дополнений

Сообщение electric » Пн июн 30, 2014 11:10 pm

LuckyFIA писал(а):Поделись рецептом, интересно где был затык
На Raspberry Pi у меня стоит аналогичная система, сейчас я потихоньку переезжаю на Cubietruck.
Так вот, аудиокарта малинки поддерживает микширование, т.е. при работе vlc (например играет радио) Алиса может начать говорить (вывод через mplayer)
На Cubietruck такой фокус не прокатил - при работе vlc, mplayer выдавал ошибку:

Код: Выделить всё

[AO_ALSA] alsa-lib: pcm_hw.c:1293:(snd_pcm_hw_open) open '/dev/snd/pcmC0D0p' failed (-16): Device or resource busy
Решение - надо настроить программный микшер dmix.
Для этого создаем файл:

Код: Выделить всё

root@cubie:~# touch /etc/asound.conf
И вставляем следующий текст:

Код: Выделить всё

pcm.!default {
        type plug
        slave.pcm "dmixer"
}

pcm.dmixer  {
        type dmix
        ipc_key 1024
        slave {
                pcm "hw:0,0"
                period_time 0
                period_size 1024
                buffer_size 4096
                rate 44100
        }
}
ctl.dmixer {
        type hw
        card 0
}
С настройками можно побаловаться, я вставил конфиг по-умолчанию.
И та-дааам, вопроизводят аудиопоток одновременно и vlc и mplayer.
За это сообщение автора electric поблагодарил:
AlexL (Сб фев 17, 2018 6:40 am)
Рейтинг: 1.16%
Было: Majordomo v.0.6.0.b на Cubietruck. OS Armbian с переносом на HDD
Стало: ioBroker на Cubietruck OS Armbian + ZigBee Xiaomi + OWFS + BLE.
Vit
Сообщения: 867
Зарегистрирован: Вт янв 17, 2012 12:31 pm
Благодарил (а): 121 раз
Поблагодарили: 78 раз

Re: Онлайн радио - с Маркет дополнений

Сообщение Vit » Чт июл 10, 2014 1:18 am

Подскажите почему при выборе VLC over HTTP радио не включается? в чем причина
Vit
Сообщения: 867
Зарегистрирован: Вт янв 17, 2012 12:31 pm
Благодарил (а): 121 раз
Поблагодарили: 78 раз

Re: Онлайн радио - с Маркет дополнений

Сообщение Vit » Чт июл 10, 2014 11:22 pm

подскажите почему при выборе VLC over HTTP радио не работает....по умолчанию работает но громкость не регулируется...как настроить VLC over HTTP.

режим web включен, пароль стоит. в браузере все открывает...
что еще нужно сделать чтобы VLC over HTTP заработал...
Аватара пользователя
sergejey
Site Admin
Сообщения: 4284
Зарегистрирован: Пн сен 05, 2011 6:48 pm
Откуда: Минск, Беларусь
Благодарил (а): 75 раз
Поблагодарили: 1559 раз
Контактная информация:

Re: Онлайн радио - с Маркет дополнений

Сообщение sergejey » Сб июл 12, 2014 2:31 pm

Vit писал(а):подскажите почему при выборе VLC over HTTP радио не работает....по умолчанию работает но громкость не регулируется...как настроить VLC over HTTP.

режим web включен, пароль стоит. в браузере все открывает...
что еще нужно сделать чтобы VLC over HTTP заработал...
Здесь два варианта.
1. Немного подправить файл app_radio.class.php
заменить

Код: Выделить всё

if ($terminal['PLAYER_USERNAME'] && $terminal['PLAYER_PASSWORD']) { 
на

Код: Выделить всё

if ($terminal['PLAYER_USERNAME'] || $terminal['PLAYER_PASSWORD']) { 
ошибка перекочевала из модуля app_player и возникает из-за того, что vlc требует пароля, но оставляет имя пользователя пустым

2. использовать для проигрывания стандартный модуль плеера, в котором эта ошибка уже исправлена в одном из недавних обновлений

второй вариант, потребует изменений в самом модуле, т.е. это вопрос к автору.
как мне кажется, этот вариант более предпочтительный, т.к. снимает необходимость с модуля Радио вообще думать о том, как будет осуществляться проигрывание, а оставить только основной функционал работы со станциями.

я ниже привожу текст изменённой функции select_player для этого варианта:

Код: Выделить всё

    function select_player(&$out){
        global $cmd;
        global $volume;
        $ch = curl_init();
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

        $play_terminal = getGlobal('RadioSetting.PlayTerminal');
        echo $play_terminal;

        $url=BASE_URL.ROOTHTML.'popup/app_player.html?ajax=1&play_terminal='.$play_terminal;

        if($cmd=='play'){
         sg('RadioSetting.On',1);
         $url.="&command=refresh&play=".urlencode($out['PLAY']);
        }
         else if($cmd=='stop'){
         sg('RadioSetting.On',0);
         $url.="&command=close";
        }
        else if($cmd=='vol')
        {
         sg('RadioSetting.VolumeLevel', $volume);
         $url.="&command=volume&volume=".$volume;
        }
        curl_setopt($ch, CURLOPT_URL, $url);
        $res=curl_exec($ch);
        curl_close($ch);
    }
 
после этого из модуля папку player можно вовсе убрать и не думать о том, какие плееры поддерживает система и как с ними работать.
За это сообщение автора sergejey поблагодарил:
AlexL (Сб фев 17, 2018 6:40 am)
Рейтинг: 1.16%

Сергей Джейгало, разработчик MajorDoMo
Идеи, ошибки -- за предложениями по исправлению и развитию слежу только здесь!
Профиль Connect -- информация, сотрудничество, услуги
Аватара пользователя
adzam
Сообщения: 602
Зарегистрирован: Сб дек 08, 2012 10:28 pm
Откуда: Кишинев
Благодарил (а): 20 раз
Поблагодарили: 138 раз

Re: Онлайн радио - с Маркет дополнений

Сообщение adzam » Вс июл 13, 2014 6:46 pm

При установке Online Radio
В Class: Radio
Объект: RadioSetting

появляются свойства
RadioSetting.On
RadioSetting.PlayTerminal
RadioSetting.VolumeLevel
RadioSetting.LastStationID

помогите пож. грамотно добавить еще одно свойство

RadioSetting.LastStationName

мне нужно вытащить именно название активной станции а не id , чтоб использовать в другом сценарии
Заранее благодарен.
Мои проекты здесь...https://connect.smartliving.ru/profile/41/blog213.htm
Если вам помогло какое-либо мое сообщение - не ленитесь пользоваться кнопкой СПАСИБО.
Аватара пользователя
adzam
Сообщения: 602
Зарегистрирован: Сб дек 08, 2012 10:28 pm
Откуда: Кишинев
Благодарил (а): 20 раз
Поблагодарили: 138 раз

Re: Онлайн радио - с Маркет дополнений

Сообщение adzam » Ср авг 13, 2014 7:17 am

Кто-нибудь победил регулировку громкости в оn-line radio под виндой
включить и выключить работает а громкость не регулируется
Мои проекты здесь...https://connect.smartliving.ru/profile/41/blog213.htm
Если вам помогло какое-либо мое сообщение - не ленитесь пользоваться кнопкой СПАСИБО.
Vit
Сообщения: 867
Зарегистрирован: Вт янв 17, 2012 12:31 pm
Благодарил (а): 121 раз
Поблагодарили: 78 раз

Re: Онлайн радио - с Маркет дополнений

Сообщение Vit » Ср авг 13, 2014 7:37 pm

adzam писал(а):При установке Online Radio
В Class: Radio
Объект: RadioSetting

появляются свойства
RadioSetting.On
RadioSetting.PlayTerminal
RadioSetting.VolumeLevel
RadioSetting.LastStationID

помогите пож. грамотно добавить еще одно свойство

RadioSetting.LastStationName

мне нужно вытащить именно название активной станции а не id , чтоб использовать в другом сценарии
Заранее благодарен.
Добавьте новое свойство LastStationName в класс Radio

Изображение

и оно автоматически появится в объекте этого класса

Изображение

ничего сложного...не нужно боятся делать и эксперементировать)
Аватара пользователя
LuckyFIA
Сообщения: 118
Зарегистрирован: Пт сен 27, 2013 6:57 am
Откуда: Россия
Благодарил (а): 3 раза
Поблагодарили: 40 раз
Контактная информация:

Re: Онлайн радио - с Маркет дополнений

Сообщение LuckyFIA » Вс авг 31, 2014 1:07 pm

Обновил модуль:
Управление плеерами теперь осуществляется через системный модуль app_player.
Ivan
Сообщения: 1473
Зарегистрирован: Сб окт 12, 2013 11:03 pm
Благодарил (а): 49 раз
Поблагодарили: 327 раз

Re: Онлайн радио - с Маркет дополнений

Сообщение Ivan » Сб окт 11, 2014 10:02 am

А можно в данный модуль добавить 101.ru
На примере того модуля что сделал сергей. Не хочется скрипты на 2 модуля иметь
Linux, Raspberry PI, MySensors
Connect: http://connect.smartliving.ru/profile/53
Мои проекты: http://smartliving.ru/profile/4
Ответить