BaseAudioContext: currentTime property
The currentTime
read-only property of the BaseAudioContext
interface returns a double representing an ever-increasing hardware timestamp in seconds that
can be used for scheduling audio playback, visualizing timelines, etc. It starts at 0.
Value
A floating point number.
Examples
js
const audioCtx = new AudioContext();
// Older webkit/blink browsers require a prefix
// …
console.log(audioCtx.currentTime);
Reduced time precision
To offer protection against timing attacks and fingerprinting, the precision of
audioCtx.currentTime
might get rounded depending on browser settings.
In Firefox, the privacy.reduceTimerPrecision
preference is enabled by
default and defaults to 20us in Firefox 59; in 60 it will be 2ms.
js
// reduced time precision (2ms) in Firefox 60
audioCtx.currentTime;
// 23.404
// 24.192
// 25.514
// …
// reduced time precision with `privacy.resistFingerprinting` enabled
audioCtx.currentTime;
// 49.8
// 50.6
// 51.7
// …
In Firefox, you can also enabled privacy.resistFingerprinting
, the
precision will be 100ms or the value of
privacy.resistFingerprinting.reduceTimerPrecision.microseconds
, whichever
is larger.
Specifications
Specification |
---|
Web Audio API # dom-baseaudiocontext-currenttime |
Browser compatibility
BCD tables only load in the browser