Здесь я привожу пример обработки, в которой доступно показано, как можно сделать озвучку любого текста из 1С с минимальными знаниями в программировании и сильно урезанным бюджетом.
В Windows уже есть встроенный синтезатор речи SAPI 5, но он говорит только на английском, а русскую версию я сразу не нашел, поэтому устанавливаем от того же Microsoft другую версию синтезатора речи.
Microsoft Speech Platform — набор инструментов, позволяющих разработчикам строить решения с распознаванием голоса и перевода голоса в текст. Текущая версия 11.0 платформы предлагает голоса для 26 языков, включая русский.
Для работы синтезатора речи необходимо загрузить и установить следующие компоненты Microsoft Speech Platform:
- Microsoft Speech Platform — Runtime – серверная часть платформы, предоставляющая API (набор функций) для программ (файл с именем «SpeechPlatformRuntime.msi» для 32-битных и 64-битных версий Windows).
- Microsoft Speech Platform — Runtime Languages – набор языков для серверной части. Для каждого языка доступны для скачивания модули для распознавания речи (файлы, чьи имена начинаются с «MSSpeech_SR_») и компьютерные голоса (файлы, чьи имена начинаются с «MSSpeech_TTS_»).
В списке голосов присутствует и русский голос Elena (файл с именем «MSSpeech_TTS_ru-RU_Elena.msi», размер 6 МБ).
Платформа поддерживает Windows XP, Windows Vista, Windows Server 2008 и Windows 7. На остальных не проверял.
Устанавливаем все эти компоненты из приложенного архива. Открываем 1С, запускаем обработку либо для управляемых, либо для обычных форм. Пишем текст, слушаем звук. Наличие звуковой карты и колонок или наушников обязательно.
UPD:
Нашел для SAPI5 отличный движок, который умеет говорить на русском и английском, с интонацией и женским голосом, а зовут это чудо Милена. Файл движка очень большой, поэтому выложен отдельно. По качеству гораздо лучше, чем предлагаемый выше Elena.
Прямая ссылка на движок Милена: https://dl.dropboxusercontent.com/u/94504750/Russian_Milena.rar
Переработан интерфейс обработки для возможности выбора типа синтезатора и голоса.
Подключение компоненты синтезатора речи осуществляется через COM объект.
КомпонентаСинтезатораРечи = Новый COMОбъект(«SPEECH.SpVoice»);
КомпонентаСинтезатораРечи.Speak(«Привет, как дела?»);
Для асинхронного (фонового) выполнения второй параметр нужно установить в 1.
Пример: КомпонентаСинтезатораРечи.Speak(«Привет, как дела?», 1 )
Информация о дополнительных параметрах для SAPI https://msdn.microsoft.com/en-us/library/ms720892%28v=vs.85%29.aspx
Все довольно просто выходит. Буду иметь в виду, если придется решать вопрос по интеграции.
«В Windows уже есть встроенный синтезатор речи SAPI 5, но он говорит только на английском, а русской версии я не нашел, поэтому устанавливаем от того же Microsoft другую версию синтезатора речи»
В 2010 году такое делали, пользуясь спичем от Офиса. Голос Звездочета выбрали тогда
(0) автор — а что за хитрый подход к ссылкам ? почему не прямые ссылки на Microsoft ?
(5) lustin, Исправлено
(1) myr4ik07, мы в хохляндии чтоль?
(4)
Ты хвастаешься тем, что не понимаешь чужой язык ?
Забавная вещь, но больше напоминает показательные возможности 1С, чем практическое применение.
(5) lustin, Вроде на MS там ссылки
Добрый день!
Пожалуйста подскажите начинающему программисту, каким образом из 1С происходит обращение и вызов этого «волшебного» синтезатора речи ?
Спасибо.
(11) nikivr, Подключение компоненты синтезатора речи осуществляется через COM объект.
КомпонентаСинтезатораРечи = Новый COMОбъект(«SPEECH.SpVoice»);
КомпонентаСинтезатораРечи.Speak(«Привет, как дела?»);
Хорошая штука !
p.s. Пробовал обработкой с обычными формами под SAPI5. Сперва пришлось тип реквизита «Голос» («любаяссылка») табличной части «СписокГолосов» на строку неопределенной длины поменять.
fyi Для асинхронного (фонового) выполнения второй параметр нужно установить в 1 (https://msdn.microsoft.com/en-us/library/ms720892%28v=vs.85%29.aspx ) . Пример КомпонентаСинтезатораРечи.Speak(«Привет, как дела?», 1 )
(13) Kashemir, Учел предложения и внес в публикацию. Спасибо.
Автор, вы бы не могли выложить несколько строк примера кода (или обработку куда-то в бесплатное место положить) как использовать движок Milena?
В тонком и веб-клиенте платформы 8.3.8 будет работать?
(15)
Показать
Хорошая вещь, все установилось и стало работать с полтычка, спасибо автору!
Голос Милены гораздо приятнее чем Микрософтовской барышни.
Ссылка на движок Милена умерла
,,, разобрался )
(14) асинхронный вызов не получается. Он точно работает из 1С? Windows 10.
Добрый день!
Оригинальное решение! Встроил в свою конфигурацию.
Теперь после выполнения фонового задания, тетка сообщает об этом.
Ранее приходилось постоянно переключаться и смотреть результаты, что постоянно отвлекало.
Однозначно +.