WebRTC视频限制不起作用

WebRTC video constraints not working

本文关键字:不起作用 视频 WebRTC      更新时间:2023-09-26

我正在尝试从网络摄像头获得较低的分辨率

navigator.getUserMedia({audio: true, 
    video: {
        "mandatory" : {maxWidth : 320},
        "optional" : []
    }
}, function(stream) {
    videoElement.src = URL.createObjectURL(stream);
}, function(error) {console.log(e)});

一切正常,但videoElement.videoWidth仍然是 640。无论我指定什么视频限制,这都是相同的。这只发生在火狐中,在 Chrome 中一切正常。

有谁知道为什么?

我也尝试指定maxFrameRate,但这也被忽略了。我也尝试了没有optional和最大高度。

Firefox 中正在处理许多错误,因为它不支持可编程的视频帧速率和分辨率更改。

  • 允许在媒体约束中更改帧速率
  • 支持视频分辨率的运行时更改
  • 在媒体约束中支持视频分辨率的纯数字

您应该能够以这种方式设置约束:

mediaConstraints = {
      "audio": true,
      "video": {
         width: {
             min: 320,
              max: 320
          },
          height: {
             min: 240,
              max: 240
          } }
    };

但是我从来没有能够通过媒体限制获得视频分辨率限制以使其在Firefox中工作。我在 Firefox 中更改about:config的默认分辨率方面取得了有限的成功。

这些问题是众所周知的,我相信许多人正在努力解决这些问题。