参看Demoe
------------------------ FUAvatarARTrackView 示例 -------------------------
开启AR驱动
[self.viewModel startARTrackWithDisplayView:glDisplayView];
关闭AR驱动
[self.viewModel endARTrack];
参看Demoe
------------------------ FUAvatarBodyTrackView 示例 -------------------------
开启身体驱动
[self.viewModel startBodyTrackWithDisplayView:glDisplayView];
关闭身体驱动
[self.viewModel endBodyTrack];
更多功能参考:FUAvatarBodyTrackViewModel
/// 开始或者停止面部驱动
/// @param enable 是否面部驱动
- (void)faceTrackEnable:(BOOL)enable;
/// 更新身体驱动类型
/// @param bodyTrackType 身体驱动类型
- (void)updateBodyTrackType:(FUAvatarBodyTrackType)bodyTrackType;
/// 更新身体跟随模式
/// @param bodyFollowModeType 身体跟随模式
- (void)updateBodyFollowModeType:(FUAvatarBodyFollowModeType)bodyFollowModeType;
文本驱动使用独立的SDK模块,FUAvatarSpeechService内部会进行鉴权及初始化工作(资源配置如下)。文本驱动提供三种驱动方式:1、时间戳方式(输入时间戳即可驱动口型)2、音频+文本方式(输入音频+文本驱动口型)3、纯音频方式(输入音频驱动口型)这三种方式都有对应的配置文件,初始化时可根据业务进行配置。
文本驱动参考流程:1. 用户输入文本 ----> 2. 经过TTS解析得到音频和时间戳----> 3.输入数据查询口型(SDK) ----> 4.使用播放器播放TTS输出的音频(可自定义) ----> 5.输入当前播放进度进行口型渲染(SDK)
1)、资源配置
资源位于Resource/STA文件夹下,主要有以下五个文件:
defaultBSConfig.bin:形象对应的口型配置文件。
data_decoder.bin: 中英文解码配置文件,使SDK具有时间戳驱动口型的能力,按需加载。
data_asr.bin: 语音识别功能配置文件,使SDK具有音频驱动口型的能力,按需加载。
data_align.bin: 语音对齐功能配置文件,使SDK具有文本驱动口型的能力,按需加载。
alignmap.bin: 文本驱动口型模式的特殊词汇映射,按需加载。
2)、如何使用
我们已经封装了FUAvatarSpeechService可实现简单的口型驱动功能。
· 初始化
// 懒加载方式,FUAvatarSpeechService内部init方法会调用
· 销毁
[[FUAvatarSpeechService shareService] destroy];
· 进入口型驱动模块
// 进入口型驱动控制器时需要调用
[[FUAvatarSpeechService shareService] enterAvatarSpeech];
· 退出口型驱动模块
[[FUAvatarSpeechService shareService] exitAvatarSpeech];
· 文本播报
[[FUAvatarSpeechService shareService] broadcastWithText:@"输入文本" voiceName:@"音色ID" beginHandle:^(NSError * _Nonnull error) {// 开始播报
} complteHandle:^(NSError * _Nonnull error, BOOL isCanceled) {// 播报开始
}];
· 取消播报
// 建议每次播报前调用
[[FUAvatarSpeechService shareService] cancelBroadcast];