Bug 275801
| Summary: | Distorted audio when using both getUserMedia and AudioWorklet.addModule | ||
|---|---|---|---|
| Product: | WebKit | Reporter: | Logan <loganzartman> |
| Component: | Web Audio | Assignee: | Nobody <webkit-unassigned> |
| Status: | RESOLVED DUPLICATE | ||
| Severity: | Normal | CC: | ap, cdumez |
| Priority: | P2 | Keywords: | HasReduction |
| Version: | Safari 17 | ||
| Hardware: | iPhone / iPad | ||
| OS: | iOS 17 | ||
| URL: | https://loganzartman.github.io/ios-safari-webaudio-bug/ | ||
Logan
When performing a specific sequence of actions, all WebAudio output is garbled/distorted:
1. Call navigator.mediaDevices.getUserMedia({audio: true})
2. Create an AudioContext
3. Add any audio worklet using audioContext.audioWorklet.addModule
I have created a test case reduction here: https://loganzartman.github.io/ios-safari-webaudio-bug/
In my reproduction the audio worklet does not do anything at all. The OscillatorNode, which is not connected to the worklet in any way, sounds distorted.
Because of that, I think this is distinct from https://bugs.webkit.org/show_bug.cgi?id=251091
Here are some observations:
- Only reproduces on iOS.
- The order of these steps is important. Creating the AudioContext first seems to resolve the issue.
- Both getUserMedia() and addModule() must be called to reproduce the bug.
- The audio worklet does not have to do anything specific to cause the bug.
- It seems to affect all audio output. The OscillatorNode in this example is just for demonstration.
| Attachments | ||
|---|---|---|
| Add attachment proposed patch, testcase, etc. |
Alexey Proskuryakov
I cannot reproduce with iOS 18 beta, so I'm guessing that this is another manifestation of bug 274507. Could you please re-test with either iOS 18 beta 2 or iOS 17.6 beta?
*** This bug has been marked as a duplicate of bug 274507 ***
Logan
Thanks, I was using iOS 18 beta 1, but updating to beta 2 seems to have fixed it.