2017-05-31 189 views
0

我正尝试使用Bing Speech API构建基于PHP的应用程序。Bing语音API cURL> 408请求超时(> 14000毫秒)

继这个链接的示例(https://docs.microsoft.com/en-us/azure/cognitive-services/speech/getstarted/getstarted-curl)后,我尝试将它调整为一个PHP请求。 获取JWT访问令牌非常简单,我设法将原始cURL请求调整为基于PHP的cURL请求。

但是,识别音频文件被证明是头痛的事情。 起初,我尝试了几种将代码转换为基于cURL请求的方法,但都没有工作。他们最终返回“408请求超时(> 14000毫秒)”错误。我认为这与我的PHP脚本有关。然而,使用示例URL进行进一步的测试(显然替换为正确的id和全部),也给了我相同的“408请求超时(> 14000 ms)”错误。

我试图通过网络搜索周围的答案,但没有运气。有这个链接(408 Request timed out Microsoft Speech to Text),但似乎是使用旧版本的API,当我尝试只导致“403 Forbidden”错误。

直卷曲我尝试是:

卷曲-v -X POST “https://speech.platform.bing.com/speech/recognition/interactive/cognitiveservices/v1?language=en-US&locale=en-US&format=detailed&requestid=d8d3c0ed-fca2-4418-b12a-9526ffefa729” -H '授权:承载[_token_id_obscured_]' -H“内容类型:音频/ WAV;编解码器= “音频/ PCM”; samplerate = 16000'--data-binary @ [_ wav_filename_obscured_]

我试了几个文件,所有文件都不到10秒。使用Audacity导出文件,项目速率设置为16000Hz,文件格式为“WAV(微软)签名的16位PCM”。

对此的任何输入将不胜感激。

回答

0

为了避免这个问题,你还需要添加下面的请求头中的命令:

-H 'Transfer-Encoding: chunked' 
+0

感谢您的输入,这是确实需要的是什么。讨厌官方文件没有这样说。 顺便提一下如何提高检测的准确性的建议?到目前为止,我得到的准确性非常令人震惊,而不是我给API提供的一个文件生成的东西接近于所说的。我试过改变语言环境,但目前为止还没有运气,有没有其他隐藏的设置? – Tirto