160 lines
3.9 KiB
Text
160 lines
3.9 KiB
Text
// GENERATED CONTENT - DO NOT EDIT
|
|
// Content was automatically extracted by Reffy into webref
|
|
// (https://github.com/w3c/webref)
|
|
// Source: MediaStream Image Capture (https://w3c.github.io/mediacapture-image/)
|
|
|
|
[Exposed=Window, SecureContext]
|
|
interface ImageCapture {
|
|
constructor(MediaStreamTrack videoTrack);
|
|
Promise<Blob> takePhoto(optional PhotoSettings photoSettings = {});
|
|
Promise<PhotoCapabilities> getPhotoCapabilities();
|
|
Promise<PhotoSettings> getPhotoSettings();
|
|
|
|
Promise<ImageBitmap> grabFrame();
|
|
|
|
readonly attribute MediaStreamTrack track;
|
|
};
|
|
|
|
dictionary PhotoCapabilities {
|
|
RedEyeReduction redEyeReduction;
|
|
MediaSettingsRange imageHeight;
|
|
MediaSettingsRange imageWidth;
|
|
sequence<FillLightMode> fillLightMode;
|
|
};
|
|
|
|
dictionary PhotoSettings {
|
|
FillLightMode fillLightMode;
|
|
double imageHeight;
|
|
double imageWidth;
|
|
boolean redEyeReduction;
|
|
};
|
|
|
|
dictionary MediaSettingsRange {
|
|
double max;
|
|
double min;
|
|
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<DOMString> whiteBalanceMode;
|
|
sequence<DOMString> exposureMode;
|
|
sequence<DOMString> 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;
|
|
|
|
sequence<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;
|
|
(boolean or ConstrainDouble) pan;
|
|
(boolean or ConstrainDouble) tilt;
|
|
(boolean or ConstrainDouble) zoom;
|
|
|
|
ConstrainBoolean torch;
|
|
};
|
|
|
|
partial dictionary MediaTrackSettings {
|
|
DOMString whiteBalanceMode;
|
|
DOMString exposureMode;
|
|
DOMString focusMode;
|
|
sequence<Point2D> 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<Point2D> exact;
|
|
sequence<Point2D> ideal;
|
|
};
|
|
|
|
typedef (sequence<Point2D> or ConstrainPoint2DParameters) ConstrainPoint2D;
|
|
|
|
enum MeteringMode {
|
|
"none",
|
|
"manual",
|
|
"single-shot",
|
|
"continuous"
|
|
};
|
|
|
|
dictionary Point2D {
|
|
double x = 0.0;
|
|
double y = 0.0;
|
|
};
|