Are you sure it is this call that slows things down? I would expect it
to be insignificant compared to disk I/O.
In case you are capturing frames into memory and saving them to disk
later, I'd avoid GetDIBits and capture into device-dependent format
instead, to avoid format conversion. I would then convert to DIB at the
time I'm saving to disk.
--
With best wishes,
Igor Tandetnik
"For every complex problem, there is a solution that is simple, neat,
and wrong." H.L. Mencken
Quote:
> Hello everyone, I'm writing a screen capture program, I use API
function:
> ::GetDIBits(hdc, hDesktopBitmap, 0, bih.biHeight, pbuf_1, (BITMAPINFO
> *)(&bih), DIB_RGB_COLORS);
> to retrieve the pixel data and save it to file, but this API function
is too
> slow since I need capture the screen one frame by one frame. My
question is,
> is there any other function or way should I use? Thanks.