[Webkit-unassigned] [Bug 231787] New: Safari local video element pauses after bluetooth audioinput is disconnected
bugzilla-daemon at webkit.org
bugzilla-daemon at webkit.org
Thu Oct 14 17:03:10 PDT 2021
https://bugs.webkit.org/show_bug.cgi?id=231787
Bug ID: 231787
Summary: Safari local video element pauses after bluetooth
audioinput is disconnected
Product: WebKit
Version: Safari 15
Hardware: Mac (Intel)
OS: macOS 11
Status: NEW
Severity: Normal
Priority: P2
Component: WebRTC
Assignee: webkit-unassigned at lists.webkit.org
Reporter: devalevenkatesh at gmail.com
CC: youennf at gmail.com
Created attachment 441308
--> https://bugs.webkit.org/attachment.cgi?id=441308&action=review
Details more on manual steps to repro in devtools console
Problem:
When a bluetooth device is disconnected after getting audio input stream through getUserMedia , I get a “[Error] A MediaStreamTrack ended due to a capture failure" error. If a HTML video element is bound to an active ”videoinput“ media stream, then, the video element automatically pauses as soon as I see above error in browser developer tools console.
The issue is observed only on the local HTML video element. In an WebRTC based web application, if this local video stream is being sent to a remote side, the remote HTML video element is not paused and continues to work as expected.
Steps to Reproduce:
Reproduced on an official WebRTC sample.
(Used Safari 15)
1. Connect a bluetooth device, I reproduced using AirPods Pro.
2. Open https://webrtc.github.io/samples/src/content/devices/input-output/.
3. Provide permissions to choose media devices.
4. Once demo is working, disconnect the bluetooth device from your macOS menu bar.
5. The video element is paused now and you will see “A MediaStreamTrack ended due to a capture failure” error in browser developer tools console.
6. It does not play unless explicitly play() is called on the HTML video element.
Code pen link: https://codepen.io/venkateshdevale/pen/oNejMKO
Actual Results:
The HTML video element pauses when the bluetooth audioinput is disconnected after selection. There is no audio from the audioinput device after error.
Expected Results:
The HTML video element should continue to play and if we are falling back to a different audioinput device, it should get successfully selected.
Build:
* macOS Safari Version 15 (16612.1.29.41.4, 16612)
* macOS Safari Version 14.1.1
* Safari Technology Preview (Release 133 (Safari 15.4, WebKit 16613.1.2.2))
Additional Notes:
* The [Error] A MediaStreamTrack ended due to a capture failure is also observed in few more WebRTC official samples when you simply switch the “audioinput” media devices.
* https://webrtc.github.io/samples/src/content/getusermedia/volume/
* More prominently the issue is happening for AirPods Pro.
* Similar error bug: https://bugs.webkit.org/show_bug.cgi?id=221192
* It does not speak about the local video pause based on bluetooth audioinput disconnection though.
* Issue not reproducible in Firefox and Chrome latest versions.
--
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/20211015/d1040b87/attachment-0001.htm>
More information about the webkit-unassigned
mailing list