From alsa-devel-owner@alsa.jcu.cz  Thu Oct 29 13:43:31 1998
Received: from faui45.informatik.uni-erlangen.de (root@faui45.informatik.uni-erlangen.de [131.188.2.45])
	by marvin.jcu.cz (8.9.1a/8.9.1) with ESMTP id NAA14588
	for <alsa-devel@jcu.cz>; Thu, 29 Oct 1998 13:43:17 +0100
Received: from servww1.ww.uni-erlangen.de (servww1.ww.uni-erlangen.de [131.188.142.2])
	by faui45.informatik.uni-erlangen.de (8.9.1/8.1.49-FAU) with SMTP id NAA00431
	for <alsa-devel%jcu.cz@faui45.informatik.uni-erlangen.de>; Thu, 29 Oct 1998 13:43:15 +0100 (MET)
Received: from ibm02ww3.ww.uni-erlangen.de by ww.uni-erlangen.de with SMTP;
	id AA09300 (1.37.109.4/7.3m-FAU); Thu, 29 Oct 98 13:43:08 +0100
Message-Id: <9810291243.AA09300@servww1.ww.uni-erlangen.de>
Received: by ibm02ww3.ww.uni-erlangen.de (sSMTP sendmail emulation); Thu, 29 Oct 1998 13:37:53 +0100
To: alsa-devel@jcu.cz
Subject: Re: ALSA + AWE32 
In-Reply-To: <199810290302.WAA22562@renoir.op.net>
References: <Pine.LNX.3.96.981028184816.28810C-100000@entry.jcu.cz>
	<199810290302.WAA22562@renoir.op.net>
From: "Takashi Iwai" <iwai@ww.uni-erlangen.de>
Date: Thu, 29 Oct 1998 13:37:53 +0100
Reply-To: alsa-devel@alsa.jcu.cz
Sender: alsa-devel-owner@alsa.jcu.cz
Precedence: list

>>>>> On Wed, 28 Oct 1998 22:00:53 -0500, Paul Barton-Davis
<pbd@op.net> said: 

>> It would be also nice separate abstract instrument handling from hardware.
>> For example - GUS soundcards (and maybe soundcards with Dream chip) have
>> same problems, too.. I think that instrument handling library should be in
>> separate module which will call lowlevel code..

> I don't think instrument handling should be abstracted this far. Once
> you start messing with some very different soundcards (such as the
> WaveFront series from TB), you'll get the sense that there isn't much
> of an abstraction there at all to be encapsulated in a library.

Agreed.  Actually in my case, the instrument handling routines shares
only 3% in the whole driver code.  The other parts are something like
"lowlevel" routines.
I think the possible abstraction is the definition of standard synth
models and interfaces, for example, "one patch to one channel (note)"
(GUS-like) and "multisample" models.  Obviously it would be better if
these both models are supplied by the drivers from the view point
applications.  As I wrote previously, programs like MOD player requre
the former, and the MIDI programs prefer the latter.
But, I still don't know whether these models should be devided to
different modules, or integrated into one module.
Maybe, the best solution is to give an OSS-GUS-emulation module and a
MIDI-compatible module for each soundcard...

-- 
Takashi Iwai / iwai@ww.uni-erlangen.de
Department of Materials Science
Friedrich-Alexander-University Erlangen-Nuernberg

