![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Захват картинки с окна через DirectX [D7, Win2k, WinXP]
DLag © (2006-07-29 16:31:00)Нужно быстро получать картинку с окон имея их Handle.
GDI — медленно.
Может подскажите реализацию через DirectX или как получить полную картинку экрана из виделпамяти, потом вырезать нужное.
Sapersky (2006-08-01 00:23:00) [1]Видимо, он по ошибке создал поверхность-буфер в видеопамяти :)
@!!ex (2006-07-31 15:17:00) [2]DLag (30.07.06 10:44) [7]
Всем спасибо, уже нашёл пример с DDraw.
Захват картинки из видео памяти 2-3 мс(Ath 2500+), тоже, но с BitBlt - 50 ис.
Как всегда главное никого не слушать.
Делись. Тож надо.
Хотя радмин уже не делаю. :))
Eraser (2006-07-31 14:35:00) [3]> [0] DLag (29.07.06 16:31)
радмин делаем? :)
Sapersky (2006-07-31 04:17:00) [4]Здесь трудно придумать что-нибудь кроме создания поверхности в системной памяти и Blt в неё с экрана.
Но у меня в таком варианте получаются те же 20 мс (или 10 в 16-битном цвете). Возможно, из-за медленной шины - AGP2x.
Cash (2006-07-30 13:34:00) [5]DLag (30.07.06 10:44) [7]:
Поделись счастьем!
Всегда было интересно познавать новое...
DLag (2006-07-30 10:44:00) [6]Всем спасибо, уже нашёл пример с DDraw.
Захват картинки из видео памяти 2-3 мс(Ath 2500+), тоже, но с BitBlt - 50 ис.
Как всегда главное никого не слушать.
DLag (2006-07-30 10:38:00) [7]
> Sapersky (30.07.06 06:11) [4]
Не подскажешь тогда как ты его пировал?
Cash (2006-07-30 08:55:00) [8]DLag (29.07.06 23:15) [3]:
Я весь экран через BitBlt со скоростью развертки монитора захватывал.
Другая проблема -- куда столько мусора пихать? Я ее решил через конвеер
потоков, которые эти картинки свапили на хард.
Я могу конечно объяснить как это сделать через DX, но ты сам потом
поймешь что это как раз и не есть gut.
Sapersky (2006-07-30 06:11:00) [9]Попробовал - весь экран копируется за 20 мс (P3-700/GF2MX).
DLag (2006-07-29 23:15:00) [10]А вы попробуйте BitBlt захватывать большое изображение с окон.200-250 мс на почти полный экран.
Это не гуд.
Нужно хотябы 10 кадров в секунду.
Cash (2006-07-29 22:41:00) [11]Sapersky:
... а даже еще более тугодумнее!
DLag:
В этой проблеме тебе Win API помогут как никогда лучше!
Юзай BitBlt (тех. док. смотри на месте! У нее описание серьезное), и все у
тебя получится!
Sapersky (2006-07-29 19:42:00) [12]DirectX в этом смысле не быстрее.