代码之家  ›  专栏  ›  技术社区  ›  Cerin

如何从Firefox上的Javascript访问麦克风?

  •  0
  • Cerin  · 技术社区  · 4 年前

    如何从Javascript在Firefox中创建音频上下文,以便录制音频?

    在Chrome中,我启用音频上下文,然后使用以下命令查询所有音频接口:

    navigator.mediaDevices.getUserMedia({audio: true}).then((stream) => {
        navigator.mediaDevices.enumerateDevices().then((devices) => {
            const fragment = document.createDocumentFragment();
            if (devices) {
                devices.forEach((device) => {
                    if (device.kind === 'audioinput') {
                        const option = document.createElement('option');
                        option.textContent = device.label;
                        option.value = device.deviceId;
                        fragment.appendChild(option);
                    }
                });
            }
            devices_select.appendChild(fragment);
            devices_select.dispatchEvent(new Event('change'));
        });
    });
    

    这是完美的,甚至提示用户开始录制。

    Uncaught TypeError: can't access property "getUserMedia", navigator.mediaDevices is undefined
    

    我相信这是当前检索音频上下文的方法, as described in the docs

    我在开发机器上运行这个,所以它没有使用SSL。现在在Firefox上录制音频需要SSL吗?如果是的话,是否有解决方法或方法来覆盖开发?

    0 回复  |  直到 4 年前