[Webkit-unassigned] [Bug 198545] iOS not hearing other participant

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Wed Jul 1 03:46:51 PDT 2020


https://bugs.webkit.org/show_bug.cgi?id=198545

Francesco <francesco.durighetto at bandyer.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |francesco.durighetto at bandye
                   |                            |r.com

--- Comment #29 from Francesco <francesco.durighetto at bandyer.com> ---
(In reply to youenn fablet from comment #28)
> This should be fixed in latest iOS 13.5.5 beta.

Thanks Youenn,
the "read out of the ring buffer" seems to be fixed in 13.6 beta 2 (the audio of the remote streams is always playing)

However some of the bug reported and/or connected to this are still in a way present in the latest 10.6 beta 3

I found other major bugs for the user experience and the impossibility to catch them programmatically, which is quite disruptive for our services, especially in this lockdown period since video collaboration had an impressive boost:

1) when entering a call (with audio constraints {video: true, audio: {echoCancellation: true}} ) the remote stream is playing ok in iOS Safari.
- I put airpods: the switch is working flawlessly, audio and microphone are now picked from earphones.
- I remove airpods: the switch to the internal device microphone works ok but the remote audio is NOT playing. (html audio tag -> paused: false) (audio mediaStreamTrack -> enabled: true, readyState: live, muted: false), no paused event emitted from html audio nor muted or ended events are emitted from mediaStreamTrack.
- Try to call .play() on html audio tag -> nothing happens
- Try to call .pause() on html audio tag -> a paused event is emitted from html audio tag
- Try to call .play() again and finally the audio resumes BUT with a very low volume

The only ways to "unlock" the volume are:
- calling new webkitAudioContext()
- rotating the screen of the device
- doing a pinch to zoom (this leads to another nested bug, see * on the bottom)

- Trying to wear again the airpods, the audio is ok but the volume is again really low.
- Trying to remove them again, and no audio is emitted by the phone.


2) Now let's do the same thing but with the airpods already on the ears.
- Put airpods on
- Join the call. audio is playing good in the airpods and the airpods mic is selected automatically.
- Remove airpods: audio from speakerphone is very low and the only 3 ways I found to unlock are the same described before.
- Also, the audio is not crystal clear as when join the call without airpods. I think the output bitrate of airpods is kept when switching from airpods to iphone (not a big deal but could help debugging)

3) onended events is not emitted by the mediastreamtrack whenever a gsm call is received. 
The gsm "steal" the microphone to the web page and never gives it back after the call.
This is a really big issue since we cannot do a getusermedia again after the call to have the control back.
Instead, a muted event is emitted from the mediaStreamTrack. This is not spec-compliant since we expect that the microphone is temporarily muted but eventually is given back (which is the behavior I expect, but is not). With the camera however, this works well. Wehen the page is set in background, the capturer stops and emits a stream muted, but when safari is opened again, the camera is captured again.
So, the best fix would be to have a microphone muted event whenever other apps "steal" the microphone such as gsm call and eventually have it back once the other app is done, or have an ended event if you do not plan to give the control back to safari.

4) Would be nice if the play/pause in the dropdown menu widget would not interfere with realtime webrtc calls.


* When doing a pinch to zoom, a pause event is emitted once from the video html tag. all the subsequent pinch to zoom emits a pause event TWICE, thus the video continues playing normally.

Let me know if you prefer I open these as separate bugs but please consider working on these before the next 13.6 release. iOS 13 was a nightmare from the audio perspective in WebRTC and users keeps complaining about that.

Question: is Safari webkit engine updated on iOS only on iOS release or there is "hotfix" branch that auto updates itself as an "app"?

thanks!

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.webkit.org/pipermail/webkit-unassigned/attachments/20200701/ece6fbcb/attachment-0001.htm>


More information about the webkit-unassigned mailing list