当前位置: 首页 > 知识库问答 >
问题:

使用Xamarin和Microsoft语音服务API执行实时连续语音识别

薛弘阔
2023-03-14

我在Bing语音API的文档中看到,可以将录音麦克风输入流式传输到REST服务(https://docs.microsoft.com/en-us/azure/cognitive-services/speech/home):

实时连续识别。语音识别API使用户能够实时将音频转录成文本,并支持接收目前已识别单词的中间结果。

然而,我找不到一个示例来说明如何使用Xamarin表单以跨平台的方式实现这一点。

我找到了以下教程:https://developer.xamarin.com/guides/xamarin-forms/cloud-services/cognitive-services/speech-recognition/

但在这种情况下,发送到API的音频流是一个已经存在的音频文件,然而,我想实现的是流式传输运行应用程序的设备(Android、iOS、UWP)的麦克风输入。

任何见解都将不胜感激。

共有3个答案

齐乐逸
2023-03-14

这里有一个很好的图书馆,可以满足您的需要:

https://github.com/NateRickard/Xamarin.Cognitive.BingSpeech

郎和志
2023-03-14

我有一个使用Bing语音的跨平台解决方案。让IOS正常工作。从未测试过Android解决方案。

融焕
2023-03-14

恐怕没有与支持实时Microsoft语音API的Xamarin兼容的库。唯一兼容的是使用REST协议且不提供实时转录的必应语音API。

实时转录需要完整记录的语音服务WebSocket协议。您可以自己实现这个接口,但要可靠地完成它可能是一项相当复杂的任务。

然而,iOS和Android的本机库确实支持实时流媒体功能。您可以查看iOS教程和Android教程。

然后,您可以使用Xamarin绑定库将本机库绑定到您的Xamarin项目中。对于Java库,请参阅本教程,对于Objective-C库,请参阅本教程。

尤其是创建Objective-C绑定可能是一项艰巨的任务,通常更容易创建一个Objective-C库,作为门面,然后使用本机库。您将了解facade库的接口,然后可以更轻松地创建绑定。您还可以考虑让Xamarin团队为您创建绑定,因为他们在GitHub上维护着越来越多的第三方库绑定集合。

 类似资料:
  • 我正在尝试使用适用于Xamarin Android的Microsoft认知语音从麦克风构建连续语音识别。我认为没有Xamarin的库,所以我稍微修改了“Xamarin。认知。BingSpeech”库(endpoint等)以使其正常工作。我有一些问题 我想通过以下教程连接到microsoft web套接字https://docs.microsoft.com/en-us/azure/cognitive

  • 我正在为基于Xamarin的简单语音识别移动应用程序评估“Bing语音API”及其新兄弟“语音服务”(仍处于预览模式)。 我使用API REST取得了很好的效果,但它的限制持续时间为15秒,这使得它很难应用于连续语音识别和唤醒词。 由于这个原因,我还研究了Bing语音和基于web socket(也称为客户端库)的语音服务SDK。它们在桌面应用程序上运行良好,但似乎与Xamarin不兼容(见下图)。

  • 我知道“x-webkit-speech”能够进行某种语音识别,实际上识别效果很好。 我发现“x-webkit-语音”有利于开发Q 然而,我正在寻找的是一种在浏览器中执行连续语音识别的方法。例如,如果我在网上听到一个讲座,我想实时转录教授正在谈论的内容。 是否可以使用“x-webkit-speech”?我的感觉是,“x-webkit-speech”在检测到一段很短的静默期时会自动停止,这很烦人。我知

  • 如何使用REST API(带javascript SDK)Bing语音API实现连续语音识别? 使用do Javascript SDK示例:https://github.com/Microsoft/Cognitive-Speech-STT-JavaScript只能用麦克风转录短句

  • 我正在尝试创建一个在Android 4.2中运行连续语音识别的服务。使用此链接中的答案(Android 4.1上的Android语音识别服务 我到底做错了什么? 相关活动代码(从活动调用的静态方法,actiityContext是调用此方法的活动): 服务代码:

  • 我正在努力寻找使用谷歌云语音API进行实时连续语音识别的例子。我的要求是使用麦克风,检测语音,并在用户说话时进行转录。 我知道他们的RESTAPI没有这种支持,所以我研究了grpc示例,包括他们提供的示例。但它们似乎都是用户可以上传音频并检测语音的例子。 我在Java,谷歌grpc也支持java。有人遇到一个很好的例子,展示了如何通过麦克风持续进行这种识别吗?