Search code examples
webrtc

navigator.mediaDevices.enumerateDevices() only Returns Default Devices on Safari?


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?


Solution

  • 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.