-
Notifications
You must be signed in to change notification settings - Fork 185
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Two frame delay when capturing #79
Comments
Generally the DWM is triple or double buffered, this isn't unique to presenting captured content. There is no way to disable the DWM as of Windows 8. And if you did, the capture API would not be able to return frames to you, as they are rendered by the DWM 🙂. |
Thank you for the quick response! And the DWM only updates the buffers once every monitor refresh i assume? Do you know if I can speed up the buffer copying then? 66 ms (2 x 1000/30 Hz) is a long time to wait if you're in a hurry 🙂 |
That's correct, we're locked to the vsync (normally, there are some edge cases given your monitor topology and if you're running a full-screen game). I'm guessing by making a copy of the buffer you're talking about calling |
No, I meant forcing the DWM buffers without waiting for vsync. |
I've played around with the ScreenCaptureForHWND C++ sample project, but I need it to be faster from capture to display. I have tried different framerates (30, 60 & 120 Hz) and there is almost always a two frame delay from the captured window to the app window. Does anyone know where this delay coming from and how to lower it?
The text was updated successfully, but these errors were encountered: