From alsa-devel-owner@alsa.jcu.cz  Sat Nov 14 13:08:38 1998
Received: from entry.jcu.cz (IDENT:perex@entry.jcu.cz [160.217.1.111])
	by marvin.jcu.cz (8.9.1a/8.9.1) with SMTP id NAA27805;
	Sat, 14 Nov 1998 13:07:05 +0100
Date: Sat, 14 Nov 1998 13:07:05 +0100 (CET)
From: Jaroslav Kysela <perex@jcu.cz>
To: Rob Huffstedtler <rob@Netcentral.net>
cc: alsa-devel@alsa.jcu.cz, alsa-user@alsa.jcu.cz
Subject: OSS to ALSA integration, ALSA future
In-Reply-To: <Pine.LNX.3.96.981111195038.13252E-100000@ns1.netcentral.net>
Message-ID: <Pine.LNX.3.96.981114123719.463J-100000@entry.jcu.cz>
MIME-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
Reply-To: alsa-devel@alsa.jcu.cz
Sender: alsa-devel-owner@alsa.jcu.cz
Precedence: list

On Wed, 11 Nov 1998, Rob Huffstedtler wrote:

> Now that AZ can get support for his card in a dev kernel, perhaps he
> should give up on ALSA.  It might not be the best solution for him.
> 
> Jaroslav has mentioned a couple of times that he would like to get away
> from coding drivers and focus more on the API?  Now that sound support in
> the kernel is broader, is there a reason that the API could not be
> rewritten to work with kernel drivers so that he could spend his effort on
> what he seems to see as the more important effort?

Looks these questions are important. Yes, I willn't work on new drivers
for soundcards in near future. I want work on sequencer and GUS WaveTable
driver.

The second answer (why ALSA willn't use OSS lowlevel drivers): Both
drivers uses very different interfaces. I'm not sure if we can map ALSA
API through OSS API. For example OSS PCM API have limited fragment sizes
(only 2^X, ALSA PCM API not - there isn't problem set fragment size to 160
- good for 8000Hz sample rate). OSS mixer interface is very simple, ALSA
cannot use this interface without big limitations.

My feeling is that best way will be leave OSS code as is and don't try
do some ALSA API -> OSS API converters in kernel. This isn't clean
solution - ALSA uses in all designed interfaces more progressive API
and OSS code have very big limitations. On other side, OSS code is
in most cases stable and converting OSS code to ALSA code should take
about one or two days for programmer which are familiar with both
drivers. This is reason why I want with Chris David <cdavid@umich.edu>
create good documentation howto code new ALSA driver very soon.

Next big problem which is a little brake for ALSA is sequencer which isn't
very useable at this moment and needs serious work. We need also create
WaveTable drivers for most common GUS and SB (EMU-8000) soundcards.
I think this reason is why some people with WaveTable and/or external
MIDI device are still using OSS.

OK. Next year will be critical for ALSA project. I hope that at begin of
this year will be sequencer useable and we will see if people will support
ALSA rather than OSS (like migration driver programmers and excellent
native applications are very big motion). Last time shows that people
know that OSS is old hybrid which shouldn't be used for serious work at
both ends (driver and application). I assume that ALSA driver should be
integrated in middle or at end of next year once for all to kernel.

							Jaroslav

-----
Jaroslav Kysela <perex@jcu.cz>
Academic Computer Centre, University of South Bohemia
Branisovska 31, C. Budejovice, CZ-370 05 Czech Republic



