DXGI AcquireNextFrame 仅在 20ms(50fps)后接收下一帧,是否有可能加速到 10ms?

DXGI AcquireNextFrame receives the next frame only after 20ms (50fps), is it possible to speed up to 10ms?

下午好。

我正在编写一个程序,以 100 fps 的速度从桌面录制视频,但我 运行 遇到了一个问题,AcquireNextFrame 仅在 20 毫秒后才从桌面接收下一张图像,因此,我可以获得的最大 fps 是 50,你可以用这个做点什么吗?

谢谢。

如果捕获的输出没有任何变化,

IDXGIOutputDuplication::AcquireNextFrame 将什么也接收不到。

它不像“PleaseCaptureScreenNow”命令。

超时是预期的,必须考虑在内。这就是为什么你不能真正设计一个工作流程,例如 capture => convert => copy/encode 仅在一个唯一线程上。

Microsoft 官方 DXGIDesktopDuplication 示例因此设计了多线程。

如果屏幕以该速度变化(并且您有良好的 GPU、驱动程序等),此方法可以以 100fps 或更高的速度完美捕获。