On 2010-11-09, David Henningsson david.henningsson@canonical.com wrote:
I have seen a few HDMIs which share the HDA controller with the onboard sound card, but the codecs are different, e g the onboard one is at address #0 and the HDMI is at address #3 - or even #3, #7, #8 and #9 in some cases.
Now, if the user specifies the device string hdmi:x (where x is card name/number), I'd like it to kind of autodetect this and use DEV=3 instead of DEV=0, and without breaking the cards where the hdmi is a separate card with a codec at address #0. However, it still seems like the device is at DEV=3 somehow.
Now, looking at /usr/share/alsa/cards/HDA-Intel.conf, I notice that there are entries HDA-Intel.pcm.hdmi.0 which sets DEV=3, so it seems like someone already thought of this. However, just using "hdmi:x" does not trigger "DEV=3". I'm still not grepping all of the alsa lisp architecture stuff, so could someone explain to me how the HDA-Intel.pcm.hdmi.0 entry relates to the "hdmi:x" alsa device string?
I am not sure about Intel HDMI, but, in my case with MacbookPro 6,2 (15" Mid 2010); the HDMI audio stream via NVIDIA HDMI can only be started if I use hw:1,7 (or Mplayer's -ao alsa:device=hw=1.7). No sound if I starts with 1,3. But, after started stream to 1,7; then, I can use 1,3.
So, in this, I always started with 1,7. Since I can change the HDMI device ID on-demand with MPlayer, I have no issue with default ALSA configuration. :)
Thank you.