如何在node.js中使用Watson文本到语音api?

时间:2016-08-24 16:34:46

标签: javascript node.js ibm-cloud ibm-watson

我是使用express和node.js的初学者。我对如何使用Watson api感到困惑,我几乎无法理解文档/ apis。我只是想尝试将watson api用于我的应用程序。所以我将列举我的所作所为以及陷入困境的地方。

首先,我在命令行执行此操作,以获取框架。

express test

然后我使用此命令安装了依赖项。

cd test && npm install

然后我通过命令

安装了watson
npm install watson-developer-cloud

然后我将此代码放在我的app.js文件中。

var TextToSpeechV1 = require('watson-developer-cloud/text-to-speech/v1');
var fs = require('fs');

var text_to_speech = new TextToSpeechV1({
    username: 'INSERT YOUR USERNAME FOR THE SERVICE HERE', (placed my username and password)
    password: 'INSERT YOUR PASSWORD FOR THE SERVICE HERE'
});

var params = {
    text: 'Hello from IBM Watson',
    voice: 'en-US_AllisonVoice', // Optional voice
    accept: 'audio/wav'
};

// Pipe the synthesized text to a file
text_to_speech.synthesize(params).pipe(fs.createWriteStream('output.wav'));

所以我知道这意味着我正在创建一个Watson对象。但我不知道从哪里开始。我只是想创建一个简单的文本到语音,其中有一个文本框和一个发言按钮。

1 个答案:

答案 0 :(得分:0)

  

文本框和发言按钮。

你的意思是在网络浏览器?在这种情况下,您可能想要签出watson-speech SDK而不是Node.js。在https://github.com/watson-developer-cloud/speech-javascript-sdk/blob/v0.20.0/examples/static/text-to-speech.html有一个例子可以完全或更少地描述你所描述的内容。

(请注意,Watson-speech浏览器SDK仍然需要Node.js中的一些服务器端代码或生成auth令牌的任何内容。请参阅https://github.com/watson-developer-cloud/speech-javascript-sdk/tree/v0.20.0/examples

如果您不希望出于任何原因在Node.js中进行此操作,请查看演示https://text-to-speech-demo.mybluemix.net/& https://github.com/watson-developer-cloud/text-to-speech-nodejs - 当前版本使用Node.js SDK,然后通过Node.js将音频发送到浏览器进行播放。