(I'm the poster of the patchset)
We are in need of testers of TrueHD / DTS-HD passthrough (no ffmpeg patching needed).
To the best of our knowledge, only two people (me and Carl Eugen) have tested this so far, and it isn't working for one of them (Carl Eugen). We don't know why; we need more testers to figure out what is going on.
If you have
- Intel or NVIDIA based graphics with HDMI output (e.g. GeForce G210, NVS 3100M, etc)
- Not an old NVIDIA card that is connected to the motherboard audio card with an extra S/PDIF cable
- Not GeForce 9400
- You are using the open-source intel driver or the proprietary NVIDIA driver
- Kernel 2.6.36 or newer
- HDMI cable connected to a receiver that supports TrueHD and/or DTS-HD,
it would be appreciated if you could try the following:
You can find the two preprocessed test files in http://samples.mplayerhq.hu/hdmi/.
For the duration of the test, add the following to ~/.asoundrc (You need to uncomment either "card NVidia" or "card Intel" line, depending on your hardware):
Code:
## begin hdtest stuff
pcm.hdmihdtest {
@args [ DEVICE CTLINDEX ]
@args.DEVICE { type integer }
@args.CTLINDEX { type integer }
type hooks
slave.pcm {
type hw
# Uncomment the correct one of the below lines:
# card NVidia
# card Intel
device $DEVICE
}
hooks.0 {
type ctl_elems
hook_args [
{
name "IEC958 Playback Default"
index $CTLINDEX
lock true
preserve true
value [ 0x06 0x82 0x00 0x01 ]
}
{
name "IEC958 Playback Switch"
index $CTLINDEX
lock true
preserve true
value true
}
]
}
}
pcm.hdmihdtest0 { @func refer name "pcm.hdmihdtest:DEVICE=3,CTLINDEX=0" }
pcm.hdmihdtest1 { @func refer name "pcm.hdmihdtest:DEVICE=7,CTLINDEX=1" }
pcm.hdmihdtest2 { @func refer name "pcm.hdmihdtest:DEVICE=8,CTLINDEX=2" }
pcm.hdmihdtest3 { @func refer name "pcm.hdmihdtest:DEVICE=9,CTLINDEX=3" }
## end hdtest stuff
Make sure the HDMI audio ports are all enabled with alsa mixer (the ports are commonly called "S/PDIF", possibly with a number), with one of the two following commands:
Code:
alsamixer -c NVidia
alsamixer -c Intel
Also, you must use enable the HDMI output and set a 1280x720 or higher mode into the HDMI output (you'll probably need a TV plugged into the A/V receiver for this).
Then, you can try playing the test samples with the following commands (where "file.spdif" is replaced with one of the above test samples):
Code:
aplay -D hdmihdtest0 -c8 -fs16_le -r192000 file.spdif
aplay -D hdmihdtest1 -c8 -fs16_le -r192000 file.spdif
aplay -D hdmihdtest2 -c8 -fs16_le -r192000 file.spdif
aplay -D hdmihdtest3 -c8 -fs16_le -r192000 file.spdif
There are four different commands because there may be up to 4 HDMI codecs on board. Only one of them will work reliably, but it depends on the card and the HDMI port. Note that the files are only several seconds long; we are only interested in whether your receiver recognizes them.
After testing, please provide the following information:
- Card and GPU type or codename (GT218, etc. see e.g. /var/log/Xorg.0.log)
- Display driver version
- Kernel version and ALSA version (/proc/asound/version)
- Model name of the receiver
- Which of the test files work or won't work
If you can't provide all information, partial reports are fine as well.
You can post the results here, in the nvnews thread, or send them to me at anssi.hannula@iki.fi.