Bug 189713

Summary: REGRESSION (iOS 12): AudioContext not playing through device speakers
Product: WebKit Reporter: Neil Kinnish <hello>
Component: WebRTCAssignee: Nobody <webkit-unassigned>
Status: RESOLVED CONFIGURATION CHANGED    
Severity: Critical CC: alojz.milicevic, ben.browitt, eric.carlson, jer.noble, jordy, mikeblock, webkit-bug-importer, youennf
Priority: P1 Keywords: InRadar
Version: Other   
Hardware: Unspecified   
OS: Unspecified   

Neil Kinnish
Reported 2018-09-18 14:14:17 PDT
There seems to be a few related issues that are new to iOS 12 (iOS 11 was not affected). This is based on WebRTC, sending remote stream audio through AudioContext – previously working on iOS 11. 1. Without headphones and regardless of the mute button on the device, the audio does not play (does play with headphones). 2. Plugging and unplugging headphones and the audio stops working, have to refresh with headphones for it work again. 3. Enabling / Disabling a local audio track not connected to the AudioContext stops the remote audio playing in the AudioContext.
Attachments
Radar WebKit Bug Importer
Comment 1 2018-09-19 16:03:31 PDT
youenn fablet
Comment 2 2018-09-20 17:07:06 PDT
Hi Neil, can you provide a test case? Is it related to a remote audio track only or does it apply to a local getUserMedia track?
Mike Block
Comment 3 2018-10-05 04:02:16 PDT
This may be unrelated but even in 11.4.1 I'm not hearing audio through the speakers on an iPad mini. My use case has a video playing on the web page while you are connected via WebRTC in a call. I think the AudioContext is not allowing mixing of audio sources between regular h.264/aac video playback and the remote streams coming in through the peer connections. Volume for the h.264/aac video playback is erratic. Sometimes it's loud, then it drops, and then it just mutes completely. There's no apparent predictability to it.
Neil Kinnish
Comment 4 2018-10-05 04:07:20 PDT
(In reply to youenn fablet from comment #2) > Hi Neil, can you provide a test case? > Is it related to a remote audio track only or does it apply to a local > getUserMedia track? Yes, sorry just need time to put a test case together
Neil Kinnish
Comment 5 2018-10-05 04:09:01 PDT
(In reply to Mike Block from comment #3) > This may be unrelated but even in 11.4.1 I'm not hearing audio through the > speakers on an iPad mini. My use case has a video playing on the web page > while you are connected via WebRTC in a call. I think the AudioContext is > not allowing mixing of audio sources between regular h.264/aac video > playback and the remote streams coming in through the peer connections. > > Volume for the h.264/aac video playback is erratic. Sometimes it's loud, > then it drops, and then it just mutes completely. There's no apparent > predictability to it. I am using video / audio tags now and not relying on AudioContext. It is true though on iOS (devices at least) the volume does jump at points, this can happen when animations happen on a page, click, touch events.
Mike Block
Comment 6 2018-10-05 05:35:27 PDT
That seems odd that animations and user interaction would cause the audio to jump in volume. The speaker output is also set to a call type audio rather than standard media. I know this because the AudioContext changes only if getUserMedia is called or remote audio streams are attached in the page. Let me know if I should just open a separate issue to address this.
Ben
Comment 7 2018-11-19 06:53:22 PST
I'm mixing several audio tracks with AudioContext because iOS can only play a single audio track[1]. Tested with Safari on iOS 12.1 and Chrome 70 on Windows. What works: 1. Safari sends audio to Chrome. Chrome can hear the audio. 2. Chrome start sending audio to Safari. Safari can hear the audio. What's broken: 1. Chrome sends audio to Safari. Safari Can hear the audio. 2. Safari start sending audio to Chrome. Chrome can hear the audio but Safari can't hear. Safari on Mac doesn't have this issue. [1] https://bugs.webkit.org/show_bug.cgi?id=176282#c12
Ben
Comment 8 2018-11-20 08:05:17 PST
youenn, any workaround?
youenn fablet
Comment 9 2018-11-20 08:15:26 PST
(In reply to Ben from comment #8) > youenn, any workaround?
youenn fablet
Comment 10 2018-11-20 08:16:07 PST
(In reply to youenn fablet from comment #9) > (In reply to Ben from comment #8) > > youenn, any workaround? Hi Ben, would you be able to provide some repro case?
Ben
Comment 11 2018-11-20 08:20:41 PST
I'll try to create a repo case. The key is that Safari starts in recvonly video track and later change to sendonly.
youenn fablet
Comment 12 2024-05-21 07:28:35 PDT
Marking as configuration changed, a lot of things have changed since then.
Note You need to log in before you can comment on or make changes to this bug.