google 语音识别 api v2 中期结果

google speech recognition api v2 interim results

我一直在研究 google 语音识别 API v2 使用 node js npm google-speech-api https://www.npmjs.com/package/google-speech-api 它正在工作,但我需要获取 "interim results".

如何获取正在处理的音频的中间结果。我在网上搜索过,但无法找到有用的信息并使其发挥作用。

下面是我目前正在处理的代码:

var speech = require('google-speech-api');
var fs              = require('fs');

var opts = {
  file: 'amy_16.wav',
  key: 'xxxx',
};

speech(opts, function (err, results) {
 console.log(JSON.stringify(results));
 // [{result: [{alternative: [{transcript: '...'}]}]}]
});

您似乎没有使用流式识别。为了获得部分结果,您需要使用 speech.createRecognizeStream 并将 interimResults 配置标志设置为 true。例如:

var request = {
    config: {
        encoding: 'LINEAR16',
        sampleRate: 16000
    },
    singleUtterance: false,
    interimResults: true
};

fs.createReadStream('amy_16.wav')
    .on('error', console.error)
    .pipe(speech.createRecognizeStream(request))
    .on('error', console.error)
    .on('data', function(data) {
        //do something with the data
        console.log(data)
});

不确定您要实现的目标,但为了简化您可能想要查看的内容 Sonus。它是一个始终倾听的语音识别框架,它支持开箱即用的部分结果。它还进行热词检测。免责声明:这是我的项目