Я пытаюсь записать аудиофайл с помощью клиента node.js Google Speech to Text и Google Cloud Function.
К сожалению, я получаю эту ошибку:
Ошибка: 5 NOT_FOUND: запрошенная сущность не найдена
Я предполагал, что это связано с проблемой аутентификации, но я не уверен.
Сначала я попытался без учетных данных, предполагая, что GCF будет использовать ADC (учетные данные приложения по умолчанию).
После этого я добавил client_email et private_key из служебной учетной записи в параметр параметров SpeechClient, но это не сработало.
Я добавил projectId и keyFilename ... не лучше.
Может быть, это не очень хорошо ... Понятия не имею!
Вот мой код. Спасибо за вашу помощь.
const audioFilename = 'gs://' + outputBucket.name + '/' + event.data.name;
const request = {
"config": {
"enableWordTimeOffsets": false,
"languageCode": "fr-FR",
"encoding":"FLAC"
},
"audio": {
"uri": audioFilename
}
}
const options = {
credentials :{
projectId: 'xxxxxx',
keyFilename: './xxxxx.json',
client_email:'xxxx@xxxxx',
private_key:'xxxxxxxxx'
}
};
const client = new speech.SpeechClient(options);
client
.longRunningRecognize(request)
.then(data => {
const response = data[0];
const operation = response;
operation.on('progress', (metadata, apiResponse) => {
console.log(JSON.stringify(metadata))
});
// Get a Promise representation of the final result of the job
return operation.promise();
})
.then(data => {
const [response] = data[0];
const content = response.results
.map(result => result.alternatives[0].transcript)
.join('\n');
console.log(`Transcription: ${content}`);
resolve(content);
})
.catch(err => {
reject(err);
});