| // Copyright 2015 The Chromium Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| // The spec for MediaDevices is in two parts: |
| // https://w3c.github.io/mediacapture-main/#mediadevices |
| // https://w3c.github.io/mediacapture-main/#mediadevices-interface-extensions |
| |
| [ |
| ActiveScriptWrappable |
| ] interface MediaDevices : EventTarget { |
| [RuntimeEnabled=OnDeviceChange] attribute EventHandler ondevicechange; |
| [CallWith=ScriptState, MeasureAs=MediaDevicesEnumerateDevices] Promise<sequence<MediaDeviceInfo>> enumerateDevices(); |
| MediaTrackSupportedConstraints getSupportedConstraints(); |
| [CallWith=ScriptState, |
| RaisesException, |
| MeasureAs=GetUserMediaPromise |
| ] Promise<MediaStream> getUserMedia(optional MediaStreamConstraints constraints); |
| }; |