Subject: Re: [linux-audio-dev] high level midi api
From: Paul Davis (pbd_AT_Op.Net)
Date: Mon Oct 29 2001 - 23:38:11 EET
>doesn't anyone agree that a better and simpler api might make a
>/dev/sequencer unneeded and would possible provide better timing?
everybody does. its why the ALSA sequencer API was written.
>not as flexible as having the sequencing done in the
>application. it's nice for a midi player, but is it fexible enough
>for a complicated midi multi track sequencer?
it works for MusE which is the most impressive multitrack MIDI
sequencer we have for Linux.
>i just think that the alsa rawmidi driver api is a little too low
>level and the sequencer too high level. i think it could be replaced
>by a single api that is slightly higher level than rawmidi.
i think you need to get to know the sequencer API better. it looks
very complex but it can be used to provide pretty much whatever level
of sophistication you want.
>> >- a function to send midi events with a timestamp, the driver transmits
>> >the event at the specified time. events have to be sent in the correct
>> >order.
>>
>> check. ALSA does this, and doesn't require that events are sent in the
>> correct order.
>
>that's what makes it too complicated. ordering the events can be better done
>in the application.
i said it didn't *require* it. you can happily order them all
yourself, and deliver them en-masse. why choose one over the other?
the sequencer *has* to do ordering, because it may have events coming
from different sources but with the same destination. perhaps you
didn't understand that point.
>ok, where can i find the latest documentation for the alsa sequencer and
>midi api?
hah. therein lies a problem. there isn't much other than the comments
from the source code ripped out by doxygen. however, do check them
out. http://www.alsa-project.com/, and you should join alsa-devel and
talk to takashi to make sure you fully understand the ALSA sequencer
before commenting too much on what you think it does and does not do well.
--p
This archive was generated by hypermail 2b28 : Mon Oct 29 2001 - 23:37:34 EET