After GUI-upgrading from Xubuntu 22.10 to 23.04 I had a nightmare of a time getting various issues fixed, principally caused by imbalanced packages (mainly exo). In doing so I also purged my nvidia drivers, switched to nouveau, and after successfully getting up and running, reinstalled the Nvidia drivers from the GUI using the normal process.
However, the optical output of my motherboard's soundcard (not the GPU) is no longer present: the volume control used to look like this:

Now it looks like this:

I.e. Starship matisse audio controller 1 is missing. I previously had an issue with the optical cable which turned out to be a setting in the amp, but the diagnostic process allows me to compare before and after. Things of potential interest: aplay -l
card 2: Generic [HD-Audio Generic], device 0: ALC1220 Analog [ALC1220 Analog]
card 2: Generic [HD-Audio Generic], device 1: ALC1220 Digital [ALC1220 Digital]
These are the same as before which seems promising.
Before: pw-cli list-objects | grep node.name
node.name = "alsa_output.pci-0000_08_00.1.hdmi-stereo-extra1"
node.name = "alsa_output.pci-0000_0a_00.4.pro-output-0"
node.name = "alsa_output.pci-0000_0a_00.4.pro-output-1"
node.name = "alsa_input.pci-0000_0a_00.4.pro-input-0"
node.name = "alsa_input.pci-0000_0a_00.4.pro-input-2"
Now:
node.name = "alsa_output.pci-0000_08_00.1.hdmi-stereo"
node.name = "alsa_output.pci-0000_0a_00.4.analog-stereo"
node.name = "alsa_input.pci-0000_0a_00.4.analog-stereo"
(before had 0 & 1 i.e. 2 inputs & outputs, now has only 1 each)
Before: pw-cli list-objects | grep node.nick
node.nick = "HD-Audio Generic" (4 identical entries)
Now:
node.nick = "ALC1220 Analog" (2 identical entries)
Before: pactl list | grep node.name
node.name = "alsa_output.pci-0000_08_00.1.hdmi-stereo-extra1" (x2)
node.name = "alsa_output.pci-0000_0a_00.4.pro-output-0" (x2)
node.name = "alsa_output.pci-0000_0a_00.4.pro-output-1" (x2)
node.name = "alsa_input.pci-0000_0a_00.4.pro-input-0"
node.name = "alsa_input.pci-0000_0a_00.4.pro-input-2"
node.name = "PulseAudio Volume Control" (x7)
Now:
node.name = "alsa_output.pci-0000_0a_00.4.analog-stereo" (x2)
node.name = "alsa_output.pci-0000_08_00.1.hdmi-stereo" (x2)
node.name = "alsa_input.pci-0000_0a_00.4.analog-stereo"
node.name = "PulseAudio Volume Control" (x4)
Before: pactl list short sinks
alsa_output.pci-0000_08_00.1.hdmi-stereo-extra1 PipeWire s16le 2ch 48000Hz RUNNING
alsa_output.pci-0000_0a_00.4.pro-output-1 PipeWire s32le 2ch 48000Hz IDLE
alsa_output.pci-0000_0a_00.4.pro-output-0 PipeWire s32le 6ch 48000Hz IDLE
Now:
alsa_output.pci-0000_08_00.1.hdmi-stereo PipeWire s16le 2ch 48000Hz IDLE
alsa_output.pci-0000_0a_00.4.analog-stereo PipeWire s32le 2ch 48000Hz IDLE
Most notably: now missing is:
alsa_output.pci-0000_0a_00.4.pro-output-0 PipeWire s32le 6ch
I recall during the installation that lots of pulseaudio got deleted, presumably replaced with pipewire? If anyone has any ideas, please share. Thanks.
Current setup is:
Displayport (listed as HDMI) plugged from GPU into primary monitor, carried sound.
HDMI from GPU to TV, rarely used, haven't tried it since the upgrade.
Headphones in motherboard line out port.
Optical cable in motherboard optical port, to amp.