{
    "dom-capturecontroller-constructor": [
        {
            "engines": [
                "blink"
            ],
            "filename": "api/CaptureController.json",
            "name": "CaptureController",
            "slug": "API/CaptureController/CaptureController",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/CaptureController/CaptureController",
            "summary": "The CaptureController constructor creates a new CaptureController object instance.",
            "support": {
                "chrome": {
                    "version_added": "109"
                },
                "chrome_android": {
                    "version_added": false
                },
                "edge": "mirror",
                "firefox": {
                    "version_added": false
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": {
                    "version_added": false
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "109"
                }
            },
            "title": "CaptureController: CaptureController() constructor"
        }
    ],
    "dom-capturecontroller-setfocusbehavior": [
        {
            "engines": [
                "blink"
            ],
            "filename": "api/CaptureController.json",
            "name": "setFocusBehavior",
            "slug": "API/CaptureController/setFocusBehavior",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/CaptureController/setFocusBehavior",
            "summary": "The CaptureController interface's setFocusBehavior() method controls whether the captured tab or window will be focused when an associated MediaDevices.getDisplayMedia() Promise fulfills, or whether the focus will remain with the tab containing the capturing app.",
            "support": {
                "chrome": {
                    "version_added": "109"
                },
                "chrome_android": {
                    "version_added": false
                },
                "edge": "mirror",
                "firefox": {
                    "version_added": false
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": {
                    "version_added": false
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "109"
                }
            },
            "title": "CaptureController: setFocusBehavior() method"
        }
    ],
    "dom-capturecontroller": [
        {
            "engines": [
                "blink"
            ],
            "filename": "api/CaptureController.json",
            "name": "CaptureController",
            "slug": "API/CaptureController",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/CaptureController",
            "summary": "The CaptureController interface provides methods that can be used to further manipulate a capture session separate from its initiation via MediaDevices.getDisplayMedia().",
            "support": {
                "chrome": {
                    "version_added": "109"
                },
                "chrome_android": {
                    "version_added": false
                },
                "edge": "mirror",
                "firefox": {
                    "version_added": false
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": {
                    "version_added": false
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "109"
                }
            },
            "title": "CaptureController"
        }
    ],
    "dom-mediadevices-getdisplaymedia": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/MediaDevices.json",
            "name": "getDisplayMedia",
            "slug": "API/MediaDevices/getDisplayMedia",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/MediaDevices/getDisplayMedia",
            "summary": "The MediaDevices interface's getDisplayMedia() method prompts the user to select and grant permission to capture the contents of a display or portion thereof (such as a window) as a MediaStream.",
            "support": {
                "chrome": {
                    "version_added": "72"
                },
                "chrome_android": {
                    "version_added": false,
                    "notes": "From Chrome Android 72 to 88, this method was exposed, but always failed with <code>NotAllowedError</code>. See <a href='https://crbug.com/487935'>bug 487935</a>."
                },
                "edge": {
                    "version_added": false
                },
                "firefox": [
                    {
                        "version_added": "66"
                    },
                    {
                        "version_added": "33",
                        "version_removed": "66",
                        "notes": "Since Firefox 33 you can capture screen data using <code><a href='https://developer.mozilla.org/docs/Web/API/MediaDevices/getUserMedia'>getUserMedia()</a></code>, with a <code>video</code> constraint called <code>mediaSource</code>. Before 52 it relied on a client-configurable list of allowed sites."
                    }
                ],
                "firefox_android": {
                    "version_added": false,
                    "notes": "From Firefox Android 66 to 79, this method was exposed, but always failed with <code>NotAllowedError</code>."
                },
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": {
                    "version_added": "13"
                },
                "safari_ios": {
                    "version_added": false
                },
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79"
                }
            },
            "title": "MediaDevices: getDisplayMedia() method"
        }
    ],
    "dom-mediatrackconstraintset-displaysurface": [
        {
            "engines": [
                "blink",
                "webkit"
            ],
            "filename": "api/MediaTrackConstraints.json",
            "name": "displaySurface",
            "slug": "API/MediaTrackConstraints/displaySurface",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/MediaTrackConstraints/displaySurface",
            "summary": "The MediaTrackConstraints dictionary's displaySurface property is a ConstrainDOMString describing the preferred value for the displaySurface constrainable property.",
            "support": {
                "chrome": {
                    "version_added": "107"
                },
                "chrome_android": "mirror",
                "edge": "mirror",
                "firefox": {
                    "version_added": false
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": {
                    "version_added": "11.1"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "107"
                }
            },
            "title": "MediaTrackConstraints: displaySurface property"
        },
        {
            "engines": [
                "blink",
                "webkit"
            ],
            "filename": "api/MediaTrackSettings.json",
            "name": "displaySurface",
            "slug": "API/MediaTrackSettings/displaySurface",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/MediaTrackSettings/displaySurface",
            "summary": "The MediaTrackSettings dictionary's displaySurface property indicates the type of display surface being captured.",
            "support": {
                "chrome": {
                    "version_added": "71"
                },
                "chrome_android": "mirror",
                "edge": {
                    "version_added": false
                },
                "firefox": {
                    "version_added": false
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": {
                    "version_added": "11.1"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79"
                }
            },
            "title": "MediaTrackSettings: displaySurface property"
        }
    ],
    "dom-mediatrackconstraintset-logicalsurface": [
        {
            "engines": [
                "webkit"
            ],
            "filename": "api/MediaTrackConstraints.json",
            "name": "logicalSurface",
            "slug": "API/MediaTrackConstraints/logicalSurface",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/MediaTrackConstraints/logicalSurface",
            "summary": "The MediaTrackConstraints dictionary's logicalSurface property is a ConstrainDOMString describing the requested or mandatory constraints placed upon the value of the logicalSurface constrainable property.",
            "support": {
                "chrome": {
                    "version_added": false
                },
                "chrome_android": "mirror",
                "edge": "mirror",
                "firefox": {
                    "version_added": false
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": {
                    "version_added": "11.1"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": false
                }
            },
            "title": "MediaTrackConstraints: logicalSurface property"
        },
        {
            "engines": [
                "blink",
                "webkit"
            ],
            "filename": "api/MediaTrackSettings.json",
            "name": "logicalSurface",
            "slug": "API/MediaTrackSettings/logicalSurface",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/MediaTrackSettings/logicalSurface",
            "summary": "The MediaTrackSettings dictionary's logicalSurface property indicates whether or not the display area being captured is a logical surface. Logical surfaces are those which are not necessarily entirely onscreen, or may even be off-screen, such as windows' backing buffers (where only part of the buffer is visible without scrolling the containing window) and offscreen rendering contexts.",
            "support": {
                "chrome": {
                    "version_added": "71"
                },
                "chrome_android": "mirror",
                "edge": {
                    "version_added": false
                },
                "firefox": {
                    "version_added": false
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": {
                    "version_added": "11.1"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79"
                }
            },
            "title": "MediaTrackSettings: logicalSurface property"
        }
    ],
    "dom-mediatrackconstraintset-suppresslocalaudioplayback": [
        {
            "engines": [
                "blink"
            ],
            "filename": "api/MediaTrackConstraints.json",
            "name": "suppressLocalAudioPlayback",
            "slug": "API/MediaTrackConstraints/suppressLocalAudioPlayback",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/MediaTrackConstraints/suppressLocalAudioPlayback",
            "summary": "The MediaTrackConstraints dictionary's suppressLocalAudioPlayback property is a ConstrainBoolean describing the requested or mandatory constraints placed upon the value of the suppressLocalAudioPlayback constrainable property. This property controls whether the audio playing in a tab will continue to be played out of a user's local speakers when the tab is captured.",
            "support": {
                "chrome": {
                    "version_added": "109"
                },
                "chrome_android": "mirror",
                "edge": "mirror",
                "firefox": {
                    "version_added": false
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": {
                    "version_added": false
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "109"
                }
            },
            "title": "MediaTrackConstraints: suppressLocalAudioPlayback property"
        }
    ],
    "dom-mediatracksettings-cursor": [
        {
            "engines": [
                "blink"
            ],
            "filename": "api/MediaTrackSettings.json",
            "name": "cursor",
            "slug": "API/MediaTrackSettings/cursor",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/MediaTrackSettings/cursor",
            "summary": "The MediaTrackSettings dictionary's cursor property indicates whether or not the cursor should be captured as part of the video track included in the MediaStream returned by getDisplayMedia().",
            "support": {
                "chrome": {
                    "version_added": "71"
                },
                "chrome_android": "mirror",
                "edge": {
                    "version_added": false
                },
                "firefox": {
                    "version_added": false
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": {
                    "version_added": false
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79"
                }
            },
            "title": "MediaTrackSettings: cursor property"
        }
    ],
    "dom-mediatracksettings-suppresslocalaudioplayback": [
        {
            "engines": [
                "blink"
            ],
            "filename": "api/MediaTrackSettings.json",
            "name": "suppressLocalAudioPlayback",
            "slug": "API/MediaTrackSettings/suppressLocalAudioPlayback",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/MediaTrackSettings/suppressLocalAudioPlayback",
            "summary": "The MediaTrackSettings dictionary's suppressLocalAudioPlayback property controls whether the audio playing in a tab will continue to be played out of a user's local speakers when the tab is captured.",
            "support": {
                "chrome": {
                    "version_added": "109"
                },
                "chrome_android": "mirror",
                "edge": "mirror",
                "firefox": {
                    "version_added": false
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": {
                    "version_added": false
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "109"
                }
            },
            "title": "MediaTrackSettings: suppressLocalAudioPlayback property"
        }
    ],
    "extensions-to-mediatracksettings": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/MediaTrackSettings.json",
            "name": "MediaTrackSettings",
            "slug": "API/MediaTrackSettings",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/MediaTrackSettings",
            "summary": "The MediaTrackSettings dictionary is used to return the current values configured for each of a MediaStreamTrack's settings. These values will adhere as closely as possible to any constraints previously described using a MediaTrackConstraints object and set using applyConstraints(), and will adhere to the default constraints for any properties whose constraints haven't been changed, or whose customized constraints couldn't be matched.",
            "support": {
                "chrome": {
                    "version_added": "59"
                },
                "chrome_android": "mirror",
                "edge": {
                    "version_added": false
                },
                "firefox": {
                    "version_added": "36"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": {
                    "version_added": "11"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79"
                }
            },
            "title": "MediaTrackSettings"
        }
    ],
    "dom-mediatracksupportedconstraints-displaysurface": [
        {
            "engines": [
                "blink",
                "webkit"
            ],
            "filename": "api/MediaTrackSupportedConstraints.json",
            "name": "displaySurface",
            "slug": "API/MediaTrackSupportedConstraints/displaySurface",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/MediaTrackSupportedConstraints/displaySurface",
            "summary": "The MediaTrackSupportedConstraints dictionary's displaySurface property indicates whether or not the displaySurface constraint is supported by the user agent and the device on which the content is being used.",
            "support": {
                "chrome": {
                    "version_added": "107"
                },
                "chrome_android": "mirror",
                "edge": "mirror",
                "firefox": {
                    "version_added": false
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": {
                    "version_added": "11.1"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "107"
                }
            },
            "title": "MediaTrackSupportedConstraints: displaySurface property"
        }
    ],
    "dom-mediatracksupportedconstraints-logicalsurface": [
        {
            "engines": [
                "webkit"
            ],
            "filename": "api/MediaTrackSupportedConstraints.json",
            "name": "logicalSurface",
            "slug": "API/MediaTrackSupportedConstraints/logicalSurface",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/MediaTrackSupportedConstraints/logicalSurface",
            "summary": "The MediaTrackSupportedConstraints dictionary's logicalSurface property indicates whether or not the logicalSurface constraint is supported by the user agent and the device on which the content is being used.",
            "support": {
                "chrome": {
                    "version_added": false
                },
                "chrome_android": "mirror",
                "edge": "mirror",
                "firefox": {
                    "version_added": false
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": {
                    "version_added": "11.1"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": false
                }
            },
            "title": "MediaTrackSupportedConstraints: logicalSurface property"
        }
    ],
    "dom-mediatracksupportedconstraints-suppresslocalaudioplayback": [
        {
            "engines": [
                "blink"
            ],
            "filename": "api/MediaTrackSupportedConstraints.json",
            "name": "suppressLocalAudioPlayback",
            "slug": "API/MediaTrackSupportedConstraints/suppressLocalAudioPlayback",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/MediaTrackSupportedConstraints/suppressLocalAudioPlayback",
            "summary": "The MediaTrackSupportedConstraints dictionary's suppressLocalAudioPlayback property indicates whether or not the suppressLocalAudioPlayback constraint is supported by the user agent and the device on which the content is being used.",
            "support": {
                "chrome": {
                    "version_added": "109"
                },
                "chrome_android": "mirror",
                "edge": "mirror",
                "firefox": {
                    "version_added": false
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": {
                    "version_added": false
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "109"
                }
            },
            "title": "MediaTrackSupportedConstraints: suppressLocalAudioPlayback property"
        }
    ],
    "permissions-policy-integration": [
        {
            "engines": [
                "blink"
            ],
            "partial": [
                "gecko",
                "webkit"
            ],
            "filename": "http/headers/Feature-Policy.json",
            "name": "display-capture",
            "slug": "HTTP/Headers/Feature-Policy/display-capture",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Feature-Policy/display-capture",
            "summary": "The HTTP Permissions-Policy header display-capture directive controls whether or not the document is permitted to use Screen Capture API, that is, getDisplayMedia() to capture the screen's contents.",
            "support": {
                "chrome": {
                    "version_added": "94"
                },
                "chrome_android": {
                    "version_added": false
                },
                "edge": "mirror",
                "firefox": {
                    "version_added": "74",
                    "partial_implementation": true,
                    "notes": "Only supported through the <code>allow</code> attribute on <code>&lt;iframe&gt;</code> elements."
                },
                "firefox_android": {
                    "version_added": false
                },
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": {
                    "version_added": "13",
                    "partial_implementation": true,
                    "notes": "Only supported through the <code>allow</code> attribute on <code>&lt;iframe&gt;</code> elements."
                },
                "safari_ios": {
                    "version_added": false
                },
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "94"
                }
            },
            "title": "Permissions-Policy: display-capture"
        },
        {
            "engines": [
                "blink"
            ],
            "altname": [
                "gecko",
                "webkit"
            ],
            "filename": "http/headers/Permissions-Policy.json",
            "name": "display-capture",
            "slug": "HTTP/Headers/Feature-Policy/display-capture",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Feature-Policy/display-capture",
            "summary": "The HTTP Permissions-Policy header display-capture directive controls whether or not the document is permitted to use Screen Capture API, that is, getDisplayMedia() to capture the screen's contents.",
            "support": {
                "chrome": {
                    "version_added": "94"
                },
                "chrome_android": "mirror",
                "edge": "mirror",
                "firefox": {
                    "version_added": "74",
                    "alternative_name": "Feature-Policy: display-capture",
                    "partial_implementation": true,
                    "notes": "Only supported through the <code>allow</code> attribute on <code>&lt;iframe&gt;</code> elements."
                },
                "firefox_android": {
                    "version_added": false
                },
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": {
                    "version_added": "13",
                    "alternative_name": "Feature-Policy: display-capture",
                    "partial_implementation": true,
                    "notes": "Only supported through the <code>allow</code> attribute on <code>&lt;iframe&gt;</code> elements."
                },
                "safari_ios": {
                    "version_added": false
                },
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "94"
                }
            },
            "title": "Permissions-Policy: display-capture"
        }
    ]
}
