// GENERATED CONTENT - DO NOT EDIT // Content was automatically extracted by Reffy into reffy-reports // (https://github.com/tidoust/reffy-reports) // Source: MediaStream Image Capture (https://w3c.github.io/mediacapture-image/) [Exposed=Window, Constructor(MediaStreamTrack videoTrack)] interface ImageCapture { Promise takePhoto(optional PhotoSettings photoSettings); Promise getPhotoCapabilities(); Promise getPhotoSettings(); Promise grabFrame(); readonly attribute MediaStreamTrack track; }; [Exposed=Window] interface PhotoCapabilities { readonly attribute RedEyeReduction redEyeReduction; readonly attribute MediaSettingsRange imageHeight; readonly attribute MediaSettingsRange imageWidth; readonly attribute FrozenArray fillLightMode; }; dictionary PhotoSettings { FillLightMode fillLightMode; double imageHeight; double imageWidth; boolean redEyeReduction; }; [Exposed=Window] interface MediaSettingsRange { readonly attribute double max; readonly attribute double min; readonly attribute double step; }; enum RedEyeReduction { "never", "always", "controllable" }; enum FillLightMode { "auto", "off", "flash" }; partial dictionary MediaTrackSupportedConstraints { boolean whiteBalanceMode = true; boolean exposureMode = true; boolean focusMode = true; boolean pointsOfInterest = true; boolean exposureCompensation = true; boolean exposureTime = true; boolean colorTemperature = true; boolean iso = true; boolean brightness = true; boolean contrast = true; boolean pan = true; boolean saturation = true; boolean sharpness = true; boolean focusDistance = true; boolean tilt = true; boolean zoom = true; boolean torch = true; }; partial dictionary MediaTrackCapabilities { sequence whiteBalanceMode; sequence exposureMode; sequence focusMode; MediaSettingsRange exposureCompensation; MediaSettingsRange exposureTime; MediaSettingsRange colorTemperature; MediaSettingsRange iso; MediaSettingsRange brightness; MediaSettingsRange contrast; MediaSettingsRange saturation; MediaSettingsRange sharpness; MediaSettingsRange focusDistance; MediaSettingsRange pan; MediaSettingsRange tilt; MediaSettingsRange zoom; boolean torch; }; partial dictionary MediaTrackConstraintSet { ConstrainDOMString whiteBalanceMode; ConstrainDOMString exposureMode; ConstrainDOMString focusMode; ConstrainPoint2D pointsOfInterest; ConstrainDouble exposureCompensation; ConstrainDouble exposureTime; ConstrainDouble colorTemperature; ConstrainDouble iso; ConstrainDouble brightness; ConstrainDouble contrast; ConstrainDouble saturation; ConstrainDouble sharpness; ConstrainDouble focusDistance; ConstrainDouble pan; ConstrainDouble tilt; ConstrainDouble zoom; ConstrainBoolean torch; }; partial dictionary MediaTrackSettings { DOMString whiteBalanceMode; DOMString exposureMode; DOMString focusMode; sequence pointsOfInterest; double exposureCompensation; double exposureTime; double colorTemperature; double iso; double brightness; double contrast; double saturation; double sharpness; double focusDistance; double pan; double tilt; double zoom; boolean torch; }; dictionary ConstrainPoint2DParameters { sequence exact; sequence ideal; }; typedef (sequence or ConstrainPoint2DParameters) ConstrainPoint2D; enum MeteringMode { "none", "manual", "single-shot", "continuous" }; dictionary Point2D { double x = 0.0; double y = 0.0; };