Takashi Iwai kirjoitti maanantai, 26. heinäkuuta 2010 12:14:17: > At Sun, 25 Jul 2010 19:51:39 +0300, > > Anssi Hannula wrote: > > Hi all! > > > > I have a motherboard with NVIDIA MCP7A HDMI audio. > > However, multichannel audio is not mapped properly into the HDMI order. > > > > On 5.1, I get RL in FC, RR in LFE, FC in RL, LFE in RR. > > > > Interestingly, this is not consistent with the ALSA channel order (FL FR > > RL RR FC LFE) being passed directly to HDMI (FL FR LFE FC RL RR). > > Instead it looks like there has been a waveformatex (FL FR FC LFE RL RR; > > windows?) => HDMI conversion instead of ALSA => HDMI. > > > > Same happens for 7.1. > > > > Is it possible to set the hardware to do an ALSA => HDMI conversion > > instead? If not, we should manually compensate for this somewhere, > > right? > > Does the patch below change anything? AFAICS no stuff from patch_hdmi.c is used for MCP7x, so it has no effect. Tested anyway, it doesn't change anything. > > Somewhat relatedly, trying to output 4 channels results in silence only. > > Although 5.1/7.1 work? Yep, with wrong channel order. > > Trying to output 3 or 5 channels triggers a timeout with I/O error, with > > the following in the kernel log: "ALSA pcm_lib.c:1757: playback write > > error (DMA or IRQ trouble?)" > > HD-audio doesn't support the odd number of channels in general, so > they should be played as 4 or 6 channels. But, it looks like > something wrong in the setup... > > > thanks, > > Takashi > > --- > diff --git a/sound/pci/hda/patch_nvhdmi.c b/sound/pci/hda/patch_nvhdmi.c > index 3c10c0b..7355c60 100644 > --- a/sound/pci/hda/patch_nvhdmi.c > +++ b/sound/pci/hda/patch_nvhdmi.c > @@ -511,6 +511,8 @@ static int patch_nvhdmi_8ch_7x(struct hda_codec *codec) > > codec->patch_ops = nvhdmi_patch_ops_8ch_7x; > > + init_channel_allocations(); > + > return 0; > } -- Anssi Hannula _______________________________________________ Alsa-devel mailing list Alsa-devel@xxxxxxxxxxxxxxxx http://mailman.alsa-project.org/mailman/listinfo/alsa-devel