[alsa-devel] ALSA Multichannel through HDMI

Anssi Hannula anssi.hannula at iki.fi
Fri Nov 26 00:15:24 CET 2010

On 26.11.2010 01:11, John Ettedgui wrote:
> On Thu, Nov 25, 2010 at 2:58 PM, Anssi Hannula <anssi.hannula at iki.fi> wrote:
>> On 26.11.2010 00:42, John Ettedgui wrote:
>>> On Thu, Nov 25, 2010 at 11:19 AM, Anssi Hannula <anssi.hannula at iki.fi> wrote:
>>>> On 25.11.2010 14:21, John Ettedgui wrote:
>>>>> On Thu, Nov 25, 2010 at 3:40 AM, Anssi Hannula <anssi.hannula at iki.fi> wrote:
>>>>>> On 25.11.2010 13:09, John Ettedgui wrote:
>>>>>>> On Thu, Nov 25, 2010 at 2:49 AM, Anssi Hannula <anssi.hannula at iki.fi> wrote:
>>>>>>>> On 25.11.2010 06:12, John Ettedgui wrote:
>>>>>>>>> I'm actually trying to get a 5.1 setup working without passthrough, if
>>>>>>>>> I use mplayer with passthrough my receiver behaves just fine, but I am
>>>>>>>>> trying to send the 6 channels from the computer.
>>>>>>>>> I was actually told that the current ALSA driver for radeon's hdmi
>>>>>>>>> does not support more than 2 channels, and that would explain why I'm
>>>>>>>>> getting this behavior. Is that true though?
>>>>>>>> Yes.
>>>>>>>> However, strangely your log output seems to show the intel's hdmi parser
>>>>>>>> being used instead:
>>>>>>>>> ALSA sound/pci/hda/patch_intelhdmi.c:842: hdmi_setup_stream: NID=0x2,
>>>>>>>>> stream=0x1, new-format=0x11
>>>>>>>> Were you just trying some patch at the time?
>>>>>>> yes Wu gave me a patch to try against the kernel, I'm guessing this is
>>>>>>> the reason you see something unexpected.
>>>>>> Did 6 channels work with that patch? (possibly with a wrong channel order)
>>>>> Not any better as far as I remember.
>>>> OK. Did 2 channel audio continue to work with it?
>>>> If you are not sure, here's the patch doing the same thing against
>>>> current alsa driver:
>>>> http://stuff.onse.fi/0001-ALSA-hda-Use-generic-HDMI-code-for-ATI-HDMI-codecs.patch
>>>> Confirming that would help (it would allow to switch the ATI chip to use
>>>> the generic parser instead of the ATI-specific one), though not with the
>>>> multichannel issue (see below).
>>>> [...]
>>>>>>> Since I just moved to jack/rca cables I'm in no hurry anymore, but is
>>>>>>> there any reason why the driver cannot work with more than 2 channels?
>>>>>> I don't really know (it is simply not implemented).
>>>>> Alright.
>>>>>>> Anything I could do to help with that?
>>>>>> Possibly. But see above, so that we won't try the same things you
>>>>>> already tried :)
>>>>> Sure :)
>>>> Looking again at the the alsa info output you provided, I don't think I
>>>> have any great ideas. It looks like the chip simply reports that it
>>>> supports a maximum of 2 channels.
>>>> One option could be hardcoding "chans = 8;" in generic_hdmi_build_pcms()
>>>> in sound/pci/hda/patch_hdmi.c (assuming you have the above patch and 2
>>>> channel audio works with it). However, I find it rather unlikely that it
>>>> would make any difference.
>>>> --
>>>> Anssi Hannula
>>> Anssi,
>>> the patch fails on my kernel, I cannot find the hda_codec_preset
>>> manually in there either.
>>> Did you want me to try that against a 2.6.37 rc instead of a 2.6.36?
>> For 2.6.36 I think you can just use your earlier patch.
>> Note that on that kernel generic_hdmi_build_pcms() is
>> intel_hdmi_build_pcms() in patch_intelhdmi.c.
> ok
>> BTW, I've just been informed by another ATI user that his card was
>> actually stereo-only, while he thought earlier it was multichannel
>> capable. So, are you sure your card is a multichannel one?
>> (if not, it would explain why the card says it is not)
>> --
>> Anssi Hannula
> Yes, it works fine in Window  so I believe the hardware part is good.

And you are sure it is multichannel PCM, and not e.g. multichannel DTS
or multichannel AC-3 with on-the-fly compression, which are possible
with stereo hdmi as well?

Just making sure :)

Anssi Hannula

More information about the Alsa-devel mailing list