Skip to content

Commit 849a4b7

Browse files
committed
Don't use BitBlt on Dx timeout result.
1 parent 87809a4 commit 849a4b7

File tree

1 file changed

+6
-1
lines changed

1 file changed

+6
-1
lines changed

Desktop.Win/Services/ScreenCapturerWin.cs

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -103,6 +103,11 @@ public Bitmap GetNextFrame()
103103
{
104104
var (result, frame) = GetDirectXFrame();
105105

106+
if (result == GetDirectXFrameResult.Timeout)
107+
{
108+
return null;
109+
}
110+
106111
if (result == GetDirectXFrameResult.Success)
107112
{
108113
return frame;
@@ -209,7 +214,7 @@ private Bitmap GetBitBltFrame()
209214
var texture2D = _directxScreens[SelectedScreen].Texture2D;
210215

211216
// Try to get duplicated frame within given time is ms
212-
var result = duplicatedOutput.TryAcquireNextFrame(100,
217+
var result = duplicatedOutput.TryAcquireNextFrame(500,
213218
out var duplicateFrameInformation,
214219
out var screenResource);
215220

0 commit comments

Comments
 (0)