Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.04.01;
Скачать: CL | DM;

Вниз

Захват картинки с окна через DirectX   Найти похожие ветки 

 
DLag   (2006-07-29 16:31) [0]

Нужно быстро получать картинку с окон имея их Handle.
GDI — медленно.
Может подскажите реализацию через DirectX или как получить полную картинку экрана из виделпамяти, потом вырезать нужное.


 
Sapersky   (2006-07-29 19:42) [1]

DirectX в этом смысле не быстрее.


 
Cash ©   (2006-07-29 22:41) [2]

Sapersky:
... а даже еще более тугодумнее!

DLag:
В этой проблеме тебе Win API помогут как никогда лучше!
Юзай BitBlt (тех. док. смотри на месте! У нее описание серьезное), и все у
тебя получится!


 
DLag   (2006-07-29 23:15) [3]

А вы попробуйте BitBlt захватывать большое изображение с окон.200-250 мс на почти полный экран.
Это не гуд.
Нужно хотябы 10 кадров в секунду.


 
Sapersky   (2006-07-30 06:11) [4]

Попробовал - весь экран копируется за 20 мс (P3-700/GF2MX).


 
Cash ©   (2006-07-30 08:55) [5]

DLag   (29.07.06 23:15) [3]:
Я весь экран через BitBlt со скоростью развертки монитора захватывал.
Другая проблема -- куда столько мусора пихать? Я ее решил через конвеер
потоков, которые эти картинки свапили на хард.

Я могу конечно объяснить как это сделать через DX, но ты сам потом
поймешь что это как раз и не есть gut.


 
DLag   (2006-07-30 10:38) [6]


> Sapersky   (30.07.06 06:11) [4]

Не подскажешь тогда как ты его пировал?


 
DLag   (2006-07-30 10:44) [7]

Всем спасибо, уже нашёл пример с DDraw.
Захват картинки из видео памяти 2-3 мс(Ath 2500+), тоже, но с BitBlt - 50 ис.
Как всегда главное никого не слушать.


 
Cash ©   (2006-07-30 13:34) [8]

DLag   (30.07.06 10:44) [7]:
Поделись счастьем!
Всегда было интересно познавать новое...


 
Sapersky   (2006-07-31 04:17) [9]

Здесь трудно придумать что-нибудь кроме создания поверхности в системной памяти и Blt в неё с экрана.
Но у меня в таком варианте получаются те же 20 мс (или 10 в 16-битном цвете). Возможно, из-за медленной шины - AGP2x.


 
Eraser ©   (2006-07-31 14:35) [10]

> [0] DLag   (29.07.06 16:31)

радмин делаем? :)


 
@!!ex ©   (2006-07-31 15:17) [11]

DLag   (30.07.06 10:44) [7]
Всем спасибо, уже нашёл пример с DDraw.
Захват картинки из видео памяти 2-3 мс(Ath 2500+), тоже, но с BitBlt - 50 ис.
Как всегда главное никого не слушать.

Делись. Тож надо.
Хотя радмин уже не делаю. :))


 
Sapersky   (2006-08-01 00:23) [12]

Видимо, он по ошибке создал поверхность-буфер в видеопамяти :)



Страницы: 1 вся ветка

Текущий архив: 2007.04.01;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.051 c
11-1152721897
rainstuff
2006-07-12 20:31
2007.04.01
Побитовые операции...


3-1168467333
r2d2
2007-01-11 01:15
2007.04.01
экспорт из access


1-1170236837
SH@RK
2007-01-31 12:47
2007.04.01
Динамические массивы vs Статические массивы


2-1173764018
ryslan56
2007-03-13 08:33
2007.04.01
Сворачивание формы


2-1173178891
olmi
2007-03-06 14:01
2007.04.01
массив байт в строку