Skip to content

Desktop Duplication capture behavior change in 24H2 #83

@artths

Description

@artths

I don't know if this is the right place for a report about the Desktop Duplication API, but I think the change might be related to the implementation of dirty regions API in WGC.

Given: a window that is disabled topmost overlay, with flags WS_EX_TOOLWINDOW | WS_EX_NOACTIVATE | WS_EX_TOPMOST | WS_EX_LAYERED | WS_EX_TRANSPARENT. Additionally, the WDA_EXCLUDEFROMCAPTURE flag is set to exclude it from capture.

The window is displayed on the same monitor as the captured content.

Behavior on 23H2: AcquireNextFrame returns only when the content under the window has been updated.

Behavior on 24H2: AcquireNextFrame returns when the content under the window is updated and when this window is updated as well, even though the window should remain "invisible" for capture because of the WDA_EXCLUDEFROMCAPTURE flag (window content still can't be captured).

This window displays some screen captured content, so when AcquireNextFrame returns when the same window is updated, it causes a series of false updates.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions