Java实现在线语音识别主要为大家详细介绍了Java实现在线语音识别功能,具有一定的参考价值,感兴趣的小伙伴们可以参考一下本文为大家分享了Java实现在线语音识别的具体方法,供大家参考,具体内容如下利用讯飞开发平台作为第三方库首先需要在讯飞开发平台下载SDK,网址为,讯飞开发平台,这些SDK下载都是免费的,当然你需要先注册。在SDK中不仅包含相应的jar包,还有一些相应的demo,可以供你参考学习在我们下载下来第一个SDK之后就可以进行开发了,讯飞的SDK给我们提供了详尽而强大的函数支持,下面我就从代码的角度来进行一些解释。代码packagemyVoice;importjava.awt.Button;importjava.awt.Font;importjava.awt.Frame;importjava.awt.GridLayout;importjava.awt.Panel;importjava.awt.TextArea;importjava.awt.event.ActionEvent;importjava.awt.event.ActionListener;importjava.lang.reflect.Parameter;importjava.util.ArrayList;importjavax.swing.ImageIcon;importjavax.swing.JFrame;importjavax.swing.JLabel;importcom.iflytek.cloud.speech.RecognizerListener;importcom.iflytek.cloud.speech.RecognizerResult;importcom.iflytek.cloud.speech.SpeechError;importcom.iflytek.cloud.speech.SpeechRecognizer;importcom.iflytek.cloud.speech.SpeechUtility;importcom.iflytek.util.DebugLog;importcom.iflytek.util.JsonParser;importcom.iflytek.util.Version;publicclassVoiceSpeechextendsFrameimplementsActionListener{ButtonstartBtn;ButtonstopBtn;TextAreatextArea;//语音听写对象SpeechRecognizerspeechRecognize;privatestaticfinalStringDEF_FONT_NAME="宋体";privatestaticfinalintDEF_FONT_STYLE=Font.BOLD;privatestaticfinalintDEF_FONT_SIZE=30;privatestaticfinalintTEXT_COUNT=100;publicVoiceSpeech(){//初始化听写对象speechRecognize=SpeechRecognizer.createRecognizer();//设置组件startBtn=newButton("start");stopBtn=newButton("stop");textArea=newTextArea();PanelbtnPanel=newPanel();PaneltextPanel=newPanel();//ButtonstartBtn=newButton("开始");//添加监听器startBtn.addActionListener(this);stopBtn.addActionListener(this);btnPanel.add(startBtn);btnPanel.add(stopBtn);textPanel.add(textArea);add(btnPanel);add(textPanel);//设置窗体setLayout(newGridLayout(2,1));setSize(400,300);setTitle("语音识别");setLocation(200,200);setVisible(true);}publicvoidactionPerformed(ActionEvente){if(e.getSource()==startBtn){textArea.setText("*************你说的是:");if(!speechRecognize.isListening())speechRecognize.startListening(recognizerListener);elsespeechRecognize.stopListening();}elseif(e.getSource()==stopBtn){speechRecognize.stopListening();}}/***听写监听器*/privateRecognizerListenerrecognizerListener=newRecognizerListener(){publicvoidonBeginOfSpeech(){//DebugLog.Log("onBeginOfSpeechenter");//((JLabel)jbtnRecognizer.getComponent(0)).setText("听写中...");//jbtnRecognizer.setEnabled(false);}publicvoidonEndOfSpeech(){DebugLog.Log("onEndOfSpeechenter");}/***获取听写结果.获取RecognizerResult类型的识别结果,并对结果进行累加,显示到Area里*/publicvoidonResult(RecognizerResultresults,booleanislast){DebugLog.Log("onResultenter");//如果要解析json结果,请考本项目示例的com.iflytek.util.JsonParser类Stringtext=JsonParser.parseIatResult(results.getResultString());//Stringtext=results.getResultString();//JsonParserjson=newJsonParser();//StringnewTest=json.parseIatResult(text);//textArea.setText(newTest);textArea.append(text);text=textArea.getText();if(null!=text){intn=text.length()/TEXT_COUNT+1;intfontSize=Math.max(10,DEF_FONT_SIZE-2*n);DebugLog.Log("onResultnewfontsize="+fontSize);intstyle=n>1?Font.PLAIN:DEF_FONT_SI...