WebAudio: Remove dezippering

Historically, Chrome implemented dezippering such that when the value setter of an AudioParam was used, the value was not changed instantaneously. Instead, an exponential approach equivalent to setTargetValueAtTime was done. The actual time constant used was never specified and depended on the AudioParam. With the spec change in https://github.com/WebAudio/web-audio-api/pull/393, (Sep 2015), all dezippering was removed from the spec. Dezippering will be removed from Chrome.

Comments

This has the potential to break existing apps if they depended on smooth transitions using the value setter. If dezippering is still needed, the appropriate replacement is to use setTargetAtTime(value, context.currentTime, timeConstant), where timeConstant is probably around 10-20 ms, which was the typical value used in Chrome for dezippering. If dezippering is not needed, nothing needs to be done, Deprecation messages will be displayed, stating dezippering will be removed in M66.

Documentation

Specification

Editor's draft

Status in Chromium

Blink>WebAudio


Enabled by default (tracking bug) in:

  • Chrome for desktop release 66
  • Chrome for Android release 66
  • Opera release 53
  • Opera for Android release 53

Consensus & Standardization

After a feature ships in Chrome, the values listed here are not guaranteed to be up to date.

  • Shipped
  • No public signals
  • No public signals
  • No signals

Owners

Last updated on 2018-01-30