chromium/third_party/blink/renderer/modules/mediastream/media_track_settings.idl

// Copyright 2016 The Chromium Authors
// 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-main/#idl-def-mediatracksettings

dictionary MediaTrackSettings {
    long width;
    long height;
    double aspectRatio;
    double frameRate;
    DOMString facingMode;
    DOMString resizeMode;
    long sampleRate;
    long sampleSize;
    boolean echoCancellation;
    boolean autoGainControl;
    boolean noiseSuppression;
    boolean voiceIsolation;
    double latency;
    long channelCount;
    DOMString deviceId;
    DOMString groupId;

    // W3C Image Capture API
    // https://w3c.github.io/mediacapture-image/#mediatracksettings-section
    // TODO(mcasas) move out when partial dictionaries are supported
    // http://crbug.com/579896.
    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;

    // W3C Media Capture Extensions
    [RuntimeEnabled=MediaCaptureBackgroundBlur] boolean backgroundBlur;
    [RuntimeEnabled=MediaCaptureCameraControls] boolean backgroundSegmentationMask;
    [RuntimeEnabled=MediaCaptureCameraControls] boolean eyeGazeCorrection;
    [RuntimeEnabled=MediaCaptureCameraControls] boolean faceFraming;

    // Screen Capture API
    // https://w3c.github.io/mediacapture-screen-share/#extensions-to-mediatracksettings
    [RuntimeEnabled=GetDisplayMedia] DOMString displaySurface;
    [RuntimeEnabled=GetDisplayMedia] boolean logicalSurface;
    [RuntimeEnabled=GetDisplayMedia] DOMString cursor;
    [RuntimeEnabled=GetDisplayMedia] boolean suppressLocalAudioPlayback;
};