| 
					
				 | 
			
			
				@@ -1,7 +1,7 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import { computed, defineComponent, reactive, ref } from "vue"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-import state, { onEnded, onLoadedmetadata, onPlay, onTimeupdate } from "../../state"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import styles from "./index.module.less"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import { getMidiCurrentTime, getMidiDuration, handleTogglePlayMidi, hanldeInitMidiData, hanldeSetMidiPlaybackRate, setMidiCurrentTime } from "./midiPlayer"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import state, { IPlayState, onEnded, onLoadedmetadata, onPlay, onTimeupdate } from "/src/state"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 const audioData = reactive({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	songEle: null as unknown as HTMLAudioElement, 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -39,8 +39,8 @@ export const setAudioPlaybackRate = (rate: number) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 export const getAudioCurrentTime = () => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	// 如果是midi播放 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	if (audioData.midiRender) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		const c = getMidiCurrentTime() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		return c 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		const c = getMidiCurrentTime(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		return c; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	return audioData.songEle?.currentTime || audioData.backgroundEle?.currentTime || 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 }; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -48,8 +48,8 @@ export const getAudioCurrentTime = () => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 export const getAudioDuration = () => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	// 如果是midi播放 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	if (audioData.midiRender) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		const d = getMidiDuration() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		return d 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		const d = getMidiDuration(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		return d; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	return audioData.songEle?.duration || audioData.backgroundEle?.duration || 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 }; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -58,7 +58,7 @@ export const getAudioDuration = () => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 export const setAudioCurrentTime = (time: number, index = 0) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	// 如果是midi播放 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	if (audioData.midiRender) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		setMidiCurrentTime(index) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		setMidiCurrentTime(index); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		return; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	audioData.songEle && (audioData.songEle.currentTime = time); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -66,16 +66,24 @@ export const setAudioCurrentTime = (time: number, index = 0) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 }; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 /** 设置当前没有播放的音频静音 */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-export const toggleMutePlayAudio = () => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	if(state.playSource === 'music'){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+export const toggleMutePlayAudio = (source: IPlayState, muted: boolean) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	if (source === "music") { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		if (audioData.songEle) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-			audioData.songEle.muted = !audioData.songEle.muted 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			audioData.songEle.muted = muted; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	} else if (state.playSource === 'background') { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	} else if (source === "background") { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		if (audioData.backgroundEle) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-			audioData.backgroundEle.muted = !audioData.backgroundEle.muted 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			audioData.backgroundEle.muted = muted; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+/** 检测音源数量 */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+export const detectTheNumberOfSoundSources = () => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	let total = 0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	if (audioData.songEle) total += 1 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	if (audioData.backgroundEle) total += 1 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	return total 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 export default defineComponent({ 
			 |