基于讯飞开放平台的安卓语音开发教程:语音合成(文本→语音)
程序员文章站
2022-07-08 18:22:27
基于讯飞开放平台的安卓语音开发教程:语音合成(文本→语音)。
以下代码还是从讯飞官方提供的SDK中筛选出来的
public class MainActivit...
基于讯飞开放平台的安卓语音开发教程:语音合成(文本→语音)。
以下代码还是从讯飞官方提供的SDK中筛选出来的
public class MainActivity extends Activity { // 语音合成对象 private SpeechSynthesizer mTts; // 播放进度 private int mPercentForPlaying = 0; // 缓冲进度 private int mPercentForBuffering = 0; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); // 初始化即创建语音配置对象,只有初始化后才可以使用MSC的各项服务 SpeechUtility.createUtility(MainActivity.this, SpeechConstant.APPID + "= 595baeb7"); // 初始化合成对象 mTts = SpeechSynthesizer.createSynthesizer(MainActivity.this, mTtsInitListener); findViewById(R.id.bt).setOnClickListener(new OnClickListener() { @Override public void onClick(View arg0) { // TODO Auto-generated method stub String text = ((EditText) findViewById(R.id.et)).getText() .toString(); mTts.startSpeaking(text, mTtsListener); } }); } /** * 初始化监听器。 */ private InitListener mTtsInitListener = new InitListener() { @Override public void onInit(int code) { if (code != ErrorCode.SUCCESS) { Toast.makeText(MainActivity.this, "初始化失败,错误码:" + code, Toast.LENGTH_LONG).show(); } } }; /** * 合成回调监听。 */ private SynthesizerListener mTtsListener = new SynthesizerListener() { @Override public void onSpeakBegin() { // 开始播放 } @Override public void onSpeakPaused() { // 暂停播放 } @Override public void onSpeakResumed() { // 继续播放 } @Override public void onBufferProgress(int percent, int beginPos, int endPos, String info) { // 合成进度 mPercentForBuffering = percent; } @Override public void onSpeakProgress(int percent, int beginPos, int endPos) { // 播放进度 mPercentForPlaying = percent; } @Override public void onCompleted(SpeechError error) { } @Override public void onEvent(int eventType, int arg1, int arg2, Bundle obj) { } }; }
上一篇: android studio请求网络数据日志显示不全怎么解决?
下一篇: 第一部机器人百年编年史