谷歌语音算法测试 Beta 功能

问题描述

在 Google Speech 算法页面 (https://cloud.google.com/speech-to-text) 上有一个“演示”部分,您可以在其中上传文件并检查结果。使用测试版功能我能够获得更好的结果,但我无法使用 @google-cloud/speech 库为同一视频文件获得类似的结果。

这些是它在演示部分中显示的配置:

{
  "audio": {
    "content": "/* Your audio */"
  },"config": {
    "audioChannelCount": 2,"enableAutomaticpunctuation": true,"enableSeparateRecognitionPerChannel": true,"encoding": "LINEAR16","languageCode": "en-US","model": "default"
  }
}

它在 Video 模型选项卡下显示的最佳结果,因此我认为应该将 default 模型替换为 video,尽管它也无济于事。

这是测试函数代码

const speech = require('@google-cloud/speech').v1p1beta1;

const client = new speech.SpeechClient({});
const file = fs.readFileSync('filePath');
const audioBytes = file.toString('base64');

const config = {
    languageCode: 'en-US',sampleRateHertz:  16000,encoding:'LINEAR16',audioChannelCount: 2,enableAutomaticpunctuation: true,enableSeparateRecognitionPerChannel: true,model: 'video',};

const request = { audio: { content: audioBytes },config };
const [operation] = await client.longRunningRecognize(request);
const data = await operation.promise();
return data;

有谁知道有什么不同? 谢谢

解决方法

是的,使用 v1p1beta,将模型设置为“视频”而不是“默认”。

上次我使用这个时,类似的配置给了我最好的结果,但我添加了一些你在配置中没有的东西:

  1. "useEnhanced: true"
  2. "speechContexts: {}" // 我给了识别器一些预期的短语
  3. “元数据”

您可以在 this link 中找到所有这些的文档。

但我相信 useEnhanced: true 会对您的情况产生影响。这似乎是识别器使用尖端模型的原因。

祝你好运!