On Tue, Jan 4, 2011 at 10:46 AM, James Courtier-Dutton james.dutton@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.
That sounds like a great solution and hopefully it be considered when/if steps are taken to fix this problem. Unfortunately thus far it seems the preference is to ignore it. That being the case, will someone please post a patch that reverses the change that caused this problem in the first place?
Thanks, Derek