MediaTrackSupportedConstraints - 表示 MediaStreamTrack 对象中识别的可约束属性的列表
MediaTrackSupportedConstraints 字典建立了由用户代理或浏览器在其实现的 MediaStreamTrack 对象中识别的可约束属性的列表。MediaDevices.getSupportedConstraints() 返回符合 MediaTrackSupportedConstraints 的对象。
由于WebIDL中接口定义的工作方式,如果请求但不支持约束,则不会发生错误。 相反,将应用指定的约束,并从请求中删除所有无法识别的约束,这可能导致混乱和难以调试的错误,因此如果尝试建立约束时,您需要了解静默忽略约束与接受约束之间的区别,请确保在尝试建立约束之前使用 getSupportedConstraints()来检索此信息。
使用基于 MediaTrackConstraints 字典的对象来描述实际约束集。
要了解有关约束如何工作的更多信息,请参阅功能,约束和设置。
属性
该对象存在以下一些属性的组合,不一定会存在所有属性。
autoGainControl
一个布尔值,如果当前环境支持 autoGainControl 约束则为 true。
width
一个布尔值,如果当前环境支持 width 约束则为 true。
height
一个布尔值,如果当前环境支持 height 约束则为 true。
aspectRatio
一个布尔值,如果当前环境支持 aspectRatio 约束则为 true。
frameRate
一个布尔值,如果当前环境支持 frameRate 约束则为 true。
facingMode
一个布尔值,如果当前环境支持 facingMode 约束则为 true。
resizeMode
一个布尔值,如果当前环境支持 resizeMode 约束则为 true。
volume
一个布尔值,如果当前环境支持 volume 约束则为 true。
sampleRate
一个布尔值,如果当前环境支持 sampleRate 约束则为 true。
sampleSize
一个布尔值,如果当前环境支持 sampleSize 约束则为 true。
echoCancellation
一个布尔值,如果当前环境支持 echoCancellation 约束则为 true。
latency
一个布尔值,如果当前环境支持 latency 约束则为 true。
noiseSuppression
一个布尔值,如果当前环境支持 noiseSuppression 约束则为 true。
channelCount
一个布尔值,如果当前环境支持 channelCount 约束则为 true。
deviceId
一个布尔值,如果当前环境支持 deviceId 约束则为 true。
groupId
一个布尔值,如果当前环境支持 groupId 约束则为 true。
共享屏幕轨道特有的属性
对于包含来自用户屏幕内容的视频源的轨道,除了可用于视频音轨的属性外,还可以包含以下附加属性。
cursor
一个布尔值,如果当前环境支持 cursor 约束则为 true。
displaySurface
一个布尔值,如果当前环境支持 displaySurface 约束则为 true。
logicalSurface
一个布尔值,如果当前环境支持 logicalSurface 约束则为 true。
桌面浏览器兼容性
| 特性 | Chrome | Edge | Firefox | Internet Explorer | Opera | Safari |
|---|---|---|---|---|---|---|
| 基础支持 | 52 | 未知 | 42 | 未知 | 支持 | 未知 |
aspectRatio | 52 | 未知 | 不支持 | 未知 | 支持 | 未知 |
autoGainControl | 69 | 未知 | 55 支持 — 55 moz | 未知 | 支持 | 未知 |
channelCount | 52 | 未知 | 56 | 未知 | 支持 | 未知 |
cursor | 不支持 | 未知 | 不支持 | 不支持 | 支持 | 未知 |
deviceId | 52 | 未知 | 42 | 未知 | 支持 | 未知 |
displaySurface | 不支持 | 未知 | 不支持 | 不支持 | 支持 | 未知 |
echoCancellation | 52 | 未知 | 46 | 未知 | 支持 | 未知 |
facingMode | 52 | 未知 | 42 | 未知 | 支持 | 未知 |
frameRate | 52 | 未知 | 42 | 未知 | 支持 | 未知 |
groupId | 52 | 未知 | 不支持 | 未知 | 支持 | 未知 |
height | 52 | 未知 | 42 | 未知 | 支持 | 未知 |
latency | 52 | 未知 | 不支持 | 未知 | 支持 | 未知 |
logicalSurface | 不支持 | 未知 | 不支持 | 不支持 | 支持 | 未知 |
noiseSuppression | 69 | 未知 | 55 支持 — 55 moz | 未知 | 支持 | 未知 |
resizeMode | 不支持 | 未知 | 不支持 | 未知 | 不支持 | 未知 |
sampleRate | 52 | 未知 | 不支持 | 未知 | 支持 | 未知 |
sampleSize | 52 | 未知 | 不支持 | 未知 | 支持 | 未知 |
volume | 52 | 未知 | 不支持 | 未知 | 支持 | 未知 |
width | 52 | 未知 | 42 | 未知 | 支持 | 未知 |
移动浏览器兼容性
| 特性 | Android | Chrome for Android | Edge mobile | Firefox for Android | IE mobile | Opera Android | iOS Safari |
|---|---|---|---|---|---|---|---|
| 基础支持 | 52 | 52 | 未知 | 42 | 未知 | 支持 | 未知 |
aspectRatio | 52 | 52 | 未知 | 不支持 | 未知 | 支持 | 未知 |
autoGainControl | 69 | 69 | 未知 | 55 支持 — 55 moz | 未知 | 支持 | 未知 |
channelCount | 52 | 52 | 未知 | 56 | 未知 | 支持 | 未知 |
cursor | 不支持 | 不支持 | 未知 | 不支持 | 未知 | 未知 | 未知 |
deviceId | 52 | 52 | 未知 | 42 | 未知 | 支持 | 未知 |
displaySurface | 不支持 | 不支持 | 未知 | 不支持 | 未知 | 未知 | 未知 |
echoCancellation | 52 | 52 | 未知 | 46 | 未知 | 支持 | 未知 |
facingMode | 52 | 52 | 未知 | 42 | 未知 | 支持 | 未知 |
frameRate | 52 | 52 | 未知 | 42 | 未知 | 支持 | 未知 |
groupId | 52 | 52 | 未知 | 不支持 | 未知 | 支持 | 未知 |
height | 52 | 52 | 未知 | 42 | 未知 | 支持 | 未知 |
latency | 52 | 52 | 未知 | 不支持 | 未知 | 支持 | 未知 |
logicalSurface | 不支持 | 不支持 | 未知 | 不支持 | 未知 | 未知 | 未知 |
noiseSuppression | 69 | 69 | 未知 | 55 支持 — 55 moz | 未知 | 支持 | 未知 |
resizeMode | 不支持 | 不支持 | 未知 | 不支持 | 未知 | 不支持 | 未知 |
sampleRate | 52 | 52 | 未知 | 不支持 | 未知 | 支持 | 未知 |
sampleSize | 52 | 52 | 未知 | 不支持 | 未知 | 支持 | 未知 |
volume | 52 | 52 | 未知 | 不支持 | 未知 | 支持 | 未知 |
width | 52 | 52 | 未知 | 42 | 未知 | 支持 | 未知 |