将语音转换为文本,然后将文本转换为语音

时间:2017-11-16 03:57:51

标签: c# .net speech-recognition text-to-speech

我正在研究一个使用语音识别和语音合成与人类交互的程序(它是一个虚拟化身)。用户可以与化身交谈。此外,该程序具有远程模块,用户可以使用远程模块与远程操作员通话。远程操作员通过头像进行交谈。

当用户与远程操作员交谈时,我们当前所做的是将语音转换为远程模块中的文本,然后将文本发送到主模块,然后再将文本转换为语音,反之亦然。但是当冗长的消息导致巨大的延迟时(只有在识别出所有语音之后我们才能发送文本并转换为语音)。因此,这不允许用户和远程操作员之间的良好对话(用户不应该意识到其他人正在说话,它应该看起来像化身正在与用户交谈,因此不应该存在巨大的延迟)

是否可以在c#.NET中实现它。任何人都知道如何实现这个目标?

1 个答案:

答案 0 :(得分:1)

我会查看Microsoft认知服务。

https://docs.microsoft.com/en-us/azure/cognitive-services/speech/home

他们为本机客户提供您正在寻找的实时结果:

  

语音客户端库:   支持更高级的语音识别功能,例如实时中间结果,长音频流(最长10分钟)和连续识别。   使用您偏好的语言提供简单且惯用的API。   隐藏低级别的通信详细信息。

目前,可以使用以下语音客户端库:

  • C#桌面库
  • C#服务库
  • JavaScript库
  • Android的Java库
  • iOS的Objective-C库

C#Desktop Library示例位于: https://github.com/Azure-Samples/Cognitive-Speech-STT-Windows

来源:https://docs.microsoft.com/en-us/azure/cognitive-services/speech/getstarted/getstartedclientlibraries