Операция выполнена!
Закрыть
Хабы: C++, Open source, Софт, Работа с видео

На Windows для захвата экрана есть два классических пути: GDI (медленно и печально) и DXGI Desktop Duplication API. HomRec использует второй вариант.

Смысл DXGI Desktop Duplication в том, что видеокарта сама отдаёт вам текстуру рабочего стола - не нужно постранично вычитывать пиксели через GDI. Вызов AcquireNextFrame возвращает GPU-текстуру с очередным кадром, а если на экране ничего не изменилось - честно говорит "нечего отдавать" (таймаут), и можно просто повторно использовать прошлый кадр вместо лишней работы.

Проблема в том, что эта GPU-текстура недоступна напрямую из CPU-памяти - её сначала нужно скопировать в "staging-текстуру" и замапить. А вот тут прячется первая интересная деталь.

Читать далее
Читайте также
НОВОСТИ

ПИШИТЕ

Техническая поддержка проекта ВсеТут

info@vsetut.pro