1、首先在科大讯飞官网申请应用下载语音合成SDK,在项目中导入Msc.jar包,别忘了还有armeabi目录下的文件。然后建一个语音合成的工具类SpeechUtil_xf,具体代码下面贴出来,相信大家看注释已经很清楚了;
package com.chainway.nursestation.tool;
import com.iflytek.cloud.ErrorCode;
import com.iflytek.cloud.InitListener;
import com.iflytek.cloud.SpeechConstant;
import com.iflytek.cloud.SpeechError;
import com.iflytek.cloud.SpeechSynthesizer;
import com.iflytek.cloud.SpeechUtility;
import com.iflytek.cloud.SynthesizerListener;
import com.iflytek.cloud.util.ResourceUtil;
import com.iflytek.cloud.util.ResourceUtil.RESOURCE_TYPE;
import android.content.Context;
import android.os.Bundle;
import android.os.Environment;
import android.util.Log;
import android.widget.Toast;
/**
* 科大讯飞的语音合成工具类
* @author wushengjun
* @date 2016年8月23日
*/
public class SpeechUtil_xf {
private String TAG = "SpeechUtil_xf";
private Context context;
private String app_id = "57bbbdf5";
//语音合成对象
private SpeechSynthesizer mSpeechSynthesizer;
// 默认云端发音人
public static String voicerCloud="xiaoyan";
// 默认本地发音人
public static String voicerLocal="xiaoyan";
// 引擎类型
private String mEngineType = SpeechConstant.TYPE_LOCAL;
private int speed = 50; //合成语音音速
private int pitch = 50; //合成语音音调
private int volume = 100; //合成语音音量,0-100
private int stream_type = 3; //播放器的音频流类型
private boolean isInterrupt = true; //播放合成音频打断音乐播放,默认为true
private String audio_formal = "wav"; //音频格式,只支持wav和pcm格式