MediaStreamTrack: метод getCapabilities()
Метод getCapabilities() интерфейса MediaStreamTrack возвращает объект, описывающий допустимые значения или диапазон значений для каждой изменяемой свойства связанного MediaStreamTrack, в зависимости от платформы и браузера.
После того, как вы узнаете возможности браузера, ваш скрипт может использовать applyConstraints(), чтобы настроить трек так, чтобы он соответствовал идеальным или приемлемым настройкам. Подробности о работе с изменяемыми свойствами см. в разделе Возможности, ограничения и настройки.
Синтаксис
getCapabilities()
Параметры
Нет.
Возвращаемое значение
Объект MediaTrackCapabilities, который указывает допустимое значение или диапазон значений, поддерживаемых для каждого изменяемого свойства браузера. Он может содержать следующие члены:
deviceId-
Объект
ConstrainDOMString, содержащий идентификатор устройства. groupId-
Объект
ConstrainDOMString, содержащий идентификатор группы. autoGainControl-
Объект
ConstrainBoolean, сообщающий, может ли источник автоматически управлять усилением входного сигнала. Если функцией может управлять скрипт, источник будет сообщать как true, так и false в качестве возможных значений. channelCount-
ConstrainULongс количеством каналов или диапазоном значений количества каналов. echoCancellation-
Объект
ConstrainBoolean, сообщающий, может ли источник предоставить подавление эха. Если функцией может управлять скрипт, источник будет сообщать как true, так и false в качестве возможных значений. latency-
ConstrainDoubleс задержкой или диапазоном задержек. noiseSuppression-
Объект
ConstrainBoolean, сообщающий, может ли источник предоставить подавление шумов. Если функцией может управлять скрипт, источник будет сообщать как true, так и false в качестве возможных значений. sampleRate-
ConstrainULongс частотой дискретизации или диапазоном частот дискретизации. sampleSize-
ConstrainULongс размером выборки или диапазоном размеров выборки. aspectRatio-
ConstrainDoubleс отношением сторон видео ширина/высота (ширина в пикселях, деленная на высоту в пикселях) или диапазоном значений. facingMode-
Объект
ConstrainDOMString, содержащий режим ориентации камеры. Камера может сообщать о нескольких ориентациях, например, "left" и "user". frameRate-
ConstrainDoubleс частотой кадров или диапазоном приемлемых частот кадров. height-
ConstrainULongс высотой видео или диапазоном высот в пикселях. width-
ConstrainULongс шириной видео или диапазоном ширин в пикселях. resizeMode-
Объект
ConstrainDOMString, содержащий режим или массив режимов, которые браузер может использовать для вывода разрешения видеотрека.
Примеры
Следующий фрагмент кода приведет к запросу разрешения у пользователя на доступ к локальной камере и микрофону. После получения разрешения в консоль будут выведены объекты MediaTrackCapabilities, содержащие подробности о возможностях каждого MediaStreamTrack:
navigator.mediaDevices
.getUserMedia({ video: true, audio: true })
.then((stream) => {
const tracks = stream.getTracks();
tracks.map((t) => console.log(t.getCapabilities()));
});
Пример объекта возможностей выглядит следующим образом:
{
"autoGainControl": [
true,
false
],
"channelCount": {
"max": 1,
"min": 1
},
"deviceId": "jjxEMqxIhGdryqbTjDrXPWrkjy55Vte70kWpMe3Lge8=",
"echoCancellation": [
true,
false
],
"groupId": "o2tZiEj4MwOdG/LW3HwkjpLm1D8URat4C5kt742xrVQ=",
"noiseSuppression": [
true,
false
]
}
Точное содержание объекта будет зависеть от браузера и медиа-оборудования.
Спецификации
Совместимость с браузерами
| Рабочие столы | Мобильные устройства | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox для Android | Opera Android | Safari на IOS | Samsung Internet | WebView Android | |
getCapabilities |
59 | 12 | 132 | 46 | 11 | 59 | 132 | 43 | 11 | 7.0 | 59 |
См. также
-
InputDeviceInfo.getCapabilities(), который также возвращает объектMediaTrackCapabilities.
© 2005–2024 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/MediaStreamTrack/getCapabilities