STT 数据流处理-试一下合并后的格式

This commit is contained in:
2025-10-20 13:17:24 +08:00
parent 1d3394cb2d
commit 556ec0c268
4 changed files with 5 additions and 10 deletions

View File

@@ -10,9 +10,7 @@ import org.springframework.stereotype.Component;
import java.io.IOException;
import java.util.HashMap;
import java.util.HashSet;
import java.util.Map;
import java.util.Set;
import java.util.concurrent.TimeUnit;
/**
@@ -34,10 +32,7 @@ public class OpenAiStreamClient {
private String role;
// 定义作为分割点的标点符号集合
private final Set<Character> punctuationSet = new HashSet<>() {{
add('。'); add(''); add(''); add(''); // 中文标点
add('.'); add('?'); add('!'); add(';'); // 英文标点
}};
private final String punctuationStr = "。,,,,\\.,\\?,!,;";
/**
* 发送流式请求
@@ -118,7 +113,7 @@ public class OpenAiStreamClient {
.getStr("content");
if (content != null && !content.isEmpty()) {
if(punctuationSet.contains(content)){
if(punctuationStr.contains(content)){
//说明有标点啦,直接返回
bufferStr.append(content);
listener.onMessage(bufferStr.toString());

View File

@@ -5,7 +5,7 @@ import java.io.*;
public class AudioToPCM {
public static void main(String[] args) {
File inputFile = new File("/Users/wangxiangshun/Desktop/临时文件/110/111123456_1760930173334.wav"); // 输入音频文件
File inputFile = new File("/Users/wangxiangshun/Desktop/临时文件/110/3f7d2f6b-ea3d-4134-9abf-e8d8d30f91b7.wav"); // 输入音频文件
File outputFile = new File("/Users/wangxiangshun/Desktop/临时文件/110/output_pcm_audio1.pcm"); // 输出PCM格式文件
try {
AudioInputStream audioInputStream = AudioSystem.getAudioInputStream(inputFile);

View File

@@ -82,7 +82,7 @@ public class RealtimeTranscriptionMicrophone {
// String message = "{ \"type\": \"input_audio_buffer.append\", \"audio\": \"" + base64Audio + "\" }";
// webSocket.send(message);
// }
File outputFile = new File("/Users/wangxiangshun/Desktop/临时文件/110/output_pcm_audio.pcm"); // 输出PCM格式文件
File outputFile = new File("/Users/wangxiangshun/Desktop/临时文件/110/output_pcm_audio1.pcm"); // 输出PCM格式文件
ByteBuffer byteBuffer = ByteBuffer.wrap(FileUtils.readFileToByteArray(outputFile));
byte[] bytes = new byte[byteBuffer.remaining()];
//从缓冲区中读取数据并存储到指定的字节数组中