x86 Ion/nVidia HDMI audio working

Hello All, new here

I’ve been playing with Volumio on RPi and x86. I’m very tight, so was trying to avoid buying a sound card and WiFi dongle. I patched together an Ion D2700 machine from an old project (I have a box of them!) - it had WiFi, but no SPDIF. The machines I had with SPDIF wouldn’t boot Volumio. So I just resigned myself to 3.5mm audio jack…

But I couldn’t stop scratching the itch, especially when I saw the HDMI option in the Volumio Audio Output options.

Based on this post…

ubuntuforums.org/showthread.php?t=1552250

…I managed to piece together the information. Fishing around in ‘/proc/asound’ I found a card that had an ‘eld’ that mentioned the SONY TV I was plugged into:

volumio@volumio:/proc/asound/card1$ cat ./eld#0.1
monitor_present		1
eld_valid		1
monitor_name		SONY TV
connection_type		HDMI
eld_version		[0x2] CEA-861D or below
edid_version		[0x3] CEA-861-B, C or D
manufacture_id		0xd94d
product_id		0xee01
port_id			0x0
support_hdcp		0
support_ai		1
audio_sync_delay	0
speakers		[0x1] FL/FR
sad_count		2
sad0_coding_type	[0x1] LPCM
sad0_channels		2
sad0_rates		[0xe0] 32000 44100 48000
sad0_bits		[0xe0000] 16 20 24
sad1_coding_type	[0x2] AC-3
sad1_channels		6
sad1_rates		[0xe0] 32000 44100 48000
sad1_max_bitrate	640000

‘aplay -L’ helped me deduce that it was card 1, device 7

volumio@volumio:/proc/asound/card1$ aplay -L
null
    Discard all samples (playback) or generate zero samples (capture)
softvolume
softvol
default:CARD=PCH
    HDA Intel PCH, ALC662 rev3 Analog
    Default Audio Device
sysdefault:CARD=PCH
    HDA Intel PCH, ALC662 rev3 Analog
    Default Audio Device
front:CARD=PCH,DEV=0
    HDA Intel PCH, ALC662 rev3 Analog
    Front speakers
surround21:CARD=PCH,DEV=0
    HDA Intel PCH, ALC662 rev3 Analog
    2.1 Surround output to Front and Subwoofer speakers
surround40:CARD=PCH,DEV=0
    HDA Intel PCH, ALC662 rev3 Analog
    4.0 Surround output to Front and Rear speakers
surround41:CARD=PCH,DEV=0
    HDA Intel PCH, ALC662 rev3 Analog
    4.1 Surround output to Front, Rear and Subwoofer speakers
surround50:CARD=PCH,DEV=0
    HDA Intel PCH, ALC662 rev3 Analog
    5.0 Surround output to Front, Center and Rear speakers
surround51:CARD=PCH,DEV=0
    HDA Intel PCH, ALC662 rev3 Analog
    5.1 Surround output to Front, Center, Rear and Subwoofer speakers
surround71:CARD=PCH,DEV=0
    HDA Intel PCH, ALC662 rev3 Analog
    7.1 Surround output to Front, Center, Side, Rear and Woofer speakers
dmix:CARD=PCH,DEV=0
    HDA Intel PCH, ALC662 rev3 Analog
    Direct sample mixing device
dsnoop:CARD=PCH,DEV=0
    HDA Intel PCH, ALC662 rev3 Analog
    Direct sample snooping device
hw:CARD=PCH,DEV=0
    HDA Intel PCH, ALC662 rev3 Analog
    Direct hardware device without any conversions
plughw:CARD=PCH,DEV=0
    HDA Intel PCH, ALC662 rev3 Analog
    Hardware device with all software conversions
hdmi:CARD=NVidia,DEV=0
    HDA NVidia, HDMI 0
    HDMI Audio Output
hdmi:CARD=NVidia,DEV=1
    HDA NVidia, HDMI 1
    HDMI Audio Output
hdmi:CARD=NVidia,DEV=2
    HDA NVidia, HDMI 2
    HDMI Audio Output
dmix:CARD=NVidia,DEV=3
    HDA NVidia, HDMI 0
    Direct sample mixing device
dmix:CARD=NVidia,DEV=7
    HDA NVidia, HDMI 1
    Direct sample mixing device
dmix:CARD=NVidia,DEV=8
    HDA NVidia, HDMI 2
    Direct sample mixing device
dsnoop:CARD=NVidia,DEV=3
    HDA NVidia, HDMI 0
    Direct sample snooping device
dsnoop:CARD=NVidia,DEV=7
    HDA NVidia, HDMI 1
    Direct sample snooping device
dsnoop:CARD=NVidia,DEV=8
    HDA NVidia, HDMI 2
    Direct sample snooping device
hw:CARD=NVidia,DEV=3
    HDA NVidia, HDMI 0
    Direct hardware device without any conversions
hw:CARD=NVidia,DEV=7
    HDA NVidia, HDMI 1
    Direct hardware device without any conversions
hw:CARD=NVidia,DEV=8
    HDA NVidia, HDMI 2
    Direct hardware device without any conversions
plughw:CARD=NVidia,DEV=3
    HDA NVidia, HDMI 0
    Hardware device with all software conversions
plughw:CARD=NVidia,DEV=7
    HDA NVidia, HDMI 1
    Hardware device with all software conversions
plughw:CARD=NVidia,DEV=8
    HDA NVidia, HDMI 2
    Hardware device with all software conversions

I tested with aplay, and it worked!

volumio@volumio:/proc/asound/card1$ aplay -Dplughw:1,7 /usr/share/sounds/alsa/Front_Center.wav 

So I just stuck these values in ‘/etc/asound.conf’ - and I’m enjoying PCM audio going to my amplifier…

volumio@volumio:/proc/asound/card1$ cat /etc/asound.conf 
pcm.softvolume {
    type             plug
    slave.pcm       "softvol"
}

pcm.softvol {
    type            softvol
    slave {
        pcm         "plughw:1,7"
    }
    control {
        name        "SoftMaster"
        card        0
        device      0
    }
max_dB 0.0
min_dB -50.0
resolution 100
}

Just wanted to document it somewhere in case it helped