我正在研究一个使用语音识别和语音合成与人类交互的程序(它是一个虚拟化身)。用户可以与化身交谈。此外,该程序具有远程模块,用户可以使用远程模块与远程操作员通话。远程操作员通过头像进行交谈。
当用户与远程操作员交谈时,我们当前所做的是将语音转换为远程模块中的文本,然后将文本发送到主模块,然后再将文本转换为语音,反之亦然。但是当冗长的消息导致巨大的延迟时(只有在识别出所有语音之后我们才能发送文本并转换为语音)。因此,这不允许用户和远程操作员之间的良好对话(用户不应该意识到其他人正在说话,它应该看起来像化身正在与用户交谈,因此不应该存在巨大的延迟)
是否可以在c#.NET中实现它。任何人都知道如何实现这个目标?
答案 0 :(得分:1)
我会查看Microsoft认知服务。
https://docs.microsoft.com/en-us/azure/cognitive-services/speech/home
他们为本机客户提供您正在寻找的实时结果:
语音客户端库: 支持更高级的语音识别功能,例如实时中间结果,长音频流(最长10分钟)和连续识别。 使用您偏好的语言提供简单且惯用的API。 隐藏低级别的通信详细信息。
目前,可以使用以下语音客户端库:
C#Desktop Library示例位于: https://github.com/Azure-Samples/Cognitive-Speech-STT-Windows