Почему Print Screen отличается от того, что на самом деле отображается на мониторе? - PullRequest
1 голос
/ 29 мая 2020

Я работаю над приложением, которое захватывает экран монитора в реальном времени, кодирует его, отправляет через rnet, декодирует его, а затем отображает этот монитор в приложении.

Итак, я помещаю приложение-декодер на тот же монитор, на котором выполняется захват. Затем я открываю приложение таймера и кладу его рядом с приложением декодера. Затем я могу запустить таймер и увидеть задержку между основным экземпляром таймера и таймером в приложении.

Что странно, так это то, что если я сделаю снимок монитора с помощью камеры, я получаю одно измерение задержки (почти всегда ~ 100 мс), но если я возьму экран печати монитора, задержка между ними будет намного меньше (~ 30-60 мс).

Почему это так? Как работает Print Screen? Почему это приведет к разнице в 40+ мс? Какому измерению задержки мне следует доверять?

1 Ответ

0 голосов
/ 29 мая 2020

Print Screen сохраняет снимок экрана в буфер обмена, который хранится в вашей оперативной памяти (система хранения с максимальной скоростью на вашем компьютере), тогда как то, что вы делаете, вероятно, записывает данные снимка экрана на ваш жесткий диск / твердотельный накопитель, а затем считывает его снова для отправки inte rnet, что занимает намного больше времени.

...