web端设置的分辨率是19201080,实际采集到的只有1280720.
注:macOS系统的intel系列电脑,虽然检测到的是19201080,但是intel芯片限制了采集最高到1280720(720P)
可通过下面的方法检测浏览器支持的最大分辨是多少:

async function getMaxResolution() {
  try {
    // 枚举所有媒体设备
    const devices = await navigator.mediaDevices.enumerateDevices();
    const videoDevices = devices.filter(device => device.kind === 'videoinput');

    if (videoDevices.length === 0) {
      console.error('没有找到视频输入设备');
      return;
    }

    // 选择第一个视频输入设备
    const selectedDevice = videoDevices[0];

    // 请求访问摄像头并获取其能力
    const stream = await navigator.mediaDevices.getUserMedia({
      video: { deviceId: selectedDevice.deviceId }
    });

    // 获取视频轨道
    const track = stream.getVideoTracks()[0];
    const capabilities = track.getCapabilities();

    // 打印设备能力
    console.log('Device Capabilities:', capabilities);

    // 获取最大宽度和高度
    const maxWidth = capabilities.width && capabilities.width.max ? capabilities.width.max : null;
    const maxHeight = capabilities.height && capabilities.height.max ? capabilities.height.max : null;

    console.log('Max Resolution:', maxWidth, 'x', maxHeight);

    // 停止并释放媒体流
    stream.getTracks().forEach(track => track.stop());

    return { maxWidth, maxHeight };

  } catch (error) {
    console.error('Error accessing media devices or getting capabilities:', error);
  }
}

// 调用函数
getMaxResolution();

大甜甜
11 声望1 粉丝