[alsa-devel] Dynamic HDMI PCM creation
david.henningsson at canonical.com
Mon Sep 17 15:28:52 CEST 2012
[added pulseaudio-discuss to cc]
On 09/17/2012 02:20 PM, Jaroslav Kysela wrote:
> Date 17.9.2012 13:46, Takashi Iwai wrote:
>>> I would prefer to have just a notification, if the cable is
>>> connected and the PCM layer is ready (ELD stuff). Also, if some physical
>>> connectors are not used on some hardware, they should/may be blacklisted
>>> so the driver won't create PCM devices for them.
It might be that we could send a snd_ctl_notify on the ELD kcontrol.
Would that make sense?
>> Using kcontrol notifier is the current solution indeed. But the whole
>> coding is missing in PA side, so far. OTOH, PA has already the
>> handling of dynamic PCM device creation/deletion (e.g. for
>> USB-audio). So, it can be more natural to provide the dynamic PCM
>> from the kernel for HDMI, too. The patch was posted to evaluate
> I think that USB-Audio is a different thing. Our driver creates new card
> for a newly plugged USB hardware and it seems that PA supports only
> dynamic card handling, not dynamic device handling.
This is correct. PA supports dynamic cards, not dynamic devices on a
card. Cards are much simpler because they are always independent of each
Another question PA needs to deal with is, when this new HDMI PCM device
is plugged in, what other streams can coexist with this new HDMI stream?
What if we have an analog + HDMI combined card, but the controller only
supports one stream to either of them? In that case, we can not even
probe the HDMI device without disturbing the stream potentially being
played back through analog.
Brainstorming idea for PA developers: However, if combined analog + HDMI
combined cards *always* can play back HDMI and analog independent of
each other, we could actually try to map them as two different cards in
PulseAudio. Then that HDMI card could disappear as the HDMI cable is
David Henningsson, Canonical Ltd.
More information about the Alsa-devel