I got a new TV and I get no sound through HDMI from my arch htpc.
However, I don't think the problem is the TV because:
1) Audio from other hdmi sources works
2) When i connect the htpc to a monitor through hdmi and restart, the audio works. While still on, if I disconnect the monitor and reconnect the TV, the audio works through hdmi
It seems that the problem stems from auto-detection of the hdmi. I have also noticed that if i start the htpc unconnected to a display and then try to connect it after it has booted up, i get no video as well. Shouldnt hdmi cables be hot pluggable.
Any way to write out the auto detected configuration for audio and disable detection? Something like this should solve my problem
Edit: solution in post #5 bellow
Last edited by despotic (2013-05-03 04:12:47)
I've not a lot of experience here, but...
Try turning on the TV. Select the input you are going to use, connect the TV to the computer. Power up and boot Arch. Does Arch see the TV?
Nothing is too wonderful to be true, if it be consistent with the laws of nature -- Michael Faraday
You assume people are rational and influenced by evidence. You must not work with the public much. -- Trilby
How to Ask Questions the Smart Way
Arch sees the tv and video works. The problems is only with the audio and only if arch is started with the TV attached. If arch is started with another hdmi source attached and them it is replaced with the TV after arch has booted, audio works with the TV. The audio problem is only during start (boot or even wake ip from sleep) with TV conneted. I think it may bave to do with udev not recognizing thr tv as hdmi audio capable.
Solved by adding monitor's EDID in xorg.conf. The steps to fix with an nvidia card are:
1) Connect device with which audio works (in my case the monitor)
2) run nvidia-settings and get edid file for the monitor
3) edit xorg.conf and add the following under the device section:
Option "ConnectedMonitor" "DFP"
Option "CustomEDID" "DFP-0:/etc/X11/monitor.edid"
4) reboot or restart X
Sound works now through hdmi connected to TV