[pulseaudio-discuss] HDMI support

Lennart Poettering lennart at poettering.net
Thu Apr 2 18:32:08 PDT 2009

On Thu, 02.04.09 17:50, pl bossart (bossart.nospam at gmail.com) wrote:


> > 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.
> >
> Humm, the HDMI protocol uses a different order than the traditional ALSA
> order (for 6 channels the HDMI order is l,r,lfe,c, rl, rr and for 8 channels
> just add sl, sr).  Also in the multichannel case there are two channels per
> subpacket, and you can only mark a complete subpacket as invalid, not the
> individual channels it conveys. Thus I think you can only transmit even
> number of channels, for odd channels you'd have to add a dummy channel.
> But my guess is that this reordering is taken care of in the hardware
> interface, and most transmitters should reshuffle the channels, good ones do
> :-). In other words, I think we should only worry about the ALSA
> order.

AFAICS the ALSA "hdmi:" device does not rearrange the channels in any
way. Hence it probably exposes the raw underlying channel order. The
question of course is how the channel map nego in ALSA works for the
cases where a specific number of channels might have multiple possible
channel mappings. It might be possible to select the mapping via the
AES0, AES1, AES2, AES3 parameters hdmi: takes. But I have no
clue. That's probably something we should ask the guys who wrote the
HDMI support though (Takashi?).

> Additional HDMI profiles would be similar to the surround40 surround51 and
> surround71 ones then, I am not even sure we'd need new profiles (unless the
> surroundxx tag identifies an alsa-lib device?)
> That's just my understanding of HDMI though. Std disclaimers apply.

In my understanding surround41,surround51 and those devices are only
for 'analog' audio for whatever that means. i.e. classic cable based
analog or integrated speakers. For HDMI we have the hdmi: device and
nothing else.

But again, this should be discussed with Takashi.

Hey, Intel, send me an HDMI capable TV and I might play around with
and make sure  that things work properly in PA ;-).


Lennart Poettering                        Red Hat, Inc.
lennart [at] poettering [dot] net         ICQ# 11060553
http://0pointer.net/lennart/           GnuPG 0x1A015CC4

More information about the pulseaudio-discuss mailing list