RESOLVED FIXED280970
getUserMedia video track getSettings() returns stale value for torch and whiteBalanceMode constraints
https://bugs.webkit.org/show_bug.cgi?id=280970
Summary getUserMedia video track getSettings() returns stale value for torch and whit...
Alex Suzuki
Reported 2024-10-07 05:10:33 PDT
Calling getSettings() on a video track returns stale values for the `torch` constraint. In previous versions (iOS 17 and earlier), getSettings() would return `false` for the `torch` constraint after a call to `applyConstraints({ advanced: [ { torch: true ]})` succeeded. Since iOS 18, getSettings() will now return `false` instead. This of course makes it hard to determine the current state of the flashlight based on the result of the `getSettings()` call. Reproducer: https://github.com/pixelverse-llc/safari-ios18-gum-torch-setting To reproduce: load index.html and wait for the video feed to appear. Press 'ON' to enable the flash, and observe that getSettings() returns `false` for `torch`. Press 'OFF' to disable the flash: getSettings() now returns `true`, the previous value. The `torch` constraint can be used to toggle the camera flashlight on iOS devices (see: https://www.oberhofer.co/mediastreamtrack-and-its-capabilities/ for a write-up)
Attachments
Radar WebKit Bug Importer
Comment 1 2024-10-14 05:11:15 PDT
Eric Carlson
Comment 2 2024-12-13 10:47:50 PST
EWS
Comment 3 2024-12-14 16:34:26 PST
Committed 287845@main (46a4e69cafac): <https://commits.webkit.org/287845@main> Reviewed commits have been landed. Closing PR #37920 and removing active labels.
Note You need to log in before you can comment on or make changes to this bug.