android语音播报

百度TTS引擎离线语音合成+语音播报已个人测试,可用声音满意,代码只是一个模块参考还需要一些文件下面连接方可进入下载demo,虽花钱但是负责你到最后实现

mqtts长连接   双进程保活   tts中文语音播报    mqtt断开重连   demo已实现

有问题加qq1546079149

点我下载

 

<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"></uses-permission>
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.WAKE_LOCK"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />

<uses-permission android:name="android.permission.WRITE_SETTINGS"
appId = "23599225";
appKey = "GhwGax68SruSmoiQTDZGIDdW";
secretKey = "S09oPGNDxqs8tuIGC8HFpUtN0azl5poV";
sn = "a38d176c-7a99210e-0b26-0014-75eff-00"; // 离线合成SDK必须有此参数;在线合成SDK没有此参数
initialButtons(); // 配置onclick
initialTts(); // 初始化TTS引擎
if (!isOnlineSDK) {
    Log.i("SynthActivity", "so version:" + SynthesizerTool.getEngineInfo());
}
/**
 * 界面上的按钮对应方法
 */
@Override
public void onClick(View v) {
    int id = v.getId();
    switch (id) {
        case R.id.speak:
            speak("欢迎使用"); // 播放
            break;
        case R.id.batchSpeak:
            batchSpeak(); //播放
            break;
        case R.id.loadModel:
            // 切换离线资源
            AlertDialog.Builder builder = new AlertDialog.Builder(this, android.R.style.Theme_Holo_Light_Dialog);

            final Map<String, String> map = new LinkedHashMap<>(4);
            map.put("离线女声", OfflineResource.VOICE_FEMALE);
            map.put("离线男声", OfflineResource.VOICE_MALE);
            map.put("离线度逍遥", OfflineResource.VOICE_DUXY);
            map.put("离线度丫丫", OfflineResource.VOICE_DUYY);
            final String[] keysTemp = new String[4];
            final String[] keys = map.keySet().toArray(keysTemp);
            builder.setItems(keys, new DialogInterface.OnClickListener() {
                @Override
                public void onClick(DialogInterface dialog, int which) {
                    loadModel(map.get(keys[which]));
                }
            });
            builder.show();
            break;
        case R.id.pause:
         pause(); // 播放暂停
            break;
        case R.id.stop:
            stop(); // 停止合成引擎
            break;
        default:
            break;
    }
}
  • 3
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 7
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

梦想不上班

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值