You are not logged in.
Pages: 1
Hi all!
I just installed Arch on an old Intel NUC mini-PC. It has a two-core Intel i3-8121U CPU with 8GB of RAM. This model uses AMD graphics (Radeon 500 series) instead of the typical embedded Intel graphics.
I'm running KDE Plasma on Wayland with the AMDGPU driver and selected Piprewire during the install.
By default, I'm outputting audio through the HDMI port to speakers attached to the monitor. However, there's also a mini-DIN jack on the front of the system.
When playing audio apps in KDE (Chrome, Firefox, VLC) the sound is choppy or stutters like it's dropping frames or the CPU is over-taxed. Running 'top' does not show a high load average however. It roughly cuts-out for about a half a second every second or so. There's some variation over several seconds. In YouTube (Chrome), there's no coinciding dropping of video frames, at least according to "stats for nerds". Forcing down the resolution in YouTube makes no difference.
Oddly, the left/right audio test tool in the KDE Settings app doesn't exhibit these symptoms, but perhaps they just don't play quite long enough.
Interestingly, if I switch to the mini-DIN jack on the front of the system, there's no symptoms at all. Inserting passive headphones during playback basically eliminates the issue instantly but returns after unplugging the headphones returning to the HDMI output.
Concerned about Pipewire perhaps not being a good choice for this system, I tried booting Ubuntu 26.04 LTS in LiveCD mode. It too uses Pipewire but doesn't have any issues with audio.
So, I presume that Pipewire needs some additional tuning but curious if there's some automatic mode perhaps used by Ubuntu that isn't presumed under Arch.
I'm still rather unfamiliar with Pipewire, but here's some CLI output that perhaps shares important details.
$ pactl info
Server String: /run/user/1000/pulse/native
Library Protocol Version: 35
Server Protocol Version: 35
Is Local: yes
Client Index: 136
Tile Size: 65472
User Name: zachw
Host Name: nuc-arch
Server Name: PulseAudio (on PipeWire 1.6.8)
Server Version: 15.0.0
Default Sample Specification: float32le 2ch 48000Hz
Default Channel Map: front-left,front-right
Default Sink: alsa_output.pci-0000_01_00.1.hdmi-stereo-extra1
Default Source: alsa_input.pci-0000_00_1f.3.analog-stereo
Cookie: 8824:20cd
$ systemctl --user status pipewire
● pipewire.service - PipeWire Multimedia Service
Loaded: loaded (/usr/lib/systemd/user/pipewire.service; disabled; preset: enabled)
Active: active (running) since Tue 2026-07-21 16:43:07 EDT; 43min ago
Invocation: 494790403da9443994625d3e5415aa7a
TriggeredBy: ● pipewire.socket
Main PID: 1352 (pipewire)
Tasks: 3 (limit: 9375)
Memory: 6.1M (peak: 10.9M)
CPU: 1.766s
CGroup: /user.slice/user-1000.slice/user@1000.service/session.slice/pipewire.service
└─1352 /usr/bin/pipewire
Jul 21 16:43:07 nuc-arch systemd[1229]: Started PipeWire Multimedia Service.
Jul 21 16:43:07 nuc-arch pipewire[1352]: mod.rt: RTKit error: org.freedesktop.DBus.Error.ServiceUnknown
Jul 21 16:43:07 nuc-arch pipewire[1352]: mod.rt: RTKit does not give us MaxRealtimePriority, using 1
Jul 21 16:43:07 nuc-arch pipewire[1352]: mod.rt: RTKit error: org.freedesktop.DBus.Error.ServiceUnknown
Jul 21 16:43:07 nuc-arch pipewire[1352]: mod.rt: RTKit does not give us MinNiceLevel, using 0
Jul 21 16:43:07 nuc-arch pipewire[1352]: mod.rt: RTKit error: org.freedesktop.DBus.Error.ServiceUnknown
Jul 21 16:43:07 nuc-arch pipewire[1352]: mod.rt: RTKit does not give us RTTimeUSecMax, using -1
$ pw-cli
pipewire-0>> list-objects
id 43, type PipeWire:Interface:Device/3
object.serial = "43"
factory.id = "15"
client.id = "42"
device.api = "alsa"
device.description = "Baffin HDMI/DP Audio [Radeon RX 550 640SP / RX 560/560X]"
device.name = "alsa_card.pci-0000_01_00.1"
device.nick = "HDA ATI HDMI"
media.class = "Audio/Device"
object.path = "alsa:acp:HDMI"
id 44, type PipeWire:Interface:Device/3
object.serial = "44"
factory.id = "15"
client.id = "42"
device.api = "alsa"
device.description = "Built-in Audio"
device.name = "alsa_card.pci-0000_00_1f.3"
device.nick = "HDA Intel PCH"
media.class = "Audio/Device"
object.path = "alsa:acp:PCH"
id 51, type PipeWire:Interface:Node/3
object.serial = "51"
object.path = "alsa:acp:HDMI:5:playback"
factory.id = "19"
client.id = "42"
device.id = "43"
priority.session = "632"
priority.driver = "632"
node.description = "Baffin HDMI/DP Audio [Radeon RX 550 640SP / RX 560/560X] Digital Stereo (HDMI 2)"
node.name = "alsa_output.pci-0000_01_00.1.hdmi-stereo-extra1"
node.nick = "DELL U3023E"
media.class = "Audio/Sink"
id 52, type PipeWire:Interface:Node/3
object.serial = "52"
object.path = "alsa:acp:PCH:0:capture"
factory.id = "19"
client.id = "42"
device.id = "44"
priority.session = "2009"
priority.driver = "2009"
node.description = "Built-in Audio Analog Stereo"
node.name = "alsa_input.pci-0000_00_1f.3.analog-stereo"
node.nick = "ALC233 Analog"
media.class = "Audio/Source"Anyway, if anyone has suggestions or additional troubleshooting steps to try, I'd appreciate being pointed in the right direction.
Thanks!
Last edited by zachw (Yesterday 14:59:38)
Offline
Please use [code][/code] tags, not "quote" tags. Edit your post in this regard.
https://wiki.archlinux.org/title/PipeWi … _distorted ?
(also see https://wiki.archlinux.org/title/PipeWi … le_rate(s) )
You don't seem to have https://archlinux.org/packages/extra/x86_64/rtkit/ what might play a role in resampling issues
Offline
Please use [code][/code] tags, not "quote" tags. Edit your post in this regard.
https://wiki.archlinux.org/title/PipeWi … _distorted ?
(also see https://wiki.archlinux.org/title/PipeWi … le_rate(s) )You don't seem to have https://archlinux.org/packages/extra/x86_64/rtkit/ what might play a role in resampling issues
Ah, apologies. I've now edited the prior post.
Thank you for the pointer to the rtkit package. I've now installed it, and the previous RTKit errors are now gone. However, the issue is still present, unfortunately.
Looking through the wiki article on Pipewire, specifically the part on checking and changing allowed sampling rates, I see the following:
$ grep -E 'Codec|Audio Output|rates' /proc/asound/card*/codec#*
/proc/asound/card0/codec#0:Codec: Realtek ALC233
/proc/asound/card0/codec#0: rates [0x560]: 44100 48000 96000 192000
/proc/asound/card0/codec#0:Node 0x02 [Audio Output] wcaps 0x41d: Stereo Amp-Out
/proc/asound/card0/codec#0: rates [0x60]: 44100 48000
/proc/asound/card0/codec#0:Node 0x03 [Audio Output] wcaps 0x41d: Stereo Amp-Out
/proc/asound/card0/codec#0: rates [0x60]: 44100 48000
/proc/asound/card0/codec#0:Node 0x06 [Audio Output] wcaps 0x611: Stereo Digital
/proc/asound/card0/codec#0: rates [0x5e0]: 44100 48000 88200 96000 192000
/proc/asound/card0/codec#0: rates [0x560]: 44100 48000 96000 192000
/proc/asound/card0/codec#0: rates [0x560]: 44100 48000 96000 192000
/proc/asound/card1/codec#0:Codec: ATI R6xx HDMI
/proc/asound/card1/codec#0: rates [0x70]: 32000 44100 48000
/proc/asound/card1/codec#0:Node 0x02 [Audio Output] wcaps 0x221: Stereo Digital Stripe
/proc/asound/card1/codec#0:Node 0x04 [Audio Output] wcaps 0x221: Stereo Digital Stripe
/proc/asound/card1/codec#0:Node 0x06 [Audio Output] wcaps 0x221: Stereo Digital Stripe
/proc/asound/card1/codec#0:Node 0x08 [Audio Output] wcaps 0x221: Stereo Digital Stripe
/proc/asound/card1/codec#0:Node 0x0a [Audio Output] wcaps 0x221: Stereo Digital Stripe
/proc/asound/card1/codec#0:Node 0x0c [Audio Output] wcaps 0x221: Stereo Digital Stripe
$ cat /proc/asound/cards
0 [PCH ]: HDA-Intel - HDA Intel PCH
HDA Intel PCH at 0xb0630000 irq 140
1 [HDMI ]: HDA-Intel - HDA ATI HDMI
HDA ATI HDMI at 0xb0560000 irq 139
$ cat /proc/asound/card1/pcm7p/sub0/hw_params
access: MMAP_INTERLEAVED
format: S32_LE
subformat: STD
channels: 2
rate: 48000 (48000/1)
period_size: 1024
buffer_size: 32768
$ cat /etc/pipewire/pipewire.conf.d/sample-rate.conf
cat: /etc/pipewire/pipewire.conf.d/sample-rate.conf: No such file or directory
$ cat ~/.config/pipewire/pipewire.conf.d/sample-rate.conf
cat: /home/zachw/.config/pipewire/pipewire.conf.d/sample-rate.conf: No such file or directory
$ cat /proc/asound/card1/codec#0
Codec: ATI R6xx HDMI
Address: 0
AFG Function Id: 0x1 (unsol 0)
Vendor Id: 0x1002aa01
Subsystem Id: 0x00aa0100
Revision Id: 0x100700
No Modem Function Group found
Default PCM:
rates [0x70]: 32000 44100 48000
bits [0x2]: 16
formats [0x1]: PCM
Default Amp-In caps: N/A
Default Amp-Out caps: N/A
State of AFG node 0x01:
Power states: D0 D3 CLKSTOP EPSS
Power: setting=D0, actual=D0, Clock-stop-OK
GPIO: io=0, o=0, i=0, unsolicited=0, wake=0
Node 0x02 [Audio Output] wcaps 0x221: Stereo Digital Stripe
Converter: stream=0, channel=0
Digital: Enabled
Digital category: 0x0
IEC Coding Type: 0x0
Node 0x03 [Pin Complex] wcaps 0x400381: Stereo Digital
Pincap 0x00000094: OUT Detect HDMI
Pin Default 0x185600f0: [Jack] Digital Out at Int HDMI
Conn = Digital, Color = Unknown
DefAssociation = 0xf, Sequence = 0x0
Pin-ctls: 0x40: OUT
Unsolicited: tag=00, enabled=0
Connection: 1
0x02
Node 0x04 [Audio Output] wcaps 0x221: Stereo Digital Stripe
Converter: stream=0, channel=0
Digital: Enabled
Digital category: 0x0
IEC Coding Type: 0x0
Node 0x05 [Pin Complex] wcaps 0x400381: Stereo Digital
Pincap 0x00000094: OUT Detect HDMI
Pin Default 0x185600f0: [Jack] Digital Out at Int HDMI
Conn = Digital, Color = Unknown
DefAssociation = 0xf, Sequence = 0x0
Pin-ctls: 0x40: OUT
Unsolicited: tag=00, enabled=0
Connection: 1
0x04
Node 0x06 [Audio Output] wcaps 0x221: Stereo Digital Stripe
Converter: stream=0, channel=0
Digital:
Digital category: 0x0
IEC Coding Type: 0x0
Node 0x07 [Pin Complex] wcaps 0x400381: Stereo Digital
Pincap 0x00000094: OUT Detect HDMI
Pin Default 0x585600f0: [N/A] Digital Out at Int HDMI
Conn = Digital, Color = Unknown
DefAssociation = 0xf, Sequence = 0x0
Pin-ctls: 0x40: OUT
Unsolicited: tag=00, enabled=0
Connection: 1
0x06
Node 0x08 [Audio Output] wcaps 0x221: Stereo Digital Stripe
Converter: stream=0, channel=0
Digital:
Digital category: 0x0
IEC Coding Type: 0x0
Node 0x09 [Pin Complex] wcaps 0x400381: Stereo Digital
Pincap 0x00000094: OUT Detect HDMI
Pin Default 0x585600f0: [N/A] Digital Out at Int HDMI
Conn = Digital, Color = Unknown
DefAssociation = 0xf, Sequence = 0x0
Pin-ctls: 0x40: OUT
Unsolicited: tag=00, enabled=0
Connection: 1
0x08
Node 0x0a [Audio Output] wcaps 0x221: Stereo Digital Stripe
Converter: stream=0, channel=0
Digital:
Digital category: 0x0
IEC Coding Type: 0x0
Node 0x0b [Pin Complex] wcaps 0x400381: Stereo Digital
Pincap 0x00000094: OUT Detect HDMI
Pin Default 0x585600f0: [N/A] Digital Out at Int HDMI
Conn = Digital, Color = Unknown
DefAssociation = 0xf, Sequence = 0x0
Pin-ctls: 0x40: OUT
Unsolicited: tag=00, enabled=0
Connection: 1
0x0a
Node 0x0c [Audio Output] wcaps 0x221: Stereo Digital Stripe
Converter: stream=0, channel=0
Digital:
Digital category: 0x0
IEC Coding Type: 0x0
Node 0x0d [Pin Complex] wcaps 0x400381: Stereo Digital
Pincap 0x00000094: OUT Detect HDMI
Pin Default 0x585600f0: [N/A] Digital Out at Int HDMI
Conn = Digital, Color = Unknown
DefAssociation = 0xf, Sequence = 0x0
Pin-ctls: 0x40: OUT
Unsolicited: tag=00, enabled=0
Connection: 1
0x0cIt appears that the attempted sampling rate is supported, if I'm interpreting that correctly. Interesting how the analog outputs have their own supported rates beyond just the card/codec, but the HDMI output just mentions the card/codec with no rates for the individual outputs. That seems concerning but not sure if that aligns with the symptoms versus simply not working at all.
Any other suggestions?
Thanks!
Last edited by zachw (Yesterday 15:38:27)
Offline
Did you try to set the HDMI output to 44100Hz?
Offline
I've had similar issues with a Toslink connection, so not sure if this even applies to HDMI, but you could try to increase the ALSA headroom:
cat ~/.config/wireplumber/wireplumber.conf.d/alsa_output.pci-0000_01_00.1.hdmi-stereo-extra1.conf
monitor.alsa.rules = [{
matches = [ { node.name = "alsa_output.pci-0000_01_00.1.hdmi-stereo-extra1" } ]
actions = { update-props = { api.alsa.headroom = 2048 } }
}]Offline
Pages: 1