[2026-05-08] htpc-system: expand audio section (AMD HDA bug, pipewire/wireplumber configs)
This commit is contained in:
@@ -45,10 +45,55 @@ GAMESCOPE_REFRESH=60
|
|||||||
- 4K вызывает AMD HDA audio clock bug: пиксельный клок ~594 MHz → HDMI audio 880 Hz вместо 440 Hz
|
- 4K вызывает AMD HDA audio clock bug: пиксельный клок ~594 MHz → HDMI audio 880 Hz вместо 440 Hz
|
||||||
|
|
||||||
## Аудио
|
## Аудио
|
||||||
TV поддерживает только LPCM 2ch, 32000/44100/48000/96000/192000 Hz, 16/20/24 bit.
|
|
||||||
|
|
||||||
`~/.config/wireplumber/wireplumber.conf.d/fix-hdmi.conf` — S16LE, 48000 Hz, no suspend
|
### Проблема
|
||||||
`~/.config/pipewire/pipewire.conf.d/99-hdmi-fix.conf` — allowed-rates [44100, 48000]
|
LG webOS TV по HDMI принимает **только LPCM 2ch**.
|
||||||
|
Поддерживаемые частоты: 32000 / 44100 / 48000 / 96000 / 192000 Hz, 16/20/24 bit.
|
||||||
|
|
||||||
|
**AMD HDA audio clock bug** (RX 570 + 4K@60Hz):
|
||||||
|
При pixel clock ~594 MHz (4K@60Hz) AMD HDMI audio контроллер выдаёт неправильный clock — тон 440 Hz воспроизводится как 880 Hz (в 2 раза выше). Решение — переключиться на **1080p@60Hz** (pixel clock ~148 MHz, bug не воспроизводится).
|
||||||
|
|
||||||
|
### Решение: зафиксировать 1080p
|
||||||
|
`~/.config/environment.d/gamescope.conf`:
|
||||||
|
```
|
||||||
|
GAMESCOPE_WIDTH=1920
|
||||||
|
GAMESCOPE_HEIGHT=1080
|
||||||
|
GAMESCOPE_REFRESH=60
|
||||||
|
```
|
||||||
|
|
||||||
|
### Решение: PipeWire/WirePlumber конфиги
|
||||||
|
|
||||||
|
`~/.config/wireplumber/wireplumber.conf.d/fix-hdmi.conf`:
|
||||||
|
```lua
|
||||||
|
monitor.alsa.rules = [
|
||||||
|
{
|
||||||
|
matches = [{ node.name = "~alsa_output.pci*hdmi*" }]
|
||||||
|
actions = {
|
||||||
|
update-props = {
|
||||||
|
audio.format = "S16LE"
|
||||||
|
audio.rate = 48000
|
||||||
|
session.suspend-timeout-seconds = 0
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
```
|
||||||
|
|
||||||
|
`~/.config/pipewire/pipewire.conf.d/99-hdmi-fix.conf`:
|
||||||
|
```conf
|
||||||
|
context.properties = {
|
||||||
|
default.clock.allowed-rates = [ 44100 48000 ]
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
### Проверка
|
||||||
|
```bash
|
||||||
|
# Посмотреть активный sink и его параметры:
|
||||||
|
pactl list sinks | grep -A20 "HDMI"
|
||||||
|
|
||||||
|
# Тест тона 440 Hz — должен звучать как ля первой октавы:
|
||||||
|
speaker-test -t sine -f 440 -c 2
|
||||||
|
```
|
||||||
|
|
||||||
## OSTree / Обновления
|
## OSTree / Обновления
|
||||||
- `/usr/local/bin` слетает при `rpm-ostree` upgrade (новый `/usr` overlay)
|
- `/usr/local/bin` слетает при `rpm-ostree` upgrade (новый `/usr` overlay)
|
||||||
|
|||||||
Reference in New Issue
Block a user