//asr引擎websocket obj public static WebSocket wss_viki; //asr地址 string str_wss_viki_address; private void loadAsr() { //try //{ wss_viki = new WebSocket(str_wss_viki_address); wss_viki.OnMessage += ws_OnMessage; wss_viki.OnClose += ws_OnClose; wss_viki.OnOpen += ws_OnOpen; wss_viki.Connect(); FileStream fs = new FileStream(audioFile, FileMode.Open); //把文件读取到字节数组 byte[] zipdata = new byte[fs.Length]; fs.Read(zipdata, 0, zipdata.Length); fs.Close(); wss_viki.Send(zipdata); wss_viki.Send("{ 'endOfStream': True }"); //} //catch //{ // MessageBox.Show("ASR 引擎错误"); //} } // 开启事件 private static void ws_OnOpen(object sender, EventArgs e) { wss_viki.Send("{ 'sampleRate' : 8000, 'addPunctuation' : True, 'convertNumbers' : True, 'oral2written' : False, 'needTimeinfo' : False , 'pauseTime' : 150 }"); } // 信息事件 private static void ws_OnMessage(object sender, MessageEventArgs e) { JObject jo = (JObject)JsonConvert.DeserializeObject(e.Data.ToString()); string transcript_ = jo["alternatives_"][0]["transcript_"].ToString(); form1.lab_filename.Text = transcript_; } // 与服务器连接中断 private static void ws_OnClose(object sender, CloseEventArgs e) { }
发表评论