diff options
| author | Ivan Molodetskikh <yalterz@gmail.com> | 2025-08-03 13:29:48 +0300 |
|---|---|---|
| committer | Ivan Molodetskikh <yalterz@gmail.com> | 2025-08-04 14:36:34 +0200 |
| commit | f49ecc31c4d2a187c4c479e84fc6e6acaf5231f2 (patch) | |
| tree | 9b7763a90f7700ec78a515c41472a25602d76c08 /wiki | |
| parent | 15b4acc17ee2c8ac31f7e6093df57aa66e6bc2de (diff) | |
| download | niri-f49ecc31c4d2a187c4c479e84fc6e6acaf5231f2.tar.gz niri-f49ecc31c4d2a187c4c479e84fc6e6acaf5231f2.tar.bz2 niri-f49ecc31c4d2a187c4c479e84fc6e6acaf5231f2.zip | |
pw_utils: Wait for frame completion before queueing
Without explicit sync, we have no way to signal the PipeWire consumer when the
rendering is done. So, wait until it's done before giving it the frame.
This should fix flickering screencasts on NVIDIA.
Diffstat (limited to 'wiki')
| -rw-r--r-- | wiki/Configuration:-Debug-Options.md | 17 | ||||
| -rw-r--r-- | wiki/Nvidia.md | 4 |
2 files changed, 3 insertions, 18 deletions
diff --git a/wiki/Configuration:-Debug-Options.md b/wiki/Configuration:-Debug-Options.md index 299437ca..ad74dba7 100644 --- a/wiki/Configuration:-Debug-Options.md +++ b/wiki/Configuration:-Debug-Options.md @@ -21,7 +21,6 @@ debug { force-pipewire-invalid-modifier dbus-interfaces-in-non-session-instances wait-for-frame-completion-before-queueing - wait-for-frame-completion-in-pipewire emulate-zero-presentation-time disable-resize-throttling disable-transactions @@ -155,22 +154,6 @@ debug { } ``` -### `wait-for-frame-completion-in-pipewire` - -<sup>Since: 25.05</sup> - -Wait until every screencast frame is done rendering before handing it over to PipeWire. - -Sometimes helps on NVIDIA to prevent glitched frames when screencasting. - -This debug flag will eventually be removed once we handle this properly (via explicit sync in PipeWire). - -```kdl -debug { - wait-for-frame-completion-in-pipewire -} -``` - ### `emulate-zero-presentation-time` Emulate zero (unknown) presentation time returned from DRM. diff --git a/wiki/Nvidia.md b/wiki/Nvidia.md index 13b551d8..dc94c4b7 100644 --- a/wiki/Nvidia.md +++ b/wiki/Nvidia.md @@ -42,9 +42,11 @@ The fix shipped in the driver at the time of writing uses a value of 0, while th ### Screencast flickering fix +<sup>Until: next release</sup> + If you have screencast glitches or flickering on NVIDIA, set this in the niri config: -```kdl +```kdl,must-fail debug { wait-for-frame-completion-in-pipewire } |
