【问题标题】:Watson speech-to-text API; support for a media URL?Watson 语音转文本 API;支持媒体 URL?
【发布时间】:2016-04-25 03:05:12
【问题描述】:
目前看来,Watson 的 speech-to-text API 期望 API 调用将要识别的音频上传到 Watson 服务器。在音频已经存在于云中(例如,在 S3 上)的情况下,这需要用户下载文件,然后将其重新上传到 Watson。
有没有办法进行包含媒体文件 URL 的 API 调用?
【问题讨论】:
标签:
ibm-cloud
speech-to-text
ibm-watson
【解决方案1】:
API 需要音频,目前不支持 URL 文件。
由开发人员负责下载音频(在您的情况下是从 S3 下载)并将其上传到 API。
以下示例从 Dropbox 获取一个 ogg 文件并将其发送到 Speech to Text 进行识别。
var watson = require('watson-developer-cloud');
var request = require('request');
var fs = require('fs');
var speechToText = watson.speech_to_text({
username: 'SERVICE USERNAME',
password: 'SERVICE PASSWORD',
version: 'v1',
url: 'https://stream.watsonplatform.net/speech-to-text/api'
});
var audioFile = 'https://www.dropbox.com/s/l97pe3x996fnbtg/speech.ogg?dl=1';
// create the stream
var recognizeStream = speechToText.createRecognizeStream();
// pipe in some audio
request(audioFile).pipe(recognizeStream);
// and pipe out the transcription
recognizeStream.pipe(fs.createWriteStream('transcription.txt'));