Преобразование текста в речь сторонней программой

Использование системы в различных ситуациях, вопросы программирования сценариев.

Модератор: immortal

Ответить
oleolay
Сообщения: 7
Зарегистрирован: Ср май 13, 2015 10:26 am
Благодарил (а): 2 раза
Поблагодарили: 0

Преобразование текста в речь сторонней программой

Сообщение oleolay » Вт июн 02, 2015 6:33 pm

Всем доброго времени суток.
Решил попробовать грамотно научить читать MD большие тексты. Есть довольно неплохое бесплатное приложение для этого вот тут. Самое главное, что программа запускается отдельным процессом из консоли, использует SAPI5, имеет великое множество параметров и самое главное поддерживает различного рода словари для настройки произношения. Ну так вот, запускается она из командной строки к примеру вот так:

Код: Выделить всё

C:\balabolka_console.exe -t "Привет" 
... я решил сделать отдельную функцию, рядом с встроенной в MD

Код: Выделить всё

say($ph, $level=0) 
и назвал ее

Код: Выделить всё

sayBalabolka($ph) 
, где передается все та же переменная $ph Запуск осуществляется вот так:

Код: Выделить всё

exec ('C:\balabolka_console.exe -t "'.$ph.'"'); 
при выполнении я ее даже вывел echo, чтобы убедиться в правильности кодировок... Но вот обидно, echo пишет букву в букву, а вот произносится белеберда. Я так понимаю, что при выполнении exec как-то криво передаются русские символы. Подскажите кто-нибудь, во что их перекодировать??? Функцией mb_convert_encoding перепробовал все на свете... Я в программировании на php новичок, может где-то чего-то недочитал...
Аватара пользователя
sergejey
Site Admin
Сообщения: 4286
Зарегистрирован: Пн сен 05, 2011 6:48 pm
Откуда: Минск, Беларусь
Благодарил (а): 76 раз
Поблагодарили: 1559 раз
Контактная информация:

Re: Преобразование текста в речь сторонней программой

Сообщение sergejey » Ср июн 03, 2015 9:47 am

попробуйте вместо exec использовать safe_exec -- по сути тоже самое, только последняя команда работает в отдельном от веб-сервера процессе и перекодирует русский текст в win-кодировку на лету.
За это сообщение автора sergejey поблагодарил:
oleolay (Пт июн 05, 2015 10:23 am)
Рейтинг: 1.16%

Сергей Джейгало, разработчик MajorDoMo
Идеи, ошибки -- за предложениями по исправлению и развитию слежу только здесь!
Профиль Connect -- информация, сотрудничество, услуги
oleolay
Сообщения: 7
Зарегистрирован: Ср май 13, 2015 10:26 am
Благодарил (а): 2 раза
Поблагодарили: 0

Re: Преобразование текста в речь сторонней программой

Сообщение oleolay » Пт июн 05, 2015 10:24 am

Прикрутил выразительного диктора для оффлайн чтения текста, если кому интересно, могу рассказать подробненько.
skysilver
Сообщения: 3006
Зарегистрирован: Чт авг 21, 2014 8:28 am
Откуда: Киров, Россия
Благодарил (а): 400 раз
Поблагодарили: 1754 раза
Контактная информация:

Re: Преобразование текста в речь сторонней программой

Сообщение skysilver » Пт июн 05, 2015 1:54 pm

oleolay писал(а):Прикрутил выразительного диктора для оффлайн чтения текста, если кому интересно, могу рассказать подробненько.
Не спрашивайте, сразу делитесь своими наработками. )) Уверен, многим будет интересно.
MajorDoMo (GitHub) на Cubietruck. ОС Debian 7 (wheezy) (kernel 3.4.105) с переносом на HDD.
Мой CONNECT | Блоги | Telegram
Аватара пользователя
Bagir
Сообщения: 1615
Зарегистрирован: Вт сен 17, 2013 6:46 pm
Откуда: Ярославская область город Углич
Благодарил (а): 212 раз
Поблагодарили: 375 раз

Re: Преобразование текста в речь сторонней программой

Сообщение Bagir » Пт дек 11, 2015 7:59 pm

Вся заморочка в том, что для этой задачи нужно строить очередь. Если система отправляет на чтения два разных сообщения, то они должны звучать один за другим. И это еще не все. Кроме чтения текста у нас есть еще и проигрывание коротких звуков. Без общей очереди звуки будут накладываться на читаемый текст, и будет совершенно некрасиво.
Вообщем вот: http://majordomo.smartliving.ru/forum/v ... =18&t=2194
Сейчас я снова вернулся и продолжу разработку этой программы.
Windows 10, HTTP, MegaD, Z-Wave, 1-Wire, CONNECT
Аватара пользователя
Amarok
Сообщения: 1427
Зарегистрирован: Пт дек 14, 2012 12:24 pm
Откуда: Россия, Нижняя Тура
Благодарил (а): 460 раз
Поблагодарили: 126 раз
Контактная информация:

Re: Преобразование текста в речь сторонней программой

Сообщение Amarok » Сб дек 12, 2015 2:23 pm

oleolay писал(а):Прикрутил выразительного диктора для оффлайн чтения текста, если кому интересно, могу рассказать подробненько.
А он под винды или под линукс? Да и вообще; хотим хлеба и зрелищ. В смысле - рассказывай давай :)
Моя Алиска живёт на Proxmox в Debian 12
Ответить