From mboxrd@z Thu Jan 1 00:00:00 1970 From: Takashi Iwai Subject: Re: Implementing ALSA compatibility in OSS Date: Mon, 15 Nov 2004 20:03:03 +0100 Message-ID: References: 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: Hannu Savolainen Cc: Clemens Ladisch , alsa-devel@lists.sourceforge.net List-Id: alsa-devel@alsa-project.org At Mon, 15 Nov 2004 19:58:34 +0200 (EET), Hannu Savolainen wrote: > > On Mon, 15 Nov 2004, Clemens Ladisch wrote: > > > The purpose of having alsa-lib is that things like sample format/rate > > conversion, virtualization, software synths, replacement drivers like > > Jack etc. can be done in user space. We either do not want or cannot > > do this in kernel space. > But why does this need to be done in alsa-lib? Because we can provide a uniform API with that. Each app doesn't have to take care of the whole such stuff. > > > Maybe alsa-lib could be implemented on top of the OSS driver API instead > > > of having two redundant APIs in the kernel. > > > > AFAICS the ALSA API is a superset of the OSS API. > Right. 1500+ library calls is really a superset of OSS API that has just > 5 system calls and a handfull of ioctl calls. The ALSA "kernel" API is also not too bigger than that. As Clemens explained, most of lib calls are accesors to the opaque struct fields (imagine C++). (Don't discuss further about the sense of this implementation here at this point. You're too late on the stage for the definition of 1.0 API :) Takashi ------------------------------------------------------- This SF.Net email is sponsored by: InterSystems CACHE FREE OODBMS DOWNLOAD - A multidimensional database that combines robust object and relational technologies, making it a perfect match for Java, C++,COM, XML, ODBC and JDBC. www.intersystems.com/match8