检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
本地调用 本章节以语音合成为例,介绍如何使用SIS Python SDK在本地进行开发。 该SDK可以将用户输入的文字合成为音频。通过音色选择,自定义音量、语速,实现个性化音频的生成。 前提条件 注册华为账号并开通华为云,并完成实名认证,账号不能处于欠费、冻结、被注销等异常状态。
为什么WebSocket一直连接不成功 问题现象 由于在没连接成功前无法返回服务端任何信息,因此连接不成功需要多方面定位原因。 解决方案 1. 检查网络是否可用,能否连接互联网,检查url输入是否正确。 2. 检查Token是否可用,检查Token的方法参考调用语音交互的API显示auth
发送音频数据,结束识别、断开连接四个步骤。 websocket接口同http接口一致按次计费,只要建立连接成功,发送音频,服务开始识别,则本次调用计费生效。如果用户发送错误end请求或者持续20s未发送音频而产生了报错,该次调用依然认为生效。如果连接成功后未发送音频直接断开,或者
实时语音识别工作流程 实时语音识别分为开始识别、发送音频数据、结束识别,断开连接四个阶段。 开始阶段需要发送开始指令,包含采样率,音频格式,是否返回中间结果等配置信息。服务端会返回一个开始响应。 发送音频阶段客户端会分片发送音频数据,服务会返回识别结果或者其他事件,如音频超时,静音部分过长等。
开始语音合成请求 功能介绍 客户端与语音合成引擎建立Websocket连接后,可以发送开始语音合成请求进行语音合成。如果客户端基于该Websocket连接发送多次合成请求,需在每次请求重新建立websocket连接,一次连接只能处理一次合成请求。 请求消息 表1 参数说明 名称 参数类型
信息请参见《API参考》中语音合成章节。 saved 否 Boolean 是否选择合成的音频数据保存到本地,默认不保存。 saved_path 否 String 选择保存到本地的路径,需要具体到音频文件,如D:/test.wav。 响应参数 Python SDK响应结果为Json
Websocket握手请求 功能介绍 本接口提供实时流式语音合成。用户每次建立连接,发送待合成文本,服务端将合成结果响应给用户。一次连接只能发送一次文本,如果有多段文本需要合成,需要多次建立连接。实时语音合成和语音合成均属于语音合成接口,采用完全相同的计费规则,两者价格梯度可互相叠加,可参考价格计算器。
开始识别请求响应 由于WebSocket是全双工的,因此响应就是从服务器端发送给客户端的消息,但也并不是所有的请求信息都有一条对应的响应。服务器端收到“开始识别”请求时,会给出如下响应消息,以json字符串形式放置在text message中。 响应消息 表1 响应参数 参数名 参数类型
检查代码是否存在发送音频后睡眠过多时间。 2. 检查是否发送end请求,是否关闭客户端。超过20s没有发送数据同时也没有断开连接,就会报该错误。在使用完毕后一定要记得断开与服务端连接。 父主题: 错误码类
严重错误响应 功能介绍 严重错误,通常指流程无法继续的情况。出现严重错误响应时,流程不再继续,服务器端会主动断连。 响应消息 表1 响应参数 名称 参数类型 说明 resp_type String 响应类型。参数值为FATAL_ERROR,表示此次合成发生不可恢复的错误。 trace_id
实时语音识别多人同时使用,如何区分各自识别结果 每个用户独立建立websocket连接,不可共用一个websocket连接。 父主题: API使用类
not match model """ # 录音文件识别参数,音频文件以obs连接方式传入(即先需要将音频传送到华为云的obs) obs_url = '' # 音频obs连接 obs_audio_format = '' # 音频格式,如auto等,详见api文档
String 表示回调 url,用户用于接收识别结果的服务器地址, 不支持ip方式调用,url长度小于2048字节。服务请求方法为Post方式,请求体为Json格式。 如果用户使用回调方式获取识别结果,需提交该参数,处理成功后用户服务器需返回状态码为200。 如果用户使用轮询方式获取识别结果,则无需提交该参数。
String path = ""; // 设置本地音频保存路径.可选择不保存到本地。需具体到文件,如D:/test.wav /** * 用于语音合成参数设置,例如发声人、音高、语速、音量、采样率、连接超时。所有参数均可以不设置,采用默认。 * *
结束识别请求响应 服务器端收到“结束识别”请求时或语音识别过程中发生错误,服务端会向客户端推送如下响应消息,以json字符串形式放置在text message中。 响应消息 表1 响应参数 参数名 参数类型 说明 resp_type String 响应类型。参数值为END,表示结束识别响应。
严重错误响应 严重错误,通常指流程无法继续的情况。比如当出现客户端分片音频间隔超时(例如20s)。 出现严重错误响应时,流程不再继续,服务器端会主动断连。 响应消息 表1 响应参数 参数名 参数类型 说明 resp_type String 响应类型。参数值为FATAL_ERROR,表示开始识别响应。
在欧洲地区有业务的用户,可以选择“欧洲-巴黎”区域。 云服务之间的关系 如果多个云服务一起搭配使用,需要注意: 不同区域的弹性云服务器、关系型数据库、对象存储服务内网不互通。 不同区域的弹性云服务器不支持跨区域部署在同一负载均衡器下。 资源的价格 不同区域的资源价格可能有差异,请参见华为云服务价格详情。
config; private SisClient client; private AudioRecordService audioRecordService; @Override protected void onStart() {
Object 详见表2。 表2 SisConfig 参数名称 是否必选 参数类型 描述 connect_timeout 否 Integer 连接超时,默认10,单位s。 read_timeout 否 Integer 读取超时,默认10,单位s。 proxy 否 List [host
事件响应 服务器端检测到某些事件时,会给出如下响应消息,以json字符串形式放置在text message中。 响应消息 表1 响应参数 参数名 参数类型 说明 resp_type String 响应类型。参数值为EVENT,表示开始识别响应。 trace_id String 服