On Wed, 01.04.09 18:42, pl bossart (bossart.nospam at gmail.com) wrote: > If I use HDMI to connect to a receiver, the number of supported channels > depends on the number of speakers and the capabilities of the receiver. The > HDMI protocol provides a means for the receiver to let the transmitter know > its speaker configuration, but so far you cannot query it from ALSA, there's > just no interface for this. Your best bet is to try to open the device with > an increasing number of channels and see when it stops working. > > When I look at the PulseAudio code in alsa-utils.c , it looks like the HDMI > profile is set to two channels, if more channels are requested the device > selected will be the first surroundxx profile that is a superset of the > channel map. > Now I have the following questions: > - First is my understanding correct? Yes. > - Does this solution entail any configuration of /etc/asound.conf to link > surroundxx with the HDMI device number? And if this is the case, how > compatible is this with hot-plug (depending on the order in which I plug all > the audio devices the number could be different). Nah. It's just a matter of defining more profiles. I have no HDMI and I have no clue about the channel orders, except for the obvious case: 2ch. That's why there is currently only one profile known "hdmi-stereo". So what's missing is duplicating the current hdmi profile for more channel mappings and that's about it. > - last, if the number of speakers on the receiver side is smaller than the > number of channels requested, who does the required downmix? PA will configure what ALSA allows. Profiles are only tested with the configured channel number. So if "hdmi-stereo" is being configured but the HDMI device cannot do 2ch the profile will not be listed as available. If a client stream is then connected to the sink and the channel mapping does not match, PA will do up/downmixing as necessary. It's a pretty simple up-/downmixing however. Lennart -- Lennart Poettering Red Hat, Inc. lennart [at] poettering [dot] net ICQ# 11060553 http://0pointer.net/lennart/ GnuPG 0x1A015CC4