Java讯飞语音评测ISE使用demo工具
一、简介
讯飞语音评测(Speech Evaluator)是一款基于智能语音技术的发音评价系统,能够自动对用户的发音水平进行评价,定位发音错误和缺陷,并进行问题分析。该系统支持汉语和英语两种语言的评测,涵盖单字(汉语专有)、词语、句子、篇章朗读等多种题型,广泛应用于语言教学、口语测试、语音康复训练等领域。
1.测试结果:
返回评测的总分和准确分,也可根据官网进行修改。
二、SDK集成指南
2.1 Demo运行步骤
- 下载SDK:首先,在讯飞开放平台控制台下载对应版本的讯飞语音评测Windows SDK。
- 运行Demo:进入下载的SDK包内samples目录,双击samples.sln文件(需事先安装Visual Studio)。按照Visual Studio的提示进行编译和运行,即可查看讯飞语音评测的Demo演示。
2.2 项目集成步骤
导入pom依赖
<dependency>
<groupId>cn.xfyun</groupId>
<artifactId>websdk-java-speech</artifactId>
<!--请替换成最新稳定版本-->
<version>2.0.3</version>
</dependency>
<!-- https://mvnrepository.com/artifact/com.google.code.gson/gson -->
<dependency>
<groupId>com.google.code.gson</groupId>
<artifactId>gson</artifactId>
<version>2.10.1</version>
</dependency>
<!-- https://mvnrepository.com/artifact/com.squareup.okhttp3/okhttp -->
<dependency>
<groupId>com.squareup.okhttp3</groupId>
<artifactId>okhttp</artifactId>
<version>5.0.0-alpha.14</version>
</dependency>
1.ISEUtil
import com.google.gson.Gson;
import okhttp3.OkHttpClient;
import okhttp3.Request;
import okhttp3.WebSocket;
import java.util.*;
import static com.isedemo.Utils.AuthUtil.getAuthUrl;
public class ISEUtil {
private static final String hostUrl = "https://ise-api.xfyun.cn/v2/open-ise"; // 开放评测地址
private static final String apiSecret = "******************"; // 控制台获取
private static final String apiKey = "**********************"; // 控制台获取
public static Map<String,String> evaluateText(String text, String filePath) throws Exception {
text = "[word]\n "+text;
String authUrl = getAuthUrl(hostUrl, apiKey, apiSecret); // 构建鉴权url
OkHttpClient client = new OkHttpClient.Builder().build();
String url = authUrl.replace("http://", "ws://").replace("https://", "wss://"); // 将url中的 schema http://和https://分别替换为ws:// 和 wss://
Request request = new Request.Builder().url(url).build();
WebSocketUtil webSocketUtil = new WebSocketUtil();
webSocketUtil.TEXT = text;
webSocketUtil.file = filePath;
WebSocket webSocket = client.newWebSocket(request, webSocketUtil);
return webSocketUtil.getResult();
}
}
2.WebSocketUtil
import com.google.gson.Gson;
import com.isedemo.ResponseData;
import okhttp3.Response;
import okhttp3.WebSocket;
import okhttp3.WebSocketListener;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.w3c.dom.NodeList;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import java.io.ByteArrayInputStream;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.util.*;
public class WebSocketUtil extends WebSocketListener {
private static final String appid = "******"; // 控制台获取
private static final String sub = "ise"; // 服务类型sub,开放评测值为ise
private <