1

我正在尝试通过 Google 的 API 处理音频并获得所使用的语言。我不需要实际的成绩单。我正在使用颤振,并且查看了网站上的各种文档和问题。

显然,原来的 v1 API似乎不支持检测语言功能。因此,我查看了v2beta API,它似乎支持检测语言功能,并根据此处提供替代语言代码的支持选项。

然而,我能得到的唯一例子是原始的 v1 API,显然有些函数与 beta API 有点不同。

下面是我使用原始 API 文档和 StackOverflow 上的答案汇总的代码。这不适用于 beta API。

import 'package:flutter/material.dart';
import 'package:googleapis/speech/v1.dart';
import 'package:googleapis_auth/auth_io.dart';

final _credentials = new ServiceAccountCredentials.fromJson(r'''
...
''');

const _SCOPES = const [SpeechApi.CloudPlatformScope];

void speechToText() {
  clientViaServiceAccount(_credentials, _SCOPES).then((http_client) {
    var speech = new SpeechApi(http_client);

final _json = {
  "audio": {
    "content":
        SAMPLECONTENT
  },
  "config": {
    "encoding": "LINEAR16",
    "sampleRateHertz": 16000,
    "languageCode": "fr-FR",
    "alternativeLanguageCodes": ["en-US", "ko-KR"],
  }
};
final _recognizeRequest = RecognizeRequest.fromJson(_json);
speech.speech.recognize(_recognizeRequest).then((response) {
    print(response.toJson());
    });
  });
}

问题如下:

  1. 原始 API 不支持“alternativeLanguageCodes”的配置选项,因此似乎不支持检测语言。

  2. Beta 版 API 的功能似乎与原始 API 不同,我只能找到原始 API 的示例。

  3. 我已经查看了 beta API 本身,并且在最后一个小时一直在查看相同的东西,但仍然无法弄清楚如何使它们工作。

有人可以帮助我吗?谢谢!

4

0 回答 0