I really don’t get why your original demo would get your both cameras and mine couldn’t. ![]()
The most notable difference is that b/c you have enumerateDevices() inside the preload() callback, the whole thing starts much later in comparison to my demo, which invokes it ASAP. ![]()
Maybe if I change my demo to also call enumerateDevices() much later, after the whole page and its resources have been fully loaded, I wonder if I could get the same success result as yours on the Safari browser? ![]()
So instead of straight invoking my getAvailableVideoDevices(), I’d register it as a load event callback:
addEventListener('load', getAvailableVideoDevices);