[LAU] [Bulk] Re: Bridging alsa and jack midi

Tim E. Real termtech at rogers.com
Sun Sep 28 00:40:20 UTC 2014


On September 26, 2014 05:26:15 PM Rui Nuno Capela wrote:
> On 09/26/2014 04:12 PM, Philipp Überbacher wrote:
> > On Fri, 26 Sep 2014 10:50:06 -0400
> > 
> > Paul Davis <paul at linuxaudiosystems.com> wrote:
> >> On Fri, Sep 26, 2014 at 7:17 AM, Philipp Überbacher
> >> 
> >> <murks at tuxfamily.org> wrote:
> >>> On Thu, 25 Sep 2014 18:17:56 -0400
> >>> 
> >>> Paul Davis <paul at linuxaudiosystems.com> wrote:
> >>>> On Thu, Sep 25, 2014 at 4:56 PM, Philipp Überbacher
> >>>> 
> >>>> <murks at 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?
> > 
> > Alles klar. Well, mostly. I guess that alsa_midi only makes sense
> > when alsa is used as a backend, so I don't quite see why it is a server
> > option instead of a backend option. Anyway, using the -X alsa_midi as
> > server option works.
> 
> on qjackctl settings, you can set the server prefix to "jackd -X
> alsa_midi" and leave the midi driver to "none", especially when NOT
> using "alsa" as the driver back-end.
> 
> hth.
> cheers


Finally is it truly time to move on from the alsa seq and raw drivers?

Rui, if ye have not already done so, would ye consider a wee update to qjctl
 to show these new slaves ?

Since both Jack 1 and 2 now have slaves, perhaps a drop down list
 of the slaves with checkboxes beside each for choosing which ones to use.

For good modern user experience and app development it would really help.

Thanks!
Tim.


More information about the Linux-audio-user mailing list