Kodi Community Forum

Full Version: No HDMI device listed under aplay -l [SOLVED]
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
I'm severely confused now.

For reference this is an hp pavillion dv6700 with an NVidia 8400m
I'm using the eden build of XBMC
Code:
[email protected]:~$ uname -m
i686
[email protected]:~$ uname -r
3.0.0-21-generic-pae

I've run alsamixer and unmute all options (making sure to tab over to get them all)

I've run lspci | grep -i Audio
Code:
[email protected]:~$ sudo lspci | grep -i Audio
00:07.0 Audio device: nVidia Corporation MCP65 High Definition Audio (rev a1)

I've run aplay -l and/or aplay -L to see audio devices. This is where it is weird , I don't see anything refered to as HDMI under audio... am I missing a driver or something?
Code:
[email protected]:~$ aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: NVidia [HDA NVidia], device 0: CONEXANT Analog [CONEXANT Analog]
  Subdevices: 0/1
  Subdevice #0: subdevice #0
card 0: NVidia [HDA NVidia], device 1: Conexant Digital [Conexant Digital]
  Subdevices: 1/1
  Subdevice #0: subdevice #0

Code:
[email protected]:~$ aplay -L
null
    Discard all samples (playback) or generate zero samples (capture)
default:CARD=NVidia
    HDA NVidia, CONEXANT Analog
    Default Audio Device
front:CARD=NVidia,DEV=0
    HDA NVidia, CONEXANT Analog
    Front speakers
surround40:CARD=NVidia,DEV=0
    HDA NVidia, CONEXANT Analog
    4.0 Surround output to Front and Rear speakers
surround41:CARD=NVidia,DEV=0
    HDA NVidia, CONEXANT Analog
    4.1 Surround output to Front, Rear and Subwoofer speakers
surround50:CARD=NVidia,DEV=0
    HDA NVidia, CONEXANT Analog
    5.0 Surround output to Front, Center and Rear speakers
surround51:CARD=NVidia,DEV=0
    HDA NVidia, CONEXANT Analog
    5.1 Surround output to Front, Center, Rear and Subwoofer speakers
surround71:CARD=NVidia,DEV=0
    HDA NVidia, CONEXANT Analog
    7.1 Surround output to Front, Center, Side, Rear and Woofer speakers
iec958:CARD=NVidia,DEV=0
    HDA NVidia, Conexant Digital
    IEC958 (S/PDIF) Digital Audio Output
dmix:CARD=NVidia,DEV=0
    HDA NVidia, CONEXANT Analog
    Direct sample mixing device
dmix:CARD=NVidia,DEV=1
    HDA NVidia, Conexant Digital
    Direct sample mixing device
dsnoop:CARD=NVidia,DEV=0
    HDA NVidia, CONEXANT Analog
    Direct sample snooping device
dsnoop:CARD=NVidia,DEV=1
    HDA NVidia, Conexant Digital
    Direct sample snooping device
hw:CARD=NVidia,DEV=0
    HDA NVidia, CONEXANT Analog
    Direct hardware device without any conversions
hw:CARD=NVidia,DEV=1
    HDA NVidia, Conexant Digital
    Direct hardware device without any conversions
plughw:CARD=NVidia,DEV=0
    HDA NVidia, CONEXANT Analog
    Hardware device with all software conversions
plughw:CARD=NVidia,DEV=1
    HDA NVidia, Conexant Digital
    Hardware device with all software conversions

There are about a million threads with the same fix, go into XBMC and setup audio output to plughw:<card#>,<dev#> for the HDMI device. My problem is I dont have an HDMI option listed. Do all HDMI devices support audio over HDMI?

Note: Video over HDMI is working fine.
I have now managed to do away with any and all sound, I installed realtek-linux-audiopack-5.17 hoping it was install something I missed. It did alot of stuff but fixing HDMI audio was not one of them.

Code:
[email protected]:~/realtek-linux-audiopack-5.17$ alsamixer
cannot open mixer: No such file or directory

[email protected]:~/realtek-linux-audiopack-5.17$ aplay -L
null
    Discard all samples (playback) or generate zero samples (capture)

[email protected]:~/realtek-linux-audiopack-5.17$ aplay -l
aplay: device_list:240: no soundcards found...
[email protected]:~/realtek-linux-audiopack-5.17$

I think I may install a full Ubuntu install and see if I can get HDMI audio and video working then install XBMC from there...
afaik the 8400 doesn't support audio over hdmi without a cable connecting the video card to your onboard sound. since you're on a laptop i don't even know that that's possible.
You are correct. It requires a connection from the on-board soundcard/SPDIF to the 8400 to send sound over the HDMI. It is strange I have read reports of people getting this to work on the HP dv6700 so I assumed it would work, perhaps since it is a laptop there would be a trace on the motherboard connecting but I guess not. I gave up on HDMI audio and have moved to HDMI video plus analog audio. It's been a ride. I'll document what I did in-case anyone reads this at a later date with a similar problem.

1. Install fresh Ubuntu 12.04 LTS
2. HDMI video and Analog Audio worked great
- - Note: My TV has one HDMI port that allows use with an analog input (3.5mm headphone jack)
3. Updated to NVidia Drivers
- - This broke audio over analog, I was able to determine this was because the TV was telling the PC it could accept audio over HDMI.
- - The NVidia 8400 is technically able to pass audio over HDMI via the separate SPDIF connection so the PC was sending an empty audio channel.
- - The TV saw the audio channel being transmitted (even though it was empty) so it disabled the analog input.
4. Enabled use of Custom EDID
- - Used the NVidia Settings to capture the edid being sent from the TV
- - Used a Windows box with Phoenix EDID Designer to remove all EDID extents
- - Created a new bin file to use as a custom EDID "touch custom-edid.bin"
- - Used a hex editor (hexedit) to modify the new edid (custom-edid.bin) with the results from Phoenix EDID Designer
- - Modified the Device section of /etc/X11/xorg.conf with the following
- - - - Option "CustomEDID" "DFP-1:/home/xbmc/custom-edid.bin"

Here is the full /etc/X11/xorg.conf for reference

Code:
[email protected]:~$ more /etc/X11/xorg.conf
# nvidia-settings: X configuration file generated by nvidia-settings
# nvidia-settings:  version 295.33  ([email protected])  Fri Mar 30 13:38:49 UTC 2012

Section "ServerLayout"
    Identifier     "Layout0"
    Screen      0  "Screen0" 0 0
    InputDevice    "Keyboard0" "CoreKeyboard"
    InputDevice    "Mouse0" "CorePointer"
    Option         "Xinerama" "0"
EndSection

Section "Files"
EndSection

Section "InputDevice"
    # generated from default
    Identifier     "Mouse0"
    Driver         "mouse"
    Option         "Protocol" "auto"
    Option         "Device" "/dev/psaux"
    Option         "Emulate3Buttons" "no"
    Option         "ZAxisMapping" "4 5"
EndSection

Section "InputDevice"
    # generated from default
    Identifier     "Keyboard0"
    Driver         "kbd"
EndSection

Section "Monitor"
    # HorizSync source: edid, VertRefresh source: edid
    Identifier     "Monitor0"
    VendorName     "Unknown"
    ModelName      "SAMSUNG"
    HorizSync       26.0 - 68.0
    VertRefresh     24.0 - 75.0
    Option         "DPMS"
EndSection

Section "Device"
    Identifier     "Device0"
    Driver         "nvidia"
    VendorName     "NVIDIA Corporation"
    BoardName      "GeForce 8400M GS"
    Option         "CustomEDID" "DFP-1:/home/xbmc/custom-edid.bin"
EndSection

Section "Screen"
    Identifier     "Screen0"
    Device         "Device0"
    Monitor        "Monitor0"
    DefaultDepth    24
    Option         "TwinView" "0"
    Option         "metamodes" "DFP-1: nvidia-auto-select +0+0"
    SubSection     "Display"
        Depth       24
    EndSubSection
EndSection

Now everything works, I have Video over HDMI and Audio over analog. Not ideal but works great for me to run this as a Proof-of-Concept for a few weeks to see if I want to build a dedicated box.

I gathered bits of info from all over, here are some of the links:
http://www.nvnews.net/vbulletin/showthread.php?t=81635 - This is the process I mainly followed but the script did not work for me so I used a Hex Editor and manually created the .bin file.
http://www.nvnews.net/vbulletin/showthread.php?t=156664
http://www.avsforum.com/t/1131058/solved...hdmi-audio
http://analogbit.com/hdmi_dvi_audio - This explained what I needed to do but the provided script didn't work for me.
http://wiki.openelec.tv/index.php?title=...DID_nvidia

Hi, although I am not using XBMC (ubuntu 12.10), I am on a dv6700 and have the nvidia 8400m, an HDMI cable and an HDTV. This laptop is dual booting vista, and the audio/video works perfectly with just the HDMI cable ( until ^&*$ty vista freezes from some unknown codec problem or something ), leading me to believe that this CAN be done under linux. I have the similar if not identical outputs as the previous poster:

aplay -l shows

**** List of PLAYBACK Hardware Devices ****
card 0: NVidia [HDA NVidia], device 0: CONEXANT Analog [CONEXANT Analog]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: NVidia [HDA NVidia], device 1: Conexant Digital [Conexant Digital]
Subdevices: 1/1
Subdevice #0: subdevice #0

aplay -L:

default
Playback/recording through the PulseAudio sound server
sysdefault:CARD=NVidia
HDA NVidia, CONEXANT Analog
Default Audio Device
front:CARD=NVidia,DEV=0
HDA NVidia, CONEXANT Analog
Front speakers
surround40:CARD=NVidia,DEV=0
HDA NVidia, CONEXANT Analog
4.0 Surround output to Front and Rear speakers
surround41:CARD=NVidia,DEV=0
HDA NVidia, CONEXANT Analog
4.1 Surround output to Front, Rear and Subwoofer speakers
surround50:CARD=NVidia,DEV=0
HDA NVidia, CONEXANT Analog
5.0 Surround output to Front, Center and Rear speakers
surround51:CARD=NVidia,DEV=0
HDA NVidia, CONEXANT Analog
5.1 Surround output to Front, Center, Rear and Subwoofer speakers
surround71:CARD=NVidia,DEV=0
HDA NVidia, CONEXANT Analog
7.1 Surround output to Front, Center, Side, Rear and Woofer speakers
iec958:CARD=NVidia,DEV=0
HDA NVidia, Conexant Digital
IEC958 (S/PDIF) Digital Audio Output
dmix:CARD=NVidia,DEV=0
HDA NVidia, CONEXANT Analog
Direct sample mixing device
dmix:CARD=NVidia,DEV=1
HDA NVidia, Conexant Digital
Direct sample mixing device
dsnoop:CARD=NVidia,DEV=0
HDA NVidia, CONEXANT Analog
Direct sample snooping device
dsnoop:CARD=NVidia,DEV=1
HDA NVidia, Conexant Digital
Direct sample snooping device
hw:CARD=NVidia,DEV=0
HDA NVidia, CONEXANT Analog
Direct hardware device without any conversions
hw:CARD=NVidia,DEV=1
HDA NVidia, Conexant Digital
Direct hardware device without any conversions
plughw:CARD=NVidia,DEV=0
HDA NVidia, CONEXANT Analog
Hardware device with all software conversions
plughw:CARD=NVidia,DEV=1
HDA NVidia, Conexant Digital
Hardware device with all software conversions

I'm at a loss, but it is so frustrating when you know it works. It has to, Windows can do it!