Re: [linux-audio-dev] MIDI routing, FIFO's etc.

New Message Reply Date view Thread view Subject view Author view Other groups

Subject: Re: [linux-audio-dev] MIDI routing, FIFO's etc.
From: David Olofson (audiality@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@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@swipnet.se ·Linux Advocate
    ·Open Source ·Singer/Composer


New Message Reply Date view Thread view Subject view Author view Other groups

This archive was generated by hypermail 2b28 : ke maalis 08 2000 - 13:40:59 EST