Заставьте SAPI TTS говорить строковые переменные

Итак, у меня есть программа, где я использую SAPI, как это:

ISpVoice * pVoice = NULL;

if (FAILED(::CoInitialize(NULL)))
{
return FALSE;
}

HRESULT hr = CoCreateInstance(CLSID_SpVoice, NULL, CLSCTX_ALL, IID_ISpVoice, (void     **)&pVoice);
if( SUCCEEDED( hr ) )
{
hr = pVoice->Speak(L"I can talk!", SPF_IS_XML, NULL);
}

Но я хочу объявить переменную, а затем сделать так, чтобы сапи произнес их. Как я могу это сделать?

Спасибо

0

Решение

Использовать std::wstring, Предполагая, что вы хотите, чтобы пользователь ввел, что сказать (за исключением текстового поля и кнопки):

std::cout << "Enter lines of text to speak:\n";
for (std::wstring text; std::wcin >> text;) {
if (FAILED(hr = pVoice->Speak(text.c_str(), SPF_IS_XML, NULL))) {
std::cout << "Sorry, the text could not be spoken. The error code is " << hr << '\n';
}
}
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]