blob: fec612dc9fe5b8d5fceee428a43ecd249b04da3d [file] [log] [blame]
// Copyright 2016 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.
// https://w3c.github.io/mediacapture-image/#ImageCaptureAPI
[
ActiveScriptWrappable,
ConstructorCallWith=ExecutionContext,
Constructor(MediaStreamTrack track),
DependentLifetime,
MeasureAs=ImageCaptureConstructor,
RaisesException=Constructor
] interface ImageCapture {
[ImplementedAs=videoStreamTrack] readonly attribute MediaStreamTrack track;
[CallWith=ScriptState] Promise<PhotoCapabilities> getPhotoCapabilities();
[CallWith=ScriptState] Promise<PhotoSettings> getPhotoSettings();
[CallWith=ScriptState, MeasureAs=ImageCaptureSetOptions] Promise<void> setOptions(PhotoSettings photoSettings);
[CallWith=ScriptState] Promise<Blob> takePhoto(optional PhotoSettings photoSettings);
[CallWith=ScriptState] Promise<ImageBitmap> grabFrame();
};