【问题标题】:How would I go about allowing multiple instances of a TTS app to run?我将如何允许 TTS 应用程序的多个实例运行?
【发布时间】:2016-01-18 03:57:41
【问题描述】:

对于一个项目,我一直在网上寻找一个 MS 命令行程序,以使用自定义 SAPI5 语音朗读文本到语音。我找到了一个适合我的需求,https://github.com/brookhong/tts。这就是我一直在寻找的,但我需要的是让它一次运行多次。我在批处理文件中有tts -f 3 -v 1 "Hello",它按我想要的方式工作,但第二次运行该文件将导致它在第一个实例完成通话后才开始通话。

我尝试从源中删除 m_pVoice->WaitUntilDone( INFINITE ); 并将 INFINITE 减少到 1,因为这似乎阻止了第二个实例的播放。完成这项任务的另一种方法是什么?

【问题讨论】:

    标签: c++ command-line text-to-speech sapi


    【解决方案1】:

    查看你链接的github存储库的来源后,有一个调用

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

    这可能是阻碍。而不是 0 您可能想尝试将其更改为

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

    重新编译,然后尝试运行多个实例。

    【讨论】:

    • 谢谢,久等了。
    • 看来,既然您将其作为可执行文件运行,您只需使用批处理脚本或运行多个终端。
    猜你喜欢
    • 2012-08-31
    • 2011-10-31
    • 1970-01-01
    • 2010-10-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多