Голосовое управление IH



  • Тут обратил внимание, что у меня не отображаются статусы голосовых терминалов - на вкладке "Параметры" - пусто. Не буду рассказывать в чем была проблема, но в итоге из одного сценария сделал два:

    1. Статус терминала - запускается при поступлении сообщения от терминала на сервер:

    02.09 12:57:17.337 voiceterminal2: { type: 'startscene',
      id: 'VoiceTerminal_Status',
      arg: '{"uptime":"313596","volume":"100","terminal":"VT2","music_volume":"100","username":"voiceterminal"}' }
    02.09 12:57:17.342 IH: startscene VoiceTerminal_Status
    
    

    voiceterminal_status.zip
    2. Управление терминалом - запускается по изменению значений слайдеров на вкладке "Параметры"
    voiceterminal_control.zip
    В сценариях прописано 2 голосовых терминала.

    Теперь задача другая - если терминалы стоят в смежных помещениях/на разных этажах и оба слышат пользователя, то нужно выбрать на какой терминал сервер должен среагировать. Как вариант для критерия - уровень RMS. То есть если распознавание ключевого слова прошло успешно, то вместе с результатом распознавания передаем уровень RMS (сейчас есть min,max,avr). Таким образом, примерно в одно и то же время на сервер придет два сообщения от двух терминалов -от какого терминала Average RMS по уровню больше, от того и анализируем сервером текст команды.

    В сценарии такую обработку мне не удалось пока реализовать, но скорее это дело плагина. Но "поковыряться" с плагином пока времени нет:(

    Еще один вариант работы терминала, интегрированного в систему "Умный дом", находящегося в отдельной комнате - "прослушка" во время появления движения. Если срабатывает датчик движения, то на терминал посылаем команду listener:on, иначе после тайм-аута 10-30 минут посылаем listener:off. Однако - надо все пробовать…



  • @Alex_Jet большое спасибо за плагин,
    а можно как-то переправить звук с mdmTerminal-а на другое физическое устройство?
    Например, у меня потолочная акустика подключена к i386 серверу на котором установлен IH. А терминал я установил на Orange Pi Zero - который находится рядом, под потолком, смысла городить еще один динамик на Orange Pi Zero вроде бы и нет...



  • @div115, раз на сервере стоит iH, то вероятно можно использовать голосовой плагин самого iH? А может все-таки к акустике подключить малинку/апельсинку?
    Вообще теоретически на это сервер можно установить mdmTerminal2 и в сценарии tts осуществлять через второй плагин. По крайней мере у меня несколько терминалов и я могу на любой вывести tts. А вот сервер УД у меня - только сервер, находящийся в темном черном углу. Даже LMS живет на другой железке.



  • Пользователь @Alex_Jet написал в Голосовое управление IH:

    раз на сервере стоит iH, то вероятно можно использовать голосовой плагин самого iH?

    да, наверное так можно, но реакция на кодовое слово вроде бы воспроизводится mdmTerminal-ом локально - на апельсине,

    А может все-таки к акустике подключить малинку/апельсинку?

    да, - на крайний вариант так и сделаю - раздраконю и прицеплю какие-нибудь usb колонки. Существующая потолочная аккустика - не вариант, т-к к ним идут только акустические провода от усилителя в электрощитовой (усилитель подключен к серверу IH) - а электрощитовая в подвале... + еще потолок уже сделан, - перепротянуть провода не получится, - но в 1,5 метрах от потолочной акустки есть отверстие под универсальный датчик - туда затянута из электрощитовой витая пара, - на нее планировал повесить апельсин с MDMтерминалом, микрофоном и датчиками, - питать планировал по пасив-пое.

    Вообще теоретически на это сервер можно установить mdmTerminal2 и в сценарии tts осуществлять через второй плагин. По крайней мере у меня несколько терминалов и я могу на любой вывести tts.

    этот вариант, как я понимаю, тоже не решает вопроса с озвучкой ответа на ключевое слово.

    А вот сервер УД у меня - только сервер, находящийся в темном черном углу. Даже LMS живет на другой железке.

    у меня на физ. сервере живет IH, LMS и SqueezePlayer
    конечно хотелось бы перенаправить весь звук от апельсинки на сервер по сети, но пока не знаю как это сделать... 😞



  • Пользователь @div115 написал в Голосовое управление IH:

    у меня на физ. сервере живет IH, LMS и SqueezePlayer
    конечно хотелось бы перенаправить весь звук от апельсинки на сервер по сети, но пока не знаю как это сделать...

    Я думаю, что самой правильной концепцией является:

    1. Отдельный железный сервер УД + LMS +Media, к которому подключен только кабель Eth
    2. По всей квартире/дому разбросаны железки с подключеным Eth (на крайний случай Wi-Fi) и акустикой. На борту у железок - mdmTerminal2 и squeezelite.
      Поэтому ваш вариант перенести OPiZ в потолочное отверстие рядом с акустикой мне нравится намного больше. Сам хочу разработать плату для установки на нее OPiZ + микрофон с усилителем на TS472 + усилитель (хотя бы PAM8610) мощности + светодиодное кольцо на базе WS28xx, но пока руки не доходят...

    И да...я до конца не понял, но похоже у Вас связка LMS ->squeezelite не работает? Если так, то это проще простого! На клиентах ставим squeezelite и их находит LMS (в его настройках на закладке "Информация" есть раздел "Информация о плеере"). Собственно на главной странице LMS сверху справа будет выпадающий список из плееров)

    Passive-poe в реализации OPiZ очень плохой вариант... Лучше взять переходники для passive-poe и снимать хотя бы 12В, подавая сразу на усилитель (тот же PAM8610 - хорошая вещь!), а для OPiZ поставить step-down! - кушает она не мало и греется прилично!



  • Пользователь @Alex_Jet написал в Голосовое управление IH:

    Отдельный железный сервер УД + LMS +Media, к которому подключен только кабель Eth

    да, так оно у меня и есть

    Сам хочу разработать плату для установки на нее OPiZ + микрофон с усилителем на TS472 + усилитель (хотя бы PAM8610) мощности + светодиодное кольцо на базе WS28xx, но пока руки не доходят...

    по моей задумке, - на апельсин хочу повесить

    1. датчик движения,
    2. i2c датчики температуры/влажности, освещенности, СО2,
    3. микрофон,
    4. динамики с усилителем из колонок типа: http://microlab.com/ru/catalog/stereosistemyi/usb/md-122/ - кмк будет вполне бюджетно
      (исключение коридоры 1,2 этажей - там уже стоит потолочная акустика)
    5. возможно лед ленту W2812

    И да...я до конца не понял, но похоже у Вас связка LMS ->squeezelite не работает? Если так, то это проще простого! На клиентах ставим squeezelite и их находит LMS (в его настройках на закладке "Информация" есть раздел "Информация о плеере"). Собственно на главной странице LMS сверху справа будет выпадающий список из плееров)

    да, - связка есть, - так у меня работает интернет-радио и медиатека, squeezelite у меня еще кроме сервера стоит на планшете с IH-kiosk - но тут источник звука LMS. Как указать какому плееру воспроизводить звук с конкретного MDMтерминала - я не знаю, буду благодарен если подскажете.

    Passive-poe в реализации OPiZ очень плохой вариант... Лучше взять переходники для passive-poe и снимать хотя бы 12В, подавая сразу на усилитель (тот же PAM8610 - хорошая вещь!), а для OPiZ поставить step-down! - кушает она не мало и греется прилично!

    спасибо за совет, - у меня как раз есть свободные порты в passive-poe-панели, заколхоженной из 24х портовой patch-панели и б/п от ноутбука.



  • Пользователь @div115 написал в Голосовое управление IH:

    по моей задумке, - на апельсин хочу повесить

    датчик движения,
    i2c датчики температуры/влажности, освещенности, СО2,
    микрофон,
    динамики с усилителем из колонок типа: http://microlab.com/ru/catalog/stereosistemyi/usb/md-122/ - кмк будет вполне бюджетно
    (исключение коридоры 1,2 этажей - там уже стоит потолочная акустика)
    возможно лед ленту W2812

    Не рекомендую делать такую солянку. Вообще OPiZ довольно не стабильная железка (у меня есть простая и Plus) и хоть она имеет gpio, но лучше их использовать для реализации полноценного mdmTerminal2 (управление режимами усилителя, управление кольцом из светодиодов WS28xx). Очень сильно греется и по хорошему ей надо тормозить CPU и занижать питание. В unix очень не удобно (ИМХО) работать с I2C и 1W датчиками.
    А датчики температуры/влажности/СО2, датчик движения и прочее лучше повесить на специализированные контроллеры! Я повсеместно использую MegaD-2561 (версия в моноблоке в последней ревизии - вообще улет!)

    Как указать какому плееру воспроизводить звук с конкретного MDMтерминала - я не знаю, буду благодарен если подскажете.

    Объясните по другому. Не понимаю вашу задачу! mdmTerminal2 - это железка "сама в себе", которую можно интегрировать в любой умный дом. У меня сейчас используется 3 терминала - в центре гостевой (по сути охватывает половину первого этажа), на втором этаже в спальне/кабинете и у сына в комнате. При этом благодаря LMS во всех вышеперечисленных комнатах сделан мультирум.



  • Пользователь @Alex_Jet написал в Голосовое управление IH:

    Объясните по другому. Не понимаю вашу задачу! mdmTerminal2 - это железка "сама в себе", которую можно интегрировать в любой умный дом. У меня сейчас используется 3 терминала - в центре гостевой (по сути охватывает половину первого этажа), на втором этаже в спальне/кабинете и у сына в комнате. При этом благодаря LMS во всех вышеперечисленных комнатах сделан мультирум.

    допустим у меня есть несколько контроллеров на OPZ (OPZ_1, OPZ_2, OPZ_3 и т.д.) на которых стоит MDM и squeezelite, так же у меня есть IH c LMS который видит все плееры.

    Возможно ли реализовать следующую задачу:
    MDM установленный на OPZ_1 получил запрос через микрофон OPZ_1 но голосовой ответ будет выведен на динамики OPZ_2 .



  • Пользователь @div115 написал в Голосовое управление IH:

    MDM установленный на OPZ_1 получил запрос через микрофон OPZ_1 но голосовой ответ будет выведен на динамики OPZ_2 .

    Я такую задачу не решал, однако с помощью pulse audio такое сделать точно можно! То есть на локальном OPZ_1 в asound.conf надо прописать внешнюю звуковую карту в качестве pcm.playback. А с помощью pulse audio на OPZ_2 сделать сетевую звуковую карту.
    Но опять же - зачем? Какое применение?



  • ок, спасибо буду копать pulseaudio

    Пользователь @Alex_Jet написал в Голосовое управление IH:

    Но опять же - зачем? Какое применение?

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



  • @div115, по мне - легче аккуратно демонтировать полотно потолка (есть успешный опыт), если это конечно натяжной потолок, а не гипсокартонный, чем плясать с бубном). Если гиспокартонная конструкция, то наверное лучше освоить pulse audio)



  • Пользователь @Alex_Jet написал в Голосовое управление IH:

    @div115, по мне - легче аккуратно демонтировать полотно потолка (есть успешный опыт), если это конечно натяжной потолок, а не гипсокартонный, чем плясать с бубном). Если гиспокартонная конструкция, то наверное лучше освоить pulse audio)

    потолок совмещенный - лдсп + натяжной, - на стыке вклеена светодиодная полоса в алюминиевом корпусе, поверх потолка поклеены ПВХ плинтуса, для того что-бы все исправить - надо пройти этот стык.

    так что я попробую разобраться с pulseaudio, если все будет совсем коряво, - то буду химичить с доп usb колонками.

    за участие и за советы - Большое спасибо!


Log in to reply