使用语音合成
前提条件
- 确保已经按照配置好IOS开发环境。
初始化Client
初始化TtsCustomizationClient,其参数包括SisAuthInfo和SisConfig,详见表 SisAuthInfo数据结构、表 SisConfig数据结构。
请求参数
请求类为TtsCustomRequest,详见表 TtsCustomRequest数据结构。
参数名称 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
text |
是 |
NSString |
待合成的文本。 |
audioFormat |
否 |
NSString |
待合成的音频格式,可选mp3,wav等,默认wav。具体信息请参见《API参考》中语音合成章节。 |
pitch |
否 |
NSInteger |
音高,[-500,500] ,默认是0。 |
speed |
否 |
NSInteger |
语速,[-500,500] ,默认是0。 |
volume |
否 |
NSInteger |
音量,[0,100],默认是50。 |
sampleRate |
否 |
NSString |
采样率,支持“8000”、“16000”,默认“8000”。 |
property |
否 |
NSString |
特征字符串,{language}_{speaker}_{domain},默认chinese_xiaoqi_common。具体信息请参见《API参考》中语音合成章节。 |
响应参数
响应参数统一为字典NSDictionary,具体参数如下表。调用失败处理方法请参见错误码。
参数名称 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
error_code |
否 |
NSString |
参见错误码列表,调用成功无此字段。 |
error_msg |
否 |
NSString |
返回错误信息,调用成功无此字段。 |
trace_id |
否 |
NSString |
服务内部的令牌,可用于在日志中追溯具体流程。 在某些错误情况下可能没有此令牌字符串。 |
result |
否 |
NSDictionary |
调用成功表示识别结果,调用失败时无此字段。 |
data |
否 |
NSString |
语音数据,以Base64编码格式返回。 用户如需生成音频,需要将Base64编码解码成byte数组,再保存为音频,音频格式同“audio_format”参数设置的值,默认为wav格式。 |
示例代码
//语音合成 - (void)ttsCustomDemo{ //授权信息 SisAuthInfo *authInfo = [[SisAuthInfo alloc] initWithAk:kAppKey sk:kAppSecret endpoint:kEndpoint projectId:kProjectId]; //时间设置 SisConfig *config = [[SisConfig alloc] initDefault]; //请求参数赋值 TtsCustomRequest *request = [[TtsCustomRequest alloc] init]; //设置文本内容 request.text = @"我是一只小小小鸟"; //设置语音格式,可选MP3,pcm等,默认wav request.audioFormat = @"wav"; //设置采样率,支持“8000”、“16000”,默认“8000” request.sampleRate = @"8000"; //设置特征值 request.property = @"chinese_xiaoyan_common"; //设置语速,[-500,500] ,默认是0 request.speed = 10; //设置音高,[-500,500] ,默认是0 request.pitch = 10; //设置音量,[0,100],默认是50 request.volume = 60; //实例化请求对象 TtsCustomizationClient *client = [[TtsCustomizationClient alloc] initWithAuthInfo:authInfo config:config]; //发起请求 [client getTtsResponse:request completion:^(NSDictionary * _Nonnull response) { //返回的结果 NSLog(@"返回的结果 = %@",response); }]; }
