| 
					
				 | 
			
			
				@@ -3,7 +3,7 @@ import { connectWebsocket, evaluatingData, handleEndBegin, handleStartBegin, han 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import Earphone from "./earphone"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import styles from "./index.module.less"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import SoundEffect from "./sound-effect"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-import state, { handleRessetState, resetPlaybackToStart, musicalInstrumentCodeInfo, clearSelection } from "/src/state"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import state, { handleRessetState, resetPlaybackToStart, musicalInstrumentCodeInfo, clearSelection, initSetPlayRate } from "/src/state"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import { storeData } from "/src/store"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import { browser } from "/src/utils"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import { getNoteByMeasuresSlursStart } from "/src/helpers/formateMusic"; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -196,7 +196,7 @@ export default defineComponent({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         const note = getNoteByMeasuresSlursStart(item); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         // #8701 bug: 评测模式,是以曲谱本身的速度进行评测,所以rate取1,不需要转换 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         // const rate = state.speed / state.originSpeed; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        const rate = 1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        const rate = state.basePlayRate * state.originAudioPlayRate; // 播放倍率 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         const difftime = item.difftime; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         const start = difftime + (item.sourceRelativeTime || item.relativeTime) - starTime; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         const end = difftime + (item.sourceRelaEndtime || item.relaEndtime) - starTime; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -261,8 +261,9 @@ export default defineComponent({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     /** 连接websocket */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     const handleConnect = async () => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       const behaviorId = localStorage.getItem("behaviorId") || localStorage.getItem("BEHAVIORID") || undefined; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      let rate = state.speed / state.originSpeed; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      rate = parseFloat(rate.toFixed(2)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      // let rate = state.speed / state.originSpeed; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      const rate = state.basePlayRate * state.originAudioPlayRate; // 播放倍率 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      // rate = parseFloat(rate.toFixed(2)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       console.log("速度比例", rate, "速度", state.speed); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       calculateInfo = formatTimes(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       const content = { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -282,7 +283,7 @@ export default defineComponent({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         // beatLength: Math.round((state.fixtime * 1000) / rate), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         beatLength: actualBeatLength, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         evaluationCriteria: state.evaluationStandard, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        speedRate: rate, // 播放倍率 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        speedRate: parseFloat(rate.toFixed(2)), // 播放倍率 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       }; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       await connectWebsocket(content); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       // state.playSource = "music"; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -296,15 +297,14 @@ export default defineComponent({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           resetPlaybackToStart(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           return; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } else if (evaluatingData.resultData?.recordIdStr || evaluatingData.resultData?.recordId) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          let rate = state.speed / state.originSpeed; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          rate = parseFloat(rate.toFixed(2)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          const rate = state.basePlayRate * state.originAudioPlayRate; // 播放倍率 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           // 上传云端 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           // evaluatModel.evaluatUpdateAudio = true; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           api_openAdjustRecording({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             recordId: evaluatingData.resultData?.recordIdStr || evaluatingData.resultData?.recordId, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             title: state.examSongName || "曲谱演奏", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             coverImg: state.coverImg, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            speedRate: rate, // 播放倍率 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            speedRate: parseFloat(rate.toFixed(2)), // 播放倍率 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             musicRenderType: state.musicRenderType, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             musicSheetId: state.examSongId, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             'part-index': state.partIndex 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -390,6 +390,7 @@ export default defineComponent({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       // console.log('异常流程3') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      initSetPlayRate(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       // 检测APP端socket状态 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       const res: any = await startCheckDelay(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       if (res?.checked) { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -445,6 +446,7 @@ export default defineComponent({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     onMounted(async () => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       // 如果打开了延迟检测开关,需要先发送开始检测的消息 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       const delayData = await api_getDeviceDelay(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      console.log('设备的延迟值',delayData.content?.value) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       if (state.setting.soundEffect || (delayData && delayData.content?.value < 0)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         await api_startDelayCheck({}); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       } else { 
			 |