[alsa-devel] No HDMI audio output, nVidia audio not listed in lspci
Hi there,
After asking around on the IRC it was recommended to me that I should take my problem to the alsa-devel mailing list. So here goes.
When I ran Windows (1 year+ ago) I never tried HDMI audio output, or any HDMI output for that matter. Therefore I cannot verify that HDMI audio worked in the first place. However, my GPU, and more specifically, my laptop, is specced to be able to deliver audio through HDMI. I've been looking on and off for a solution to this problem for a couple of months now, but nowhere I found a solution to the specific symptoms that I'm having.
My laptop in a nutshell:
Machine: HP Compaq 8510w Mobile Workstation Chipset: Mobile Intel PM965 with 800-MHz front side bus GPU: NVIDIA Quadro FX 570M graphics with up to 256MB dedicated memory (512 MB TurboCache) CPU: Intel Core 2 Duo Processor T9300 (2.50 GHz, 6 MB L2 cache, 800 MHz FSB)
OS: Linux x86-64 Ubuntu 11.04 Natty Narwhal nVidia Driver Version: 270.41.06
Output of alsa-info: http://paste.ubuntu.com/613101/
Output of lspci: http://paste.ubuntu.com/613123/
I really hope this is the right place for me to find a solution, with your help, and I thank you all for taking the time to read this email.
Joost Verdoorn
Joost Verdoorn wrote:
No HDMI audio output
Did you try device "hw:0,1"?
nVidia audio not listed in lspci
I'd guess that your GPU does not have a separate audio controller for HDMI but uses S/PDIF data as a source, so you actually have to use the digital output of the internal HDA device.
I don't know if the graphics driver has to enable something for this to work.
Regards, Clemens
At Thu, 26 May 2011 14:23:10 +0200, Clemens Ladisch wrote:
Joost Verdoorn wrote:
Did you try device "hw:0,1"?
How do I do that?
aplay -D plughw:0,1 something.wav
Judging from alsa-info output, it has no secondary PCM, so it can't work as is ;)
Joost, try the patch below. This should add a secondary PCM device for the digital output, and this is likely the HDMI stream.
Takashi
--- diff --git a/sound/pci/hda/patch_analog.c b/sound/pci/hda/patch_analog.c index 696ac25..003ec47 100644 --- a/sound/pci/hda/patch_analog.c +++ b/sound/pci/hda/patch_analog.c @@ -1920,7 +1920,8 @@ static int patch_ad1981(struct hda_codec *codec) spec->mixers[0] = ad1981_hp_mixers; spec->num_init_verbs = 2; spec->init_verbs[1] = ad1981_hp_init_verbs; - spec->multiout.dig_out_nid = 0; + if (!is_jack_available(codec, 0x0a)) + spec->multiout.dig_out_nid = 0; spec->input_mux = &ad1981_hp_capture_source;
codec->patch_ops.init = ad1981_hp_init;
Clemens Ladisch wrote at Thursday, May 26, 2011 4:32 AM:
Joost Verdoorn wrote:
No HDMI audio output
Did you try device "hw:0,1"?
nVidia audio not listed in lspci
I'd guess that your GPU does not have a separate audio controller for HDMI but uses S/PDIF data as a source, so you actually have to use the digital output of the internal HDA device.
Just to confirm, the GPU model Joost has would support audio by SPDIF rather than via an embedded HDA device. Unfortunately, I'm not very familiar with that mechanism, so I can't confirm for sure whether it's supposed to work on that model.
I don't know if the graphics driver has to enable something for this to work.
There might be some setup work required, but I'm not completely sure. I think we have code for this in place. Simply starting X and sending a video signal over the port would be enough from an end-user perspective.
participants (4)
-
Clemens Ladisch
-
Joost Verdoorn
-
Stephen Warren
-
Takashi Iwai