瀏覽代碼

feat:小节评分

Joburgess 4 年之前
父節點
當前提交
d3042fbf91
共有 1 個文件被更改,包括 6 次插入1 次删除
  1. 6 1
      mec-biz/src/main/java/com/ym/mec/biz/handler/WebSocketHandler.java

+ 6 - 1
mec-biz/src/main/java/com/ym/mec/biz/handler/WebSocketHandler.java

@@ -157,9 +157,14 @@ public class WebSocketHandler extends AbstractWebSocketHandler {
         System.arraycopy(message.getPayload().array(), 0, newByte, userSoundInfoMap.get(phone).getPreDataArray().length, message.getPayloadLength());
         userSoundInfoMap.get(phone).setPreDataArray(message.getPayload().array());
 
+        double preDurationTime = userSoundInfoMap.get(phone).getPreDataArray().length/(audioFormat.getFrameSize()*audioFormat.getFrameRate())*1000;
+
         List<MusicPitchDetailDto> recordInfo = new ArrayList<>();
-        AudioDispatcher dispatcher = AudioDispatcherFactory.fromByteArray(newByte, audioFormat, simpleSize, 128);
+        AudioDispatcher dispatcher = AudioDispatcherFactory.fromByteArray(message.getPayload().array(), audioFormat, simpleSize, 128);
         dispatcher.addAudioProcessor(new PitchProcessor(algo, simpleRate, simpleSize, (pitchDetectionResult, audioEvent) -> {
+//            if(audioEvent.getTimeStamp()*1000<=preDurationTime){
+//                return;
+//            }
             int timeStamp = (int) (userSoundInfoMap.get(phone).getMeasureStartTime() + audioEvent.getTimeStamp()*1000);
             float pitch = pitchDetectionResult.getPitch();
 //            LOGGER.info("频率:{}, {}", timeStamp, pitch);