2016-07-12 12 views
0

Ich verwende unter Node.js Skript-Schnipsel,Nicht alle Sprachdateien geben Ausgabe von Google Speech API in Text für Node.js

'use strict'; 
var google_speech = require('google-speech'); 
google_speech.ASR({ 
    debug: true, 
    lang: 'en_US', 
    developer_key: '<Google API Key>', 
    file: '<voice file name with path>', 
    }, function(err, httpResponse, xml){ 
    if(err){ 
     console.log(err); 
     }else{ 
     console.log(httpResponse.statusCode, xml) 
     } 
    } 
); 

Der Ausgang I von einigen Audio-Dateien immer bin aber nicht für alle. Selbst zum Beispiel eine flac Datei gibt Ausgabe, aber eine andere flac Datei nicht.

Gibt es bestimmte Dateitypen, die für diese API erforderlich sind, um eine Ausgabe zu ermöglichen? Wenn ja, lassen Sie mich den spezifischen Typ/das Format der Datei wissen.

Antwort

0

Wenn Sie mit this google-speech Knoten Bibliothek, scheint es, dass es den content-type Header audio/l16; rate=16000here im Quellcode fest einprogrammiert ist.

Es sieht aus wie diese können in Ihrem ersten param als Option außer Kraft gesetzt werden, so zum Beispiel, wenn Sie eine 44.1khz FLAC-Datei verwenden, kann die folgende

'use strict'; 
var google_speech = require('google-speech'); 
google_speech.ASR({ 
    debug: true, 
    lang: 'en_US', 
    developer_key: '<Google API Key>', 
    file: '<voice file name with path>', 
    'content-type': 'audio/x-flac; rate=44100' // ← override it here 
    }, function(err, httpResponse, xml){ 
    if(err){ 
     console.log(err); 
     }else{ 
     console.log(httpResponse.statusCode, xml) 
     } 
    } 
); 

arbeiten Dass gesagt wird (und das war nicht, was Sie gefragt haben), es scheint, dass Google kürzlich ihre offizielle Cloud Speech API aktualisiert, die Sie auch nützlich finden können. Sie haben ein Nodejs-Tutorial here und ausführlichere Details about the file formats supported here.