From mboxrd@z Thu Jan 1 00:00:00 1970 From: Takashi Iwai Subject: Re: Re: [ALSA - lib 0000154]: Master volume only controls front output (emu10k1) Date: Fri, 27 May 2005 16:52:37 +0200 Message-ID: References: <428E803F.9050608@voicenet.com> <42972875.7040309@voicenet.com> Mime-Version: 1.0 (generated by SEMI 1.14.5 - "Awara-Onsen") Content-Type: text/plain; charset=US-ASCII Return-path: In-Reply-To: Sender: alsa-devel-admin@lists.sourceforge.net Errors-To: alsa-devel-admin@lists.sourceforge.net List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , List-Archive: To: Giuliano Pochini Cc: Jaroslav Kysela , Adam K Kirchhoff , alsa-devel List-Id: alsa-devel@alsa-project.org At Fri, 27 May 2005 16:43:18 +0200 (CEST), Giuliano Pochini wrote: > > On Fri, 27 May 2005, Jaroslav Kysela wrote: > > > > > Hey developers, what's up with the abstract mixer layer? :-) > > > > > > > > > > Anyone? > > > > I am working on it, but also doing zillions of other things. The actual > > status is that the virtual mixer can be created inside the lisp > > interpreter. I am looking for a clever code design to map the hardware > > controls with minimal lisp code to abstract ones.... I need something like > > an object model inside lisp (object == mixer element). > > I was thinking about it, too. I'm not sure the lisp thing is the right > way. If we want it to be generic enough we have to make a quite big part > of the API available to the lisp interpreter. It would make the interface > quite difficult to use and lisp doesn't make things simpler. > I wonder if, maybe, it is simpler to write a loadable plugin interface and > write the plugins in C as usual. A plugin is fast (no need to be > interpreted), it's about as complex as a lisp program (same API) and it > can be added without recompiling libasound (just like a lisp script) and > no need to learn lisp :) Ah, that's what I thought of, too. In most cases, what we need are: - create a new user-defined control - bind several controls to a single one - convert/correct the different volume ranges and they can be implemented relatively easily. We have already the config-tree parser code, so if the static configuration suffices, the plugin would work enough. The only problem of alsa-lib plugin is, again, the OSS emulation in kernel... Takashi ------------------------------------------------------- This SF.Net email is sponsored by Yahoo. Introducing Yahoo! Search Developer Network - Create apps using Yahoo! Search APIs Find out how you can build Yahoo! directly into your own Applications - visit http://developer.yahoo.net/?fr=offad-ysdn-ostg-q22005