Subject: Re: [linux-audio-dev] MIDI routing, FIFO's etc.
From: David Olofson (audiality_AT_swipnet.se)
Date: la loka 09 1999 - 16:13:45 EDT
On Sat, 09 Oct 1999, Jaroslav Kysela wrote:
[...]
> I would like to see, if we join our efforts to one background sound
> project and create good universal sound API for Linux, because there is
> really only few active Linux audio developers around.
So would I. I think a universal "IPC" API for multimedia would help things a
lot when integrating applications and engines into The multimedia system. I'm
not sure exactly how this fits with the ALSA API, but it seems like the
concepts are rather similar in many ways.
The question is, where does the new API fit in?
IMO, there should be a Multimedia Communication System (or whatever)
that lives in kernel space and provides
1) A transparent shared memory based IPC protocol, tailored for real
time streaming and communication. This should be a client/server
style system where kernel modules, drivers and user space
applications and engines can register, to provide and/or use real
time services. (My idea is that this shouldn't really be directly
multimedia oriented.)
2) An API layer that implements a flexible buffered event system, and
data format independent streaming capabilities on top of that IPC
protocol. (Most of the frequently used stuff, like event handling,
should be done in inline code for performance.)
3) A plug-in API that interfaces nicely with the API layer, so that
plug-in hosts don't have to do lots of translation.
Plug-ins and clients should work in very similar ways - as seen from other
clients - in order to support low level integration of the whole system. There
shouldn't be a need for special protocols in order to get applications to
cooperate in useful ways.
This is what I currently have in mind for the plug-in API in planning, and I
have a rather clear idea about how to implement most of it.
Please, keep trying to shoot my design ideas down! :-) It's very helpful and
inspiring, and makes me see better and cleaner solutions sooner. And tips on
solutions found in existing systems are always welcome, as I just don't have
the time to read all code there is myself...
It's all happening on linux-audio-dev_AT_ginette.musique.umontreal.ca, for
those who don't hang around there (yet).
//David
·A·U·D·I·A·L·I·T·Y· P r o f e s s i o n a l L i n u x A u d i o
- - ------------------------------------------------------------- - -
·Rock Solid David Olofson:
·Low Latency www.angelfire.com/or/audiality ·Audio Hacker
·Plug-Ins audiality_AT_swipnet.se ·Linux Advocate
·Open Source ·Singer/Composer
This archive was generated by hypermail 2b28 : pe maalis 10 2000 - 07:27:13 EST