On Fri, Sep 26, 2014 at 7:17 AM, Philipp Überbacher <murks@tuxfamily.org> wrote:
On Thu, 25 Sep 2014 18:17:56 -0400
Paul Davis <paul@linuxaudiosystems.com> wrote:

> On Thu, Sep 25, 2014 at 4:56 PM, Philipp Überbacher
> <murks@tuxfamily.org> wrote:
>
> > on as far as timing.
> >
> > So I remember correctly that there used to be issues with -X seq.
> >
> >
> the -X seq option in current JACK1 is just a backward compatible hack
> to allow qjackctl and other tools to invoke the relevant stuff.
>
> the actual implementation is nothing to do with the old -X seq code,
> and is actually a2jmidid converted into an internal client. Note that
> JACK2 could use this client too - its source code is even in the
> theoretically "shared" git repo for JACK tools.

Is there a new, recommended way to do the same thing? I only found -X
alsa_midi in the man page but it does not have the same effect.

the confusion here is that there are two sets of command line arguments when you start JACK:

   jackd [ SERVER OPTIONS ] -d BACKEND_NAME [ BACKEND OPTIONS ]

for better or for worse, some of the option letters (e.g. -X or -p) can occur as either server options or backend options.

in the "old" world, there was only -X as a backend option and it had two arguments ("seq" or "raw"). Both of them are basically not sensible to use because of the poor implementations they refer to.

in the new world, the preferable use of -X is as a server option:

   jackd ... -X alsa_midi ... -d BACKEND ....

BUT ... given the legacy of qjackctl and other control apps which don't know about this, I hacked jack1 so that it would look for the the -X seq argument as a **backend** option and treat that as if the user had used the new form.

It would have been less confusing to have not done this, but that would have meant that it would be impossible/harder to use qjackctl to invoke this new MIDI bridge stuff, since it only knows about -X (seq|raw) as a backend option.

Alles klar?


Why isn't jack2 using the same client? It seems more convenient to just
use jack with -X seq rather than running another program.

the developers of jack2 have so far not bothered to integrate the "shared" repository for jack tools into their source code.
 
ps. I copied the use of -X as a server option to do this sort of thing from Jack2.