From mboxrd@z Thu Jan 1 00:00:00 1970 From: Takashi Iwai Subject: Re: Channel modes feature request. Date: Tue, 12 Aug 2003 11:37:23 +0200 Sender: alsa-devel-admin@lists.sourceforge.net Message-ID: References: <3F382486.4070604@superbug.demon.co.uk> <3F38B29E.3080906@superbug.demon.co.uk> Mime-Version: 1.0 (generated by SEMI 1.14.4 - "Hosorogi") Content-Type: text/plain; charset=US-ASCII Return-path: In-Reply-To: <3F38B29E.3080906@superbug.demon.co.uk> Errors-To: alsa-devel-admin@lists.sourceforge.net List-Help: List-Post: List-Subscribe: , List-Unsubscribe: , List-Archive: To: James Courtier-Dutton Cc: alsa-devel List-Id: alsa-devel@alsa-project.org At Tue, 12 Aug 2003 10:25:50 +0100, James Courtier-Dutton wrote: > > Takashi Iwai wrote: > > At Tue, 12 Aug 2003 00:19:34 +0100, > > James Courtier-Dutton wrote: > > > >>I have a SB live audio card. > >>I can open it with device names like: - > >>surround40 (Front Left, Front Right, Rear Left, Rear Right) > >>surround51 (Front Left, Front Right, Rear Left, Rear Right, Center, LFE) > >> > >>There is a requirement for: - > >>surround41 (Front Left, Front Right, Rear Left, Rear Right, LFE) > >>surround50 (Front Left, Front Right, Rear Left, Rear Right, Center) > >> > >>How can I get alsa to support these ? > > > > > > i still don't understand your question quite correctly. > > > > do you mean open a multi-channel (5ch) pcm stream wihh the > > configuration above? > > if so, it's not too difficult for sb live (but not always easy for > > other cards). it would look like: > > Can you expand on why. Because it seems sensible to me that all cards > that do surround51, can also do surround50 and surround41. ok, so you mean a generic support for these formats. > If by what you say, it is not possible (when I say not possible, I mean > not possible with adding extra memcpy's to move the channels around in > alsa-lib) , then I will adjust my application to use the surround51 pcm, > and just mute the un-needed channel. well, after thinking a bit more, it turned out that it's easy to do this in generic way (but with an overhead, of course). e.g. surround41 can be derived from surround51 such as pcm.surround41 { type route slave.pcm surround51 ttable.0.0 1 ttable.1.1 1 ttable.2.2 1 ttable.3.3 1 ttable.4.5 1 } we can define this as a default while the optimized version can be defined in each card definition (as written in my previous post). Takashi ------------------------------------------------------- This SF.Net email sponsored by: Free pre-built ASP.NET sites including Data Reports, E-commerce, Portals, and Forums are available now. Download today and enter to win an XBOX or Visual Studio .NET. http://aspnet.click-url.com/go/psa00100003ave/direct;at.aspnet_072303_01/01