Страница 18 из 19
Re: Управление Умным Домом с помощью голоса
Добавлено: 18 окт 2014, 16:06
arbuzmaster
Может кому пригодится отправка wav файла на сервер ( для Recorderjs-master) то нужно код в recorder.js немного поменять на такой
Код: Выделить всё
worker.onmessage = function(e){
var wavBlob =e.data;
uploadAudio(wavBlob);
var blob = e.data;
currCallback(blob);
}
function uploadAudio(wavData){
var reader = new FileReader();
reader.onload = function(event){
var fd = new FormData();
var mp3Name = encodeURIComponent('audio_recording_.wav');
console.log("mp3name = " + mp3Name);
fd.append('fname', mp3Name);
fd.append('data', event.target.result);
$.ajax({
type: 'POST',
url: 'upload.php',
data: fd,
processData: false,
contentType: false
}).done(function(data) {
//console.log(data);
log.innerHTML += "\n" + data;
});
};
reader.readAsDataURL(wavData);
}
и подключить jquery-1.11.0.min.js(взятый из Recordmp3js) в index.html и скопировать upload.php из Recordmp3js все взято с github!
Re: Управление Умным Домом с помощью голоса
Добавлено: 18 окт 2014, 23:53
Андрей
Случайно наткнулся в Нете вот на такой прикол - наш советский парень сделал управление шохой (ваз 2106) на манер фильма Такси, т.е. заводит и глушит мотор голосом. А также управляет магнитолой (включение и выключение звука) и открытием багажника. Прикол то приколом, но голос то реально распознается!!! Вот ссылка на Ютубе -
http://www.youtube.com/watch?v=x8XzUHNXHPM
Re: Управление Умным Домом с помощью голоса
Добавлено: 22 окт 2014, 20:00
arbuzmaster
Может кто подсказать как автоматизировать скрипт отправки wav файлов (т.е. как в google) сказал - отправилось. На данный момент есть скрипт который определяет уровень звука на входе в микрофон - как его автоматизировать чтобы при высоком уровне - запись включалась а при низком - останавливалась ? (например как в sox)(скрипт записи и отправки wav тоже имеется)
Re: Управление Умным Домом с помощью голоса
Добавлено: 22 окт 2014, 20:03
ArtSamovar
arbuzmaster писал(а):Может кто подсказать как автоматизировать скрипт отправки wav файлов (т.е. как в google) сказал - отправилось. На данный момент есть скрипт который определяет уровень звука на входе в микрофон - как его автоматизировать чтобы при высоком уровне - запись включалась а при низком - останавливалась ? (например как в sox)
Из браузера или с компьютера?
Как у вас вообще звук на сервер попадает?
Re: Управление Умным Домом с помощью голоса
Добавлено: 22 окт 2014, 20:43
arbuzmaster
Из Браузера сейчас дела обстоят так - нажимаю кнопку запись звук записывается по нажатию на кнопку стоп файл отправляется на сервер!
Re: Управление Умным Домом с помощью голоса
Добавлено: 22 окт 2014, 21:03
ArtSamovar
arbuzmaster писал(а):Из Браузера сейчас дела обстоят так - нажимаю кнопку запись звук записывается по нажатию на кнопку стоп файл отправляется на сервер!
По обрезке тишины в браузере и обработки звука всё через
Web Audio API.
Там и примеры есть использования.
Пример кода не приведу, так как у меня не через браузер запись.
З.Ы. Но тогда зачем вы звук себе на сервер отправляете, не проще сразу с googl'ом работать и забирать ответ?
репозиторий с примером
Нажимать на
кнопочку можно с помощью jQuery...
Re: Управление Умным Домом с помощью голоса
Добавлено: 22 окт 2014, 21:07
arbuzmaster
ArtSamovar писал(а):
Что касается браузера, то
UserMedia и через сокет на домашний сервер, а дальше что угодно... Хоть в Google, хоть в Sphinx4.
На микрофонах (через adc порт Меги) были попытки, но качество не очень, хоть и работает.
Если кому интересно про сокеты звук и node.js можно почитать тут на английском
http://blog.groupbuddies.com/posts/39-t ... extensions в конце есть ссылка на проект
Re: Управление Умным Домом с помощью голоса
Добавлено: 22 окт 2014, 21:11
ArtSamovar
В создании recorder'а
context.createJavaScriptNode(bufferSize, 1, 1);
в Chrome надо заменить createJavaScriptNode на createScriptProcessor.
Кстати, про обрезку по тишине,
посмотрите тут
Re: Управление Умным Домом с помощью голоса
Добавлено: 22 окт 2014, 21:12
arbuzmaster
ArtSamovar писал(а):arbuzmaster писал(а):Из Браузера сейчас дела обстоят так - нажимаю кнопку запись звук записывается по нажатию на кнопку стоп файл отправляется на сервер!
По обрезке тишины в браузере и обработки звука всё через
Web Audio API.
Там и примеры есть использования.
Пример кода не приведу, так как у меня не через браузер запись.
З.Ы. Но тогда зачем вы звук себе на сервер отправляете, не проще сразу с googl'ом работать и забирать ответ?
репозиторий с примером
Нажимать на
кнопочку можно с помощью jQuery...
C googlo - м у мня нет проблем - работает на прямую без записи файлов через webkitSpeechRecognition. Хочу попробовать со Сфинксом на будующее!
Re: Управление Умным Домом с помощью голоса
Добавлено: 22 окт 2014, 21:19
ArtSamovar
arbuzmaster писал(а):Хочу попробовать со Сфинксом на будующее!
Тогда вам
сюда.
У меня в демке постоянно путал Shanghai c San Francisco (
http://syl22-00.github.io/pocketsphinx. ... -demo.html)
Re: Управление Умным Домом с помощью голоса
Добавлено: 22 окт 2014, 21:49
arbuzmaster
Was ist Das ?
Код: Выделить всё
Loading page
Initializing Web Audio and speech recognizer, waiting for approval to access your microphone
Recognizer ready
Audio recorder ready
Error from recorder: silent
Все разобрался! Микрофон на минимуме!1
Re: Управление Умным Домом с помощью голоса
Добавлено: 01 ноя 2014, 23:18
arbuzmaster
Re: Управление Умным Домом с помощью голоса
Добавлено: 16 ноя 2014, 23:03
Андрей
Как в Debiane можно программно (желательно из PHP) реализовать управление звуком по каналам:
1. Вывести только в левый канал
2. Вывести только в правый канал
3. Вывести в оба канала
Нужно для вывода речи из rhvoice.
Что то не удалось мне найти в Интернете решение. Заранее, спасибо за ответ.
Re: Управление Умным Домом с помощью голоса
Добавлено: 16 ноя 2014, 23:32
ArtSamovar
Андрей писал(а):Как в Debiane можно программно (желательно из PHP) реализовать управление звуком по каналам:
1. Вывести только в левый канал
2. Вывести только в правый канал
3. Вывести в оба канала
Нужно для вывода речи из rhvoice.
Что то не удалось мне найти в Интернете решение. Заранее, спасибо за ответ.
RHVoice пишет в моно. Для "разруливания" надо копать вышестоящую систему. PulseAudio, Alsa, OSS... И так далее. Или, после "RHVoice -W Elena -o sound.wav" конвертировать sox'ом в "многоканальный" файл и после "play ..... -c {1|2}" (про ключик -c в $ play -h можно почитать).
В php exec, shell_exec, etc...
Re: Управление Умным Домом с помощью голоса
Добавлено: 17 ноя 2014, 01:28
Андрей
ArtSamovar, подскажите пожалуйста, можно ли запустить RHVoice в режиме сервера, так же как запускается фестиваль:
. Из PHP к фестивалю обращаюсь так, как написано у Андрея
http://www.ab-log.ru/page.php?ID=46&cs=1 :
Код: Выделить всё
<?
$host="localhost";
$my_text="Температура воздуха на улице 5 градусов";
$h=fsockopen($host,1314);
fwrite($h,"(SayText \"$my_text\")\n");
sleep(3);
fwrite($h,"(quit)");
fclose($h);
?>
RHVoice из терминала работает, из PHP по команде exec, аналогично вашему коду в
http://umkv.ru/tekst-v-rech-ili-golosov ... ry_120.htm
Код: Выделить всё
exec(‘echo ‘.$text.’ | RHVoice -p 0.8 -d /usr/share/rhvoice/Aleksandr > ‘.$domofon_path );
exec(‘play -v ‘.$vol.’ ‘.$domofon_path);
ничего не происходит.
Как у Вас это работает? Спасибо за ответ.
Re: Управление Умным Домом с помощью голоса
Добавлено: 17 ноя 2014, 11:48
ArtSamovar
Андрей писал(а):ArtSamovar, подскажите пожалуйста, можно ли запустить RHVoice в режиме сервера, так же как запускается фестиваль:
. Из PHP к фестивалю обращаюсь так, как написано у Андрея
http://www.ab-log.ru/page.php?ID=46&cs=1 :
Код: Выделить всё
<?
$host="localhost";
$my_text="Температура воздуха на улице 5 градусов";
$h=fsockopen($host,1314);
fwrite($h,"(SayText \"$my_text\")\n");
sleep(3);
fwrite($h,"(quit)");
fclose($h);
?>
RHVoice из терминала работает, из PHP по команде exec, аналогично вашему коду в
http://umkv.ru/tekst-v-rech-ili-golosov ... ry_120.htm
Код: Выделить всё
exec(‘echo ‘.$text.’ | RHVoice -p 0.8 -d /usr/share/rhvoice/Aleksandr > ‘.$domofon_path );
exec(‘play -v ‘.$vol.’ ‘.$domofon_path);
ничего не происходит.
Как у Вас это работает? Спасибо за ответ.
https://github.com/Olga-Yakovleva/RHVoi ... Russian%29 репозиторий Ольги.
RHVoice -h. Справка самой программы.
RHVoice умеет работать в режиме демона. RHVoice --daemon-dir={path/to/directory} --daemon
создаёт сокет в указанной директории. (Я этого не делал - подсказать увы, не смогу)
Но по сути, тоже самое что и с фестивалем...
P.S.
http://umkv.ru/tekst-v-rech-ili-golosov ... ry_120.htm не мой блог
Re: Управление Умным Домом с помощью голоса
Добавлено: 19 ноя 2014, 18:03
arbuzmaster
RHVoice из терминала работает, из PHP по команде exec, аналогично вашему коду в
http://umkv.ru/tekst-v-rech-ili-golosov ... ry_120.htm
КОД: ВЫДЕЛИТЬ ВСЁ
exec(‘echo ‘.$text.’ | RHVoice -p 0.8 -d /usr/share/rhvoice/Aleksandr > ‘.$domofon_path );
exec(‘play -v ‘.$vol.’ ‘.$domofon_path);
ничего не происходит.
Походу надо к audio добавить пользователя www-data иначе в логах apacha при запуске exec play - alsa или pulseaudio пишет что Директория не наша или доступ запрещен.
Re: Управление Умным Домом с помощью голоса
Добавлено: 28 сен 2015, 12:28
flighttothemoon
А как насчет использования Amazon Echo в умном доме?
Re: Управление Умным Домом с помощью голоса
Добавлено: 14 май 2018, 13:28
abc
Подниму тему. Прошло более трех лет, интересно, у кого какие наработки? Кто-нибудь доделал что планировал?
У меня вопрос по железной части. Завтра буду в большом городе, хотел прикупить кабель и микрофон Шорох. На сайте написано до 300 метров линия, дальность слышимости до 18 м в зависимости от модели. Нормально ли будет если протяну на 16 метров экранированный? Или при такой длине наводок не избежать? Кабель пойдет под штукатуркой.
Re: Управление Умным Домом с помощью голоса
Добавлено: 14 май 2018, 14:48
Andrey_B
abc писал(а): ↑14 май 2018, 13:28
Прошло более трех лет, интересно, у кого какие наработки? Кто-нибудь доделал что планировал?
Лично уже довольно длительное время использую Siri и HAP-NodeJS.
Телефон и планшет практически всегда под рукой. Не нужны никакие микрофоны. Настройка на сервере HAP-NodeJS очень простая. Ставится на любой мини-ПК. Эту программу можно согласовать с любым другим серверным ПО.
Возможно давать команды не по четкому шаблону. Например, Siri прекрасно понимает если сказать так: "включи свет в зале", "зажги освещение в зале", "включить в зале лампочки" и т.д. Правда, пока не понимает "вруби" или "выруби". Но это пока. Также можно сказать "Выключи весь свет" и Siri выключит все подключенные к HAP выходы. Качество распознавания очень хорошее. Преимущество в том, что без сомнения возможности этой функции по части интерпретации команд пользователя будут развиваться и дальше, но для этого ничего не нужно будет менять в серверном ПО.
Не уверен, что такое решение подойдет всем. Но как одна из альтернатив, не требующих глубоких познаний в области распознавания речи и программирования, вполне.