2016-04-15 6 views
1

Derzeit scheint Watson speech-to-text API erwartet, dass der API-Aufruf das Audio auf den Watson-Servern erkannt wird. In einer Situation, in der das Audio bereits in der Cloud vorhanden ist (z. B. in S3), erfordert dies, dass ein Benutzer die Datei herunterlädt und dann erneut in Watson hochlädt.Watson-Sprache-zu-Text-API; Unterstützung für eine Medien-URL?

Gibt es eine Möglichkeit, einen API-Aufruf durchzuführen, der eine URL zu einer Mediendatei enthält?

+1

, das groß sein würde, in der Tat – Leo

+0

Dies wird nicht unterstützt, jedoch können Sie bei https://developer.ibm.com/answers/ die Funktion auf der IBM Support-Website beantragen –

+0

Eigentlich nicht anfordern Diese Funktion auf DW Antworten. Übermitteln Sie die Anfrage stattdessen auf der IBM Bluemix Ideas-Website, die hier verfügbar ist: https://ibm-bluemix.uservoice.com/forums/311383-ibm-bluemix-ideas –

Antwort

0

Die API erwartet Audio und es gibt derzeit keine Unterstützung für eine URL-Datei.
Es ist Sache des Entwicklers, das Audio herunterzuladen (in Ihrem Fall von S3) und es auf die API hochzuladen.

Im folgenden Beispiel wird die ogg-Datei von Dropbox abgerufen und an Speech to Text zur Erkennung gesendet.

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'));