Как мне разрешить запуск нескольких экземпляров приложения TTS?

Для проекта я искал в Интернете программу для командной строки MS, чтобы читать вслух текст в речь с помощью собственного голоса SAPI5. Я нашел тот, который соответствует моим потребностям, https://github.com/brookhong/tts. Это то, что я искал, но мне нужно было запустить его несколько раз одновременно. я имею tts -f 3 -v 1 "Hello" в командном файле, и он работает так, как я хочу, но запуск файла во второй раз заставит его просто говорить после того, как первый экземпляр завершит разговор.

Я пытался удалить m_pVoice->WaitUntilDone( INFINITE ); от источника и уменьшая INFINITE до 1, поскольку это, кажется, препятствует воспроизведению второго экземпляра. Каков был бы другой способ выполнить эту задачу?

1 ответ

Решение

После просмотра источника репозитория GitHub, который вы связали, есть звонок

hr = pVoice->Speak(wbuf, 0, NULL);

Что может быть задержкой. Вместо 0 вы можете попробовать изменить это на

hr = pVoice->Speak(wbuf, SPF_ASYNC , NULL);

Перекомпилируйте и попробуйте запустить несколько экземпляров.

Другие вопросы по тегам