写点什么

语音合成接口实战!华为开发者空间玩转 CodeArts 工具链

  • 2025-09-16
    中国香港
  • 本文字数:2486 字

    阅读完需:约 8 分钟

语音合成接口实战!华为开发者空间玩转 CodeArts 工具链

1 概述

1.1 案例介绍

CodeArts API 是华为云 API 全生命周期管理一体化协作平台,支持开发者高效实现 API 设计、API 开发、API 测试、API 托管、API 运维、API 变现的一站式体验。通过以 API 契约为锚点,CodeArts API 保证 API 各阶段数据高度一致,为开发者提供友好易用的 API 全流程端到端解决方案。


API Explorer 提供 API 接口、代码示例、场景示例、CLI 示例等多种开发集成方式,适用于 API 调试、故障排查等多种场景。通过控制台访问 API Explorer,更方便的验证 API 请求,更直观的查看返回结果,当调用出错时,API Explorer 会显示相应的错误信息,并提示如何解决。


CodeArts IDE 是一个跨平台的集成开发环境(IDE),它将精简的源代码编辑器与强大的开发者工具结合在一起。

1.2 适用对象

  • 企业

  • 个人开发者

  • 高校学生

1.3 案例时间

本案例总时长预计 40 分钟。

1.4 案例流程


说明:


  1. 通过 CodeArts API 创建 API 项目并设计语音 API;

  2. 通过 API Explorer 调试语音合成 API 生成语音数据流;

  3. 实验 Demo 工程源码拉取并导入工程到编辑器完成运行准备;

  4. 运行 Demo 生成将语音数据流合成音频文件。


最新案例动态,请查阅 《通过CodeArts API设计语音合成接口》。小伙伴快来领取华为开发者空间进行实操吧!


2 通过 CodeArts API 设计语音合成 API

2.1 开发者空间配置

面向广大开发者群体,华为开发者空间提供一个随时访问的“开发桌面云主机”、丰富的“预配置工具集合”和灵活使用的“场景化资源池”,开发者开箱即用,快速体验华为根技术和资源。


进入华为开发者空间工作台界面,点击打开云主机 > 进入桌面连接云主机。如果还没有领取云主机进入工作台界面后点击配置云主机,选择 Ubuntu 操作系统。



2.2 创建 API 项目

进入云主机后,在火狐浏览器中,输入 CodeArts API 官网地址:https://developer.huaweicloud.com/develop/codeartsapi.html 进入官网。



进入官网后,点击“立即体验”按钮并登录。



登录后点击页面右上角的“创建项目”按钮。



在创建项目弹窗中输入项目名称:“语音合成”,并点击确定按钮。


2.3 设计语音 API

创建项目成功后,点击“API 设计->新建 API 接口”进入到 API 设计页面。




输入接口的 URL:/tts;operationld:test,摘要输入:语音合成。



在请求参数区域,点击请求体“Body”页签,选择“raw”,默认选择的“JSON”格式。



输入参数,类型为“sting”,描述修改为“待合成的文本”。



在返回响应区域,返回数据类型为“string”,将描述修改为“合成结果”。



最终点击页面右上角的“保存”按钮,完成 API 设计的保存。



可在默认目录下,查看到新增的 API。


2.4 调试 API,生成音频数据流

进入云主机,在火狐浏览器中,输入 API Explorer 地址:https://console.huaweicloud.com/apiexplorer/#/openapi/SIS/debug?api=RunTts


在打开的页面中,填入请求参数,之后调用 API,获取音频数据流;


相关名词解释:


语音格式:wav 是一种无损音频文件格式,常用于存储高质量的音频数据;mp3 是一种有损音频压缩格式,通过减少音频数据中的冗余信息来减小文件大小,同时保持较高的音质;pcm 是一种非压缩的音频格式,它直接将模拟音频信号转换为数字信号,不进行任何压缩处理。


采样率:表示每秒钟从连续音频信号中采集的样本数量。采样率越高,音频信号的还原度越高,音质越好。


语速和音高:语速表示语音播放的速度,通常以每分钟播放的字符数或单词数来衡量。音高表示语音的音调高低,通常以赫兹(Hz)或相对值来衡量。


举例说明:


生成语音格式为 wav,采样率:8000,‘chinese_xiaoqi_common‘,语速 0,音高 0(表示生成 wav 格式的语音,采样率为 8000Hz,使用‘chinese_xiaoqi_common’语音包,语速和音高均为默认 0,其他场景类似)


生成语音格式为 wav,采样率:16000,‘chinese_xiaoyu_common’,语速 0,音高 0


生成语音格式为 mp3,采样率:8000,‘chinese_xiaoqi_common‘,语速 100,音高 100


生成语音格式为 mp3,采样率:16000,‘chinese_xiaoyu_common’,语速 100,音高 100


生成语音格式为 pcm,采样率:16000,‘chinese_xiaoyu_common’,语速 100,音高 100


以下是本案例输入的请求参数:


text:华为云语音合成;audio_format:wav;sample_rate:16000;property:chinese_xiaoyu_common;speed:0;pitch:0


操作示例如下图:



将每次 API Explorer 调试请求得到的 response,点击下载,生成“SIS_RunTts_ResponseBody_xxxxxxxxxxxxx.json”文件(如果没有下载选项,就直接复制返回文本,存入自建 xxxx.json 文件),文件存储到任意位置备用。


2.5 转换音频数据流为音频文件

Demo 工程下载链接:https://sandbox-expriment-files.obs.cn-north-1.myhuaweicloud.com/2601/CodeArtsProject.zip打开下载文件夹,鼠标右击“open terminal Here”打开终端,输入以下命令进行解压。


unzip +压缩包的名称
复制代码



在华为云控制台新增访问秘钥,配置 AK/SK。


访问华为云控制台:


https://console.huaweicloud.com/iam/?agencyId=599e2ee1492f48e9b69a0a682d435fb8®ion=cn-north-4&locale=zh-cn#/mine/accessKey


选择“我的凭证”->“访问秘钥”-> 新增访问秘钥(若有密钥可以不用新增),输入描述:“我的秘钥”,点击单选框,再点击“继续创建”按钮。



创建秘钥成功后点击“立即下载”,即可获得“credentials.csv”文件,里面可以查看到 AK(Access Key Id)和 SK(Secret Access Key)。



使用 CodeArts IDE for Java 编辑器打开下载的 demo 工程,进行工程文件的加载,等待编辑器完成工程配置。(注:大概需要 3-5 分钟请耐心等待)



进入工程,进入目录 src/main/resources 下选择 credentials.properties,将 AK/SK 配置上,配置完成后对文件进行保存。



步骤2.4的 API Explorer 上调试成功的任意一个音频数据流文件文本内容复制到 APIResponse.json 中,并保存文件。



执行“should_return_audio_when_response_json”,生成 mp3 格式音频文件;找到 test 目录下的测试类 SisServiceTest.java,点击“开始执行”按钮,正确运行后将会在目录下生成音频文件。



目录下生成“devkit.mp3”文件;获得转换后的音频文件。



至此,通过 CodeArts API 设计语音合成接口的案列内容已全部完成。

2.6 反馈改进建议

如您在案例实操过程中遇到问题或有改进建议,可以到论坛帖评论区反馈即可,我们会及时响应处理,谢谢!


用户头像

提供全面深入的云计算技术干货 2020-07-14 加入

生于云,长于云,让开发者成为决定性力量

评论

发布
暂无评论
语音合成接口实战!华为开发者空间玩转 CodeArts 工具链_CodeArts_华为云开发者联盟_InfoQ写作社区