2020-08-25 科大讯飞离线语音合成sdk使用踩坑

SpeechUtility.createUtility(context, APPID);

player = SpeechSynthesizer.createSynthesizer(context, mTtsInitListener);

player.setParameter(SpeechConstant.ENGINE_TYPE, SpeechConstant.TYPE_LOCAL);

//设置发音人资源路径

player.setParameter(ResourceUtil.TTS_RES_PATH,getResourcePath());

//设置发音人

player.setParameter(SpeechConstant.VOICE_NAME,"xiaoyan");


//获取发音人资源路径

private static StringgetResourcePath(){

StringBuffer tempBuffer =new StringBuffer();

    String type="xtts";

    //合成通用资源

    tempBuffer.append(ResourceUtil.generateResourcePath(context, ResourceUtil.RESOURCE_TYPE.assets, type+"/common.jet"));

    tempBuffer.append(";");

    //发音人资源

        tempBuffer.append(ResourceUtil.generateResourcePath(context, ResourceUtil.RESOURCE_TYPE.assets, type+"/xiaoyan.jet"));

    return tempBuffer.toString();

}


必须设置params才会使用离线版,否则默认为在线版

需要在assets中新建xtts文件夹,对应type=“xtts”

在xtts中放入common.jet和对应的语音jet

在getResourcePath中设置对应的语音jet

文档中没写,demo中才有这段代码,做个记录

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容