我能够从 Bing Voice Recognition 的 REST API 获得简短的听写答案。我的目标是获得超过 15-30 秒(又名长听写模式)的音频文件的响应。因此,我为获得简短答案所做的工作如下(我正在开发一个 HTML uwp 应用程序):
ArrayBuffer
从音频文件(wav)生成- 通过访问令牌进行身份验证
- 使用以下设置将音频数据发送到 REST API:
var accessToken = [[accessTocken]];
var url = 'https://speech.platform.bing.com/recognize?';
var params = {
'version': '3.0',
'format': 'json',
'locale': 'en-US',
'device.os': 'Windows OS',
'scenarios': 'smd',
'appid': 'D4D52672-91D7-4C74-8AD8-42B1D98141A5',
'requestid': guid(),
'instanceid': guid()
};
var options = {
url: url + $.param(params),
type: "POST",
headers: {
'Authorization': 'Bearer ' + accessToken,
'Content-Type': 'audio/wav; samplerate=16000'
},
data: data
};
return WinJS.xhr(options);
所以这行得通!但是对于长时间的听写场景,我该如何做到这一点?
请不要参考https://github.com/microsoft/Cognitive-Speech-STT-Javascript上的 JavaScript GitHub 存储库。这仅适用于简短的听写并且在 Edge 浏览器中不起作用。