[LAU] Why JACK MIDI rocks (was Re: perhaps why some of us have more trouble w/ pulseaudio than others (ICE1712/M-audio delta problem w/ pulseaudio))

From: Gabriel M. Beddingfield <gabrbedd@email-addr-hidden>
Date: Thu May 13 2010 - 16:40:24 EEST

On Wed, 12 May 2010, Paul Davis wrote:

>> I have to spend a bunch of time grepping through source code (because the
>> docs suck) trying to undermine the ways its trying to help me.
>>
>
> that's a freudian slip if ever i saw one :)

Ha! No, that's what I meant. :-)

For example, when implementing a MIDI CC the flow of my code
will be something like this:

   [3 bytes MIDI] -----(ALSA)----> snd_seq_event_t
   snd_seq_event_t ----(GABE)----> [3 bytes MIDI] + timestamp

I would say that this is undermining the ways it's trying to
help me.

I could drop the seq API and use the raw MIDI API, but then
I lose the time-stamp. (Unless I've misunderstood something
somewhere....)

In contrast, the JACK MIDI API is something like this:

   [3 bytes MIDI] ----(JACK)----> [3 bytes MIDI] + timestamp

Which is beautiful. :-)

To further rant on the ALSA seq API.... snd_seq_event_t is a
complex, C-style, polymorphic type. So, instead of the CC
param & value being a simple buf[1] & buf[2], it's
event->data.control.param and event->data.control.value.
If you have a different type of MIDI event... it has a
different API... which means you have to spend a lot of time
with the not-so-hot documentation.

-gabriel
_______________________________________________
Linux-audio-user mailing list
Linux-audio-user@email-addr-hidden
http://lists.linuxaudio.org/listinfo/linux-audio-user
Received on Thu May 13 20:15:02 2010

This archive was generated by hypermail 2.1.8 : Thu May 13 2010 - 20:15:02 EEST