On Sun, Aug 12, 2012 at 04:00:47PM +0200, Tom Gundersen wrote: > On Sun, Aug 12, 2012 at 3:07 PM, Fons Adriaensen <fons@xxxxxxxxxxxxxx> wrote: > > it's just extremely clumsy to use a mixer > > that way, you'd need ten hands. For it means that whenever you want > > to adjust a single channnel you may have to adjust *all* others and > > the master at the same time. > > Unlike humans, computers does not have a limited number of hands. This > is not a priori a problem. It's still like trying to start a 10-ton truck in 5th gear. If you do that on your first day on the job you'll be fired, not because your boss likes to show his authority but because you have shown your incompetence. And if a computerized system tries to do that (and maybe it could if it has very fine control over the engine and clutch) then there's clearly something wrong with it. > > Things will still work well when (A) happens to contribute nothing > > (i.e. while it outputs silence). So things will still work well when > > (A) isn't there at all. *There is no need to change anything at all* > > when (A) goes away, even if all others have their volume set to lower > > values. > > You have showed that it is unnecessary in one particular (very simple) > case. However, you have not showed that it is unnecessary in all > cases, so this is not really relevant (had we been talking about a > human doing this, you'd have a point of course). It is never necessary. It it were that would imply that a sound card without any gain controls (equivalent to a fixed 0 dB gain) would fail in some cases. It doesn't. In fact many PRO cards are just like that. If you have apps A, B, C with volumes a, b, c you can always set the HW gain to unity gain (0dB), and send s = a * A + b * B + c * C (1) to the soundcard. What would be the advantage of doing what PA does, which is * m = maximum of a, b, c) * Set the master to m, * send s = a/m * A + b/m * B + c/m * C (2) ??? It can only generate trouble, basically you forfeit any headroom the system would have. > > So PA will set the master output to > > -20 dB. Now even if all of these apps are limited to contributing > > -20 dB (but there is no reason why that should be), the sum of > > them can be higher, but your soundcard can't handle that. > > That clearly would not work. Surely PA would need to adjust the master > output to compensate for the number of channels? I don't know these > implementation details, but I don't see how your arguments shows that > this is impossible in general, just that the algorithm you outlined > does not work. PA could leave some headroom and even adjust that in function of the number of sources. But it could also just leave the master gain alone, and compute (1) above instead of (2). Any advantage you or any user have from using PA 'things just work' would remain the same. But it's a lot simpler and doesn't have the problems (2) has. -- FA A world of exhaustive, reliable metadata would be an utopia. It's also a pipe-dream, founded on self-delusion, nerd hubris and hysterically inflated market opportunities. (Cory Doctorow)