我正在尝试在我的web应用程序中实现谷歌的语音到文本的转录,但遇到了很多麻烦。
我决定从底层开始,看看是否至少可以为Node.js实现他们的quickstart示例。在下面的两个示例中(一个旨在转录本地音频文件,另一个旨在转录uri上的音频),最终在控制台中出现了完全相同的错误:
(节点:4836)UnhandledPromiseRejectionWarning:错误:{处的文件不存在,或者它不是文件。提示:没有这样的文件或目录,lstat'[项目文件夹的路径]/{‘
URI示例(基于此)
//Use dotenv to Pull in my Credentials
require('dotenv').config();
// Imports the Google Cloud client library
const speech = require('@google-cloud/speech');
// Creates a client
const client = new speech.SpeechClient();
async function quickstart() {
// The path to the remote LINEAR16 file
const gcsUri = 'gs://cloud-samples-data/speech/brooklyn_bridge.raw';
// The audio file's encoding, sample rate in hertz, and BCP-47 language code
const audio = {
uri: gcsUri,
};
const config = {
encoding: 'LINEAR16',
sampleRateHertz: 16000,
languageCode: 'en-US',
};
const request = {
audio: audio,
config: config,
};
// Detects speech in the audio file
const [response] = await client.recognize(request);
const transcription = response.results
.map(result => result.alternatives[0].transcript)
.join('\n');
console.log(`Transcription: ${transcription}`);
}
quickstart();
本地音频文件示例(基于此)
require('dotenv').config();
const speech = require('@google-cloud/speech');
const fs = require('fs');
async function main() {
const client = new speech.SpeechClient();
const filename = './resources/Sample.mp3';
const file = fs.readFileSync(filename);
const audioBytes = file.toString('base64');
const audio = {
content: audioBytes
};
const config = {
encoding: 'LINEAR16',
sampleRateHertz: 16000,
languageCode: 'en-US'
};
const request = {
audio: audio,
config: config
};
const [response] = await client.recognize(request);
const transcription = response.results.map(result =>
result.alternatives[0].transcript).join('\n'));
console.log(`Transcription: ${transcription}`);
}
main().catch(console.error);
我错过了什么?提前道谢!
好的!我想出来了...
在my.env中,我将GOOGLE_APPLICATION_CREDENTIALS环境变量设置为json服务帐户密钥的复制和粘贴内容,而不是将其设置为json文件的路径。
将其设置为密钥的路径修复了我的问题
问题内容: 我从节点应用程序收到此错误: 我知道文件在那里,因为当我尝试使用确切的复制和粘贴路径打开文件时,它可以工作。我也知道应用程序使用的是正确的目录,因为它会在错误中输出它。 问题答案: 波浪形扩展是一件空壳的事情。编写正确的路径名(可能是yourusername )或使用
一切正常,uri正在获取图像和路径,但在第二个acitivty返回时,图像不显示在imageView中,并在logcat中显示,请帮助 E/Ashish://storage/emulated/0/pictures/fotoaula/img_20180329_183302.jpg E/bitmapFactory:无法解码流:java.io.fileNotFoundException://storag
问题内容: 我有一个Nodejs Web应用程序,当前正在服务器上成功运行。现在,我正在尝试在开发服务器上设置本地副本。 我目前已经像生产服务器中一样安装了Nodejs,NPM和Mongo,但是当我尝试启动节点服务器时出现以下错误 是什么导致此问题? 问题答案: 您的应用希望在处找到一个文件,但该文件不存在(这意味着)。因此,您要么需要创建预期的目录结构,要么配置您的应用程序,使其在的正确目录中查
我在节点Js中工作。当我尝试加载文件时:moviedata.json,如下行: 显示: 错误:ENOENT:没有这样的文件或目录,打开'./moviedata.json'在错误(本机)在Object.fs.open同步(fs.js:640: 18)在Object.fs.readFileSync(fs.js:508: 33)在对象。(/用户/dortiz/文档/NodeJS/pruebas/zw/a
方法总是给出这样的错误: 打开失败:ENOENT(没有这样的文件或目录)
问题内容: 我正在使用Ubuntu 14.04。我有以下代码: 但我不断收到以下错误: python程序和图像都在同一位置。可能是什么问题? 问题答案: 您需要安装: