Since a recent update I have trouble with my audio devices.
Arch, KDE Plasma 6, X11 I mainly use a USB DAC, but sometimes switch to my TVs speakers (connected via HDMI) and that’s where I have trouble with.
The problem is the output profile for my TV is not consistent between reboots of my system and/or TV and has to be manually set. The profile is shown in the Plasma sound settings as inactive.
In this instance the pactl list cards shows the first profile hdmi-stereo as active (available: yes). However I can’t switch to it in the Plasma sound settings.
off: Off (sinks: 0, sources: 0, priority: 0, available: yes)
output:hdmi-stereo: Digital Stereo (HDMI) Output (sinks: 1, sources: 0, priority: 5900, available: yes)
output:hdmi-stereo-extra1: Digital Stereo (HDMI 2) Output (sinks: 1, sources: 0, priority: 5700, available: no)
output:hdmi-stereo-extra2: Digital Stereo (HDMI 3) Output (sinks: 1, sources: 0, priority: 5700, available: no)
output:hdmi-stereo-extra3: Digital Stereo (HDMI 4) Output (sinks: 1, sources: 0, priority: 5700, available: no)
So far the active profiles were hdmi-stereo and hdmi-stereo-extra2.
I have to manually activate the profile with pactl set-card-profile alsa_card.pci-0000_26_00.1 output:hdmi-stereo
, if the profile has switched. If I try to switch to any of the other stereo profiles, nothing happens, I have to chose the available one.
I didn’t have any luck figuring out why the profile can change when I reboot and how I can activate one profile automatically without manual input.
Any help or advice would be appreciated. Thanks for reading.
The whole output from pactl list cards:
Card #47
Name: alsa_card.pci-0000_26_00.1
Driver: alsa
Owner Module: n/a
Properties:
api.acp.auto-port = "false"
api.alsa.card = "0"
api.alsa.card.longname = "HDA NVidia at 0xfc080000 irq 75"
api.alsa.card.name = "HDA NVidia"
api.alsa.path = "hw:0"
api.alsa.use-acp = "true"
api.dbus.ReserveDevice1 = "Audio0"
api.dbus.ReserveDevice1.Priority = "-20"
device.api = "alsa"
device.bus = "pci"
device.bus_path = "pci-0000:26:00.1"
device.description = "TU106 High Definition Audio Controller"
device.enum.api = "udev"
device.icon_name = "audio-card-analog-pci"
device.name = "alsa_card.pci-0000_26_00.1"
device.nick = "HDA NVidia"
device.plugged.usec = "6240124"
device.product.id = "0x10f9"
device.product.name = "TU106 High Definition Audio Controller"
device.subsystem = "sound"
sysfs.path = "/devices/pci0000:00/0000:00:03.1/0000:26:00.1/sound/card0"
device.vendor.id = "0x10de"
device.vendor.name = "NVIDIA Corporation"
media.class = "Audio/Device"
factory.id = "14"
client.id = "45"
object.id = "47"
object.serial = "47"
object.path = "alsa:pcm:0"
alsa.card = "0"
alsa.card_name = "HDA NVidia"
alsa.long_card_name = "HDA NVidia at 0xfc080000 irq 75"
alsa.driver_name = "snd_hda_intel"
device.string = "0"
Profiles:
off: Off (sinks: 0, sources: 0, priority: 0, available: yes)
output:hdmi-stereo: Digital Stereo (HDMI) Output (sinks: 1, sources: 0, priority: 5900, available: yes)
output:hdmi-stereo-extra1: Digital Stereo (HDMI 2) Output (sinks: 1, sources: 0, priority: 5700, available: no)
output:hdmi-stereo-extra2: Digital Stereo (HDMI 3) Output (sinks: 1, sources: 0, priority: 5700, available: no)
output:hdmi-stereo-extra3: Digital Stereo (HDMI 4) Output (sinks: 1, sources: 0, priority: 5700, available: no)
output:hdmi-surround: Digital Surround 5.1 (HDMI) Output (sinks: 1, sources: 0, priority: 800, available: yes)
output:hdmi-surround71: Digital Surround 7.1 (HDMI) Output (sinks: 1, sources: 0, priority: 800, available: yes)
output:hdmi-surround-extra3: Digital Surround 5.1 (HDMI 4) Output (sinks: 1, sources: 0, priority: 600, available: no)
output:hdmi-surround71-extra3: Digital Surround 7.1 (HDMI 4) Output (sinks: 1, sources: 0, priority: 600, available: no)
pro-audio: Pro Audio (sinks: 4, sources: 0, priority: 1, available: yes)
Active Profile: output:hdmi-stereo
Ports:
hdmi-output-0: HDMI / DisplayPort (type: HDMI, priority: 5900, latency offset: 0 usec, availability group: Legacy 1, available)
Properties:
port.type = "hdmi"
port.availability-group = "Legacy 1"
device.icon_name = "video-display"
card.profile.port = "0"
device.product.name = "SAMSUNG
"
Part of profile(s): output:hdmi-stereo, output:hdmi-surround, output:hdmi-surround71
hdmi-output-1: HDMI / DisplayPort 2 (type: HDMI, priority: 5800, latency offset: 0 usec, availability group: Legacy 2, not available)
Properties:
port.type = "hdmi"
port.availability-group = "Legacy 2"
device.icon_name = "video-display"
card.profile.port = "1"
Part of profile(s): output:hdmi-stereo-extra1
hdmi-output-2: HDMI / DisplayPort 3 (type: HDMI, priority: 5700, latency offset: 0 usec, availability group: Legacy 3, not available)
Properties:
port.type = "hdmi"
port.availability-group = "Legacy 3"
device.icon_name = "video-display"
card.profile.port = "2"
Part of profile(s): output:hdmi-stereo-extra2
hdmi-output-3: HDMI / DisplayPort 4 (type: HDMI, priority: 5600, latency offset: 0 usec, availability group: Legacy 4, not available)
Properties:
port.type = "hdmi"
port.availability-group = "Legacy 4"
device.icon_name = "video-display"
card.profile.port = "3"
Part of profile(s): output:hdmi-stereo-extra3, output:hdmi-surround-extra3, output:hdmi-surround71-extra3
It looks like you’re actually using Pipewire, so you’ll want to look at the documentation / bug tracker for that instead.
This is the best thing you can do to get a perfectly working Pulseaudio installation: switch to Pipewire.
Honestly, give it a try it: it’s easy to do, totally reversible and Pipewire is probably already installed on your system if it’s recent. Pulseaudio is such a turd, you’ll kick yourself for not having switched earlier.