From alsa-devel-owner@alsa.jcu.cz  Thu Oct 29 14:26:27 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 OAA17900;
	Thu, 29 Oct 1998 14:26:02 +0100
Date: Thu, 29 Oct 1998 14:26:02 +0100 (CET)
From: Jaroslav Kysela <perex@jcu.cz>
To: Paul Barton-Davis <pbd@op.net>
cc: alsa-devel@jcu.cz, "P.J.Leonard" <P.J.Leonard@bath.ac.uk>,
        iwai@ww.uni-erlangen.de
Subject: Re: ALSA + AWE32 
In-Reply-To: <199810290302.WAA22562@renoir.op.net>
Message-ID: <Pine.LNX.3.96.981029141921.29367D-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, 28 Oct 1998, Paul Barton-Davis wrote:

> I often run my SoftWerk MIDI sequencer as the engine for my
> soundcard's MIDI synth. However, I simultaneously run a custom
> application called WavePanel which lets me edit the patches and do
> other configuration of the synth in real time. Currently, under
> 2.1.119+ (Alan Cox's OSS-based modular sound), Softwerk accesses
> /dev/midi* directly, and WavePanel access /dev/synth0, which is a new
> minor device that Alan and I added precisely for this purpose (minor
> device #9).
> 
> Under ALSA, SoftWerk would presumably be better off talking to the
> ALSA sequencer to access the MIDI ports, but WavePanel should have a
> way of running concurrently with SoftWerk so that I can tweak the
> synth while the sequencer is still driving it.
> 
> The current OSS "route everything through the sequencer" approach
> requires the application that opens the relevant device via the
> sequencer to be smart enough to do everything. In my case, for
> example, I would have to run one application that could do the MIDI
> sequencing aspect *and* control the WaveFront synthesizer. This is a
> huge mistake, IMHO, and my biggest gripe with the OSS sequencer.
> 
> I would like to encourage Jaroslav to adopt something like the
> /dev/synth* interface, which is intended to be used for
> hardware-specific raw access to a soundcard's synthesizer devices, and
> can be open concurrently with any access via real or simulated MIDI
> devices. Its not meant to be an abstraction: the operations you can
> perform via this interface are 100% completely dependent on the
> hardware on the "other side".

I think that better way is doing all these communication with lowlevel
code over sequencer events. Don't remember, that /dev/sndseq can be open
many times (not as /dev/sequencer or /dev/music!!!). Sequencer client
should be opened in exclusive or nonexlusive mode, too...

Thus you can create user space sequencer client which will manage
instrument loading etc... We don't need any other interface for this
purpose...

							Jaroslav

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


