Navigator.mediaDevices has * an enumerateDevices function, which provides the same functionality as MediaStreamTrack.getSources and adds audio output devices to the list, and * a devicechange event to notify when the set of devices available have changed. enumerateDevices is enabled by default, and the devicechange event is behind a flag.


Editor's draft

Status in Chromium


Enabled by default (tracking bug) in:

  • Chrome for desktop release 47
  • Chrome for Android release 47
  • Android WebView release 47

Consensus & Standardization

After a feature ships in Chrome, the values listed here are not guaranteed to be up to date.



Firefox ships MediaDevices, but does not yet support ondevicechange. They are planning to add support:

Last updated on 2020-11-09