On 02/11/2014 09:39 AM, Tanu Kaskinen wrote: > On Mon, 2014-02-10 at 22:28 +0100, David Henningsson wrote: >> Are you ok if I push this one to master (just this one, not the chmap >> API one)? > > What's the definition of the surround21 device in alsa? Is it "four > channels with channel map front-left, front-right, lfe, discarded"? If > it's that, would it be better to use aux0 as the last channel instead of > duplicating lfe? I'm thinking that the duplicated lfe may interfere with > remixing. For example, when recording a stereo stream from the 2.1 sink > monitor, does the lfe channel get downmixed twice? Okay, good point. There is currently no surround21 device in alsa (but there should be!), so that's why we fall back to surround40. If there was one, it would probably expect a three channel stream. I was just thinking that anything was better than nothing, but maybe it makes the most sense to implement the surround21 device in ALSA first and then think about PulseAudio. It would be slightly inoptimal though as there would be a 3 -> 4 channel copy in alsa-lib, but it's consistent with how e g 5.0 is done today, and if we want to avoid that copy, we should perhaps consider something that would help all surround options, not just 2.1. So, consider this patch withdrawn for the time being, but it would still be useful to point people to in case they want to try out surround 2.1. > If the last channel is discarded, it would be better to set the sink > channel map to just "front-left, front-right, lfe" and generate silence > for the fourth channel inside the alsa sink. I don't think that's > possible with the current infrastructure, however, and I'm not > suggesting that you should implement that, so this is just an idea for > future work. Agreed, we would benefit from having infrastructure to be able to output "empty" channels, as we cannot do this today. -- David Henningsson, Canonical Ltd. https://launchpad.net/~diwic