INVALID_ARGUMENT 错误 Google 语音 API
INVALID_ARGUMENT error by Google speech API
我想使用 Google Speech API 的异步转录服务。我已经将我的音频文件上传到 Google 个存储桶,我正在尝试将它与以下代码一起使用(我已经从命令中删除了我的密钥和我的文件名,其他所有内容都被复制了)。
curl -H "Content-Type: application/json"
--data '{"audio":{"uri":"https://storage.cloud.google.com/<mybucketname>/<filename>"},
"config":{"encoding":"FLAC","sample_rate_hertz":"16000","language_code":"en_US"}}'
https://speech.googleapis.com/v1/speech:longrunningrecognize?key=<mykey>
我收到 400 INVALID_ARGUMENT 错误告诉我 "Request contains an invalid argument"。我在 curl 请求中做错了什么?
<文件名>后面要加双引号吗?
显然问题出在我的 URI 中。 Google 有一种特殊的方式来引用 Google 桶中的项目,以 "gs:" 作为前缀。
curl -H "Content-Type: application/json"
--data '{"audio":{"uri":"gs://<mybucketname>/<filename>"},
"config":{"encoding":"FLAC","sample_rate_hertz":"16000","language_code":"en_US"}}'
https://speech.googleapis.com/v1/speech:longrunningrecognize?key=<mykey>
请注意,在我切换到这种方法后,我遇到了一个无法克服的权限错误,但我认为这与我发出 curl 请求的方式无关。
勾选sample_rate_Hertz。您可能会发现这是 SYNCHRONOUS 请求的格式。
异步是 sampleRateHertz。
我刚刚让它工作,所以如果您需要,请在我记忆犹新的时候恢复!
我正在使用 Node JS 客户端和 google 存储来存储文件。
// The audio file's encoding, sample rate in Hertz, and BCP-47 language code
const audio = {
uri: 'gs://sst_bbc/',
};
const config = {
enableWordTimeOffsets: true,
encoding: 'FLAC',
// sampleRateHertz: 16000,
languageCode: 'en-US',
};
const request = {
audio: audio,
config: config,
};
// Detects speech in the audio file
const [operation] = await client.longRunningRecognize(request);
const [response] = await operation.promise();
fs.writeFileSync('ted_talk.json', JSON.stringify(response), 'utf8');
我犯了一个错误,没有提到确切的对象。控制台中的错误非常模糊。在我设置正确的路径后,它开始正常工作。
const audio = {
uri: 'gs://sst_bbc/ted_talk.flac',
};
如果文件位置正确,请仔细检查编码 type.I
我想使用 Google Speech API 的异步转录服务。我已经将我的音频文件上传到 Google 个存储桶,我正在尝试将它与以下代码一起使用(我已经从命令中删除了我的密钥和我的文件名,其他所有内容都被复制了)。
curl -H "Content-Type: application/json"
--data '{"audio":{"uri":"https://storage.cloud.google.com/<mybucketname>/<filename>"},
"config":{"encoding":"FLAC","sample_rate_hertz":"16000","language_code":"en_US"}}'
https://speech.googleapis.com/v1/speech:longrunningrecognize?key=<mykey>
我收到 400 INVALID_ARGUMENT 错误告诉我 "Request contains an invalid argument"。我在 curl 请求中做错了什么?
<文件名>后面要加双引号吗?
显然问题出在我的 URI 中。 Google 有一种特殊的方式来引用 Google 桶中的项目,以 "gs:" 作为前缀。
curl -H "Content-Type: application/json"
--data '{"audio":{"uri":"gs://<mybucketname>/<filename>"},
"config":{"encoding":"FLAC","sample_rate_hertz":"16000","language_code":"en_US"}}'
https://speech.googleapis.com/v1/speech:longrunningrecognize?key=<mykey>
请注意,在我切换到这种方法后,我遇到了一个无法克服的权限错误,但我认为这与我发出 curl 请求的方式无关。
勾选sample_rate_Hertz。您可能会发现这是 SYNCHRONOUS 请求的格式。
异步是 sampleRateHertz。
我刚刚让它工作,所以如果您需要,请在我记忆犹新的时候恢复!
我正在使用 Node JS 客户端和 google 存储来存储文件。
// The audio file's encoding, sample rate in Hertz, and BCP-47 language code
const audio = {
uri: 'gs://sst_bbc/',
};
const config = {
enableWordTimeOffsets: true,
encoding: 'FLAC',
// sampleRateHertz: 16000,
languageCode: 'en-US',
};
const request = {
audio: audio,
config: config,
};
// Detects speech in the audio file
const [operation] = await client.longRunningRecognize(request);
const [response] = await operation.promise();
fs.writeFileSync('ted_talk.json', JSON.stringify(response), 'utf8');
我犯了一个错误,没有提到确切的对象。控制台中的错误非常模糊。在我设置正确的路径后,它开始正常工作。
const audio = {
uri: 'gs://sst_bbc/ted_talk.flac',
};
如果文件位置正确,请仔细检查编码 type.I