No HDMI sound output to TV

I’m running Fedora 39 workstation.

I’m trying to play audio through the TV I’ve got connected using HDMI.

When I check the gnome settings screen for Sound Output it has already selected “HDMI / DisplayPort - Built-in Audio” and configuration is set to "Digital Stereo (HDMI) Output).

I’ve tried testing the audio device using the following command, this works:

speaker-test --channels 2 --test wav --device hw:0,3

speaker-test 1.2.11

Playback device is hw:0,3
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
Periods = 4
was set period_size = 12000
was set buffer_size = 48000
 0 - Front Left
 1 - Front Right

On my system I see 2 HDMI audio sinks.
One works for playing sound on the TV and the other does not.
Is yours the same?

The HDMI audio sinks are actually a sound chipset on your GPU which integrates the sound with the video on the HDMI output to the TV.

Hi Jeff,

I’m not too sure if this is similar to you, here’s some more output. Can you suggest anything? - I’ll give it a go!

$aplay -l

**** List of PLAYBACK Hardware Devices ****
card 0: PCH [HDA Intel PCH], device 0: ALC233 Analog [ALC233 Analog]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: PCH [HDA Intel PCH], device 3: HDMI 0 [PHILIPS FTV]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: PCH [HDA Intel PCH], device 7: HDMI 1 [HDMI 1]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: PCH [HDA Intel PCH], device 8: HDMI 2 [HDMI 2]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
$pactl list sinks

Sink #41
	State: SUSPENDED
	Name: alsa_output.pci-0000_00_1f.3.hdmi-stereo
	Description: Built-in Audio Digital Stereo (HDMI)
	Driver: PipeWire
	Sample Specification: s32le 2ch 48000Hz
	Channel Map: front-left,front-right
	Owner Module: 4294967295
	Mute: no
	Volume: front-left: 15420 /  24% / -37.70 dB,   front-right: 15420 /  24% / -37.70 dB
	        balance 0.00
	Base Volume: 65536 / 100% / 0.00 dB
	Monitor Source: alsa_output.pci-0000_00_1f.3.hdmi-stereo.monitor
	Latency: 0 usec, configured 0 usec
	Flags: HARDWARE DECIBEL_VOLUME LATENCY SET_FORMATS 
	Properties:
		alsa.card = "0"
		alsa.card_name = "HDA Intel PCH"
		alsa.class = "generic"
		alsa.components = "HDA:10ec0235,80862074,00100002 HDA:8086280b,80860101,00100000"
		alsa.device = "3"
		alsa.driver_name = "snd_hda_intel"
		alsa.id = "PCH"
		alsa.long_card_name = "HDA Intel PCH at 0xaec20000 irq 149"
		alsa.mixer_name = "Realtek ALC233"
		alsa.name = "PHILIPS FTV"
		alsa.resolution_bits = "16"
		alsa.subclass = "generic-mix"
		alsa.subdevice = "0"
		alsa.subdevice_name = "subdevice #0"
		api.alsa.card.longname = "HDA Intel PCH at 0xaec20000 irq 149"
		api.alsa.card.name = "HDA Intel PCH"
		api.alsa.path = "hdmi:0"
		api.alsa.pcm.card = "0"
		api.alsa.pcm.stream = "playback"
		audio.channels = "2"
		audio.position = "FL,FR"
		card.profile.device = "7"
		device.api = "alsa"
		device.class = "sound"
		device.id = "40"
		device.profile.description = "Digital Stereo (HDMI)"
		device.profile.name = "hdmi-stereo"
		device.routes = "1"
		factory.name = "api.alsa.pcm.sink"
		media.class = "Audio/Sink"
		device.description = "Built-in Audio"
		node.name = "alsa_output.pci-0000_00_1f.3.hdmi-stereo"
		node.nick = "PHILIPS FTV"
		node.pause-on-idle = "false"
		object.path = "alsa:pcm:0:hdmi:0:playback"
		priority.driver = "696"
		priority.session = "696"
		factory.id = "18"
		clock.quantum-limit = "8192"
		client.id = "33"
		node.driver = "true"
		factory.mode = "merge"
		audio.adapt.follower = ""
		library.name = "audioconvert/libspa-audioconvert"
		object.id = "41"
		object.serial = "41"
		api.acp.auto-port = "false"
		api.acp.auto-profile = "false"
		api.alsa.card = "0"
		api.alsa.use-acp = "true"
		api.dbus.ReserveDevice1 = "Audio0"
		device.bus = "pci"
		device.bus_path = "pci-0000:00:1f.3"
		device.enum.api = "udev"
		device.form_factor = "internal"
		device.icon_name = "audio-card-analog-pci"
		device.name = "alsa_card.pci-0000_00_1f.3"
		device.nick = "HDA Intel PCH"
		device.plugged.usec = "91543024"
		device.product.id = "0x9dc8"
		device.product.name = "Cannon Point-LP High Definition Audio Controller"
		device.subsystem = "sound"
		sysfs.path = "/devices/pci0000:00/0000:00:1f.3/sound/card0"
		device.vendor.id = "0x8086"
		device.vendor.name = "Intel Corporation"
		device.string = "0"
	Ports:
		hdmi-output-0: HDMI / DisplayPort (type: HDMI, priority: 5900, availability group: Legacy 4, available)
	Active Port: hdmi-output-0
	Formats:
		pcm

I use the gnome settings → sound panel to configure the sound output.


The test button allows checking the audio output.

I have a single output device there as option, and the test in the gnome settings doesn’t work.

Hi! try one of this options depending on your wireplumber version

How to enable HDMI audio output in WirePlumber on Fedora 41

[SOLVED] Pipewire-pulse no sound on HDMI / Newbie Corner / Arch Linux Forums

I hope it helps!