跳到主要内容

最小化卡顿

本指南讨论了RuntimeSpeechRecognizer插件中两种常见的卡顿来源,并提供了实际解决方案,以减轻性能影响。

可捕捉的声波

在使用StartCapture函数启动可捕捉声波时,可能会遇到短暂的延迟,这种延迟是引擎特定的,并且在不修改引擎特定代码的情况下目前无法避免。此延迟的持续时间因平台而异,因为它与用于从输入设备(麦克风)检索音频数据的平台特定代码执行相关。在Windows、Mac、Android和iOS等平台上已观察到这一延迟,可能对其它平台也相关。

为了最小化这种卡顿,考虑在影响可以忽略不计的时刻开始捕捉,如在加载屏幕期间。调用StartCapture后,立即使用ToggleMute函数并将Mute参数设置为True。当准备好开始捕获音频数据时,通过调用ToggleMute并将Mute参数设置为False来激活可捕捉的声波。您可以在这里查看更多相关信息。

开始语音识别

当通过调用StartSpeechRecognition触发语音识别时,可能会出现轻微卡顿,这是由于引擎加载语言模型资产导致的。尽管此过程设计为异步且在单独的线程上执行,但引擎内部仍在游戏线程上执行某些操作,导致明显的轻微延迟,特别是在处理大型资产如语言模型时。

为消除这种卡顿,请遵循上面所述的相同原则:在影响可以接受或忽略不计的时刻调用StartSpeechRecognition,如在加载屏幕期间。