Bonjour je suis entrain de programmer une appalication speech to text, utilisant c# et google speech, tout marche en utilisant le demo de google(bonjou et good-morning). Mais moi ce que je veux c'est faire le speech to text en direct. mon probleme est la conversion de .wave a .flac, par ce qu'il faut envoyer la requete a google speech, et ce dernier accepte seulement les fichiers de type .flac.
Voila mon code pour une simple enregistrement, si vous avez une idée vous pouvez m'orienter pour regler mon probleme.
ce que je veux c'est enregistrer en utilisanat le micro, le wave se converti en flac, apres l'enovoyer a google.
Merci davance
public string speechtoText()
{
string api_key = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";
string path = @"C:\good-morning-google.flac";
byte[] bytes = System.IO.File.ReadAllBytes(path);
WebClient client = new WebClient();
client.Headers.Add("Content-Type", "audio/x-flac; rate=44100" );
byte[] result = client.UploadData(string.Format(
"https://www.google.com/speech-api/v2/recognize?client=chromium&lang=en-us&key={0}", api_key), "POST", bytes);
string s = client.Encoding.GetString(result);
String[] jsons = s.Split('\n');
String text = "";
foreach (String j in jsons)
{
dynamic jsonObject = JsonConvert.DeserializeObject<SpeechResponse>(j);
if (jsonObject == null || jsonObject.Result.Length <= 0)
{
continue;
}
text = jsonObject.Result[0].Alternative[0].Transcript;
}
return text;
}