教你如何通过 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
1.安装完成后,打开 CodeArts IDE 客户端,点击右上角登录按钮,登录华为云账号;
2.点击客户端右侧边栏中的华为云 API 插件,了解集成的华为云 API 能力
1.2 初阶版:体验语音合成 API,合成一段语音
1.2.1 环境准备(一键式小程序)
1.点击此处下载一键式环境搭建小程序到任意目录(此目录不包含中文目录,否则可能会出现未知问题)
此小程序依赖你本地安装了 7zip/WinRAR 等解压工具,双击打开,如果你已经安装,输入 y 回车。
2.此时小程序会将 2.2.2 中的代码工程以及 OpenJDK 下载到小程序所在的目录中,并完成解压,打开代码工程,为工程配置 JDK(如果出现未知问题,也可以按照 2.2.2 中一步步手动操作)
1.2.2 环境准备(手动初始化)
1.下载 OpenJDK11 到本地目录,然后解压到任意路径(需要记住此路径)
2.点击下载工程,解压到任意目录在 CodeArts IDE 客户端点击“文件”-> “打开…”、“打开文件夹”,找到刚刚的工程目录,选择文件夹,然后选择此工程内打开
第一次加载 Java 插件需要完成初始化,需要等待一会儿,等待右下角的 Initializing Java Language Server Features 完成后开始下一步
3.为工程配置 JDKJava Smart Assist 插件加载完成后,此时右下角会显示 Language Server is ready 以及 提示为配置 JDK。
点击左下角的“管理”按钮,选择“设置”,在弹出设置选项中依次选择“Java SmartAssist 开发套件”->“Project Settings”-> “Project SDK 目录选择”-> 找到刚刚 JDK 的解压目录 ->选择文件夹,此时工程右下角会显示加载 JDK,需要稍等片刻
选择完成后可以关闭此配置项,IDE 会自动帮您加载 JDK
1.2.3 体验 API
1.搜索 API,在 CodeArts IDE 客户端内,打开“华为云 API”,搜索“语音合成”,选择第一个搜索结果
2.右侧弹出 RunTts 详细情况,可以查看 API 相关信息,包括(API 是干啥的,有哪些参数)然后选择“调试 API”页签
3.输入需要合成的文字,例如“华为云软件开发生产线”,选择 audio_format 为.mp3,点击“调试”按钮,可以看到 API 的调试结果,可以看到“调试成功”,查看右下“响应结果”的“响应体”页签,可以看到返回的结果,“data”是音频的 base64 编码。
4.点击响应体右侧的“拷贝”图标按钮,再将左边侧边栏的华为云 API 页面切换到“工程页面”,找到 src/resources 目录,将结果备份到工程目录 src/resources/APIResponse.json 中
5.找到 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 代码
1.在 editor 中点击右键打开菜单,选择启用“华为云 SDK 代码补全助手”,在 IDE 中输入 RunTts,DevKit 会自动帮你联想出合适的 API,选择 RunTts,DevKit 会帮你自动把 SDK 调用实现,并且将代码中涉及到的依赖自动 import
2.点击编辑 API 参数,填入相关参数后,点击确定,生成 API 参数的代码
3.修改函数,return response
4.找到 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)下的文件替换
版权声明: 本文为 InfoQ 作者【华为云开发者联盟】的原创文章。
原文链接:【http://xie.infoq.cn/article/56ff6f1d4b2d5a964503beafd】。文章转载请联系作者。
评论