-
Notifications
You must be signed in to change notification settings - Fork 2.5k
Description
What type of issue is this?
Incorrect support data (example: BrowserX says "86" but support was added in "40")
What information was incorrect, unhelpful, or incomplete?
api.AudioParam.cancelScheduledValues is marked as fully supported in Firefox, but Firefox does not implement the spec change from March 2020 (WebAudio/web-audio-api#2071). This is confirmed by the still-open Firefox Bug 1752775.
The spec was updated to clarify that cancelScheduledValues should cancel in-progress curve events created by setValueCurveAtTime when the cancel time falls within the curve's duration. Firefox still follows the old behavior: it fails to cancel the curve event, which causes subsequent scheduling attempts to throw Uncaught DOMException: AudioParam.setValueAtTime: Can't add events during a curve event.
Firefox should be marked as partial support with a note explaining this limitation.
What browsers does this problem apply to, if applicable?
Firefox
What did you expect to see?
The compatibility data for Firefox should indicate partial support. It should include a note stating that Firefox does not cancel in-progress setValueCurveAtTime events as required by the spec.
Did you test this? If so, how?
- Open https://codepen.io/wemyss/pen/BamjNLW?editors=1011 in Firefox
- Click the button to execute the test sequence. This triggers a script that starts a curve event, attempts to cancel it shortly after, and then tries to schedule a new event.
- Wait and observe the console
Expected result: The curve event should be canceled, allowing the new event to be scheduled successfully. This behavior works correctly in Chrome and Safari.
Actual result in Firefox: The curve event is not canceled, causing the subsequent setValueAtTime call to throw:
Uncaught DOMException: AudioParam.setValueAtTime: Can't add events during a curve event
The same issue occurs in Firefox for Android.
Can you link to any release notes, bugs, pull requests, or MDN pages related to this?
- Spec issue & resolution: cancelScheduledValues with setValueCurveAtTime WebAudio/web-audio-api#2071
- Spec commit (March 2020): WebAudio/web-audio-api@9d4d866
- W3C Recommendation: https://www.w3.org/TR/2021/REC-webaudio-20210617/#dom-audioparam-cancelscheduledvalues
- Firefox Bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1752775
Do you have anything more you want to share?
No response
MDN URL
No response
MDN metadata
No response