提交工单
咨询集成、功能及报价等问题
ZEGO Avatar SDK 压缩包中的 ZegoTextAPI 提供 文本驱动
功能,即通过 ZEGO 提供的接口,使用文字驱动 Avatar 形象同时做出表情并播放与文字对应的语音。
在接入“文本驱动”功能之前,请确保:
文本驱动
相关权限。 联系 ZEGO 技术支持获取文本驱动的源码模块 apiservice。
在源码中,ZegoTextAPI 内置使用了 okhttp3 网络库,您也可根据实际情况自行引入或修改网络实现。
如果您未修改源码的网络实现,请在 build.gradle 文件里添加依赖,向您的应用添加 okhttp3 网络库,示例代码如下所示:
dependencies {
......
implementation 'com.squareup.okhttp3:okhttp:4.9.0'
......
}
您需要在 ZegoTextLicenseCustomer
文件中输入 AppID 与 AppSign。如何获取相关信息,请参考 控制台 - 项目信息。
此处填写的 AppID 和 AppSign 须与创建虚拟形象时鉴权时所填写的信息保持一致。
public class ZegoTextLicenseCustomer {
public static long APP_ID = 您的 AppID;
public static String APP_SIGN = "您的 AppSign";
}
参考 创建虚拟形象,搭建出基本的虚拟人物形象(character 对象)后:
初始化 ZegoTextAPI
对象,传入 Character。
// 请先参考 [创建虚拟形象](https://doc-zh.zego.im/article/18051),创建 character 对象(如 mZegoCharacter)。
mZegoTextAPI = new ZegoTextAPI(mZegoCharacter);
设置回调 ITextExpressionCallback
。
mZegoTextAPI.setTextExpressionCallback(new ITextExpressionCallback() {
/**
* 文本驱动播放启动时,回调
*/
@Override
public void onStart() {
Log.d(TAG, "text drive start");
}
/**
* 文本驱动播放出错时,回调
* @param errorCode 错误码,详情请参考 [常见错误码 - 文本驱动](https://doc-zh.zego.im/article/14884#2)。
*/
@Override
public void onError(int errorCode, String msg) {
}
/**
* 文本驱动播放结束时,回调
*/
@Override
public void onEnd() {
Log.d(TAG, "text drive end");
}
});
完成设置后,ZegoTextAPI 会回调相应的方法。回调的错误码在 TextConstants
类的静态类 ErrorCode
中定义,详情请参考 常见错误码 - 文本驱动错误码。
调用 playTextExpression
接口,输入文本,虚拟人物形象即可做出对应表情并播放语音。
// 设置需要转换为表情的文本
mZegoTextAPI.playTextExpression("需要播放的文本");
如需停止文本驱动可调用 stopTextExpression
接口。
//停止本次文本驱动
mZegoTextAPI.stopTextExpression();
联系我们
文档反馈