哪个Windows API捕获屏幕比Bitblt或任何其他镜像驱动程序更快?

时间:2017-09-06 06:01:02

标签: c++ bitmap screen-capture bitblt

我正在使用bitblt API捕获窗口大约花费大约30到40毫秒,但我希望以更快的方式实现这一点,因此任何其他内置API或建议我最好的屏幕捕获驱动程序。

这是我的代码。

ret = BitBlt(m_pGDI->hDoubleBufferWorker,0,0,this->m_screenWidth,
            this->m_screenHeight,hDisplayDC,this->m_scrennOffsetX,this->m_scrennOffsetY,SRCCOPY|CAPTUREBLT);        
        if(!ret)
        {
            int err=    GetLastError();
            ErrorLogger::Log("Error : Desktop : Bitblt failed%d",err);      
        }

1 个答案:

答案 0 :(得分:0)

我找到了一种以更快的方式捕获桌面屏幕的解决方案。

我使用Direct3D11单帧需要大约5到20毫秒,与BitBlt相比,它减少了50%的时间消耗。