Weston screenshooter blocks the display for over a second
Pekka Paalanen
ppaalanen at gmail.com
Tue Oct 29 13:48:43 UTC 2019
On Mon, 28 Oct 2019 18:43:02 +0100
CHUCO POGA <chcepogadowski at gmail.com> wrote:
> When attempting to make a screenshot under weston with Mod + S
> (weston-screenshooter), the entire display get's blocked for over a second.
> That causes an ugly jitter on the screen when displaying dynamic content
> (such as movies)
>
> I have looked into the screenshooter client code and did some performance
> measurements, and it appears that the while(!buffer_copy_done) loop which
> calls wl_display_roundtrip takes a second to finish. Is there any way to
> make the screenshot async, to not interfere the currently displayed
> content? Or is it the way the protocol works under the hood?
Hi,
the while-loop you mention is in the screenshooter client, and I see it
is a busy-roundtrip which is not nice. Does putting a small delay in
that loop make things better? E.g. nanosleep().
If not, you will have to debug or profile the compositor instead to see
where the time is spent.
If yes, the client should be fixed to dispatch only instead of
roundtrip.
Thanks,
pq
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 833 bytes
Desc: OpenPGP digital signature
URL: <https://lists.freedesktop.org/archives/wayland-devel/attachments/20191029/1389586e/attachment.sig>
More information about the wayland-devel
mailing list