HTML MediaRecorder在1080p流上的录制延迟

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

我正在通过具有以下配置的getUserMedia API读取1080p和720p外部视频摄像机流

let c_constraints = {
        audio: false,
        video: {
            deviceId: { exact: videoValue },
            width: { min: 320, ideal: 1280, max: 1920 },
        height: { min: 144, ideal: 720, max: 1080 },
            framerate: { min: 15, ideal: 30, max: 60 }
        }
     }
     navigator.mediaDevices.getUserMedia(c_constraints)
        .then((stream) => c_handleStream(stream))
        .catch((e) => c_handleError(e));

并使用以下记录流

 try {
        c_recorder = new MediaRecorder(currentCameraStream);
     } catch (e) {
        throw e
     }

问题->在高端设备上可以正常工作,但在具有4GB RAM的设备上,以1080p和720p录制时,英特尔酷睿i3却出现lags,并且视频仅在开始的3秒钟内断断续续,剩余的视频就可以了。

此外,在VLC媒体播放器中播放此录制的视频时,计时器直接从00:01跳到00:03,

如果这是内存/缓冲区问题,其他斑点也会受到影响。我是否缺少某些东西,是否应该以其他方式或通过任何其他选项使用MediaRecorder。

PS:我曾尝试使用Muaz Khan爵士的RecordRTC,但对CPU来说似乎很沉重,因为上述机器上的CPU使用率激增了70%以上,这使该机器非常慢。

请对此加以说明。

google-chrome electron recording web-mediarecorder
1个回答
0
投票

最后成功了,如果对任何人有帮助,如果您正在录制的机器处于省电模式,则可以通过从控制面板启用性能模式来解决音频/视频不同步的问题

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