Implement ext-image-capture-source and ext-image-copy-capture #361
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR implements
ext-image-capture-source
andext-image-copy-capture
. Most importantly, this enables window capture.The git version of
xdg-desktop-portal-wlr
is recommended for pipewire window capture until they make a new release.Todos:
Dedup with theOk lowkey I'm looking to remove this sometime in the future so I'm not gonna botherwlr-screencopy
impl somewhatMake window capture work when the window isn't visibleInvestigate optimizations for output capturewlr-screencopy
impl works by copying the results of the next frame that will be displayed on an output. This requires minimal overhead. However, the current impl of copy-capture renders new frames from scratch for each active capture session, similar to what Niri does. I believe this is required for toplevel capture, but it may be worthwhile to port the copying parts of thewlr-screencopy
impl when doing output capture. Or roll that in when deduping.