This commit is contained in:
2026-05-29 18:17:44 +08:00
parent c589bfa647
commit 132a17b946
15 changed files with 285 additions and 2175 deletions
@@ -9,6 +9,7 @@ export interface MetronomeOptions {
accentEvery?: number
poolSize?: number
volume?: number // 节拍音音量 0-1
silent?: boolean // 静音模式:只驱动节拍回调,不发声(如握力环只需视觉节拍)
onBeat?: (beatIndex: number, isAccent: boolean) => void
}
@@ -119,6 +120,7 @@ export function useMetronome(options: MetronomeOptions = {}) {
accentSrc,
poolSize = 4,
volume = 1,
silent = false,
onBeat,
} = options
@@ -136,6 +138,7 @@ export function useMetronome(options: MetronomeOptions = {}) {
let nextTickAt = 0
const ensureAudio = () => {
if (silent) return
if (!clickPool) {
clickPool = new AudioPool(clickSrc, poolSize, volume)
clickPool.warmUp()