如何在Chrome中录制屏幕时实现60 FPS?

74 浏览
0 Comments

如何在Chrome中录制屏幕时实现60 FPS?

我正在尝试在Chrome扩展中录制屏幕。为此,我正在使用

 navigator.webkitGetUserMedia(videoConstraints, function(stream) { ...

作为我发送的videoConstraints:

var videoConstraints = {
    audio: false,
    video: {
    mandatory: { chromeMediaSource: 'screen', maxWidth: 960,
            maxHeight: 720, minWidth:960, minHeight:720  },
    optional: [
      { minFrameRate: 60 },
      { maxWidth: 640 },
      { maxHeigth: 480 }
    ]
}
};

不幸的是,结果非常卡顿。我有没有办法用这种方法实现60 FPS?或者我应该寻找其他选择?NaCl是否是一个选择?

admin 更改状态以发布 2023年5月23日
0
0 Comments

你看过这个屏幕共享演示了吗?

我发现这个演示很快,尝试检查演示页面中的conference.js文件,你可能会找到一些线索。

0
0 Comments

如果保存到磁盘花费的时间最长,您可以尝试使用chrome.storageunlimitedStorage权限保存数据是异步的,可能更快地获取/设置图像数据。 此外,对于将图像绘制到画布上,您可以尝试一些方法。您可以查看WebGL。还要查看requestAnimationFrame函数。此网站提供有关画布优化的信息。将图形绘制到画布上很慢,应该尽可能减少重新绘制的次数。这篇stackoverflow文章可能也会对您有所帮助。

我希望我有所帮助。祝好运!让我知道进展情况。

0