Commit f628f8db authored by helinlin's avatar helinlin

添加阿里云音频识别接口

parent 5ebb50c4
......@@ -11,6 +11,7 @@ import java.io.IOException;
import java.io.InputStream;
import java.net.ServerSocket;
import java.net.Socket;
import java.util.Timer;
/**
......@@ -24,6 +25,7 @@ public class AppSpeechTranscriber {
private static final Logger logger = LoggerFactory.getLogger(AppSpeechTranscriber.class);
private final SpeechTranscriberListener listener;
private final ServerSocket serverSocket;
//private Timer serverSocketTimeoutTimer;
public AppSpeechTranscriber(SpeechTranscriberListener listener, ServerSocket serverSocket) {
this.listener = listener;
......@@ -39,7 +41,9 @@ public class AppSpeechTranscriber {
//启动ServerSocket等待接收音频数据,只接受一次请求
logger.warn("serverSocket已启动,地址:" + serverSocket.getInetAddress().getHostAddress()
+ "监听端口:" + serverSocket.getLocalPort() + " 等待语音融合系统推送数据...");
Socket socket = serverSocket.accept();
logger.warn("收到用户连接请求,开始读取数据");
//创建实例、建立连接。
transcriber = new SpeechTranscriber(AppNslClient.instance(), listener);
......@@ -64,13 +68,19 @@ public class AppSpeechTranscriber {
if (null != transcriber) {
transcriber.close();
}
if (!serverSocket.isClosed()) {
try {
serverSocket.close();
} catch (IOException exception) {
exception.printStackTrace();
logger.error(exception.getMessage());
}
closeServerSocket();
}
}
/**
* 关闭Serversocket
*/
public void closeServerSocket() {
if (serverSocket != null && !serverSocket.isClosed()) {
try {
serverSocket.close();
} catch (IOException exception) {
exception.printStackTrace();
}
}
}
......
......@@ -123,7 +123,7 @@ public class SpeechApplicationTests {
*/
@Test
void testSpeechFlashRecognizer() {
//String fileName = SpeechRecognizerRestfulDemo.class.getClassLoader().getResource("./nls-sample-16k.wav").getPath();
/* //String fileName = SpeechRecognizerRestfulDemo.class.getClassLoader().getResource("./nls-sample-16k.wav").getPath();
// 重要:此处用一个本地文件来模拟发送实时流数据,实际使用时,您可以从某处实时采集或接收语音流并发送到ASR服务端。
String fileName = "D:\\ffmpeg-4.4-full_build-shared\\bin\\test.mp3";
String format = "mp3";
......@@ -140,7 +140,7 @@ public class SpeechApplicationTests {
logger.warn("语音识别结果:" + response.body().string());
}
});
speechFlashRecognizer.process();
speechFlashRecognizer.process();*/
}
/**
......@@ -148,7 +148,7 @@ public class SpeechApplicationTests {
*/
@Test
void testSpeechRecognizer() {
String fileLink = "https://gw.alipayobjects.com/os/bmw-prod/0574ee2e-f494-45a5-820f-63aee583045a.wav";
/* String fileLink = "https://gw.alipayobjects.com/os/bmw-prod/0574ee2e-f494-45a5-820f-63aee583045a.wav";
SpeechRecognizer speechRecognizer = new SpeechRecognizer();
// 第一步:提交录音文件识别请求,获取任务ID用于后续的识别结果轮询。
String taskId = speechRecognizer.submitFileTransRequest(fileLink);
......@@ -164,6 +164,6 @@ public class SpeechApplicationTests {
logger.info("录音文件识别结果查询成功:" + result);
} else {
logger.error("录音文件识别结果查询失败!");
}
}*/
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment