在常规的实现下,我们可以调用 glReadPixels 首先将游戏画面读到内存中,然后再调用 ffmpeg / gstreamer 的 nvenc 插件进行 GPU 加速编码以录制游戏视频。这样做的缺点是数据在内存中转了一圈,看起来这不是必要的
有什么方法可以将 framebuffer 中的数据直接传递给 nvenc 吗?
有什么方法可以将 framebuffer 中的数据直接传递给 nvenc 吗?
1
dick20cm May 21, 2020
framebuffer 是操作系统维护,用来喂给显示设备的 mem,我的理解大概没有办法直接操作。即便是内存拷贝,也并不是一个耗时的行为吧~
|