Bug 213390

Summary: On-screen volume controls do not work when microphone is active
Product: WebKit Reporter: Dustin Greif <dustin.greif>
Component: MediaAssignee: Nobody <webkit-unassigned>
Status: RESOLVED MOVED    
Severity: Normal CC: bfulgham, eric.carlson, glefebvr, jer.noble, js-webkit, webkit-bug-importer
Priority: P2 Keywords: InRadar
Version: Safari 13   
Hardware: iPhone / iPad   
OS: iOS 13   

Description Dustin Greif 2020-06-19 10:43:30 PDT
In iOS safari, if a web page has both audio playing and a microphone active, the on-screen volume controls do not work.  You can control the volume with the hardware buttons on the side of the iPad, but not with the software volume slider that is accessible by pulling down from the top right corner of the screen.  If the microphone is not active, the on-screen volume control works fine.  It seems like the iPad is switching audio codecs when the microphone is started (something like when AirPods switch to SCO when their mic is activated), and this second codec has its own separate volume level that is only controlled by the hardware volume buttons.  Here is a codepen which demonstrates the issue:

https://codepen.io/dgreif/pen/pogRJBg
Comment 1 Radar WebKit Bug Importer 2020-06-19 17:14:19 PDT
<rdar://problem/64550118>
Comment 2 Jacek Stypuła 2021-07-01 12:07:34 PDT
Additionally, you cannot mute the audio completely (set volume to zero) using the hardware buttons when the microphone is active. 

Should I report it as a separate bug?

I encountered the issue while doing GetUserMedia, like this:
https://webrtc.github.io/samples/src/content/getusermedia/audio/
Comment 3 Brent Fulgham 2022-02-10 19:55:10 PST
The fix for this issue was needed outside the WebKit project, therefore this is being resolved as 'Moved'.

The relevant team was unable to reproduce the issue.