On Firefox and Chrome,
navigator.mediaDevices.enumerateDevices()
...returns a list of all connected audio and video devices.
But on desktop Safari, at least on my system, it's only returning the default devices.
Is this expected behavior?
I just ran into this problem myself.
AFAICT Safari only gets default devices until after getUserMedia
is called.
The demo at simpl.info/sources handles this.