1

I am a little lost and I am really hoping you can help me out. I am trying to consume the Google Speech API. My goal is to take an audio file, send it to Speech API and have it return the text. This is what I have done so far: • Created a project on Google • Created a service account • Registered an environment variable that points to the json file I downloaded from Google. • Installed NuGet GoogleSpeechAPI into Visual Studio 2015

I really don’t know where to go from here. This is what I tried implementing so far: (modified from borrowed code found on codeproject)

var service = new CloudSpeechAPIService(new BaseClientService.Initializer()
{
    HttpClientInitializer = credential,
    ApplicationName = "Ayaz",
});

//FileStream fileStream = File.OpenRead(@"C:\OA\VS_Projects\Speech\good-morning-google.flac");
//MemoryStream memoryStream = new MemoryStream();
//memoryStream.SetLength(fileStream.Length);
//fileStream.Read(memoryStream.GetBuffer(), 0, (int)fileStream.Length);
//byte[] BA_AudioFile = memoryStream.GetBuffer();

string path = @"C:\OA\VS_Projects\Speech\good-morning-google.flac";
byte[] BA_AudioFile = System.IO.File.ReadAllBytes(path);

SyncRecognizeRequest mySyncReq = new SyncRecognizeRequest();

AsyncRecognizeRequest myRequest = new AsyncRecognizeRequest();
RecognitionAudio audio = new RecognitionAudio();
RecognitionConfig rConfig = new RecognitionConfig();
audio.Content = System.Convert.ToBase64String(BA_AudioFile);
rConfig.Encoding = "FLAC";  // LINEAR16   FLAC   MULAW   AMR   AMR_WB 
rConfig.LanguageCode = "us-EN";
rConfig.SampleRate = 44100;
myRequest.Audio = audio;
myRequest.Config = rConfig;

mySyncReq.Audio = audio;
mySyncReq.Config = rConfig;
//service.Speech.Asyncrecognize(myRequest); 
Operation iOp;
//Operation status;
//Syncrecognize   Asyncrecognize
iOp = service.Speech.Asyncrecognize(myRequest).Execute();

while(true)
{
    if (iOp.Done == true)
    {
        break;
    }

}
ekad
  • 14,436
  • 26
  • 44
  • 46
  • The flac file can need to be 16-bit PCM and mono. You can use http://www.audacityteam.org/ to check/convert your files. – Ha Hoang Aug 23 '16 at 03:37
  • Possible duplicate of [AsyncRecognize result is empty](http://stackoverflow.com/questions/38906527/asyncrecognize-result-is-empty) – Nikolay Shmyrev Aug 23 '16 at 06:44

0 Answers0