Wrong default audio output needs to be changed

# inxi -ASaz --vs --zl --hostname
inxi 3.3.30-00 (2023-09-25)
System:
  Host: ab250 Kernel: 6.4.12-1-default arch: x86_64 bits: 64 compiler: gcc
    v: 13.2.1 clocksource: tsc available: hpet,acpi_pm
    parameters: BOOT_IMAGE=/boot/vmlinuz root=LABEL=<filter> noresume
    ipv6.disable=1 net.ifnames=0 consoleblank=0 preempt=full mitigations=off
  Console: pty pts/4 wm: kwin DM: 1: KDM 2: XDM Distro: openSUSE
    Tumbleweed-Slowroll 20230822
Audio:
  Device-1: Intel 200 Series PCH HD Audio vendor: ASUSTeK
    driver: snd_hda_intel v: kernel alternate: snd_soc_avs bus-ID: 00:1f.3
    chip-ID: 8086:a2f0 class-ID: 0403
  API: ALSA v: k6.4.12-1-default status: kernel-api with: 1: aoss
    type: oss-emulator 2: apulse type: pulse-emulator
    tools: alsactl,alsamixer,amixer
  Server-1: PipeWire v: 0.3.79 status: active with: 1: wireplumber
    status: active 2: pipewire-alsa type: plugin 3: pw-jack type: plugin
    tools: pw-cat,pw-cli,wpctl
# cat /proc/asound/cards
 3 [HDMI           ]: HDA-Intel - HDA Intel PCH
                      HDA Intel PCH at 0xf7140000 irq 133
# cat /proc/asound/pcm
03-00: ALC887-VD Analog : ALC887-VD Analog : playback 1 : capture 1
03-02: ALC887-VD Alt Analog : ALC887-VD Alt Analog : capture 1
03-03: HDMI 0 : HDMI 0 : playback 1
03-07: HDMI 1 : HDMI 1 : playback 1
03-08: HDMI 2 : HDMI 2 : playback 1
# aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: HDMI [HDA Intel PCH], device 0: ALC887-VD Analog [ALC887-VD Analog]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: HDMI [HDA Intel PCH], device 3: HDMI 0 [K272HUL]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: HDMI [HDA Intel PCH], device 7: HDMI 1 [EA243WM]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: HDMI [HDA Intel PCH], device 8: HDMI 2 [HDMI 2]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
# alsactl info
#
# Sound card
#
- card: 0
  id: HDMI
  name: HDA Intel PCH
  longname: HDA Intel PCH at 0xf7140000 irq 133
  driver_name: HDA-Intel
  mixer_name: Realtek ALC887-VD
  components: HDA:10ec0887,104386d4,00100302 HDA:8086280b,80860101,00100000
  controls_count: 62
  pcm:
    - stream: PLAYBACK
      devices:
        - device: 0
          id: ALC887-VD Analog
          name: ALC887-VD Analog
          subdevices:
            - subdevice: 0
              name: subdevice #0
        - device: 3
          id: HDMI 0
          name: K272HUL
          subdevices:
            - subdevice: 0
              name: subdevice #0
        - device: 7
          id: HDMI 1
          name: EA243WM
          subdevices:
            - subdevice: 0
              name: subdevice #0
        - device: 8
          id: HDMI 2
          name: HDMI 2
          subdevices:
            - subdevice: 0
              name: subdevice #0
    - stream: CAPTURE
      devices:
        - device: 0
          id: ALC887-VD Analog
          name: ALC887-VD Analog
          subdevices:
            - subdevice: 0
              name: subdevice #0
        - device: 2
          id: ALC887-VD Alt Analog
          name: ALC887-VD Alt Analog
          subdevices:
            - subdevice: 0
              name: subdevice #0
alsactl: rawmidi_device_list:105: snd_ctl_rawmidi_next_device
# wpctl status
PipeWire 'pipewire-0' [0.3.79, root@ab250, cookie:3185601125]
 �� Clients:
        34. WirePlumber                         [0.3.79, root@ab250, pid:1018]
        35. WirePlumber [export]                [0.3.79, root@ab250, pid:1018]
        48. wpctl                               [0.3.79, root@ab250, pid:1072]

Audio
 �� Devices:
 �      41. Built-in Audio                      [alsa]

� �� Sinks:
 �  *   32. Built-in Audio Analog Stereo        [vol: 0.46]

� �� Sink endpoints:

� �� Sources:
 �      33. Built-in Audio Analog Stereo        [vol: 1.00]

� �� Source endpoints:

� �� Streams:

Video
 �� Devices:

� �� Sinks:

� �� Sink endpoints:

� �� Sources:

� �� Source endpoints:

� �� Streams:

Settings
 �� Default Configured Node Names:
# man wpctl
No manual entry for wpctl
Possibly, man page is not installed, try online at: https://manpages.opensuse.org/wpctl
# pw-cli list-objects Device
        id 41, type PipeWire:Interface:Device/3
                object.serial = "41"
                factory.id = "14"
                client.id = "35"
                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"
# pw-cli list-objects Node
        id 29, type PipeWire:Interface:Node/3
                object.serial = "29"
                factory.id = "10"
                priority.driver = "20000"
                node.name = "Dummy-Driver"
        id 30, type PipeWire:Interface:Node/3
                object.serial = "30"
                factory.id = "10"
                priority.driver = "19000"
                node.name = "Freewheel-Driver"
        id 32, type PipeWire:Interface:Node/3
                object.serial = "42"
                object.path = "alsa:pcm:0:front:0:playback"
                factory.id = "18"
                client.id = "35"
                device.id = "41"
                priority.session = "1009"
                priority.driver = "1009"
                node.description = "Built-in Audio Analog Stereo"
                node.name = "alsa_output.pci-0000_00_1f.3.analog-stereo"
                node.nick = "ALC887-VD Analog"
                media.class = "Audio/Sink"
        id 33, type PipeWire:Interface:Node/3
                object.serial = "43"
                object.path = "alsa:pcm:0:front:0:capture"
                factory.id = "18"
                client.id = "35"
                device.id = "41"
                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 = "ALC887-VD Analog"
                media.class = "Audio/Source"
        id 38, type PipeWire:Interface:Node/3
                object.serial = "38"
                factory.id = "10"
                client.id = "35"
                node.name = "Midi-Bridge"
                media.class = "Midi/Bridge"
# cat /etc/modprobe.d/99-local.conf     # with or without this, same behavior
alias snd-card-1 snd-hda-intel
alias snd-card-0 snd-hda-intel

options snd-hda-intel id=PCH index=1
options snd-hda-intel id=HDMI index=0
# aplay -Dhdmi /usr/share/sounds/alsa/test.wav          # DP sound
Playing WAVE '/usr/share/sounds/alsa/test.wav' : Signed 16 bit Little Endian, Rate 44100 Hz, Stereo
# aplay -Dhdmi:0,0 /usr/share/sounds/alsa/test.wav      # DP sound
Playing WAVE '/usr/share/sounds/alsa/test.wav' : Signed 16 bit Little Endian, Rate 44100 Hz, Stereo
# aplay -Dhdmi:0,1 /usr/share/sounds/alsa/test.wav      # HDMI sound
Playing WAVE '/usr/share/sounds/alsa/test.wav' : Signed 16 bit Little Endian, Rate 44100 Hz, Stereo
# aplay /usr/share/sounds/alsa/test.wav                 # no sound
Playing WAVE '/usr/share/sounds/alsa/test.wav' : Signed 16 bit Little Endian, Rate 44100 Hz, Stereo
aplay: set_params:1435: Unable to install hw params:
ACCESS:  RW_INTERLEAVED
FORMAT:  S16_LE
SUBFORMAT:  STD
SAMPLE_BITS: 16
FRAME_BITS: 32
CHANNELS: 2
RATE: 44100
PERIOD_TIME: 125000
PERIOD_SIZE: (5512 5513)
PERIOD_BYTES: 22050
PERIODS: 4
BUFFER_TIME: 500000
BUFFER_SIZE: 22050
BUFFER_BYTES: 88200
TICK_TIME: [0 0]
# alsactl init          # setup
Found hardware: "HDA-Intel" "Realtek ALC887-VD" "HDA:10ec0887,104386d4,00100302 HDA:8086280b,80860101,00100000" "0x1043" "0x86d4"
Hardware is initialized using a generic method
# aplay /usr/share/sounds/alsa/test.wav                 # No sound
Playing WAVE '/usr/share/sounds/alsa/test.wav' : Signed 16 bit Little Endian, Rate 44100 Hz, Stereo
# speaker-test -c2 -l2 -twav -D hdmi:CARD=HDMI,DEV=0    # first left=silence; remainder, OK

speaker-test 1.2.10

Playback device is hdmi:CARD=HDMI,DEV=0
Stream parameters are 48000Hz, S16_LE, 2 channels
WAV file(s)
Rate set to 48000Hz (requested 48000Hz)
Buffer size range from 64 to 1048576
Period size range from 32 to 524288
Using max buffer size 1048576
Periods = 4
was set period_size = 262144
was set buffer_size = 1048576
 0 - Front Left
 1 - Front Right
Time per period = 10.937460
 0 - Front Left
 1 - Front Right
Time per period = 10.937789

SDB:Audio troubleshooting - openSUSE Wiki seems to be in need of obsolescence attention. It and openSUSE:Pipewire - openSUSE Wiki don’t seem to be directed to what seems to be my apparent need. The archlinux wiki has Set_the_default_output_source appearing only on a Pulseaudio page, but I’m not interested in the pulse (old; no longer developed?) way. PipeWire - ArchWiki has a section 3.4.9 that seems could be exactly what I need, if it weren’t clear as mud. WirePlumber - ArchWiki I can’t grok well enough if it might be relevant. Sinks, cards, devices, nodes, luas. The BIOS is confusing too: two items: 1-HD Audio Controller enabled,disabled] and subsection DVI Port Audio [enabled,disabled] (I didn’t know there was such a thing as DVI audio). How can anyone understand any of it?

As you can see from aplay above, sound can be had from either my DisplayPort-connected display, or my HDMI-connected display, proof Alsa audio can work on this 2017 Intel PC - without Pulseaudio, and presumably Pipewire and/or Wireplumber can too. What I need is to have sound go to one of these two displays digitally by default, instead of nowhere that’s audible as it does now. Does anyone here know understand this quagmire well enough to configure the default output who can and will explain it, maybe by simply disabling analog audio somehow?

I disagree - that wiki page was updated recently and is primarily for those having low level audio problems. With respect to the ArchWiki page, I think you mean section 3.1.9.

Based on what you posted, I only see one device? And analog output (sink) is set to the only available choice?

Audio
 �� Devices:
 �      41. Built-in Audio                      [alsa]

� �� Sinks:
 �  *   32. Built-in Audio Analog Stereo        [vol: 0.46]

FWIW, this reads a little like these issues (where HDMI is missing)…

You may need to post there similarly.

I didn’t mean to belittle the vast amount of work you did there in recent months. I thank you for it. What happened was I hit a bunch of dead-ends, while 11.0 and 11.4 and maybe other antiques remain. The pulseaudio section’s ancient history shouldn’t be relevant any more. I marked some of the dead-ends instead of just leaving them to block others. Fixing them right requires someone who knows or at least has an idea what right is.

As to the rest of your reply, I intend to get back to it after life stops getting in the way.

Could you please stop vandalizing wiki pages? Do you know what the “Discussion”-Tab at top of each wiki page is for?

And sorry to say that but your vandalizing of the page with comments like “USELESS, because nowhere in output of aplay -l do the strings id or ID appear.” is useless itself. You didn’t even try to understand the output of the command and which part of it needs to be put into /etc/modprobe.d/50-sound.conf

Instead of deliberately destroying wiki pages with useless edits, the discussion tab should be used to add questions or suggestions to make something better if you don’t know how to properly edit wikis…

2 Likes

It still is for some users actually. If you’re not using it, you don’t need to read it. Looks like I’m going to have to check it again.