УкраїнськаEnglishmRussian
Вход/Новый
В теме много сообщений

Настройка речевого синтеза


Автор Сообщение
Сообщение создано: 01. 03. 2019 [11:00]
Godzilla
Арсен Закоян
Contributor
Зарегистрирован(а) с: 12.02.2013
Сообщения: 123
Видимо никто так и не разобрался. Раньше было все равно, если запускаешь Vision то будет срабатывать там где ты это запустил(речевой синтез например) Сейчас ситуация для меня непонятна. Роман, вы хоть подскажите какой день уже бьюсь :bang:
Сообщение создано: 01. 03. 2019 [11:05]
roman
Roman Savochenko
Moderator
Contributor
Developer
Зарегистрирован(а) с: 12.12.2007
Сообщения: 3750
"Godzilla" wrote:

Видимо никто так и не разобрался. Раньше было все равно, если запускаешь Vision то будет срабатывать там где ты это запустил(речевой синтез например) Сейчас ситуация для меня непонятна. Роман, вы хоть подскажите какой день уже бьюсь :bang:

Я всё нужное сказал ранее и не повторяю, читайте внимательно!

И ДемоБД с синтезом прекрасно работает, если до сих пор не понятно где смотреть, а ссылка на настройки и как осуществляется синтез даже в ЧаВо и руководство по обновлению 0.8 LTS до 0.9 LTS попало.

Learn, learn and learn better than work, work and work.
Сообщение создано: 04. 02. 2020 [20:50]
zmulian
Дмитрий Злобин
Зарегистрирован(а) с: 27.06.2016
Сообщения: 11
"Godzilla" wrote:

Видимо никто так и не разобрался. Раньше было все равно, если запускаешь Vision то будет срабатывать там где ты это запустил(речевой синтез например) Сейчас ситуация для меня непонятна. Роман, вы хоть подскажите какой день уже бьюсь :bang:


Тоже бился целый день. В сумме наверно даже не один.

В рабочем пользовательском интерфейсе (QT), на корневой странице, в атрибутах, в уведомлениях, Vision тип 2 (речь). Что то там было про espeak и преобразователи text2wave от фестиваля. Все удаляем и ставим

#!/bin/sh
#flags=notify2|queue
if test $doNtf = 1 -a $en = 1 -a "x" != "x$mess"; then
echo $mess > tmpForSpeech
cat tmpForSpeech | RHVoice-test -p Anna -------- Заменена всего одна строчка из примера VCAEngine
rm tmpForSpeech
fi

Sox стоит, но он как бы и не нужен....

RHVoice прекрасно работает. Поиграйтесь с настройками... Синтезатор работает очень быстро и качественно. Фестиваль рядом не лежал.......

В принципе все как и описал Роман, но если не знаешь куда копать времени теряется уйма... Кто то бы подсказал, ну или носом ткнул....


Сообщение создано: 08. 02. 2020 [15:27]
zmulian
Дмитрий Злобин
Зарегистрирован(а) с: 27.06.2016
Сообщения: 11
Всем доброго времени суток.
У меня вопрос больше к Роману...... но может кто то другой доступным языком объяснит...
Вначале опишу, как пример.

anShow
В строке для речевого синтеза
1. "температура подачи"
base.anUnif
Нарушение верхней предупредительной границы
2. "выше нормы"

При сработке в синтезаторе все как и положено 1+2 (температура подачи выше нормы)

Сам вопрос.
Где происходит склейка 1+2? Романа прошу не обижаться, но пересмотрел все, что касается формирования $mess - не нашёл....
Цель. Для речевого синтеза, при нарушениях, других (произвольных) параметров.
Формировать $mess произвольным порядком, что то вроде
1+(произвольный атрибут произвольного контроллера)+2+(ххх)
или
2+1+(ххх)+....

Интересует как сделать попроще, то есть сам результат. Ну или возможные пути...
Заранее спасибо.

Сообщение создано: 09. 02. 2020 [08:23]
roman
Roman Savochenko
Moderator
Contributor
Developer
Зарегистрирован(а) с: 12.12.2007
Сообщения: 3750
"zmulian" wrote:

Всем доброго времени суток.
У меня вопрос больше к Роману...... но может кто то другой доступным языком объяснит...

Вообще, я не отвечаю тут на персональные вопросы!

"zmulian" wrote:

Где происходит склейка 1+2? Романа прошу не обижаться, но пересмотрел все, что касается формирования $mess - не нашёл....

В anShow и происходит, что и описано на предмет "alarm" там где и про синтез речи и уведомления вообще!

"zmulian" wrote:

Цель. Для речевого синтеза, при нарушениях, других (произвольных) параметров.
Формировать $mess произвольным порядком, что то вроде
1+(произвольный атрибут произвольного контроллера)+2+(ххх)
или
2+1+(ххх)+....

Интересует как сделать попроще, то есть сам результат. Ну или возможные пути...

Если выносить текст синтезируемых сообщений на уровень источника-модели данных, то очевидно нужно расширять представительские структуры параметров нужными атрибутами с текстом для синтеза: http://oscada.org/wiki/Special:MyLanguage/Libs/Main#anUnif

Learn, learn and learn better than work, work and work.



17772