Преглед изворни кода

Merge branch 'audio_20221013'

# Conflicts:
#	audio-analysis/src/main/java/com/yonge/netty/dto/UserChannelContext.java
#	audio-analysis/src/main/java/com/yonge/netty/entity/MusicXmlBasicInfo.java
#	audio-analysis/src/main/java/com/yonge/netty/entity/MusicXmlNote.java
yonge пре 2 година
родитељ
комит
0eca11f01b

+ 10 - 8
audio-analysis/src/main/java/com/yonge/netty/dto/UserChannelContext.java

@@ -678,14 +678,6 @@ public class UserChannelContext {
 		double correctedStartTime = queryFirstNoteStartTime(chunkAnalysisList, musicXmlNote, floatingRange);
 		double correctedEndTime = correctedStartTime + musicXmlNote.getDuration();
 
-		// 颤音频率只要有一个符合 就符合
-		if (musicXmlNote.isOrnament()) {
-			for (ChunkAnalysis chunkAnalysis : chunkAnalysisList) {
-				if (Double.valueOf(chunkAnalysis.getFrequency()).intValue() == Float.valueOf(musicXmlNote.getFrequency()).intValue()) {
-					return Float.valueOf(musicXmlNote.getFrequency()).intValue();
-				}
-			}
-		}
 		//重新计算延迟
 		dynamicOffset = correctedStartTime - musicXmlNote.getTimeStamp();
 		dynamicOffset = dynamicOffset < 0 ? 0 : dynamicOffset;
@@ -699,6 +691,16 @@ public class UserChannelContext {
 			return -1;
 		}
 		
+		// 颤音频率只要有一个符合 就符合
+		if (musicXmlNote.isOrnament()) {
+			for (ChunkAnalysis chunkAnalysis : chunkAnalysisList) {
+				NoteFrequencyRange noteFrequencyRange = new NoteFrequencyRange(standardFrequecy, musicXmlNote.getFrequency());
+				if((noteFrequencyRange.getMinFrequency() < chunkAnalysis.getFrequency() && chunkAnalysis.getFrequency() < noteFrequencyRange.getMaxFrequency())){
+					return Float.valueOf(musicXmlNote.getFrequency()).intValue();
+				}
+			}
+		}
+		
 		ChunkAnalysis firstChunkAnalysis = chunkAnalysisList.get(0);
 		
 		LOGGER.debug("------Pitch------startTime:{}  endTime:{}------", firstChunkAnalysis.getStartTime(), chunkAnalysisList.get(chunkAnalysisList.size() - 1)

+ 2 - 2
audio-analysis/src/main/java/com/yonge/netty/entity/MusicXmlBasicInfo.java

@@ -53,8 +53,8 @@ public class MusicXmlBasicInfo {
 		return isOrnament;
 	}
 
-	public void setOrnament(boolean ornament) {
-		isOrnament = ornament;
+	public void setIsOrnament(boolean isOrnament) {
+		this.isOrnament = isOrnament;
 	}
 
 	public String getCustomConfiguration() {

+ 2 - 2
audio-analysis/src/main/java/com/yonge/netty/entity/MusicXmlNote.java

@@ -40,8 +40,8 @@ public class MusicXmlNote {
 		return isOrnament;
 	}
 
-	public void setOrnament(boolean ornament) {
-		isOrnament = ornament;
+	public void setIsOrnament(boolean isOrnament) {
+		this.isOrnament = isOrnament;
 	}
 
 	public double getTimeStamp() {