Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
vulkan: don't tolerate suboptimal swapchain configurations
The comment was probably only ever true for x11, and it currently isn't true anymore. X11 WSI used to return VK_SUBOPTIMAL_KHR in vkQueuePresentKHR and vkAcquireNextImageKHR before, but as of https://gitlab.freedesktop.org/mesa/mesa/-/commit/2b885b233f7a6300ae88732c179888c02788493d it only returns VK_SUBOPTIMAL_KHR in vkAcquireNextImageKHR for performance reasons. This makes it so that we don't have to tolerate suboptimal swapchain configurations for the sake of smoother resizing. On top of that, not recreating swapchain when it was suboptimal, it also prevented mpv from being directly scanned out when fullscreened on Wayland compositors. On Wayland, the preferred modifier from the wsi may change depending on whether the window is fullscreened or not for direct scan out. If mpv is fullscreened but not using modifiers that can be directly scanned out, mpv will be receive VK_SUBOPTIMAL_KHR from WSI and should recreate swapchain to use the right modifier with the format mpv picked. mpv will always get the format it picks, WSI can't give us a different format. This allows for recreating the swapchain with modifiers that will allow mpv to be directly scanned out when the window is fullscreened spanning an output on Wayland. I checked X11 and Wayland myself to have no regressions when resizing, and others have checked Windows and Mac to have no regressions. With this, direct scanout with Vulkan on Wayland should just work. You might also need https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31122 if your compositor enables explicit syncronization via linux-drm-syncobj-v1.
- Loading branch information
d2f3b66
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
266
d2f3b66
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ุจุณู ุงููู ุงูุฑุญู ู ุงูุฑุญูู ...
ุนู ุณุฌู ุณุนุฏ ุฒ ู ู ูุฐุจ ุจุญูู ุชุฌุงูู ุนู ุฃูุธู ุฉ ุงููุงุฐุจูู ูู ุณูุงุณุฉ ุงูู ูุดูู ุนู ุณุฌู ุงูุชูููู ุงูุฐู ูุฑุฏู ุนู ุชูุฑูุฏุงุช ุงููุงุฐุจูู ูู ุญูู ู ู ุง ุงุณุชุญู ู ู ุณุฌู ู ุนุทูุงุช ุฃุนู ุงูู ููุฎุงุฆู ุงูุฐู ูุณุชูุฏ ุนู ูุฐุจุงุช ุงูุญููู ูู ูุงุฌุจุงุช ุงูุงุณุชุญูุงู ุนู ุชูุฐูุจ ููุตู ูู ุณุฌูุงุช ุงูุนุงูููู ุนู ู ุณุชูุฏุงุช ุงููุงุฐุจูู ู ู ุง ููุฐุจ ุจุงูุจูุช ุงูุง ุดุฎุต ูุนุฑู ููุณู ุนู ุณูุฏุงุช ุงูุดูุฉ ุนู ุชุดูู ุงูุงูุธู ุฉ ูู ูุงุฐุจ ูู ุณุฌู ุณุงุฑู ุนู ุณุฌู ุจุงูู ูู ุณุฌูุงุช ู ุจููู ุนู ุฅุดูุงุฑ ุงููุชุงุฆุฌ ูู ุณุฌูุงุช ุงูููุงูุฉ ุนู ุงูุนุงุจู ุงูุชู ุชุนุฑู ูู ุณุฌู ุงูุนููู ุนู ุชุนููุฏุงุช ุงูู ูููุฉ ุงูู ุชุตุฑููู ูู ุณุฌู ุงูู ูููุฉ ุงูููุฑูุฉ ุนู ุณูุงุณุฉ ุงุณู ู ุงูู ุฏุฑุฌ ุฏุงุฎู ูุทุงูุงุช ุงูุตุญุฉ ุงูุนุงูู ูุฉ ุนู ุชูุงุนุจ ุงูู ูุงุนูู ูู ุณุฌูุงุช ุงูุทุจ ุงูููุณู ุนู ู ุฑูุฒ ุงููููุช ููุตุญุฉ ุงูููุณูุฉ ุงูุชู ุชุฑูู ูู ุณุฌู ู ููู ู ุงูุฏุงู ุนู ุนูู ุฐูู ุฃุฏุฎูุช ููู ุณุชุดูู 17 ู ุฏุฎูุงู ุญุชู ุซุจุช ุงููุดู ูู ุนูู. ุงูุฐู ููุตู ูู ููุงูุฉ ู ุฑุงูุฒ ุงูุงูุธู ุฉ ุงูุตุญูุฉ ู ูุชุนุงู ููู ุนู ุชุนุงู ู ุงูููุฏ ู ู ุณุฌููู ุงูุบุงุฒู ูู ุนููู ููู ูููููู ุงูุช ุชุชููู ุงุฐุงู ููุฑุง ู ู ูู ุงูู ุชููู ูู ุจุถุน ุฏูุงุฆู ู ุนูููู ุนู ูุชุงุฆุฌ ูุชู ุงูููุณ ูู ุณุฌู ุงูุณููู ุงูุณุงุจูุฉ ุนู ุณุฌูุงุชูู ุงูุญุงููุฉ ู ูุฐุง ุฏููู ููุตู ูู ุณุฌู ุงูุฃุณุฑุฉ ุงูุชู ุชุนุฑู ูุดู ุนููู ูุชูุฑุฃ ู ุง ูู ุจุงุทูู ู ุชุตู ุช ุญุชู ุงุซุจุช ููู ุณูุณูุฉ ุงููุงุฐุจูู ู ู ููุฌ ุงูู ุฎุงุฏุนูู ุนู ุณูุงุณุฉ ู ุง ุงููููู ู ู ูุณูุฌ ุงููุงุฑ ุนููู ุนู ู ุง ูุงููู ูู ุณุฌูู ุงู ุนููู ูุงู ูุฐุง ููุฐุง ููุนุจ ุจู ุจู ุง ูุงู ููููู ุงูู ููุฑ ุจูุฐุง ุงูุชุตุฑู ููุญู ูุนู ู ุนููู ูุฃูู ูุง ูุฑุฏ ูู ุณุฌู ุฃููุงุฑู ุฏูู ุงุณุชุดุงุฑุชู ูุงูุงู ุญุตุญุต ุงูุญู ู ุฒุงู ุงูููุง ุนู ููุงูู ููุงุนุจ ุงูู ุฑุฃุฉ ุจุณุฌู ุงูู ุฏุฎู ุนู ุฏุฎููู ูู ุณุฌููู ู ู ุง ููุช ุฃุนูู ุจู ุง ูุชูุงุนุจูู ุณุงุจูุงู ูุงูุญูุฒ ู ู ุชุญูุฒ ูุญุงุฒ ุนูู ุนุฒู ููุณู ูู ุณุฌู ูุงูุฏุชู ุงูุชู ุชุนุฑู ู ุงุฐุง ุณูู ูููู ุชุทููููู ุนู ุชูููู ุงูููุงุฉ ูู ุง ุณุจุจ ุงูู ูุช ุงูู ูุงุฌุฆ ููุนู ุฃูุฑุจ ุขููุฉ ู ู ุญุจู ุงููุฑูุฏ ู ุงูุจุฑูุฏ ููุงุนุจ ู ุญุงู ูููู ุงูุฏููุด ู ู ุง ุดุงุค ุงูุชุดููุด ู ู ุดูุด ุงููุนุจู ูู ุณุฌู ุงููุงุณุทู ุนู ููุฑุฏ ุญู ุงุฑ ุญุงุฒ ุนูู ุงุชูู ุงูุฃุณุจุงุจ ู ู ูุณูุฌ ุฎูุงู ุงูู ุฎ ุนู ุงูุธุฑ ูุง ุญู ุงุฑ ุงูููุฑุฏุงุช ู ุงุฐุง ูููู ูุงุญุฏู ู ุง ูุนุฑู ู ูู ููุงุนุจ ู ุนุงู ุงุฎุฐ ู ุนุงูู ูุง ููุจ ุชุญูุงุชู ู ู ุณุฌู ุงุดูุงู ุนู ุจุฏูุฑ ูู ุณุฌู ุนุจูุฑ ู ู ูุธู ุงูู ุนููู ุงุช ุงูู ุฏููุฉ ูู ูุณู ู ุงูุณู ุงูููุฑุฏ ุงู ูููู ุชุญุช ุงูุชุฑุงุจ ุบุฐุงู ุตุจุงุญุงู ูุฐู ูุตูุชู ูู ุงุฐุง ูููู ูู ุณุฌู ุชูุงูู ูู ุนู ูุฑุงุกุฉ ุงูู ูููุฉ ุงูููุฑูุฉ ูุฐุง ุณุฌู ุงูููุฑุฏุงุช ูู ุงุญุฏ ุดุงู ูุงูุญ ูู ุง ุดุงุจู ุนููู ุฅุฐุงู ุบุฏุงู ุงูุฏูุงู ูุงุชูุงูู ู ุนุงูู ุจุงูู ูููุฉ ุงูููุฑูุฉ ูุณูู ุชุดุชุบู ุจุนุฏ ุงูุตูุงุฉ ุนูู ุงูู ูุช ูุงููู ูุทู ุงู ูู ุถุฏูููู ูู ูููู ููุฑุฏ ุงูุฅูุณุงู ุงูุง ุจุนุฏ ู ูุชู ุฑุณู ูุงู