我在Bing Speech API的文档中看到,可以将录制麦克风输入流式传输到REST服务(https://docs.microsoft.com/en-us/azure/cognitive-services/speech/home):
实时连续识别。语音识别API启用 用户将音频实时转录为文本,并支持 收到已经过的单词的中间结果 到目前为止已经认识到了。
然而,我无法找到一个示例,展示如何使用Xamarin Forms以跨平台方式实现这一目标。
但是在此,发送到API的音频流是一个已经存在的音频文件,我想要实现的是,然后,流式传输运行应用程序的设备的麦克风输入(Android,iOS, UWP)即可。
任何见解都将受到赞赏。
答案 0 :(得分:3)
我担心没有与支持实时Microsoft Speech API的Xamarin
兼容的库。唯一兼容的是Bing Speech API,它使用REST协议,不提供实时转录。
实时转录需要Speech Service WebSocket protocol,完整记录。您可以自己实现此接口,但要可靠地执行此接口可能是一项非常复杂的任务。
然而,iOS和Android的本机库支持实时流功能。您可以看到tutorial for iOS和tutorial for Android。
然后,您可以使用Xamarin绑定库将本机库绑定到Xamarin项目中。对于Java库see this tutorial和Objective-C库see this tutorial。
特别是创建Objective-C绑定可能是一项艰巨的任务,通常更容易创建一个作为外观的Objective-C库,然后使用本机库。您将了解Facade库的界面,然后您将能够更轻松地创建绑定。您也可以考虑让Xamarin团队为您创建绑定,因为它们保留了third-party library bindings on GitHub不断增长的集合。
答案 1 :(得分:0)
我使用Bing演讲cross platform solution。让IOS工作。从未测试Android解决方案。
答案 2 :(得分:0)
这里有一个适合您需要的强大库: