feat: add per output max-bpc config and ipc action

List current max-bpc values in outputs.

fix: remove 16 bpc and change default behaviour

feat(ipc): add max_bpc and format to output

fix: bpc on output config change

docs: add bpc to Outputs

feat: use atomic commits for connector properties

fix: drm `value_type` breaking change

fix: minor changes based on PR review

Rename bpc to max-bpc.

Add max-bpc output action.

refactor: add set_connector_properties

Fix niri-config parse test.

fix: bail when outside valid max bpc range
This commit is contained in:
Michael Yang
2026-01-01 05:45:17 +11:00
committed by Ivan Molodetskikh
parent 9a6f31012d
commit c5253968b4
9 changed files with 274 additions and 56 deletions
+18
View File
@@ -15,6 +15,7 @@ output "eDP-1" {
variable-refresh-rate // on-demand=true
focus-at-startup
backdrop-color "#001100"
max-bpc 8
hot-corners {
// off
@@ -279,6 +280,23 @@ output "HDMI-A-1" {
}
```
### `max-bpc`
<sup>Since: next release</sup>
Set the maximum bits per channel (BPC) for this output.
You *do not* need to set this option unless you hit bandwidth issues (can't set a monitor configuration that works on other compositor) or lower-than-expected color depth.
Particularly, 10-bit color output may work even if max-bpc is 8.
Valid values are `6`, `8`, `10`, `12`, `14`, `16`.
```kdl
// Set 8 max-bpc on HDMI-A-1 to lower the bandwidth.
output "HDMI-A-1" {
max-bpc 8
}
```
### `hot-corners`
<sup>Since: 25.11</sup>