教你如何通过CodeArts IDE插件调用API,高效合成语音
摘要:本实验基于华为云自研CodeArts IDE,指导用户通过使用华为云API,来实现一个文字合成语音的应用。
本文分享自华为云社区《通过CodeArts IDE插件调用API,高效合成语音!》,作者:华为云PaaS服务小智。
实验内容:
CodeArts IDE定位华为云开发者桌面,是利用华为自研IDE内核技术,面向华为云开发者提供的智能化可扩展桌面集成开发环境(IDE),内置华为自研JAVA语言开发支持,搭载华为云行业和产业开发套件,提供极致的一站式用云和开发体验。
本实验基于华为云自研CodeArts IDE,指导用户通过使用华为云API,来实现一个文字合成语音的应用。实验分为了初阶、高阶、进阶三个版本。
- 初阶版:预置好了一段工程示例,用户通过使用华为云API来实现语音合成的功能,从而合成语音文件
- 高阶版:指导开发者如何利用华为云提供的SDK来编写代码,从而实现语音合成的程序
实验目的:
- 通过完成此实验让开发者学习使用华为云CodeArts IDE,通过其强大功能完成应用开发
- 通过完成此实验让开发者更加了解华为云API,基于华为云强大的API可以实现更多复杂的功能和应用
完成的注意事项:
1.用户需要实名认证才能免费体验
2.用户如果被华为云判断为黑产用户,则没有免费体验的权限
3.用户免费体验示例,必须进入体验页面
前提条件:华为云账号注册&实名认证
请注册华为云账号并完成实名认证,实验过程中请使用Chrome浏览器完成相关操作。
华为云账号注册步骤请参考:
https://support.huaweicloud.com/usermanual-account/zh-cn_topic_0069252244.html
实名认证操作步骤请参考:
https://support.huaweicloud.com/usermanual-account/account_auth_00001.html
CodeArts IDE Online 云端体验
“点击访问CloudIDE产品首页”(需登录华为云账号),点击“免费体验云开发”按钮,进入IDE界面
CodeArts IDE(客户端)体验
1.1.1 下载CodeArts IDE(客户端)
- “点击此处下载”CodeArts桌面版(需登录华为云账号),下载完成后安装到本地;
1.1.2 登录华为云,体验API
- 安装完成后,打开CodeArts IDE客户端,点击右上角登录按钮,登录华为云账号;
- 点击客户端右侧边栏中的华为云API插件,了解集成的华为云API能力
1.2 初阶版:体验语音合成API,合成一段语音
1.2.1 环境准备(一键式小程序)
- 点击此处下载一键式环境搭建小程序到任意目录(此目录不包含中文目录,否则可能会出现未知问题)
此小程序依赖你本地安装了7zip/WinRAR等解压工具,双击打开,如果你已经安装,输入y回车。
- 此时小程序会将2.2.2中的代码工程以及OpenJDK下载到小程序所在的目录中,并完成解压,打开代码工程,为工程配置JDK(如果出现未知问题,也可以按照2.2.2中一步步手动操作)
1.2.2 环境准备(手动初始化)
- 下载OpenJDK11到本地目录,然后解压到任意路径(需要记住此路径)
- 点击下载工程,解压到任意目录
在CodeArts IDE客户端点击“文件”-> “打开…”、“打开文件夹”,找到刚刚的工程目录,选择文件夹,然后选择此工程内打开
第一次加载Java插件需要完成初始化,需要等待一会儿,等待右下角的Initializing Java Language Server Features完成后开始下一步
- 为工程配置JDK
Java Smart Assist插件加载完成后,此时右下角会显示Language Server is ready 以及 提示为配置JDK。
点击左下角的“管理”按钮,选择“设置”,在弹出设置选项中依次选择“Java SmartAssist开发套件”->“Project Settings”-> “Project SDK目录选择”-> 找到刚刚JDK的解压目录 ->选择文件夹,此时工程右下角会显示加载JDK,需要稍等片刻
选择完成后可以关闭此配置项,IDE会自动帮您加载JDK
1.2.3 体验API
- 搜索API,在CodeArts IDE客户端内,打开“华为云API”,搜索“语音合成”,选择第一个搜索结果
- 右侧弹出RunTts详细情况,可以查看API相关信息,包括(API是干啥的,有哪些参数)然后选择“调试API”页签
- 输入需要合成的文字,例如“华为云软件开发生产线”,选择audio_format为.mp3,点击“调试”按钮,可以看到API的调试结果,可以看到“调试成功”,查看右下“响应结果”的“响应体”页签,可以看到返回的结果,“data”是音频的base64编码。
- 点击响应体右侧的“拷贝”图标按钮,再将左边侧边栏的华为云API页面切换到“工程页面”,找到src/resources目录,将结果备份到工程目录src/resources/APIResponse.json中
- 找到test目录下的测试类SisServiceTest.java,点击找到方法“should_return_audio_when_response_json()”,点击“Run‘All in SisServiceTest’”,最后可以看到目录下生成的音频文件。
1.3 高阶版:通过编写代码实现语音合成的应用
1.3.1 为程序配置AK/SK
代码访问API需要AK/SK,参考文档获取用户AK/SK,将其输入到resources文件夹下的credentials.properties文件中的ak、sk中
1.3.2 编写SDK代码
- 在editor中点击右键打开菜单,选择启用“华为云SDK代码补全助手”,在IDE中输入RunTts,DevKit会自动帮你联想出合适的API,选择RunTts,DevKit会帮你自动把SDK调用实现,并且将代码中涉及到的依赖自动import
- 点击编辑API参数,填入相关参数后,点击确定,生成API参数的代码
- 修改函数,return response
- 找到test目录下的测试类SisServiceTest.java,找到方法“should_return_audio_when_call_api”,点击“Run‘All in SisServiceTest’”,最后可以看到目录下生成的音频文件。
体验中可能遇到得问题:
- Java语言服务(Java Language Server)加载失败/
在Java语言服务初始化时,如果关闭了IDE窗口、取消了加载等等情况,则会出现安装失败,点击重新安装即可。如果重新安装仍有问题,参考3.2解决方案。
- 点击Java SmartAssist开发套件空白
原因可能是因为Java语言服务初始化失败导致,彻底解决改问题,找到C盘/用户目录下的.codearts文件夹,删除language-server文件夹,重新启动CodeArts IDE客户端,此时会重新加载Java语言服务
- JDK没有加载/加载失败
这是因为工程的JDK没有配置,可以参考2.2.2中为第三步:工程配置JDK。
另外还有一种一劳永与的方法:
将下载并解压后的OpenJDK目录配置到电脑windows环境变量的JAVA_HOME变量中(如何设置windows环境变量,可以自行baidu),如图所示:
- 在加载工程的时候出现Cannot resolve xxx或者 Could not transfer artifact xxx等
这是因为工程所依赖的二方包没有下载下来,工程中默认链接的是官方的下载源(在国外),可能因为网络问题或者其他问题导致链接不稳定,此时把配置文件修改成链接到国内的下载源:
点击下载最新的配置(settings.xml),将此目录(C盘用户目录下找到.codearts文件夹,然后按照此路径找到settings文件.codearts\language-server\2210.0.17\language-server\plugins\maven\lib\maven3\conf)下的文件替换

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
开源项目 Touca 开发商倒闭
Touca 是一个开源测试工具,根据官方的介绍,Touca 可以帮助工程团队发现日常代码修改所导致的意外副作用。它将软件的行为和性能与之前的可信版本进行比较,并以近乎实时的方式将差异可视化。 日前,Touca 的创始人 Pejman Ghorbanzade 宣布,公司正式倒闭了: 在经历了两年令人难忘的时光后,我怀着复杂的心情与大家分享,Touca 即将关闭。感谢一路上支持我们的用户、客户、团队成员、投资者和朋友。 Pejman Ghorbanzade 于 2021 年创立了 Touca,一开始创立 Touca 的原因就是因为对开发者在编写、维护和运行软件测试方面体验不佳的现状感到失望。而 Touca 则是希望为工程团队提供一种方法,以了解他们日常的代码修改是如何影响其软件的行为和性能的。 不过在一开始 Touca 并没有开源,在去年,也就是 2022 年 5 月,他们才在 Apache-2.0 许可下将 Touca 开源,目前最新版本是今年 2 月发布的 Touca v2.0。在宣布倒闭前,Touca 的客户包括 1000 多名软件工程师和 13 个工程团队。 不景气的市场大环境是 ...
- 下一篇
借降本增效之名,探索开闭原则架构设计
作者:京东科技胡灿海 引语 在我们的研发生产活动中,经常会遇到如下类似的疑惑: 业务和技术在公司组织活动中,究竟应该各扮演什么样的角色? 技术的目的是什么? 研发生产活动中,如何提高生产事故发生的下限? 如何充分提高isv或者外协人员价值最大化? 《人月神话》说优秀程序员是普通程序员研发效率10倍,如何可以提高研发效率水位线呢? 如何避免《人月神话》指出的“焦油坑”? 如何更好的对老系统进行ddd升级? 这些疑惑单独看都可以有很多的解决思路,或者从制度层面解决,或者从技术层面解决,或者业务层面解决,等等,甚至也有可能出现某些解决思路按下葫芦浮起瓢,但如果将这些问题统一起来看,是否能找到他们对应的共性,尝试从最底层的逻辑找到问题解决的切入点呢? 疫情启发 新冠疫情持续了三年时间,让咱们的生活发生了很多与之前不一样的改变,比较典型的一个现象就是我们在公共场所的椅子上会要求进行隔位相坐。经过长期的观察,发现很多场所这样的要求和提示如同虚设。我们不讨论政治和经济,单纯从实现设计的维度来思考如何让这个要求能落到实处,实实在在的帮助我们更好的进行科学防疫。以下是几个场合的隔位相坐实现方式: 我们拒...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- SpringBoot2初体验,简单认识spring boot2并且搭建基础工程
- Windows10,CentOS7,CentOS8安装MongoDB4.0.16
- Windows10,CentOS7,CentOS8安装Nodejs环境
- SpringBoot2全家桶,快速入门学习开发网站教程
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- CentOS8编译安装MySQL8.0.19
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- CentOS7,8上快速安装Gitea,搭建Git服务器
- Hadoop3单机部署,实现最简伪集群