科大讯飞(语音合成和语音听写)
来源:互联网 发布:www.taobao.com淘宝网 编辑:程序博客网 时间:2024/04/29 19:31
由于google的自带的TTS不支持中文转语音。所以很无奈的只能选择语音龙头中的科大讯飞了
本文章只是简单的实现语音合成和语音听写
package com.example.viocedemo;import com.iflytek.cloud.speech.RecognizerResult;import com.iflytek.cloud.speech.SpeechConstant;import com.iflytek.cloud.speech.SpeechError;import com.iflytek.cloud.speech.SpeechListener;import com.iflytek.cloud.speech.SpeechSynthesizer;import com.iflytek.cloud.speech.SpeechUser;import com.iflytek.cloud.speech.SynthesizerListener;import com.iflytek.cloud.ui.RecognizerDialog;import com.iflytek.cloud.ui.RecognizerDialogListener;import android.os.Bundle;import android.app.Activity;import android.view.Menu;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;import android.widget.EditText;public class MainActivity extends Activity implements OnClickListener,SynthesizerListener{private EditText editText;private Button button1;private Button button2;//合成对象private SpeechSynthesizer speechSynthesizer;//识别窗口private RecognizerDialog recognizerDialog;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);SpeechUser.getUser().login(MainActivity.this, null, null, "appid=5317e26a", listener);init();setParam();}public void init(){editText = (EditText) findViewById(R.id.editText1);button1 = (Button) findViewById(R.id.button1);button2 = (Button) findViewById(R.id.button2);button1.setOnClickListener(this);button2.setOnClickListener(this);}public void setParam(){speechSynthesizer = SpeechSynthesizer.createSynthesizer(this);speechSynthesizer.setParameter(SpeechConstant.VOICE_NAME, "xiaoyan");speechSynthesizer.setParameter(SpeechConstant.SPEED, "50");speechSynthesizer.setParameter(SpeechConstant.VOLUME, "50");speechSynthesizer.setParameter(SpeechConstant.PITCH, "50");}public void setDialog(){recognizerDialog = new RecognizerDialog(this);recognizerDialog.setParameter(SpeechConstant.DOMAIN, "iat");recognizerDialog.setParameter(SpeechConstant.SAMPLE_RATE, "16000");editText.setText(null);//显示DialogrecognizerDialog.setListener(dialogListener);recognizerDialog.show();}/** * 识别回调监听器 */private RecognizerDialogListener dialogListener = new RecognizerDialogListener() {//识别结果回调@Overridepublic void onResult(RecognizerResult arg0, boolean arg1) {// TODO Auto-generated method stubString text = JsonParser.parseIatResult(arg0.getResultString());editText.append(text);editText.setSelection(editText.length());}//识别结束回调@Overridepublic void onError(SpeechError arg0) {// TODO Auto-generated method stub}};@Overridepublic boolean onCreateOptionsMenu(Menu menu) {// Inflate the menu; this adds items to the action bar if it is present.getMenuInflater().inflate(R.menu.main, menu);return true;}@Overridepublic void onClick(View v) {// TODO Auto-generated method stubswitch (v.getId()) {case R.id.button1:String text = editText.getText().toString();speechSynthesizer.startSpeaking(text, this);break;case R.id.button2:setDialog();break;default:break;}}//缓冲进度回调通知@Overridepublic void onBufferProgress(int arg0, int arg1, int arg2, String arg3) {// TODO Auto-generated method stub}//结束回调@Overridepublic void onCompleted(SpeechError arg0) {// TODO Auto-generated method stub}//开始播放@Overridepublic void onSpeakBegin() {// TODO Auto-generated method stub}//暂停播放@Overridepublic void onSpeakPaused() {// TODO Auto-generated method stub}//播放进度@Overridepublic void onSpeakProgress(int arg0, int arg1, int arg2) {// TODO Auto-generated method stub}//继续播放@Overridepublic void onSpeakResumed() {// TODO Auto-generated method stub}/** * 通用回调接口 */private SpeechListener listener = new SpeechListener() {//消息回调@Overridepublic void onEvent(int arg0, Bundle arg1) {// TODO Auto-generated method stub}//数据回调@Overridepublic void onData(byte[] arg0) {// TODO Auto-generated method stub}//结束回调(没有错误)@Overridepublic void onCompleted(SpeechError arg0) {// TODO Auto-generated method stub}};}
代码下载:http://download.csdn.net/detail/liu8021203/7030615
0 0
- 科大讯飞(语音合成和语音听写)
- iOS语音听写、语音合成
- 讯飞语音听写和语音合成
- Android开发之语音合成及听写(二)
- 语音听写与合成--(讯飞语音识别与合成&&百度语音识别)
- 科大讯飞的语音听写
- 语音听写(识别)
- Android 科大讯飞 在线和离线语音听写
- Android开发之语音听写及语音合成
- 使用讯飞实现语音听写与语音合成功能
- 语音识别和语音合成
- Android 简单讯飞语音合成与语音听写
- 科大讯飞和Tizen-TTS语音合成引擎
- 简单的语音合成与语音识别(科大讯飞)
- .net中语音识别和语音合成
- Unity语音识别和语音合成 Android
- Unity语音识别和语音合成 IOS
- iOS 使用科大讯飞技术实现语音转文字(语音听写)
- 出圈问题
- C++ STL算法
- AMD和RequireJS----优化Web应用前端(按需动态加载JS)
- C++ Static变量
- 《算法概论》的思维导图
- 科大讯飞(语音合成和语音听写)
- WinCE系统音量的设置
- (8)线程Thread演示
- js格式化json传来的UTC格式的时间
- 解决圆角问题firefox chrome
- 一张图,了解网站SEO方案
- 安装redis
- UVa 10098 - Generating Fast STL 排序+排列
- Java Map按键排序和按值排序