a) Open https://ashishanand26cs.github.io/lowvolume on safari b) Press "Start" button. Audio tone will play c) Press "MicAccess" button. Tone stops playing while system prompt dialog is on screen. Tap "Allow" on prompt. Tone plays for a brief moment, then stops again. Then starts playing at a higher pitch and then after some time tone pitch becomes lower again d) Press "MicAccessStop" button. Mic capture will stop. Tone pitch changes again There is a noticeable "mechanical" distortion also from the iPhone's speakers.
<rdar://problem/98655838>
Pull request: https://github.com/WebKit/WebKit/pull/3523
With this patch, macOS is fine but iOS still deserves improvements.
On iOS, the remote IO that renders audio is being stopped/started twice before the VPIO unit is running: - when category is changed to PlayAndRecord: AVAudioSessionRouteChangeReasonCategoryChange, maybe due to UIProcess listing devices - when starting capture in GPUProcess, around the time of AVAudioSessionRouteChangeReasonOverride
Committed 253673@main (65ae54bdedbb): <https://commits.webkit.org/253673@main> Reviewed commits have been landed. Closing PR #3523 and removing active labels.
(In reply to youenn fablet from comment #4) > On iOS, the remote IO that renders audio is being stopped/started twice > before the VPIO unit is running: > - when category is changed to PlayAndRecord: > AVAudioSessionRouteChangeReasonCategoryChange, maybe due to UIProcess > listing devices > - when starting capture in GPUProcess, around the time of > AVAudioSessionRouteChangeReasonOverride In which version of iOS will this change be available ?