Web services 为什么Azure认知服务SDK语音到文本在WCF服务内意外停止?

Web services 为什么Azure认知服务SDK语音到文本在WCF服务内意外停止?,web-services,wcf,sdk,speech-to-text,azure-cognitive-services,Web Services,Wcf,Sdk,Speech To Text,Azure Cognitive Services,我正在通过客户端的异步调用调用Windows Communication Foundation(WCF)服务,以启动Azure认知语音服务SDK(,使用Microsoft.CognitiveServices.Speech)实例的SpeechRecognizer)。语音识别器有两个参数 SpeechConfig.FromSubscription(key, region) 及 当客户端在开发环境(localhost)中调用WCF时,SpeechRecognizer能够识别长度超过120分钟的音频文

我正在通过客户端的异步调用调用Windows Communication Foundation(WCF)服务,以启动Azure认知语音服务SDK(
,使用Microsoft.CognitiveServices.Speech
)实例的
SpeechRecognizer
)。语音识别器有两个参数

SpeechConfig.FromSubscription(key, region)

当客户端在开发环境(localhost)中调用WCF时,
SpeechRecognizer
能够识别长度超过120分钟的音频文件,并成功返回
RecognizedSpeech
文本结果

当WCF服务部署为基于WCF的Azure云服务时,长度大于9分钟的音频文件的
SpeechRecognitor
似乎永远不会进入:

recognizer.Canceled += (s, e) => {} 
SpeechRecognizer
似乎没有捕获到任何错误,也没有抛出任何错误。该服务似乎意外地停止“侦听”音频输入

我已经尝试将WCF服务的
超时
变量增加到一小时,以及将
缓冲区大小
变量增加到
2GB
。不走运

我现在想知道我是否应该把这个功能放在WCF服务中

我会提供更多必要的信息!谢谢


更新
通过从WCF服务提取Azure认知语音服务并将其放入控制台应用程序(.exe),我能够解决这个问题。走完这条路之后,我建议使用web服务中的消息队列启动其他地方的认知服务,或者简单地将Azure认知语音服务引入客户端。我不推荐我的解决方案,因为它很难在生产环境中调试和测试(只有日志)

欢迎来到StackOveflow!您的问题是,您是否应该将其放入WCF,或者为什么它意外停止?
recognizer.Canceled += (s, e) => {}