|
@@ -5,6 +5,7 @@ import be.tarsos.dsp.io.jvm.AudioDispatcherFactory;
|
|
import be.tarsos.dsp.io.jvm.JVMAudioInputStream;
|
|
import be.tarsos.dsp.io.jvm.JVMAudioInputStream;
|
|
import be.tarsos.dsp.pitch.PitchProcessor;
|
|
import be.tarsos.dsp.pitch.PitchProcessor;
|
|
import com.alibaba.fastjson.JSON;
|
|
import com.alibaba.fastjson.JSON;
|
|
|
|
+import com.alibaba.fastjson.JSONObject;
|
|
import com.ym.mec.biz.dal.dto.AudioRecordConfig;
|
|
import com.ym.mec.biz.dal.dto.AudioRecordConfig;
|
|
import com.ym.mec.biz.dal.dto.MusicPitchDetailDto;
|
|
import com.ym.mec.biz.dal.dto.MusicPitchDetailDto;
|
|
import com.ym.mec.biz.dal.dto.WavHeader;
|
|
import com.ym.mec.biz.dal.dto.WavHeader;
|
|
@@ -69,6 +70,7 @@ public class WebSocketHandler extends AbstractWebSocketHandler {
|
|
String phone = session.getPrincipal().getName().split(":")[1];
|
|
String phone = session.getPrincipal().getName().split(":")[1];
|
|
LOGGER.info("{}: {}", phone, message.getPayload());
|
|
LOGGER.info("{}: {}", phone, message.getPayload());
|
|
WebSocketInfo webSocketInfo = JSON.parseObject(message.getPayload(), WebSocketInfo.class);
|
|
WebSocketInfo webSocketInfo = JSON.parseObject(message.getPayload(), WebSocketInfo.class);
|
|
|
|
+ JSONObject bodyObject = (JSONObject) webSocketInfo.getBody();
|
|
|
|
|
|
String commond = "";
|
|
String commond = "";
|
|
if(webSocketInfo.getHeader().containsKey(SoundSocketService.COMMOND)){
|
|
if(webSocketInfo.getHeader().containsKey(SoundSocketService.COMMOND)){
|
|
@@ -76,7 +78,7 @@ public class WebSocketHandler extends AbstractWebSocketHandler {
|
|
}
|
|
}
|
|
switch (commond){
|
|
switch (commond){
|
|
case SoundSocketService.MUSIC_XML:
|
|
case SoundSocketService.MUSIC_XML:
|
|
- userXmlInfoMap.put(phone, JSON.parseArray(webSocketInfo.getBody(), MusicPitchDetailDto.class));
|
|
|
|
|
|
+ userXmlInfoMap.put(phone, JSON.parseArray(bodyObject.getString("musicXmlInfos"), MusicPitchDetailDto.class));
|
|
break;
|
|
break;
|
|
case SoundSocketService.RECORD_START:
|
|
case SoundSocketService.RECORD_START:
|
|
File file = new File("E:\\Temp\\record"+phone +"-"+ LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyyMMddHHmmss")) +".wav");
|
|
File file = new File("E:\\Temp\\record"+phone +"-"+ LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyyMMddHHmmss")) +".wav");
|
|
@@ -118,7 +120,7 @@ public class WebSocketHandler extends AbstractWebSocketHandler {
|
|
result.put("intonation", RandomUtils.nextDouble(0,100));
|
|
result.put("intonation", RandomUtils.nextDouble(0,100));
|
|
result.put("cadence", RandomUtils.nextDouble(0,100));
|
|
result.put("cadence", RandomUtils.nextDouble(0,100));
|
|
result.put("integrity", RandomUtils.nextDouble(0,100));
|
|
result.put("integrity", RandomUtils.nextDouble(0,100));
|
|
- webSocketInfo.setBody(JSON.toJSONString(result));
|
|
|
|
|
|
+ webSocketInfo.setBody(result);
|
|
WS_CLIENTS.get(phone).sendMessage(new TextMessage(JSON.toJSONString(webSocketInfo)));
|
|
WS_CLIENTS.get(phone).sendMessage(new TextMessage(JSON.toJSONString(webSocketInfo)));
|
|
userMeasureMap.get(phone).add(musicPitchDetailDto.getMeasureIndex());
|
|
userMeasureMap.get(phone).add(musicPitchDetailDto.getMeasureIndex());
|
|
}
|
|
}
|