Свободный синтезатор русской речи Василиса

Дата публикации:2010
Twitter Facebook Vkontakte

Для операционной системы Mac существует достаточно много синтезаторов речи. Однако если говорить конкретно о русскоязычных голосах, то диапазон предлагаемых решений крайне ограничен. В виду этого особый интерес представляет разработка Юрия Юрьева, который создал синтезатор русской речи для Mac.

Это женский голос по имени Васелиса.

Демонстрация голоса [138 kB].

Сразу стоит отметить, что данное решение имеет несколько нестандартную реализацию: его работа обеспечивается посредством web-сервиса Microsoft Translate, то есть процесс озвучивание текста происходит в on-line режиме через Интернет-канал.

Чтобы воспользоваться этой разработкой пользователь должен иметь операционную систему Mac OS X версии не ниже 10.6, а также достаточно быстрое подключение к Интернету.

Для начала следует скачать сам синтезатор Василиса: http://www.yuriev.info/synth.zip [29,42 kB]. Далее папку "ruSynthesizer.SpeechSynthesizer" скопировать в директорию /Library/Speech/Synthesizers, а папку "Vasilisa.SpeechVoice" скопировать в директорию /Library/Speech/Voices. Если какой-либо из папок нет, то её следует создать.

Активировать Василису можно в разделе "Системные настройки" (System Preferences), пункте "Речь" (Speech).

Разумеется, предлагаемая технология русскоязычного синтеза имеет ряд недостатков, в частности необходимость в постоянном быстром подключении к Интернету, невозможность работы с большими кусками текста, а также на выходе звук достаточно низкого качества. Однако при всём этом следует отметить достаточно высокое качества непосредственно синтеза речи, а также бесплатность и открытость разработки. Последнее заслуживает отдельного упоминания.

Дело в том, что Юрий Юрьев опубликовал в открытом доступе все исходные материалы Василисы с некоторыми комментариями, которые могут оказаться интересными для других разработчиков. Ниже будут приведены пояснения автора для интересующихся.

© Юрий Юрьев:

«… Мы ничего не будем изучать и придумывать, а просто возьмём «готовое» и вылепим из него синтезатор за 5 минут.

Microsoft развивает семимильными шагами веб-сервис Microsoft Translator (бета). Одно из нововведений во второй версии — озвучивание текста на русском языке. Будем использовать этот веб-сервис.

Мы не будем детально изучать и вдаваться в подробности "Speech Synthesis Manager Reference" и "Speech Synthesis Programming Guide" от Apple, а возьмём готовый пример — SynthesizerAndVoiceExample. Этот пример есть в пакете Xcode v3.1.4. Этот пакет, чтобы достать из него примеры, можно загрузить с сайта Apple. В более поздних версиях Apple удалила все примеры, но выложила их у себя на сайте (SynthesizerAndVoiceExample выложить забыла).

Выкладываю уже готовый изменённый проект: http://www.yuriev.info/ruSynthesizer.zip

По сути нам лишь нужно немного изменить несколько методов (буквально несколько строк в каждом методе) в файл SynthesizerSimulator.m проекта SynthesizerAndVoiceExample (для тех, кто ещё не знаком с программированием под Mac OS:исходный код на языке Objective C):
- (id)init;
- (void)startSpeaking:(NSString *)string;
- (void)stopSpeaking;
- (void)sound:(NSSound *)sound didFinishPlaying:(BOOL)aBool;

Самые главные изменения в методе startSpeaking. Мы просто делаем запрос к веб-сервису Microsoft и получаем звуковой файл.

Дополнительно, вам необходимо поставить свой appId при обращении к веб-сервису Microsoft. Его можно бесплатно получить по ссылке http://www.bing.com/developers/createapp.aspx

Изменяем описание голосового модуля для синтезатора Info-VoiceCF1.plist. Изменяем имя, локаль и диапазон произносимых символов. Готовый файл можно взять из финального проекта http://www.yuriev.info/synth.zip

Всё, базовый синтезатор готов. 5 минут работы, а кому-то может оказаться очень полезным.»



Распространение материалов сайта означает, что распространитель принял условия лицензионного соглашения.
Идея и реализация: © Владимир Довыденков и Анатолий Камынин,  2004-2017