|
@@ -166,7 +166,8 @@ public class WebSocketHandler extends AbstractWebSocketHandler {
|
|
|
int timeStamp = (int) (userSoundInfoMap.get(phone).getMeasureStartTime() + audioEvent.getTimeStamp()*1000);
|
|
|
float pitch = pitchDetectionResult.getPitch();
|
|
|
if(pitch>0 && userSoundInfoMap.get(phone).getOffsetTime() == -1){
|
|
|
- calOffsetTime(phone, (int) (CollectionUtils.isEmpty(userSoundInfoMap.get(phone).getRecordMeasurePithInfo())?0:userSoundInfoMap.get(phone).getRecordMeasurePithInfo().get(userSoundInfoMap.get(phone).getRecordMeasurePithInfo().size()-1).getTimeStamp()));
|
|
|
+ int preTimeStamp = CollectionUtils.isEmpty(userSoundInfoMap.get(phone).getRecordMeasurePithInfo())?0:userSoundInfoMap.get(phone).getRecordMeasurePithInfo().get(userSoundInfoMap.get(phone).getRecordMeasurePithInfo().size()-1).getTimeStamp();
|
|
|
+ calOffsetTime(phone, timeStamp - (timeStamp - preTimeStamp)/2);
|
|
|
}
|
|
|
// LOGGER.info("时间:{}, 频率:{}, 分贝:{}, 音分:{}", timeStamp, pitch, silenceDetecor.currentSPL(), cents);
|
|
|
userSoundInfoMap.get(phone).getRecordMeasurePithInfo().add(new MusicPitchDetailDto(timeStamp, pitch, silenceDetecor.currentSPL()));
|
|
@@ -213,9 +214,9 @@ public class WebSocketHandler extends AbstractWebSocketHandler {
|
|
|
super.afterConnectionClosed(session, status);
|
|
|
String phone = session.getPrincipal().getName().split(":")[1];
|
|
|
LOGGER.info("{}离线", phone);
|
|
|
+ createHeader(phone);
|
|
|
WS_CLIENTS.remove(phone);
|
|
|
userSoundInfoMap.remove(phone);
|
|
|
- createHeader(phone);
|
|
|
}
|
|
|
|
|
|
@Override
|