教你如何通过CodeArts IDE插件调用API,高效合成语音

Posted 华为云开发者社区

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了教你如何通过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

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.为工程配置JDK

Java 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)下的文件替换

 

点击关注,第一时间了解华为云新鲜技术~

8种桌面IDE CodeArts智能代码补全类型

摘要:代码补全可以有效的提升开发效率、减少拼写错误和输入代码量。CodeArts 依赖于 codearts.smartassist-java-ls 插件实现代码补全功能。

本文分享自华为云社区《CodeArts 智能代码补全》,作者: HuaweiCloud 开发工具。
本文分享自华为云社区《CodeArts 智能代码补全》,作者: HuaweiCloud 开发工具。

代码补全类型主要有:

  • 关键字基础补全
  • 名字补全
  • 类型补全
  • 函数补全
  • 片段补全
  • 缩写补全
  • 智能类型匹配补全
  • 标签属性补全

CodeArts 的代码补全具有能使用字段名称的驼峰字母作为关键字母快速搜索的特点。

关键字基础补全

关键字 (Reserved Words) 是指在 Java、Javascript 等计算机语言中有特定含义,用来表示一种数据类型,或者表示程序的结构等。

CodeArts 支持计算机语言的关键字基础补全。

如图所示:

输入关键字首字母,代码补全列表可优先推荐。

名字补全

名字是指用户自定义的变量名、参数名、方法名、类名、接口名、包名等名称。

  • CodeArts 可根据上下文场景,推荐当前变量命名的模板。

定义类的变量,代码推荐变量命名最优模板。

  • 当您定义好方法参数后,输入首字母后,CodeArts 可优先在代码列表中推荐参数名称。

输入名字首字母,代码补全列表可展示建议的名字。

类型补全

类型包括基础数据类型 (整数类型、字符类型、浮点类型、布尔类型) 和引用类型 (类、接口类型、数组类型、null 类型)。

定义的每一个变量都必须声明其数据类型,因其在编译时进行严格的语法检查,如果变量值的数据类型与定义的类型不同,则会报错。

因此,CodeArts 对数据类型进行补全,便于减少拼写错误,加快变量的定义。

如图所示:

输入数据类型首字母,代码补全列表可优先推荐。

函数补全

函数是指定义在类中的具有特定功能的一段独立小程序。CodeArts 函数补全时可补全函数所需的元素:方法名、返回值类型、参数表、函数体。

  • CodeArts 可根据类中的变量,补全类变量相关函数。

类中已定义变量 homeBrandMapper,CodeArts 搜索推荐关于变量的常用的模板方法。

选择 setHomeBrandMapper () 方法上屏后,自动补全变量的 set 方法包含方法名、参数表、函数体。

  • 在项目主类中,可快速进行 main 方法声明补全。

在类中输入 main,选择 main () method declaration 上屏后,补全主类 main 方法。

片段补全

CodeArts 为常用的代码片段提供了标准的模板,这些代码片段具有基于源代码语言的各种构造。这包括条件语句和循环、折叠区域和其它构造。

动画演示:

缩写补全

CodeArts 常用缩写补全,可自动补全代码语句及符号。

常用缩写:

  • sout、souf、soutm、soutp、soutv 打印函数
  • for 循环简写 fori
  • prsf、psf、psfi、psfs、psvm 变量定义语句

动画演示:

智能类型匹配补全

智能类型匹配代码能够过滤代码建议列表并仅显示适用于当前上下文的类型。

在可以确定类型的情况下使用:

  • 在赋值语句的右侧部分
  • 在变量初始值定义中
  • 在 return 返回语句中
  • 在方法调用的参数列表中
  • 在对象声明中 new 关键字之后
  • 在链式表达式中

默认情况下,CodeArts 会在您键入时自动显示代码推荐列表窗口。当您完成语句上屏,希望转换当前代码时,按 Ctrl+Shift+Space 键可触发 CodeArts 搜索与当前的代码相关内容,选择可进行转换。

return 返回语句。CodeArts 扫描 return 语句相关的方法内容,并建议适合当前上下文的返回值。

鼠标在 return 上,操作快捷键 Ctrl+Shift+Space,推荐列表展示可转换的代码。

标签属性补全

CodeArts 能够自动补全许多文件类型中标签和属性的名称和值:

  • HTML,包括 CSS 类和 JSX 中的 HTML 标签的补全。

按 < 可以开始输入标签名称。CodeArts 扫描文件显示适合当前上下文的标记名称列表。

按 Enter 键,CodeArts 可添加所选的标签。

驼峰搜索

变量、参数、类、方法均可使用驼峰字母作为关键字母快速搜索,驼峰字母不区分大小写。

直接输入 SmsHomeBrandMapper 的驼峰字母 “Shbm” 作为关键字;

CodeArts 搜索项目中的相关类名展示在代码推荐列表,Enter 或 Tab 键可上屏 SmsHomeBrandMapper。

点击关注,第一时间了解华为云新鲜技术~

以上是关于教你如何通过CodeArts IDE插件调用API,高效合成语音的主要内容,如果未能解决你的问题,请参考以下文章

一图揭秘为什么开发者都偏好华为云CodeArts IDE Online?

华为云发布桌面IDE-CodeArts

Dubbo 新增本地 IDE 插件,快速创建样例工程

火线教你如何开发Jenkins插件

手把手教你使用gradle mulchannel插件,进行多渠道打包

手把手教你使用gradle mulchannel插件,进行多渠道打包