Video mediaDevices.getUserMedia 缩放在 iOS 中不起作用

问题描述 投票:0回答:1

我正在实现 zxing-js 来扫描二维码。 我的任务是在使用相机时启用变焦。它在 Android 设备上的 Chrome 中运行良好,但当我尝试在 iOS 上使用它时,它不起作用。

下面是我的代码:

navigator.mediaDevices.getUserMedia(environment).then(async mediaStream => {
    document.querySelector('video').srcObject = mediaStream;

    await sleep(1000);

    const track = mediaStream.getVideoTracks()[0];
    const capabilities = track.getCapabilities();
    const settings = track.getSettings();

    const input = document.querySelector('input[type="range"]');

    // Check whether zoom is supported or not.
    if (!('zoom' in capabilities)) {
        return $(log).html('Zoom is not supported by ' + track.label);
    }

    // Map zoom to a slider element.
    input.min = capabilities.zoom.min;
    input.max = capabilities.zoom.max;
    input.step = capabilities.zoom.step;
    input.value = settings.zoom;
    input.oninput = function(event) {
        track.applyConstraints({advanced: [ {zoom: event.target.value} ]});
    }
    input.hidden = false;
});

当我使用 iOS 设备检查

capabilities
内部时,
zoom
属性不在列表中。关于如何解决这个问题有什么想法吗?

非常感谢!

javascript getusermedia mediadevices
1个回答
0
投票

有关此主题的任何更新吗?您成功实现缩放了吗?因为我也遇到了同样的问题。

谢谢!

© www.soinside.com 2019 - 2024. All rights reserved.