2016-09-21 3 views
2

Ich habe die "Übersicht Tutorial": https://cloud.google.com/speech/docs/getting-started Dann habe ich versucht, meine eigene Audiodatei verwenden. Ich habe eine .flac-Datei mit einer Abtastrate von 16000Hz hochgeladen.Google Cloud-Sprache syncrecognize "INVALID_ARGUMENT"

Ich änderte nur die sync-request.json Datei unten mit meiner eigenen Audio-Datei auf Google Cloud Storage gehostet (gs://my-bucket/test4.flac)

{ 
    "config": { 
     "encoding":"flac", 
     "sample_rate": 16000 
    }, 
    "audio": { 
     "uri":"gs://my-bucket/test4.flac" 
    } 
} 

Die Datei erkannt wird gut, aber die Anforderung Liefert ein "INVALID_ARGUMENT" Fehler

{ 
    "error": { 
    "code": 400, 
    "message": "Unable to recognize speech, code=-73541, possible error in recognition config. Please correct the config and retry the request.", 
    "status": "INVALID_ARGUMENT" 
    } 
} 

Antwort

3

Wie pro this Antwort alle Codierungen Unterstützung nur 1 Kanal (mono) Audio

012.351.

Ich war die Schaffung die FLAC-Datei mit folgendem Befehl:

ffmpeg -i test.mp3 test.flac 

Samplerate in Anfrage

Aber das Hinzufügen nicht FLAC-Header entspricht die -ac 1 (Einstellung Anzahl der Audiokanäle 1) behebt dieses Problem.

ffmpeg -i test.mp3 -ac 1 test.flac 

Hier ist mein voller Node.js Code

const Speech = require('@google-cloud/speech'); 
const projectId = 'EnterProjectIdGeneratedByGoogle'; 

const speechClient = Speech({ 
    projectId: projectId 
}); 

// The name of the audio file to transcribe 
var fileName = '/home/user/Documents/test/test.flac'; 


// The audio file's encoding and sample rate 
const options = { 
    encoding: 'FLAC', 
    sampleRate: 44100 
}; 

// Detects speech in the audio file 
speechClient.recognize(fileName, options) 
    .then((results) => { 
     const transcription = results[0]; 
     console.log(`Transcription: ${transcription}`); 
    }, function(err) { 
     console.log(err); 
    }); 

Samplerate gültig diejenigen, 16000 oder 44100 oder andere sein könnte, und Codierung kann FLAC oder LINEAR16 sein. Cloud Speech Docs

Verwandte Themen