Hi,

i have a wave file and want to convert that into Text format using asp.net

i tried the below code but it not understood when audio file is end.

Index.chtml

@model MvcApplication1.Models.Home @{ ViewBag.Title = "Home Page"; }   @using (Html.BeginForm()) { @Html.HiddenFor(m => m.txtval) @Html.LabelFor(m => m.txtval) }

HomeController


public ActionResult Index() { ViewBag.Message = "WavToTxt"; return View(); }

[HttpPost] public async Task Find() { SpeechRecognitionEngine sre = new SpeechRecognitionEngine(); Grammar gr = new DictationGrammar(); sre.LoadGrammar(gr); //sre.LoadGrammarAsync(gr); sre.SetInputToWaveFile("D:\\arth_mb.wav"); //sre.SetInputToWaveStream("D:\\arth_mb.wav"); sre.BabbleTimeout = new TimeSpan(Int32.MaxValue); sre.InitialSilenceTimeout = new TimeSpan(Int32.MaxValue); sre.EndSilenceTimeout = new TimeSpan(100000000); sre.EndSilenceTimeoutAmbiguous = new TimeSpan(100000000); sre.SpeechRecognized += new EventHandler(sre_SpeechRecognized); sre.RecognizeCompleted += new EventHandler(sre_RecognizeCompleted); Home hm = new Home();   while (!completed) { try { var cnt = sre.Recognize().ToString().Length; var recText = sre.Recognize(); if (recText == null) { break; } hm.txtval += recText.Text; } catch (Exception ex) { //handle exception //... //break; Response.End(); completed = true; } } return View(hm.txtval); //return Json(hm.txtval, JsonRequestBehavior.AllowGet); }   static void sre_RecognizeCompleted(object sender, RecognizeCompletedEventArgs e) { if (e.Error != null) { Console.WriteLine(" Error encountered, {0}: {1}", e.Error.GetType().Name, e.Error.Message); } if (e.Cancelled) { Console.WriteLine(" Operation cancelled."); } if (e.InputStreamEnded) { Console.WriteLine(" End of stream encountered."); }   completed = true; } static void sre_SpeechRecognized(object sender, SpeechRecognizedEventArgs e) { Home hm = new Home();   if (e.Result != null && e.Result.Text != null) { Console.WriteLine(" Recognized text = {0}", e.Result.Text); } else { Console.WriteLine(" Recognized text not available."); } }