Streaming Recognition API is recomended for your application scenario ,认为它只能通过Cloud Speech RPC API(谷歌RPC)访问,而非流式识别API既可用于Cloud Speech REST,也可用于RPC API .
我们在类似的应用程序环境中通过gRPC API使用了AsyncStreamingRecognize,项目在C中,环境设置非常漫长而复杂(您需要为您的环境下载和构建grpc,protoc和Google Speech API存根/库) . 对于我们用作Google Speech API Site上可用示例的应用程序,一旦环境准备就绪,将示例应用程序逻辑调整到我们的特定场景非常简单 .
使用流式API,您在音频编码方面有限制(并非所有编码都受支持)和处理的音频长度(在流媒体中您可以处理长达1分钟的语音),此外,您只能通过服务帐户访问API必须启用才能使用Speech API .
2 回答
您可以提供记录的缓冲区作为识别方法的内容参数,如:
Google Cloud Speech API服务支持两种不同的功能:
非流式识别,假设您向Google平台提供完整音频,并在处理完毕后收到结果
Streaming Recognition,允许您以交互方式(实时)提供音频,并在处理音频块时获得有关结果(部分,中间,结果和最终结果)的通知
以上操作都可以是:
Syncronous,执行命令并等待结果(适用于短文件的标准识别)
Asyncronous,发出命令并等待通知/检查特定命令结果(通常在不同的线程或多线程环境中,音频强制模式超过一分钟)
Streaming Recognition API is recomended for your application scenario ,认为它只能通过Cloud Speech RPC API(谷歌RPC)访问,而非流式识别API既可用于Cloud Speech REST,也可用于RPC API .
我们在类似的应用程序环境中通过gRPC API使用了AsyncStreamingRecognize,项目在C中,环境设置非常漫长而复杂(您需要为您的环境下载和构建grpc,protoc和Google Speech API存根/库) . 对于我们用作Google Speech API Site上可用示例的应用程序,一旦环境准备就绪,将示例应用程序逻辑调整到我们的特定场景非常简单 .
使用流式API,您在音频编码方面有限制(并非所有编码都受支持)和处理的音频长度(在流媒体中您可以处理长达1分钟的语音),此外,您只能通过服务帐户访问API必须启用才能使用Speech API .