David Henningsson wrote at Wednesday, February 02, 2011 1:04 AM:
As for PulseAudio, showing four HDMI devices is quite simple [1] but I still think it would be a little confusing to show four devices to choose from and would wish for something more intuitive. ... [1] I haven't tested it, but I guess the following addition to /usr/shared/pulseaudio/alsa-mixer/profile-sets/default.conf should do it:
[Mapping hdmi-stereo-extra1] description = HDMI out extra 1 device-strings = hdmi:%f,1 channel-map = left,right priority = 2 direction = output
[Mapping hdmi-stereo-extra2] description = HDMI out extra 2 device-strings = hdmi:%f,2 channel-map = left,right priority = 2 direction = output
[Mapping hdmi-stereo-extra3] description = HDMI out extra 3 device-strings = hdmi:%f,3 channel-map = left,right priority = 2 direction = output
This kinda works, but is pretty broken.
I tested on: * Ubuntu Lucid with all updates * Your audio PPA, so the latest ALSA kernel driver * alsa-lib 1.0.24.1
I tested earlier on Karmic too, and saw the same behavior. Unfortunately, Maverick is having issues on my test machine, so I didn't test it.
When I log in, there is only 1 display by default, and hence only one pin complex with valid ELD information (eld#0.0 in my case).
In the Gnome volume applet, Hardware tab, I do see those extra sinks show up. However, as soon as I select one of the new extra options, the entry on the Output tab for the GPU gets removed, so I can't actually route audio over HDMI anymore.
pavucontrol is similar; the Configuration tab shows the new profile, but the Output Devices tab doesn't show any entry for the GPU.
Now, if I use nvidia-settings to light up another display, in TwinView mode, there are now two pin complexes with valid ELD information (eld#0.0 and eld#3.0 in my case).
There is no immediate change to the Gnome volume applet or pavucontrol.
However, if I kill the PulseAudio daemon, and let it restart, then both the Gnome volume applet and pavucontrol start behaving more as expected; I can use either to change the GPU's profile selection, and audio will get moved between the two monitors, or /dev/null if I select a non-connected profile.
I assume this is an issue within PulseAudio. Unfortunately, I doubt I'll be able to find time to look into this in detail.
-- nvpublic