我正在尝试通过 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());
});
});
}
问题如下:
原始 API 不支持“alternativeLanguageCodes”的配置选项,因此似乎不支持检测语言。
Beta 版 API 的功能似乎与原始 API 不同,我只能找到原始 API 的示例。
我已经查看了 beta API 本身,并且在最后一个小时一直在查看相同的东西,但仍然无法弄清楚如何使它们工作。
有人可以帮助我吗?谢谢!