luisbocanegra / luisbocanegra/linux-guide-split-audio-ports

[Help request]: guide doesn't seem to work for devices using UCM

Open
#29 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

help-request
Dominant language
Shell
Stars
120
Forks
7
PR merge metrics
No merged PRs in 30d

Description

Describe your problem

Around section 1~2, we are supposed to find the profile that is being used, change the description-key value and then restart pipewire/wireplumber/pipewire-pulse and see if the name in pactl list sinks changes. However, none of the files cause the behavior as laid out in the README (as in, the type: becoming Unknown)

It appears that instead of using alsa-card-profile directly, some configurations utilize UCM under /usr/share/alsa/ucm2/, which doesn't seem to use the profiles as section 1~2 outlines.

System information

  • Operating System: EndeavourOS (Arch Linux)
  • Kernel Version: 6.19.6-arch1-1
  • Manufacturer: Framework
  • Product Name: Framework 13 (AMD Ryzen AI 5 340)
  • Type of device (laptop, desktop...): Laptop

Fill with output of each command

pactl info

Server String: /run/user/1000/pulse/native
Library Protocol Version: 35
Server Protocol Version: 35
Is Local: yes
Client Index: 129
Tile Size: 65472
User Name: ericswpark
Host Name: stanford
Server Name: PulseAudio (on PipeWire 1.6.1)
Server Version: 15.0.0
Default Sample Specification: float32le 2ch 48000Hz
Default Channel Map: front-left,front-right
Default Sink: alsa_output.pci-0000_c1_00.6.HiFi__Speaker__sink
Default Source: alsa_input.pci-0000_c1_00.6.HiFi__Headset__source
Cookie: f59d:614e

Codecs cat /proc/asound/card*/codec#* | grep -E 'Codec|Vendor Id|Subsystem Id|Address'

Codec: ATI R6xx HDMI
Address: 0
Vendor Id: 0x1002aa01
Subsystem Id: 0x00aa0100
Codec: Realtek ALC285
Address: 0
Vendor Id: 0x10ec0285
Subsystem Id: 0xf111000b

Cards pactl list cards

Card #54
        Name: alsa_card.pci-0000_c1_00.1
        Driver: alsa
        Owner Module: n/a
        Properties:
                device.enum.api = "udev"
                device.api = "alsa"
                media.class = "Audio/Device"
                api.alsa.path = "hw:0"
                api.alsa.card = "0"
                api.alsa.card.name = "HD-Audio Generic"
                api.alsa.card.longname = "HD-Audio Generic at 0xb04c8000 irq 136"
                device.plugged.usec = "12962119"
                device.bus_path = "pci-0000:c1:00.1"
                sysfs.path = "/devices/pci0000:00/0000:00:08.1/0000:c1:00.1/sound/card0"
                device.bus = "pci"
                device.subsystem = "sound"
                device.vendor.id = "0x1002"
                device.vendor.name = "Advanced Micro Devices, Inc. [AMD/ATI]"
                device.product.id = "0x1640"
                device.product.name = "Radeon High Definition Audio Controller"
                device.name = "alsa_card.pci-0000_c1_00.1"
                device.description = "Radeon High Definition Audio Controller"
                device.nick = "HD-Audio Generic"
                device.icon_name = "audio-card-analog-pci"
                api.alsa.use-acp = "true"
                api.acp.auto-profile = "false"
                api.acp.auto-port = "false"
                api.dbus.ReserveDevice1.Priority = "-20"
                api.alsa.split-enable = "true"
                api.dbus.ReserveDevice1 = "Audio0"
                spa.object.id = "2"
                factory.id = "15"
                client.id = "47"
                object.id = "53"
                object.serial = "54"
                object.path = "alsa:acp:Generic"
                alsa.card = "0"
                alsa.card_name = "HD-Audio Generic"
                alsa.long_card_name = "HD-Audio Generic at 0xb04c8000 irq 136"
                alsa.driver_name = "snd_hda_intel"
                alsa.mixer_name = "ATI R6xx HDMI"
                alsa.components = "HDA:1002aa01,00aa0100,00100900"
                alsa.id = "Generic"
                device.string = "0"
        Profiles:
                off: Off (sinks: 0, sources: 0, priority: 0, available: yes)
                HiFi: Play HiFi quality Music (sinks: 4, sources: 0, priority: 13000, available: yes)
                pro-audio: Pro Audio (sinks: 4, sources: 0, priority: 1, available: yes)
        Active Profile: HiFi
        Ports:
                [Out] HDMI4: HDMI / DisplayPort 4 Output (type: HDMI, priority: 1400, latency offset: 0 usec, availability group: HDMI/DP,pcm=9, available)
                        Properties:
                                port.type = "hdmi"
                                port.availability-group = "HDMI/DP,pcm=9"
                                device.icon_name = "video-display"
                                card.profile.port = "0"
                                device.product.name = "MSI MAG274R2"
                                iec958.codecs.detected = "[\"PCM\"]"
                                audio.channels.detected = "2"
                                audio.position.detected = "[FL,FR]"
                        Part of profile(s): HiFi
                [Out] HDMI3: HDMI / DisplayPort 3 Output (type: HDMI, priority: 1300, latency offset: 0 usec, availability group: HDMI/DP,pcm=8, not available)
                        Properties:
                                port.type = "hdmi"
                                port.availability-group = "HDMI/DP,pcm=8"
                                device.icon_name = "video-display"
                                card.profile.port = "1"
                        Part of profile(s): HiFi
                [Out] HDMI2: HDMI / DisplayPort 2 Output (type: HDMI, priority: 1200, latency offset: 0 usec, availability group: HDMI/DP,pcm=7, not available)
                        Properties:
                                port.type = "hdmi"
                                port.availability-group = "HDMI/DP,pcm=7"
                                device.icon_name = "video-display"
                                card.profile.port = "2"
                        Part of profile(s): HiFi
                [Out] HDMI1: HDMI / DisplayPort 1 Output (type: HDMI, priority: 1100, latency offset: 0 usec, availability group: HDMI/DP,pcm=3, not available)
                        Properties:
                                port.type = "hdmi"
                                port.availability-group = "HDMI/DP,pcm=3"
                                device.icon_name = "video-display"
                                card.profile.port = "3"
                        Part of profile(s): HiFi

Card #55
        Name: alsa_card.pci-0000_c1_00.6
        Driver: alsa
        Owner Module: n/a
        Properties:
                device.enum.api = "udev"
                device.api = "alsa"
                media.class = "Audio/Device"
                api.alsa.path = "hw:1"
                api.alsa.card = "1"
                api.alsa.card.name = "HD-Audio Generic"
                api.alsa.card.longname = "HD-Audio Generic at 0xb04c0000 irq 139"
                device.plugged.usec = "14917655"
                device.bus_path = "pci-0000:c1:00.6"
                sysfs.path = "/devices/pci0000:00/0000:00:08.1/0000:c1:00.6/sound/card1"
                device.bus = "pci"
                device.subsystem = "sound"
                device.vendor.id = "0x1022"
                device.vendor.name = "Advanced Micro Devices, Inc. [AMD]"
                device.product.id = "0x15e3"
                device.product.name = "Ryzen HD Audio Controller"
                device.name = "alsa_card.pci-0000_c1_00.6"
                device.description = "Ryzen HD Audio Controller"
                device.nick = "HD-Audio Generic"
                device.icon_name = "audio-card-analog-pci"
                api.alsa.use-acp = "true"
                api.acp.auto-profile = "false"
                api.acp.auto-port = "false"
                api.dbus.ReserveDevice1.Priority = "-20"
                api.alsa.split-enable = "true"
                api.dbus.ReserveDevice1 = "Audio1"
                spa.object.id = "4"
                factory.id = "15"
                client.id = "47"
                object.id = "54"
                object.serial = "55"
                object.path = "alsa:acp:Generic_1"
                alsa.card = "1"
                alsa.card_name = "HD-Audio Generic"
                alsa.long_card_name = "HD-Audio Generic at 0xb04c0000 irq 139"
                alsa.driver_name = "snd_hda_intel"
                alsa.mixer_name = "Realtek ALC285"
                alsa.components = "HDA:10ec0285,f111000b,00100002"
                alsa.id = "Generic_1"
                device.string = "1"
        Profiles:
                off: Off (sinks: 0, sources: 0, priority: 0, available: yes)
                HiFi (Headphones, Headset, Mic1): Play HiFi quality Music (Headphones, Headset, Mic1) (sinks: 1, sources: 2, priority: 8600, available: yes)
                HiFi (Headset, Mic1, Speaker): Play HiFi quality Music (Headset, Mic1, Speaker) (sinks: 1, sources: 2, priority: 8500, available: yes)
                HiFi (Headphones, Mic1, Mic2): Play HiFi quality Music (Headphones, Mic1, Mic2) (sinks: 1, sources: 2, priority: 8500, available: yes)
                HiFi (Mic1, Mic2, Speaker): Play HiFi quality Music (Mic1, Mic2, Speaker) (sinks: 1, sources: 2, priority: 8400, available: yes)
                pro-audio: Pro Audio (sinks: 1, sources: 1, priority: 1, available: yes)
        Active Profile: HiFi (Headset, Mic1, Speaker)
        Ports:
                [Out] Speaker: Speaker (type: Speaker, priority: 100, latency offset: 0 usec, availability unknown)
                        Properties:
                                port.type = "speaker"
                                device.icon_name = "audio-speakers"
                                card.profile.port = "0"
                        Part of profile(s): HiFi (Headset, Mic1, Speaker), HiFi (Mic1, Mic2, Speaker)
                [In] Headset: Headset Mono Microphone (type: Headset, priority: 300, latency offset: 0 usec, availability unknown)
                        Properties:
                                port.type = "headset"
                                device.icon_name = "audio-headset"
                                card.profile.port = "1"
                        Part of profile(s): HiFi (Headset, Mic1, Speaker), HiFi (Headphones, Headset, Mic1)
                [In] Mic1: Digital Microphone (type: Mic, priority: 100, latency offset: 0 usec, availability unknown)
                        Properties:
                                port.type = "mic"
                                device.icon_name = "audio-input-microphone"
                                card.profile.port = "2"
                        Part of profile(s): HiFi (Headset, Mic1, Speaker), HiFi (Headphones, Headset, Mic1), HiFi (Mic1, Mic2, Speaker), HiFi (Headphones, Mic1, Mic2)
                [Out] Headphones: Headphones (type: Headphones, priority: 200, latency offset: 0 usec, availability group: Headphone, available)
                        Properties:
                                port.type = "headphones"
                                port.availability-group = "Headphone"
                                device.icon_name = "audio-headphones"
                                card.profile.port = "3"
                        Part of profile(s): HiFi (Headphones, Headset, Mic1), HiFi (Headphones, Mic1, Mic2)
                [In] Mic2: Internal Stereo Microphone (type: Mic, priority: 200, latency offset: 0 usec, availability unknown)
                        Properties:
                                port.type = "mic"
                                device.icon_name = "audio-input-microphone"
                                card.profile.port = "4"
                        Part of profile(s): HiFi (Mic1, Mic2, Speaker), HiFi (Headphones, Mic1, Mic2)

Sinks before and after: pactl list sinks

When you started

Sink #46
        State: SUSPENDED
        Name: raop_sink.Bedroom.local.192.168.8.103.7000
        Description: Bedroom
        Driver: PipeWire
        Sample Specification: s16le 2ch 44100Hz
        Channel Map: front-left,front-right
        Owner Module: 4294967295
        Mute: no
        Volume: front-left: 24248 /  37% / -25.91 dB,   front-right: 24248 /  37% / -25.91 dB
                balance 0.00
        Base Volume: 65536 / 100% / 0.00 dB
        Monitor Source: raop_sink.Bedroom.local.192.168.8.103.7000.monitor
        Latency: 0 usec, configured 0 usec
        Flags: NETWORK DECIBEL_VOLUME LATENCY
        Properties:
                audio.format = "S16LE"
                audio.rate = "44100"
                device.icon_name = "audio-speakers"
                node.name = "raop_sink.Bedroom.local.192.168.8.103.7000"
                device.description = "Bedroom"
                node.latency = "10912/44100"
                node.virtual = "true"
                media.class = "Audio/Sink"
                media.name = "RAOP to Bedroom"
                net.mtu = "1448"
                rtp.sender-ts-offset = "0"
                sess.media = "raop"
                sess.latency.msec = "250"
                sess.ts-direct = "0"
                rtp.mime = "L16"
                node.network = "true"
                rtp.ptime = "7.981859"
                rtp.framecount = "352"
                node.rate = "1/44100"
                rtp.media = "audio"
                rtp.payload = "96"
                rtp.ssrc = "643950024"
                rtp.rate = "44100"
                rtp.channels = "2"
                stream.is-live = "true"
                node.want-driver = "true"
                node.autoconnect = "true"
                port.group = "stream.0"
                adapt.follower.spa-node = ""
                object.register = "false"
                factory.id = "19"
                clock.quantum-limit = "8192"
                node.loop.name = "data-loop.0"
                library.name = "audioconvert/libspa-audioconvert"
                client.id = "45"
                object.id = "46"
                object.serial = "46"
        Formats:
                pcm

Sink #59
        State: SUSPENDED
        Name: alsa_output.pci-0000_c1_00.1.HiFi__HDMI4__sink
        Description: Radeon High Definition Audio Controller HDMI / DisplayPort 4 Output
        Driver: PipeWire
        Sample Specification: s32le 2ch 48000Hz
        Channel Map: front-left,front-right
        Owner Module: 4294967295
        Mute: no
        Volume: front-left: 65536 / 100% / 0.00 dB,   front-right: 65536 / 100% / 0.00 dB
                balance 0.00
        Base Volume: 65536 / 100% / 0.00 dB
        Monitor Source: alsa_output.pci-0000_c1_00.1.HiFi__HDMI4__sink.monitor
        Latency: 0 usec, configured 0 usec
        Flags: HARDWARE DECIBEL_VOLUME LATENCY
        Properties:
                object.path = "alsa:acp:Generic:0:playback"
                api.alsa.path = "hw:Generic,9"
                api.alsa.open.ucm = "true"
                api.alsa.pcm.card = "0"
                api.alsa.pcm.stream = "playback"
                port.group = "playback"
                device.icon_name = "video-display"
                device.bus = "pci"
                audio.channels = "2"
                audio.position = "[ FL, FR ]"
                iec958.codecs = "[\"PCM\"]"
                device.routes = "1"
                alsa.mixer_device = "_ucm0001.hw:Generic"
                alsa.resolution_bits = "16"
                alsa.card = "0"
                alsa.card_name = "HD-Audio Generic"
                alsa.long_card_name = "HD-Audio Generic at 0xb04c8000 irq 136"
                alsa.driver_name = "snd_hda_intel"
                alsa.mixer_name = "ATI R6xx HDMI"
                alsa.components = "HDA:1002aa01,00aa0100,00100900"
                alsa.id = "Generic"
                device.api = "alsa"
                device.class = "sound"
                alsa.class = "generic"
                alsa.subclass = "generic-mix"
                alsa.name = "MSI MAG274R2"
                alsa.subdevice = "0"
                alsa.subdevice_name = "subdevice #0"
                alsa.device = "9"
                alsa.sync.id = "00000000:00000000:00000000:00000000"
                device.profile.name = "HiFi: HDMI4: sink"
                device.profile.description = "HDMI / DisplayPort 4 Output"
                card.profile.device = "0"
                device.id = "53"
                factory.name = "api.alsa.pcm.sink"
                node.pause-on-idle = "false"
                priority.driver = "600"
                priority.session = "600"
                media.class = "Audio/Sink"
                node.name = "alsa_output.pci-0000_c1_00.1.HiFi__HDMI4__sink"
                node.nick = "MSI MAG274R2"
                device.description = "Radeon High Definition Audio Controller"
                api.alsa.card.name = "HD-Audio Generic"
                api.alsa.card.longname = "HD-Audio Generic at 0xb04c8000 irq 136"
                factory.id = "19"
                clock.quantum-limit = "8192"
                client.id = "47"
                node.driver = "true"
                node.loop.name = "data-loop.0"
                library.name = "audioconvert/libspa-audioconvert"
                object.id = "58"
                object.serial = "59"
                device.enum.api = "udev"
                api.alsa.card = "0"
                device.plugged.usec = "12962119"
                device.bus_path = "pci-0000:c1:00.1"
                sysfs.path = "/devices/pci0000:00/0000:00:08.1/0000:c1:00.1/sound/card0"
                device.subsystem = "sound"
                device.vendor.id = "0x1002"
                device.vendor.name = "Advanced Micro Devices, Inc. [AMD/ATI]"
                device.product.id = "0x1640"
                device.product.name = "Radeon High Definition Audio Controller"
                device.name = "alsa_card.pci-0000_c1_00.1"
                device.nick = "HD-Audio Generic"
                api.alsa.use-acp = "true"
                api.acp.auto-profile = "false"
                api.acp.auto-port = "false"
                api.dbus.ReserveDevice1.Priority = "-20"
                api.alsa.split-enable = "true"
                api.dbus.ReserveDevice1 = "Audio0"
                spa.object.id = "2"
                device.string = "0"
        Ports:
                [Out] HDMI4: HDMI / DisplayPort 4 Output (type: HDMI, priority: 1400, availability group: HDMI/DP,pcm=9, available)
        Active Port: [Out] HDMI4
        Formats:
                pcm

Sink #60
        State: SUSPENDED
        Name: alsa_output.pci-0000_c1_00.1.HiFi__HDMI3__sink
        Description: Radeon High Definition Audio Controller HDMI / DisplayPort 3 Output
        Driver: PipeWire
        Sample Specification: s32le 2ch 48000Hz
        Channel Map: front-left,front-right
        Owner Module: 4294967295
        Mute: no
        Volume: front-left: 65536 / 100% / 0.00 dB,   front-right: 65536 / 100% / 0.00 dB
                balance 0.00
        Base Volume: 65536 / 100% / 0.00 dB
        Monitor Source: alsa_output.pci-0000_c1_00.1.HiFi__HDMI3__sink.monitor
        Latency: 0 usec, configured 0 usec
        Flags: HARDWARE DECIBEL_VOLUME LATENCY
        Properties:
                object.path = "alsa:acp:Generic:1:playback"
                api.alsa.path = "hw:Generic,8"
                api.alsa.open.ucm = "true"
                api.alsa.pcm.card = "0"
                api.alsa.pcm.stream = "playback"
                port.group = "playback"
                device.icon_name = "video-display"
                device.bus = "pci"
                audio.channels = "2"
                audio.position = "[ FL, FR ]"
                device.routes = "1"
                alsa.mixer_device = "_ucm0001.hw:Generic"
                alsa.resolution_bits = "16"
                alsa.card = "0"
                alsa.card_name = "HD-Audio Generic"
                alsa.long_card_name = "HD-Audio Generic at 0xb04c8000 irq 136"
                alsa.driver_name = "snd_hda_intel"
                alsa.mixer_name = "ATI R6xx HDMI"
                alsa.components = "HDA:1002aa01,00aa0100,00100900"
                alsa.id = "Generic"
                device.api = "alsa"
                device.class = "sound"
                alsa.class = "generic"
                alsa.subclass = "generic-mix"
                alsa.name = "HDMI 2"
                alsa.subdevice = "0"
                alsa.subdevice_name = "subdevice #0"
                alsa.device = "8"
                alsa.sync.id = "00000000:00000000:00000000:00000000"
                device.profile.name = "HiFi: HDMI3: sink"
                device.profile.description = "HDMI / DisplayPort 3 Output"
                card.profile.device = "1"
                device.id = "53"
                factory.name = "api.alsa.pcm.sink"
                node.pause-on-idle = "false"
                priority.driver = "616"
                priority.session = "616"
                media.class = "Audio/Sink"
                node.name = "alsa_output.pci-0000_c1_00.1.HiFi__HDMI3__sink"
                node.nick = "HDMI 2"
                device.description = "Radeon High Definition Audio Controller"
                api.alsa.card.name = "HD-Audio Generic"
                api.alsa.card.longname = "HD-Audio Generic at 0xb04c8000 irq 136"
                factory.id = "19"
                clock.quantum-limit = "8192"
                client.id = "47"
                node.driver = "true"
                node.loop.name = "data-loop.0"
                library.name = "audioconvert/libspa-audioconvert"
                object.id = "59"
                object.serial = "60"
                device.enum.api = "udev"
                api.alsa.card = "0"
                device.plugged.usec = "12962119"
                device.bus_path = "pci-0000:c1:00.1"
                sysfs.path = "/devices/pci0000:00/0000:00:08.1/0000:c1:00.1/sound/card0"
                device.subsystem = "sound"
                device.vendor.id = "0x1002"
                device.vendor.name = "Advanced Micro Devices, Inc. [AMD/ATI]"
                device.product.id = "0x1640"
                device.product.name = "Radeon High Definition Audio Controller"
                device.name = "alsa_card.pci-0000_c1_00.1"
                device.nick = "HD-Audio Generic"
                api.alsa.use-acp = "true"
                api.acp.auto-profile = "false"
                api.acp.auto-port = "false"
                api.dbus.ReserveDevice1.Priority = "-20"
                api.alsa.split-enable = "true"
                api.dbus.ReserveDevice1 = "Audio0"
                spa.object.id = "2"
                device.string = "0"
        Ports:
                [Out] HDMI3: HDMI / DisplayPort 3 Output (type: HDMI, priority: 1300, availability group: HDMI/DP,pcm=8, not available)
        Active Port: [Out] HDMI3
        Formats:
                pcm

Sink #61
        State: SUSPENDED
        Name: alsa_output.pci-0000_c1_00.1.HiFi__HDMI2__sink
        Description: Radeon High Definition Audio Controller HDMI / DisplayPort 2 Output
        Driver: PipeWire
        Sample Specification: s32le 2ch 48000Hz
        Channel Map: front-left,front-right
        Owner Module: 4294967295
        Mute: no
        Volume: front-left: 65536 / 100% / 0.00 dB,   front-right: 65536 / 100% / 0.00 dB
                balance 0.00
        Base Volume: 65536 / 100% / 0.00 dB
        Monitor Source: alsa_output.pci-0000_c1_00.1.HiFi__HDMI2__sink.monitor
        Latency: 0 usec, configured 0 usec
        Flags: HARDWARE DECIBEL_VOLUME LATENCY
        Properties:
                object.path = "alsa:acp:Generic:2:playback"
                api.alsa.path = "hw:Generic,7"
                api.alsa.open.ucm = "true"
                api.alsa.pcm.card = "0"
                api.alsa.pcm.stream = "playback"
                port.group = "playback"
                device.icon_name = "video-display"
                device.bus = "pci"
                audio.channels = "2"
                audio.position = "[ FL, FR ]"
                device.routes = "1"
                alsa.mixer_device = "_ucm0001.hw:Generic"
                alsa.resolution_bits = "16"
                alsa.card = "0"
                alsa.card_name = "HD-Audio Generic"
                alsa.long_card_name = "HD-Audio Generic at 0xb04c8000 irq 136"
                alsa.driver_name = "snd_hda_intel"
                alsa.mixer_name = "ATI R6xx HDMI"
                alsa.components = "HDA:1002aa01,00aa0100,00100900"
                alsa.id = "Generic"
                device.api = "alsa"
                device.class = "sound"
                alsa.class = "generic"
                alsa.subclass = "generic-mix"
                alsa.name = "HDMI 1"
                alsa.subdevice = "0"
                alsa.subdevice_name = "subdevice #0"
                alsa.device = "7"
                alsa.sync.id = "00000000:00000000:00000000:00000000"
                device.profile.name = "HiFi: HDMI2: sink"
                device.profile.description = "HDMI / DisplayPort 2 Output"
                card.profile.device = "2"
                device.id = "53"
                factory.name = "api.alsa.pcm.sink"
                node.pause-on-idle = "false"
                priority.driver = "632"
                priority.session = "632"
                media.class = "Audio/Sink"
                node.name = "alsa_output.pci-0000_c1_00.1.HiFi__HDMI2__sink"
                node.nick = "HDMI 1"
                device.description = "Radeon High Definition Audio Controller"
                api.alsa.card.name = "HD-Audio Generic"
                api.alsa.card.longname = "HD-Audio Generic at 0xb04c8000 irq 136"
                factory.id = "19"
                clock.quantum-limit = "8192"
                client.id = "47"
                node.driver = "true"
                node.loop.name = "data-loop.0"
                library.name = "audioconvert/libspa-audioconvert"
                object.id = "60"
                object.serial = "61"
                device.enum.api = "udev"
                api.alsa.card = "0"
                device.plugged.usec = "12962119"
                device.bus_path = "pci-0000:c1:00.1"
                sysfs.path = "/devices/pci0000:00/0000:00:08.1/0000:c1:00.1/sound/card0"
                device.subsystem = "sound"
                device.vendor.id = "0x1002"
                device.vendor.name = "Advanced Micro Devices, Inc. [AMD/ATI]"
                device.product.id = "0x1640"
                device.product.name = "Radeon High Definition Audio Controller"
                device.name = "alsa_card.pci-0000_c1_00.1"
                device.nick = "HD-Audio Generic"
                api.alsa.use-acp = "true"
                api.acp.auto-profile = "false"
                api.acp.auto-port = "false"
                api.dbus.ReserveDevice1.Priority = "-20"
                api.alsa.split-enable = "true"
                api.dbus.ReserveDevice1 = "Audio0"
                spa.object.id = "2"
                device.string = "0"
        Ports:
                [Out] HDMI2: HDMI / DisplayPort 2 Output (type: HDMI, priority: 1200, availability group: HDMI/DP,pcm=7, not available)
        Active Port: [Out] HDMI2
        Formats:
                pcm

Sink #62
        State: SUSPENDED
        Name: alsa_output.pci-0000_c1_00.1.HiFi__HDMI1__sink
        Description: Radeon High Definition Audio Controller HDMI / DisplayPort 1 Output
        Driver: PipeWire
        Sample Specification: s32le 2ch 48000Hz
        Channel Map: front-left,front-right
        Owner Module: 4294967295
        Mute: no
        Volume: front-left: 65536 / 100% / 0.00 dB,   front-right: 65536 / 100% / 0.00 dB
                balance 0.00
        Base Volume: 65536 / 100% / 0.00 dB
        Monitor Source: alsa_output.pci-0000_c1_00.1.HiFi__HDMI1__sink.monitor
        Latency: 0 usec, configured 0 usec
        Flags: HARDWARE DECIBEL_VOLUME LATENCY
        Properties:
                object.path = "alsa:acp:Generic:3:playback"
                api.alsa.path = "hw:Generic,3"
                api.alsa.open.ucm = "true"
                api.alsa.pcm.card = "0"
                api.alsa.pcm.stream = "playback"
                port.group = "playback"
                device.icon_name = "video-display"
                device.bus = "pci"
                audio.channels = "2"
                audio.position = "[ FL, FR ]"
                device.routes = "1"
                alsa.mixer_device = "_ucm0001.hw:Generic"
                alsa.resolution_bits = "16"
                alsa.card = "0"
                alsa.card_name = "HD-Audio Generic"
                alsa.long_card_name = "HD-Audio Generic at 0xb04c8000 irq 136"
                alsa.driver_name = "snd_hda_intel"
                alsa.mixer_name = "ATI R6xx HDMI"
                alsa.components = "HDA:1002aa01,00aa0100,00100900"
                alsa.id = "Generic"
                device.api = "alsa"
                device.class = "sound"
                alsa.class = "generic"
                alsa.subclass = "generic-mix"
                alsa.name = "HDMI 0"
                alsa.subdevice = "0"
                alsa.subdevice_name = "subdevice #0"
                alsa.device = "3"
                alsa.sync.id = "00000000:00000000:00000000:00000000"
                device.profile.name = "HiFi: HDMI1: sink"
                device.profile.description = "HDMI / DisplayPort 1 Output"
                card.profile.device = "3"
                device.id = "53"
                factory.name = "api.alsa.pcm.sink"
                node.pause-on-idle = "false"
                priority.driver = "696"
                priority.session = "696"
                media.class = "Audio/Sink"
                node.name = "alsa_output.pci-0000_c1_00.1.HiFi__HDMI1__sink"
                node.nick = "HDMI 0"
                device.description = "Radeon High Definition Audio Controller"
                api.alsa.card.name = "HD-Audio Generic"
                api.alsa.card.longname = "HD-Audio Generic at 0xb04c8000 irq 136"
                factory.id = "19"
                clock.quantum-limit = "8192"
                client.id = "47"
                node.driver = "true"
                node.loop.name = "data-loop.0"
                library.name = "audioconvert/libspa-audioconvert"
                object.id = "61"
                object.serial = "62"
                device.enum.api = "udev"
                api.alsa.card = "0"
                device.plugged.usec = "12962119"
                device.bus_path = "pci-0000:c1:00.1"
                sysfs.path = "/devices/pci0000:00/0000:00:08.1/0000:c1:00.1/sound/card0"
                device.subsystem = "sound"
                device.vendor.id = "0x1002"
                device.vendor.name = "Advanced Micro Devices, Inc. [AMD/ATI]"
                device.product.id = "0x1640"
                device.product.name = "Radeon High Definition Audio Controller"
                device.name = "alsa_card.pci-0000_c1_00.1"
                device.nick = "HD-Audio Generic"
                api.alsa.use-acp = "true"
                api.acp.auto-profile = "false"
                api.acp.auto-port = "false"
                api.dbus.ReserveDevice1.Priority = "-20"
                api.alsa.split-enable = "true"
                api.dbus.ReserveDevice1 = "Audio0"
                spa.object.id = "2"
                device.string = "0"
        Ports:
                [Out] HDMI1: HDMI / DisplayPort 1 Output (type: HDMI, priority: 1100, availability group: HDMI/DP,pcm=3, not available)
        Active Port: [Out] HDMI1
        Formats:
                pcm

Sink #68
        State: SUSPENDED
        Name: alsa_output.pci-0000_c1_00.6.HiFi__Speaker__sink
        Description: Ryzen HD Audio Controller Speaker
        Driver: PipeWire
        Sample Specification: s32le 2ch 48000Hz
        Channel Map: front-left,front-right
        Owner Module: 4294967295
        Mute: no
        Volume: front-left: 36045 /  55% / -15.58 dB,   front-right: 36045 /  55% / -15.58 dB
                balance 0.00
        Base Volume: 65536 / 100% / 0.00 dB
        Monitor Source: alsa_output.pci-0000_c1_00.6.HiFi__Speaker__sink.monitor
        Latency: 0 usec, configured 0 usec
        Flags: HARDWARE HW_MUTE_CTRL HW_VOLUME_CTRL DECIBEL_VOLUME LATENCY
        Properties:
                object.path = "alsa:acp:Generic_1:0:playback"
                api.alsa.path = "hw:Generic_1"
                api.alsa.open.ucm = "true"
                api.alsa.pcm.card = "1"
                api.alsa.pcm.stream = "playback"
                port.group = "playback"
                device.icon_name = "audio-speakers"
                device.bus = "pci"
                audio.channels = "2"
                audio.position = "[ FL, FR ]"
                device.routes = "1"
                alsa.mixer_device = "_ucm0003.hw:Generic_1"
                alsa.resolution_bits = "16"
                alsa.card = "1"
                alsa.card_name = "HD-Audio Generic"
                alsa.long_card_name = "HD-Audio Generic at 0xb04c0000 irq 139"
                alsa.driver_name = "snd_hda_intel"
                alsa.mixer_name = "Realtek ALC285"
                alsa.components = "HDA:10ec0285,f111000b,00100002"
                alsa.id = "Generic_1"
                device.api = "alsa"
                device.class = "sound"
                alsa.class = "generic"
                alsa.subclass = "generic-mix"
                alsa.name = "ALC285 Analog"
                alsa.subdevice = "0"
                alsa.subdevice_name = "subdevice #0"
                alsa.device = "0"
                alsa.sync.id = "00000000:00000000:00000000:00000000"
                device.profile.name = "HiFi: Speaker: sink"
                device.profile.description = "Speaker"
                card.profile.device = "0"
                device.id = "54"
                factory.name = "api.alsa.pcm.sink"
                node.pause-on-idle = "false"
                priority.driver = "1000"
                priority.session = "1000"
                media.class = "Audio/Sink"
                node.name = "alsa_output.pci-0000_c1_00.6.HiFi__Speaker__sink"
                node.nick = "ALC285 Analog"
                device.description = "Ryzen HD Audio Controller"
                api.alsa.card.name = "HD-Audio Generic"
                api.alsa.card.longname = "HD-Audio Generic at 0xb04c0000 irq 139"
                factory.id = "19"
                clock.quantum-limit = "8192"
                client.id = "47"
                node.driver = "true"
                node.loop.name = "data-loop.0"
                library.name = "audioconvert/libspa-audioconvert"
                object.id = "67"
                object.serial = "68"
                device.enum.api = "udev"
                api.alsa.card = "1"
                device.plugged.usec = "14917655"
                device.bus_path = "pci-0000:c1:00.6"
                sysfs.path = "/devices/pci0000:00/0000:00:08.1/0000:c1:00.6/sound/card1"
                device.subsystem = "sound"
                device.vendor.id = "0x1022"
                device.vendor.name = "Advanced Micro Devices, Inc. [AMD]"
                device.product.id = "0x15e3"
                device.product.name = "Ryzen HD Audio Controller"
                device.name = "alsa_card.pci-0000_c1_00.6"
                device.nick = "HD-Audio Generic"
                api.alsa.use-acp = "true"
                api.acp.auto-profile = "false"
                api.acp.auto-port = "false"
                api.dbus.ReserveDevice1.Priority = "-20"
                api.alsa.split-enable = "true"
                api.dbus.ReserveDevice1 = "Audio1"
                spa.object.id = "4"
                device.string = "1"
        Ports:
                [Out] Speaker: Speaker (type: Speaker, priority: 100, availability unknown)
        Active Port: [Out] Speaker
        Formats:
                pcm

Now: No change

Aplay before and after aplay -l

When you started

**** List of PLAYBACK Hardware Devices ****
card 0: Generic [HD-Audio Generic], device 3: HDMI 0 [HDMI 0]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: Generic [HD-Audio Generic], device 7: HDMI 1 [HDMI 1]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: Generic [HD-Audio Generic], device 8: HDMI 2 [HDMI 2]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: Generic [HD-Audio Generic], device 9: HDMI 3 [MSI MAG274R2]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: Generic_1 [HD-Audio Generic], device 0: ALC285 Analog [ALC285 Analog]
  Subdevices: 1/1
  Subdevice #0: subdevice #0

Now: Haven't gotten to this part, but before when I was messing around with the later sections (while skipping sections 1 and 2 since they didn't work because of this UCM configuration thing) I did manage to get the ALC285 Alt device to show up. However I was unable to get Pipewire to recognize this as a separate output, so I undid my changes and started again from the beginning.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with sections 1–2 of the README and compare their alsa-card-profile instructions with the reported UCM path at /usr/share/alsa/ucm2/. Use the provided pactl info, pactl list cards, and pactl list sinks output to verify the behavior on UCM-based devices. Done means the guide accurately explains the applicable path and its expected sink-name result.

Written by the indexing model from the issue text.

Assessment

Tech stack
linux
Domain
audio-video-rtc
Issue type
Documentation
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
42/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.