[alsa-devel] Bug in setting channels, related to recent ELD/EDID changes?

James Courtier-Dutton james.dutton at gmail.com
Tue Jan 4 19:46:13 CET 2011


On 4 January 2011 16:41, VDR User <user.vdr at gmail.com> wrote:
>>
>> A/V receivers showing TV information is indeed something that wasn't
>> thought about :(
>
> This has certainly caused problems.  Anyone thought of a way to
> resolve it, or better yet reversed the patch that created the
> situation?
>

I think this is related to general hot-plug support in ALSA.
If you plug in a USB speakers, ALSA should detect new speakers and
have a way of informing applications about it.
When you unplug USB speakers, ALSA should detect the lack of speakers
and have a way of informing application about it.
In the same way the if you power on a HDMI amp, instead of just two
speakers (in the TV), we now have 5.1 speakers.
ALSA should have a way to inform applications of the changes.

I do not think ALSA alone can handle these hot plug/unplug events. It
has to be applications that are made to understand these events and
adjust accordingly.
Before now, ALSA has had to be told manually how many speakers a user
has attached, E.g. Stereo, 5.1 etc.
With modern sound devices, this information is available automatically
from the hardware and changes without notice.

So, I propose that an API should be added to achieve this.
So, instead of the application setting the speaker arrangement, the
speaker arrangement is set in ALSA, and the application requests
information about it.
When the application writes sound samples to the sound card and the
speaker arrangement has changed, ALSA should use a specific error
number reported back so the application knows that it should re-check
the speaker-arrangement API and re-open the sound card with the new
details.

Kind Regards

James


More information about the Alsa-devel mailing list