Web Audio regression in Safari iOS 17 Beta

Update, Sept. 8, 2023: Apple engineering has acknowledged that this is a bug in the Safari Media frameworks rather than WebKit itself, and that they expect it to get fixed in an upcoming beta release.

Update, Sept. 19, 2023: Apple engineering has pointed to a fix, which appears to be in WebKit. However, the initial release of iOS 17 does not seem to include the fix, which was merged a few days before the launch.


Playing audio from a MediaElementAudioSourceNode silently fails in the iOS 17 Beta. I’ve reported this to the WebKit bug tracker here.

Repro

Open the repro link (below) and click “Play”.

Expected: An audio sample plays (this happens on Safari 16)

Actual: No audio plays (this happens on Safari 17)

Impact

Observations

  • The issue reproduces on iOS 17.0 (21a5312c)

  • The issue does not reproduce on iOS 16.3 (20D47)

  • The issue does not reproduce on Safari 17 on MacOS. Tested on version 17.0 (18616.1.27.101.1, 18616)

  • Some projects seem to avoid using MediaElementAudioSourceNode on iOS devices, going back to at least May 2020

  • There have been a few previous WebKit bugs that look similar: Bug 211394 and Bug 203435