Can you just call a GUI api that interfaces directly with the graphics card?

On 12/6/06, Tim Roberts <[EMAIL PROTECTED]> wrote:

Ray Schumacher wrote:
> I've been mulling screen capture code. I tried PIL's
> ImageGrab().grab() (with pymedia) but find PIL's method to be pretty
> slow, ~4grabs per second max with no other processes.
> pymedia is pretty quick once I hand it the data.
>

How large is your screen?  A 1600x1200 true-color desktop is 8 megabytes
worth of pixels, and it can take tens of milliseconds just to copy it
over the PCI bus to main memory.

> There has to be another way to get a copy or buffer() of the screen
> DC's data that is faster (I hope).
>
> I putsed around with win32gui
> desktop = win32gui.GetDesktopWindow()
> dt_l, dt_t, dt_r, dt_b = win32gui.GetWindowRect(desktop)
> but couldn't see how to get at the data via the handle.
>

You can use BitBlt to copy it to a DIB, but it's not going to be very
convenient to work with.

--
Tim Roberts, [EMAIL PROTECTED]
Providenza & Boekelheide, Inc.

_______________________________________________
Python-win32 mailing list
Python-win32@python.org
http://mail.python.org/mailman/listinfo/python-win32




--
http://www.goldwatches.com
_______________________________________________
Python-win32 mailing list
Python-win32@python.org
http://mail.python.org/mailman/listinfo/python-win32

Reply via email to