EZ Web Audio / parseMusicalTime
Function: parseMusicalTime()
parseMusicalTime(
notation,bpm,timeSignature,ticksPerBeat):number
Defined in: packages/core/src/utils/musical-time.ts:130
Convert musical time notation to seconds given BPM and time signature.
This is the primary user-facing function. It converts any musical time notation to an absolute duration in seconds, accounting for BPM and time signature.
Parameters
notation
Musical time notation string or numeric beat value
bpm
number
Tempo in beats per minute (must be > 0)
timeSignature
[number, number] = ...
Time signature as [beatsPerBar, beatUnit] (default: [4, 4])
ticksPerBeat
number = 4
Ticks per beat for position calculations (default: 4)
Returns
number
Duration in seconds
Throws
if BPM <= 0 or notation is invalid
Example
typescript
parseMusicalTime('4n', 120) // 0.5 seconds
parseMusicalTime('1m', 120) // 2.0 seconds (one bar of 4/4 at 120 BPM)
parseMusicalTime('4n', 60) // 1.0 second
parseMusicalTime('1m', 120, [3, 4]) // 1.5 seconds (one bar of 3/4 at 120 BPM)