2013-03-28 2 views
0

Я хочу отправить SSML для синтеза TTS.Понимание Windows Speech API

Я пытаюсь сделать вызов на Клиентское приложение TTS:

CComPtr<ISpVoice> pVoice; 
pVoice->Speak(ssml, SPF_ASYNC | SPF_PARSE_SSML, NULL); 

Это правильный путь для синтеза в SSML?

Я также внедряю голос SAPI.

Я реализую следующие интерфейсы: ISpTTSEngine, ISpObjectWithToken. Но когда я отправляю флаг SPF_PARSE_SSML, вызывается ISpObjectWithToken::SetObjectToken, но ISpTTSEngine::Speak не отображается!

Моя реализация аналогична этой обучающей программе: http://www.codeproject.com/Articles/6190/Creating-Microsoft-SAPI-Compliant-Application-s

ответ

0

Был две проблемы.

SAPI не принимает SSML. Он поддерживает теги SSML. Я не могу отправить полный SSML.

Использование SPF_PARSE_SSML не означает, что действие Speak будет выполнено.