On Tue, May 12, 2009 at 08:47:31AM +0100, James Courtier-Dutton wrote:
Once we have the global definition, we can then fix each driver to comply with it. In some cases we will have to add virtual controls.
...
I personally think that the user should set the global speaker settings, the master, front, rear etc. controls and then just leave them. I think applications should only control their own PCM channel volume, and not touch the master volume at all. PA could then further control PCM channel volumes, by for example automatically attenuating the sound of an application when it gets put in the backround, if the user
This is starting to sound a lot like the stuff that's been talked about for the scenario API in an embedded context - it has a similar idea of having a central application managing the overall setup of the card and giving applications something simpler to work with:
http://www.slimlogic.co.uk/?p=40
We don't want to force the use of per-application volume since that will be too expensive for some systems, but a system that arranges for there to be a standard control that the application should use for things like master volume can support either a per-application control or using the hardware control directly.
It's not always going to be possible to provide a fixed setup in the driver since in systems like smartphones the arrangement of controls can change very substantially depending on software controlled