手把手教你用JAVA实现“语音合成”功能(文字转声音)标贝科技
前言
什么是语音合成?
将文本转换成自然流畅的语音,本篇文章将介绍“实时在线合成”(文本长度不得超过1024字节)
一、内容太长不愿意看,直接使用系列
首先确认接口调用要求:
合成音频的格式:PCM
合成音频的采样率: 8000Hz,16000Hz
支持语言:中文(zh),英文(eng),粤语(cat),四川话(sch)
确认无误后,直接执行 2.2获取权限+2.3.4完整代码示例
二、用JAVA调用标贝科技“语音合成”接口使用流程
2.1.环境准备
java
2.2.获取权限
2.1.1.登录
地址:https://ai.data-baker.com/#/?source=qaz123
(注:填写邀请码hi25d7,每日免费调用量还可以翻倍)
点击上方地址登录,支持短信、密码、微信三种登录方式。
2.1.2.创建应用
登录后,点击创建应用,填写相关信息(未实名认证只能创建一个应用)
(注:实名认证后可获得创建多个应用的权限)
进入应用,其中包含的技术产品有:语音识别、语音合成、声音复刻、声音转换
页面中功能主要包括:服务用量管理、购买服务量管理、开发者文档、授权管理、套餐管理
2.1.3.获取token
点击在线合成—>授权管理—>显示—>获取APISecret—>(获取访问令牌token)
注:右下角红框中是测试版提供的音色
2.3.代码实现
2.3.1.获取token
/**
* 授权:需要在开放平台获取【https://ai.data-baker.com/#/?source=qaz123】
*/
private static final String clientId = "输入你的clientid";
private static final String clientSecret = "输入你的clientsecret";
/**
* 获取token的地址信息
*/
public static String tokenUrl = "https://openapi.data-baker.com/oauth/2.0/token?grant_type=client_credentials&client_secret=%s&client_id=%s";
public static String getAccessToken() {
String accessToken = "";
OkHttpClient client = new OkHttpClient();
// request 默认是get请求
String url = String.format(tokenUrl, clientSecret, clientId);
Request request = new Request.Builder().url(url).build();
JSONObject jsonObject;
try {
Response response = client.newCall(request).execute();
if (response.isSuccessful()) {
// 解析
String resultJson = response.body().string();
jsonObject = JSON.parseObject(resultJson);
accessToken = jsonObject.