Our application can be split to parts:

+ Text to speech
+Speech recognition
+String compare

First is text to speech part,we used Interop.SpeechLib.dll (SAPI is the speech API that gives applications access to speech recognition and text-to-speech (TTS) engines. For TTS, SAPI takes text as input and uses the TTS engine to output that text as spoken audio)
We put this to library TextToSpeechHelper,so you just simple call :

string text = "If you see that text,you must be interested in TTS part of English Practice Helper , thank you";
//save audio to file
TTSHelper.GetInstance().TTSToFile(text, filePath);

Second is the speech recognition,in that part,we used google speech recognition API. It contains all necessary dlls to record, decode and send your voice request to google service and recieve a text representation of what you've said.All that we do :
+ Record your voice to wma
+ Convert wma to flac
+ Post request to Google service
+ Get the json result

  //  get the record audio stream and post to google api,get the result            
String  str = SoundRecognition.WavStreamToGoogle(_soundIO.OutputStream);
Thanks ReflectionDM and his article and source code https://googlespeechtotext.codeplex.com/

Last part is string compare.We used Levenshtein algorithm for this solution.Thanks Thanh Dao
And this article http://www.codeproject.com/Articles/11157/An-improvement-on-capturing-similarity-between-str

Last edited Jul 24, 2013 at 3:06 PM by acinmavi, version 2


No comments yet.