更新时间:2022-04-07 GMT+08:00
分享

使用语音合成

前提条件

  • 确保已经按照配置好IOS开发环境。

初始化Client

初始化TtsCustomizationClient,其参数包括SisAuthInfo和SisConfig,详见表 SisAuthInfo数据结构表 SisConfig数据结构

表1 SisAuthInfo 数据结构

参数名称

是否必选

参数类型

描述

ak

NSString

用户的ak,可参考AK/SK认证。

sk

NSString

用户的sk,可参考AK/SK认证。

endpoint

NSString

终端节点如sis-ext.cn-north-4.myhuaweicloud.com。

projectId

NSString

项目ID,同region一一对应,参考获取项目。

表2 SisConfig 数据结构

参数名称

是否必选

参数类型

描述

connectionTimeout

NSInteger

连接超时,默认10s,单位s。

readTimeout

NSInteger

连接超时,默认10s,单位s。

请求参数

请求类为TtsCustomRequest,详见表 TtsCustomRequest数据结构

表3 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);
    }];
}
分享:

    相关文档

    相关产品

关闭导读