【问题标题】:HTML MediaRecorder recording lags on 1080p streamHTML MediaRecorder 录制滞后于 1080p 流
【发布时间】:2020-02-10 11:46:12
【问题描述】:

我正在使用以下配置通过 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、英特尔酷睿 i3 的设备上,在以 1080p 和 720p 录制时我得到滞后,并且视频仅在前 3 个时断断续续秒,但剩下的视频就好了。

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

如果这是内存/缓冲区问题,其他 blob 也会受到影响。我错过了什么吗,我应该以不同的方式使用 MediaRecorder,还是使用任何不同的选项。

PS:我曾尝试使用 Muaz Khan 爵士的 RecordRTC,但由于 CPU 使用率在上述机器上飙升至 70% 以上,这使得机器超级慢。

请对此有所了解。

【问题讨论】:

    标签: google-chrome electron recording web-mediarecorder


    【解决方案1】:

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-04-08
      • 1970-01-01
      • 1970-01-01
      • 2018-02-14
      • 2011-08-18
      • 2016-02-12
      • 1970-01-01
      相关资源
      最近更新 更多