[LAD] making sense of Jack MIDI; or, is this an appropriate use for Jack?

Pedro Lopez-Cabanillas pedro.lopez.cabanillas at gmail.com
Fri Feb 15 17:53:37 UTC 2013


On Friday 15 February 2013 11:23:02 M Donalies wrote:
> From what I can tell, the Jack midi interface aspires to hide the underlying
> Alsa api so an app developer can just use Jack midi and not have to muck
> with Asla.

Maybe you already have read the propaganda, and came here honestly wondering 
about the truth behind it:

http://wiki.linuxaudio.org/faq/start#qwhat_is_the_difference_between_jack-
midi_and_alsa-midi 

Jack MIDI comes to extend/replace ALSA MIDI. "Sadly," they currently co-exist.

> If this is true, then how do I use Jack in the following senerio: I'm
> writing a toy gui SMF player that outputs midi events so a program like
> fluidsynth can play them.
> 
> Using Alsa sequencer, I put events on a queue with a time and Alsa takes
> care of the rest. If I just use the Jack midi api, how much of this process
> can Jack do? I'm assuming "not much," since all the apps that I've looked
> at the source of use the Alsa sequencer.
> 
> If I wanted to do the sequencing myself, what would be involved? Or am I
> completely missing the point of what Jack can do?

I'm hated among Jack MIDI zealots in these lists, because I don't hesitate to 
voice my opinion in this matter: that ALSA sequencer has a lot more sense in 
scenarios like yours than Jack MIDI. ALSA sequencer provides sequencer 
facilities (hence its name) and Jack MIDI does not. Among my own programs only 
one of them, virtual MIDI piano keyboard, supports Jack MIDI as an option (it 
is a real-time application with very limited requirements, this may change in 
the future). But for any other MIDI application with sequencing functionality, 
using Jack MIDI you will reinvent the wheel.

Jack MIDI looks like it had been conceived with the goal that Ardour become  
the one and only sequencer application, and everybody else should write 
plugins for it. That perhaps would make sense as a bussiness model, and if you 
want to write a MIDI Synth or some MIDI realtime app complementary to Ardour, 
Jack MIDI makes certainly more sense than anything else. 

If you look for other MIDI sequencing applications in Linux, all of them use 
ALSA sequencer: Rosegarden, Muse, Qtractor... There is one exception: 
MuseScore is a score editor, with similar goals to yours. It started 
supporting ALSA sequencer, but switched to Jack MIDI in Linux. It is very 
popular... in Windows!
https://sourceforge.net/projects/mscore/files/mscore/stats/os?dates=2012-01-01+to+2012-12-31 

Regards,
Pedro
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.linuxaudio.org/pipermail/linux-audio-dev/attachments/20130215/88cba809/attachment.html>


More information about the Linux-audio-dev mailing list