roboforum.ru

Технический форум по робототехнике.


Синтез речи для Минибота

Готовая электроника для самодельного робота. Уровень от начинающих до опытных конструкторов.

Re: Синтез речи для Минибота

Сообщение galex1981 » 28 апр 2009, 16:43

в том то и дело, потому хотел бы другой вариант использовать
if(!Operate) Read(pDatasheet);
Аватара пользователя
galex1981
 
Сообщения: 4363
Зарегистрирован: 04 дек 2008, 22:44
Откуда: Камышин
Skype: galk-aleksandr1
прог. языки: Kotlin, Java, C, C++, Assm, BasCom, VB, php
ФИО: Галкин Александр Владимирович

Re: Синтез речи для Минибота

Сообщение frig » 28 апр 2009, 16:44

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

только с ударениями надо помудрить... хотя без них тоже будет весьма прикольно :D
frig
 
Сообщения: 1640
Зарегистрирован: 12 фев 2007, 12:25
Откуда: Днепр

Re: Синтез речи для Минибота

Сообщение galex1981 » 28 апр 2009, 16:47

Идеи есть какие слоги и какие правила?
if(!Operate) Read(pDatasheet);
Аватара пользователя
galex1981
 
Сообщения: 4363
Зарегистрирован: 04 дек 2008, 22:44
Откуда: Камышин
Skype: galk-aleksandr1
прог. языки: Kotlin, Java, C, C++, Assm, BasCom, VB, php
ФИО: Галкин Александр Владимирович

Re: Синтез речи для Минибота

Сообщение frig » 28 апр 2009, 17:05

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

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

Добавлено спустя 16 минут 13 секунд:
википедия говорит о полуслогах. окончание предыдущего и начало следующего. :pardon:

в любом случае, имхо, следуем двигаться от простого к сложному. например произносить простые односложные слова и цифры. уже будет практическая польза :D
frig
 
Сообщения: 1640
Зарегистрирован: 12 фев 2007, 12:25
Откуда: Днепр

Re: Синтез речи для Минибота

Сообщение Snable » 28 апр 2009, 17:39

Блин, написал большой мэссэдж, глюкануло и мэссэдж пропал... Ограничусь выводами:
Перспективнее разбивать слова на фонемы по международному фонетическому алфавиту(МФА). Для синтеза слова на любом языке (на начальном уровне) потребуется около 2000 вавок (если все-таки в вавки писать). Для качественного синтеза около 30к-50к вавок. Для слогов и полуслогов - значительно больше, но это упростит фонетический словарь. ИМХО, перспективнее иметь огромный фонетический словарь и маленькую БД звуков, разбивая слова на фонемы, поскольку синтез получиться более гибкий и качественный. Подправив пару параметров и не записывая никаких новых вавок можно будет даже акценты делать... (Но тут DSP надо ставить)
Еще перспективней моделировать звукосинтезирующий тракт человека (или попугая какого-нить :wink: )... Тут, надеюсь, всё понятно... Но это, ИМХО, пока очень трудноосуществимо. Микроконтроллер такое не потянет... Тут нужен мощный кластер.
Так что для микроконтроллеров скорее всего вавки + фонемы по МФА.
Аватара пользователя
Snable
 
Сообщения: 395
Зарегистрирован: 21 мар 2009, 20:06
Откуда: Город на Неве
прог. языки: GNU C++ with Qt / C# via .NET
ФИО: Александр

Re: Синтез речи для Минибота

Сообщение Vovan » 28 апр 2009, 17:43

хотел бы другой вариант использовать

я использовал микросхему ISD, "готовил" на компе (с помощью СаундФордж) звуки букв и слоги, затем с компа записывал всё это в МСХему. Затем с помощью МК вызывал из ISD-эшки звуки складывая (програмно) в слова и предложения. Длина и количество слов ограничено только длиной программы в МК, а т.к. прога оч. простая то, походу, можно целый доклад воспроизвести с помощью 10-ти-секундной ISD и какой-нидь тиньки. Разборчивость текста конечно, оставляет желать лучшего, но понять можно, особенно если знаешь весь текст... Но это касательно чел. речи, а если звуки - то ваще без проблемм :)
Здесь небольшой пример того, что получается.
ЗЫ: не претендую на оригинальность, просто может кому сгодится...
Вложения
Vovan_stroit_robotov_a_ti_spish.zip
(50 КиБ) Скачиваний: 24
_________
Sincerely,
Vovan
Аватара пользователя
Vovan
 
Сообщения: 3340
Зарегистрирован: 05 окт 2005, 12:03
Откуда: Литва
прог. языки: asm

Re: Синтез речи для Минибота

Сообщение MiBBiM » 28 апр 2009, 18:26

может стоит синтезировать на компе готовыми утилитами, а на МБ отправлять звуковой поток? канал вроде широкий (кто там про 250кбит/сек говорил? :wink: ), вот только справится ли мега
Tomorrow will be. Better
Аватара пользователя
MiBBiM
 
Сообщения: 1866
Зарегистрирован: 29 окт 2007, 18:11
Откуда: Пермь
прог. языки: Brainfuck/Basic/Delphi/C++/Lisp/x86asm/JavaScript

Re: Синтез речи для Минибота

Сообщение Snable » 28 апр 2009, 20:28

На такой звук 8-16 кбит хватит...
Аватара пользователя
Snable
 
Сообщения: 395
Зарегистрирован: 21 мар 2009, 20:06
Откуда: Город на Неве
прог. языки: GNU C++ with Qt / C# via .NET
ФИО: Александр

Re: Синтез речи для Минибота

Сообщение galex1981 » 03 май 2009, 20:37

Ну что, будем пытаться что-нибудь более сложное и реальнее синтезируемое делать чем ГОВОРИЛКА? Если да, давайте попробуем что то типа алгоритма или описания для начала придумаем.
if(!Operate) Read(pDatasheet);
Аватара пользователя
galex1981
 
Сообщения: 4363
Зарегистрирован: 04 дек 2008, 22:44
Откуда: Камышин
Skype: galk-aleksandr1
прог. языки: Kotlin, Java, C, C++, Assm, BasCom, VB, php
ФИО: Галкин Александр Владимирович

Re: Синтез речи для Минибота

Сообщение MiBBiM » 03 май 2009, 21:34

синтез нужен только если есть радиоканал.
если есть радиоканал, значит есть либо комп либо друой бот.
насчет другого бота не знаю, но вот если есть комп, то синтез можно (и даже нужно :) ) сделать на нем. а передавать посредством того же радиоканала. вот, например, нетребовательный к ресурсам алгоримтчик компрессии.
остается только подумать над выводом всего этого дела на усилитель.
Tomorrow will be. Better
Аватара пользователя
MiBBiM
 
Сообщения: 1866
Зарегистрирован: 29 окт 2007, 18:11
Откуда: Пермь
прог. языки: Brainfuck/Basic/Delphi/C++/Lisp/x86asm/JavaScript

Re: теперь тут Myp Zone (ну чтоб не мешать серьёзным вещам) 18+

Сообщение MiBBiM » 03 май 2009, 22:53

наброски по поводу синтеза речи на пк с использованием sapi. осталось научится записывать звук в поток памяти, кодировать и передавать его :crazy:
Вложения
Speaker.rar
(330.23 КиБ) Скачиваний: 20
Tomorrow will be. Better
Аватара пользователя
MiBBiM
 
Сообщения: 1866
Зарегистрирован: 29 окт 2007, 18:11
Откуда: Пермь
прог. языки: Brainfuck/Basic/Delphi/C++/Lisp/x86asm/JavaScript

Re: теперь тут Myp Zone (ну чтоб не мешать серьёзным вещам) 18+

Сообщение galex1981 » 03 май 2009, 23:21

А что сюда то выложил?
if(!Operate) Read(pDatasheet);
Аватара пользователя
galex1981
 
Сообщения: 4363
Зарегистрирован: 04 дек 2008, 22:44
Откуда: Камышин
Skype: galk-aleksandr1
прог. языки: Kotlin, Java, C, C++, Assm, BasCom, VB, php
ФИО: Галкин Александр Владимирович

Re: теперь тут Myp Zone (ну чтоб не мешать серьёзным вещам) 18+

Сообщение MiBBiM » 03 май 2009, 23:31

то что просто говорит :D
набросок он и есть набросок, прст библиотеку подключил и посмотрел чего будет :ROFL:
Tomorrow will be. Better
Аватара пользователя
MiBBiM
 
Сообщения: 1866
Зарегистрирован: 29 окт 2007, 18:11
Откуда: Пермь
прог. языки: Brainfuck/Basic/Delphi/C++/Lisp/x86asm/JavaScript

Re: Синтез речи для Минибота

Сообщение MiBBiM » 04 май 2009, 22:11

ну вот кажется докопался до сохранения голоса в вавку с произвольным битрейтом, частотой сэмплирования и проч. вскорости выложу екзек
Tomorrow will be. Better
Аватара пользователя
MiBBiM
 
Сообщения: 1866
Зарегистрирован: 29 окт 2007, 18:11
Откуда: Пермь
прог. языки: Brainfuck/Basic/Delphi/C++/Lisp/x86asm/JavaScript

Re: Синтез речи для Минибота

Сообщение galex1981 » 04 май 2009, 22:13

У тебя какой синтезатор речи установлен на ПК?
if(!Operate) Read(pDatasheet);
Аватара пользователя
galex1981
 
Сообщения: 4363
Зарегистрирован: 04 дек 2008, 22:44
Откуда: Камышин
Skype: galk-aleksandr1
прог. языки: Kotlin, Java, C, C++, Assm, BasCom, VB, php
ФИО: Галкин Александр Владимирович

Пред.След.

Вернуться в МиниБот — национальный класс роботов

Кто сейчас на конференции

Сейчас этот форум просматривают: Bing [Bot] и гости: 10