fix(linux/vulkan): harden encoder fallback#5174
Conversation
cc33bc7 to
6291b8f
Compare
d9ff6cd to
fcfadba
Compare
|
@ReenigneArcher please review |
|
Seems fine to me, but would like some users facing the issue to test. |
+1 also applied this to my local system and no regressions using kms-/portal-/kwingrab. I'm not affected by the issue so can't comment on that. @ReenigneArcher You might want to kick off the CI pipeline so affected users can use the build artifacts to easily test without having to self compile. |
fcfadba to
35bad4e
Compare
Bundle ReportBundle size has no change ✅ |
This comment was marked as outdated.
This comment was marked as outdated.
Codecov Report❌ Patch coverage is Additional details and impacted files@@ Coverage Diff @@
## master #5174 +/- ##
==========================================
- Coverage 17.78% 17.74% -0.05%
==========================================
Files 111 111
Lines 24154 24226 +72
Branches 10688 10732 +44
==========================================
+ Hits 4296 4299 +3
- Misses 14682 15549 +867
+ Partials 5176 4378 -798
Flags with carried forward coverage won't be shown. Click here to find out more.
... and 31 files with indirect coverage changes Continue to review full report in Codecov by Sentry.
|
35bad4e to
1d3b56c
Compare
|
this issue is solved let me know if any further changes are needed. |
1d3b56c to
15c076e
Compare
|
I updated the pr so sunshine checks vulkan H.264 encode support before going into the vulkan encoder setup. If it is not supported thenit skips vulkan and falls back to other encoders vaapi. |
15c076e to
4b81659
Compare
706ad73 to
75884ce
Compare
|
@codeafridi We seem to fighting each other on the rebases... Looks like you forced push without rebasing... I'll let you rebase before I run CI then (everything needs to be up to date for CI to run properly). |
75884ce to
0d0857d
Compare
|
Sorry @ReenigneArcher i think i pushed over your rebase by mistake ill rebase my branch on the latest master now and push it back |
| delay = std::chrono::nanoseconds {1s} / config.framerate; | ||
|
|
||
| if (kms::card_descriptors.empty()) { | ||
| // GCOVR_EXCL_START - requires KMS monitor enumeration to fail on the host. |
There was a problem hiding this comment.
Could you remove the gcovr exlusion start/stop comments? We do measure coverage as a metric, but it's not strictly enforced.
There was a problem hiding this comment.
alright removed the gcov exclusion comments
0d0857d to
b6c8fec
Compare
|



Description
Fixes a segmentation fault on Ubuntu 26.04 Wayland when Sunshine starts with the Vulkan encoder path, but the GPU/driver does not support Vulkan H.264 encoding.
The failed Vulkan encoder state is now handled safely, and KMS monitor detection no longer continues with stale or empty monitor data.
Screenshot
N/A
Issues Fixed or Closed
Roadmap Issues
N/A
Type of Change
Checklist
AI Usage