一段时间后,语音到文本会引发错误:
Grpc.Core.RpcException: Status(StatusCode=OutOfRange, Detail="音频超时错误:长时间没有音频。音频应该接近实时发送。")
另一个错误是:
Grpc.Core.RpcException: Status(StatusCode=Cancelled, Detail="操作被取消。")
如何避免这些错误?两个错误都在功能上:
if (firstMessage == false) {
// var buffer = new byte[32 * 1024];
var buffer = new byte[4096];
int bytesRead;
while ((bytesRead = await outputStream.ReadAsync(
buffer, 0, buffer.Length)) > 0) {
await streamingCall.WriteAsync(
new StreamingRecognizeRequest() {
AudioContent = Google.Protobuf.ByteString
.CopyFrom(buffer, 0, bytesRead),
});
// await Task.Delay(100);
};
}
Run Code Online (Sandbox Code Playgroud)