BaseAudioContext: свойство currentTime
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since April 2021.
Доступное только для чтения свойство currentTime
интерфейса BaseAudioContext
возвращает начинающуюся с 0 и постоянно увеличивающуюся аппаратную метку времени в секундах, которая может использоваться для планирования воспроизведения звука, визуализации и т.д.
Значение
Число с плавающей запятой.
Примеры
const audioCtx = new AudioContext();
// Для работы в старых webkit/blink-браузерах требуется префикс
// …
console.log(audioCtx.currentTime);
Снижение точности времени
Для обеспечения защиты от атак и слежения за пользователем, точность audioCtx.currentTime
может округляться в зависимости от настроек браузера.
В Firefox настройка privacy.reduceTimerPrecision
включена по умолчанию и равна 20 мкс в Firefox 59 (2 мс в Firefox 60).
// снижение точности времени (2 мс) в Firefox 60
audioCtx.currentTime;
// 23.404
// 24.192
// 25.514
// …
// снижение точности времени с включённой настройкой `privacy.resistFingerprinting`
audioCtx.currentTime;
// 49.8
// 50.6
// 51.7
// …
В Firefox также есть настройка privacy.resistFingerprinting
, которая изменяет точность до 100 мс или значения privacy.resistFingerprinting.reduceTimerPrecision.microseconds
, в зависимости от того, что больше.
Спецификации
Specification |
---|
Web Audio API # dom-baseaudiocontext-currenttime |
Совместимость с браузерами
BCD tables only load in the browser