roboforum.ru

Технический форум по робототехнике.
Текущее время: 30 ноя 2024, 10:26

Часовой пояс: UTC + 4 часа




Начать новую тему Ответить на тему  [ Сообщений: 132 ]  На страницу Пред.  1, 2, 3, 4, 5 ... 9  След.
Автор Сообщение
 Заголовок сообщения: Re: Говорилка для AVR
СообщениеДобавлено: 10 мар 2009, 13:12 
Не в сети

Зарегистрирован: 22 июл 2008, 10:07
Сообщения: 38
Откуда: Россия, Екатеринбург
прог. языки: BascomAVR | Delphi | VB | C
опааа! проект до жути интересен! У меня сейчас что-то похожее в mp3 плеере стоит - цифры от 0 до 19, затем десятки и сотни женским голосом записаны в AT45DB041, прога написана чтобы из этих кусочков числа набирать, голос оочень качественный.. а что если бы эта "говорилка" хранила свои сэмплы в датафлешке? тогда-же можно очень качественную говорилку сварганить - а то я глянул - здесь все буквы описаны мааленьким массивчиком...
Код:
uint8_t PROGMEM sound_A        []={(  46), 0xE1,0xC3,0xE1,0xC7,0x8F,0x0F };
uint8_t PROGMEM sound_E        []={(  46), 0xF8,0x03,0x0F,0x07,0xC1,0xE3 };
uint8_t PROGMEM sound_I        []={(  46), 0xFF,0x40,0x17,0xFF,0x00,0x03 };
uint8_t PROGMEM sound_O        []={(  46), 0xF8,0x7C,0xC1,0xF1,0xF8,0x03 };
uint8_t PROGMEM sound_U        []={(  46), 0xFE,0x00,0x7F,0xFC,0x00,0x03 };


и т.д.
кароче предлагаю сделать говорилке апгрейд! :beer:


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Говорилка для AVR
СообщениеДобавлено: 10 мар 2009, 13:21 
Не в сети
Аватара пользователя

Зарегистрирован: 28 авг 2006, 17:09
Сообщения: 664
Откуда: Всеволожск (СПб)
прог. языки: С, C++, Python, Lua, VHDL, Verilog, Forth
ФИО: Олег Белоусов
Здесь нет маленьких кусочков текста - здесь фонемы. Это и правда синтезатор речи - можно синтезировать любой текст, а не только то что записал разработчик


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Говорилка для AVR
СообщениеДобавлено: 10 мар 2009, 13:28 
Не в сети
Аватара пользователя

Зарегистрирован: 15 сен 2007, 13:03
Сообщения: 6338
Откуда: Красноярск
прог. языки: ASM(МК), C(PC)
ФИО: Гагарский Андрей Александрович
вот если бы сделать конфигурируемый фыльтр, или скорее обработчик, для фонем.. дабы менять тон и тд.. вот это было б крутя...

_________________
«Как сердцу выразить себя? … Мысль изреченная есть ложь!»
В этом мире меня подводит доброта и порядочность...
"двое смотрят в лужу, один видит лужу, другой отраженные в ней звезды"


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Говорилка для AVR
СообщениеДобавлено: 10 мар 2009, 13:34 
Не в сети

Зарегистрирован: 22 июл 2008, 10:07
Сообщения: 38
Откуда: Россия, Екатеринбург
прог. языки: BascomAVR | Delphi | VB | C
Выкладываю рабочие процедуры для вывода звука из AT45DB041

Низкоуровневая Voiceout([начало фрагмента] , [конец фрагмента]) служит для вывода определенного интервала страниц из памяти (всего из 2048)

вот, например фраза "тысяча" Voiceout(1256 , 1282); занимает всего 26 страниц...

матрица Say([номер сэмпла]) выводит уже "нарезанные" сэмплы

ну и самое интересное Corresp([любое число от 0 до 1999]) - набирает сэмплы в фразу

будет звучать как "тысяча девятьсот девяносто девять"

Добавлено спустя 4 минуты 28 секунд:
объясните, кто может - какие фонемы за что отвечают - я запишу голосовые фонемы и попробую это все в датафлеш запихать...


Вложения:
dataflash.h [4.15 КиБ]
Скачиваний: 576
dataflash.c [8 КиБ]
Скачиваний: 550
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Говорилка для AVR
СообщениеДобавлено: 10 мар 2009, 13:44 
Не в сети
Аватара пользователя

Зарегистрирован: 28 авг 2006, 17:09
Сообщения: 664
Откуда: Всеволожск (СПб)
прог. языки: С, C++, Python, Lua, VHDL, Verilog, Forth
ФИО: Олег Белоусов
yakuzaa писал(а):
объясните, кто может - какие фонемы за что отвечают - я запишу голосовые фонемы и попробую это все в датафлеш запихать...


[[ru:Фонема]]

Фоне́ма (др.-греч. φώνημα «звук») — минимальная единица звукового строя языка.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Говорилка для AVR
СообщениеДобавлено: 10 мар 2009, 13:52 
Не в сети

Зарегистрирован: 22 июл 2008, 10:07
Сообщения: 38
Откуда: Россия, Екатеринбург
прог. языки: BascomAVR | Delphi | VB | C
да емае! :lol:
я знаю что такое фонемы! мне надо чтобы кто-нибудь объяснил назначения фонем в массиве
например, понятно что "sound_E" в массиве - это гласная "Е"
а вот какую букву этот массив воспроизводит - вообще не понятно:
Код:
uint8_t PROGMEM sound_S_z2     []={(  46),                      0xAA,0xAA,0x5A,0xA5, 0x5A,0xAA };


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Говорилка для AVR
СообщениеДобавлено: 10 мар 2009, 14:20 
Не в сети
Аватара пользователя

Зарегистрирован: 28 авг 2006, 17:09
Сообщения: 664
Откуда: Всеволожск (СПб)
прог. языки: С, C++, Python, Lua, VHDL, Verilog, Forth
ФИО: Олег Белоусов
yakuzaa писал(а):
я знаю что такое фонемы! мне надо чтобы кто-нибудь объяснил назначения фонем в массиве например, понятно что "sound_E" в массиве - это гласная "Е"
а вот какую букву этот массив воспроизводит - вообще не понятно:


Странно, говорите что знаете что такое фонемы а пишете про буквы. Фонемы это звуки, буква может состоять из нескольких фонем - из каких именно зависит от положения буквы в слове, от ударения итд итп. В этом и состоит синтез. И проблема синтеза не в том что бы записать фонемы, а в том что бы их "состыковать". Фонемный синтез кстати один из самых примитивных...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Говорилка для AVR
СообщениеДобавлено: 10 мар 2009, 14:24 
Не в сети

Зарегистрирован: 22 июл 2008, 10:07
Сообщения: 38
Откуда: Россия, Екатеринбург
прог. языки: BascomAVR | Delphi | VB | C
понятно, знач. не знаете.... :pardon:
люююууди! по таблице может кто-нибудь подсказать?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Говорилка для AVR
СообщениеДобавлено: 10 мар 2009, 14:47 
Не в сети
Аватара пользователя

Зарегистрирован: 28 авг 2006, 17:09
Сообщения: 664
Откуда: Всеволожск (СПб)
прог. языки: С, C++, Python, Lua, VHDL, Verilog, Forth
ФИО: Олег Белоусов
yakuzaa писал(а):
понятно, знач. не знаете....


А чего тут знать то? - "Программа документированна на языке Си" ;) Я бы сам глянул - но щас по уши в vhdl...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Говорилка для AVR
СообщениеДобавлено: 10 мар 2009, 14:51 
Не в сети
Аватара пользователя

Зарегистрирован: 15 сен 2007, 13:03
Сообщения: 6338
Откуда: Красноярск
прог. языки: ASM(МК), C(PC)
ФИО: Гагарский Андрей Александрович
поглядите куда кормятся данные массивы - найдете ответ...

_________________
«Как сердцу выразить себя? … Мысль изреченная есть ложь!»
В этом мире меня подводит доброта и порядочность...
"двое смотрят в лужу, один видит лужу, другой отраженные в ней звезды"


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Говорилка для AVR
СообщениеДобавлено: 10 мар 2009, 15:08 
Не в сети

Зарегистрирован: 22 июл 2008, 10:07
Сообщения: 38
Откуда: Россия, Екатеринбург
прог. языки: BascomAVR | Delphi | VB | C
глянул - примерно понятно... думаю как сейчас сделать чтобы без особых переделок фонемы из датафлеш дергать... :o


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Говорилка для AVR
СообщениеДобавлено: 10 мар 2009, 15:34 
Не в сети
Аватара пользователя

Зарегистрирован: 28 авг 2006, 17:09
Сообщения: 664
Откуда: Всеволожск (СПб)
прог. языки: С, C++, Python, Lua, VHDL, Verilog, Forth
ФИО: Олег Белоусов
А зачем на датафлэш? Там фонем длинней 32 байт нет, в среднем 8-16. В первом сообщении было написано, что вся программа 2кб. Ну сделаете вы сэмплированые фонемы - это кардинально улучшит качество? Заблуждение.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Говорилка для AVR
СообщениеДобавлено: 10 мар 2009, 15:37 
Не в сети

Зарегистрирован: 22 июл 2008, 10:07
Сообщения: 38
Откуда: Россия, Екатеринбург
прог. языки: BascomAVR | Delphi | VB | C
можно засемплировать не только отдельные фонемы, но и слоги, цифры... благо размер датафлеши позволяет...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Говорилка для AVR
СообщениеДобавлено: 31 мар 2009, 21:25 
Не в сети

Зарегистрирован: 31 мар 2009, 20:51
Сообщения: 1
ФИО: Влад
Привет всем.
Недавно видел плату с прикрученной SD картой.
Я так подумал прикинул и что надумал...
Записать на карту достаточное количество вариантов ответа, используя кодировку mp3.
Далее прицепить плату звукового сенсора..
Написать программу анализа вопросов и в зависимости от задаваемого вопроса проигрывать вариант ответа :)Сорри темой ошибся...


Последний раз редактировалось dr-mobius 31 мар 2009, 21:50, всего редактировалось 2 раз(а).

Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Говорилка для AVR
СообщениеДобавлено: 31 мар 2009, 21:26 
Не в сети
Аватара пользователя

Зарегистрирован: 06 окт 2004, 18:01
Сообщения: 24218
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов
И? В чем фишка? :)

_________________
Проект [[Open Robotics]] - Универсальные модули для построения роботов


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 132 ]  На страницу Пред.  1, 2, 3, 4, 5 ... 9  След.

Часовой пояс: UTC + 4 часа


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

Сейчас этот форум просматривают: Majestic-12 [Bot] и гости: 3


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
phpBB SEO