为什么“打印屏幕”与显示器上实际显示的不同?

时间:2020-05-28 23:45:29

标签: nvidia codec latency screen-capture nvdec

我正在开发一个应用程序,该应用程序可以实时捕获监视器的屏幕,对其进行编码,通过以太网发送它,对其进行解码,然后在应用程序中显示该监视器。

因此,我将解码器应用程序放在正在捕获的同一监视器上。然后,我打开一个计时器应用程序,并将其放在解码器应用程序旁边。然后,我可以启动计时器,并查看计时器的主要实例与应用程序中的计时器之间的延迟。

奇怪的是,如果我用相机拍摄监视器的图像,则会得到一次延迟测量(几乎总是〜100ms),但是如果我使用监视器的打印屏幕,则两者之间的延迟会低得多( 〜30-60ms)。

那是为什么?打印屏幕如何工作?为什么会导致40毫秒以上的差异?我应该信任哪种延迟测量?

1 个答案:

答案 0 :(得分:-1)

“打印屏幕”将屏幕截图保存到剪贴板中,该剪贴板存储在RAM(计算机中最快的存储系统)中,而您正在执行的操作可能会将屏幕截图数据写入HDD / SSD,然后再次读取以进行发送互联网,这需要花费更长的时间。