Notes to Self

Alex Sokolsky's Notes on Computers and Programming

Connecting a Linux HTPC to a DD/DTS Receiver

Related:

Architecture

Low Level: Alsa

Low latency Jack middleware API.

Middle level, incumbent: Pulse Audio with pavucontrol.

Middle level, winner: PipeWire

Alsa Use

Use:

Alsa multi-channel sound output via HDMI:

Pulse Audio Use

Use:

PipeWire Use

Evolving middleware alternative: Pipewire:

Setting Multichannel Audio Output with ALSA

Test clips

Identify audio devices. Using Alsa:

alex@exi:~$ aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: PCH [HDA Intel PCH], device 0: ALC897 Analog [ALC897 Analog]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: NVidia [HDA NVidia], device 3: HDMI 0 [SAMSUNG]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: NVidia [HDA NVidia], device 7: HDMI 1 [HDMI 1]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: NVidia [HDA NVidia], device 8: HDMI 2 [HDMI 2]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: NVidia [HDA NVidia], device 9: HDMI 3 [HDMI 3]
  Subdevices: 1/1
  Subdevice #0: subdevice #0

The device for card 0 is plughw:0,0. The two zeros come from the device 0 and Subdevice #0.

Identify devices using pipewire pw-cli:

alex@exi:~$ pw-cli list-objects | grep node.name
 		node.name = "Dummy-Driver"
 		node.name = "Freewheel-Driver"
 		node.name = "Midi-Bridge"
 		node.name = "alsa_output.pci-0000_01_00.1.hdmi-surround"

or just

pw-cli info all

More stuff