On May 15, 2014 09:46:37 PM Robert Jonsson wrote:
> Hey Tim,
> 
> 2014-05-07 2:24 GMT+02:00 Tim E. Real <[email protected]>:
> >> I'll try to elaborate, don't think it has to do with jack versions.
> >> 
> >> Well, first off there's a pedagogic issue, but we have been over that
> >> before. Jack-midi isn't enabled by default in jack which does stump a lot
> >> of users. I have helped quite a lot of people getting it running. Most of
> >> them have gone with -A when presented with the choice.
> >> I was planning to do some new tutorial videos shortly that would
> >> explain this a bit better but until jack enables jack-midi by default
> >> it doesn't speak in it's favour.
> >> (i see now, reading up on it, that latest jack1 has improved the
> >> implementation, seems it's still not default though)
> >> 
> >> The problems I personally have come across are less clear cut.
> >> (This is of the top of my head, not entirely sure what the problem is.)
> >> 
> >> I think the biggest problem happens if I start with a working song
> >> where I recorded stuff through an external keyboard.
> >> If I then start jack without -X seq (or -X alsa_midi which seems to be
> >> the new) and open the song, the external midi device is gone (of
> >> course).
> >> 
> >> If I then store the song in this state, close everything down,
> > 
> > Ah there we go: When you do that the song loses the jack devices.
> > So once you restart with -X you have to go back into the midi preferences
> > 
> >  and re-create/re-assign jack midi devices to all your midi ports.
> 
> Finally got around to make a test with the release version.
> What exactly do you mean by re-create? Re-assigning the device would
> be fine, if it was there but it isn't.
> 
> If I do the following:
> 1. start jack without midi
> 2. start muse, save an empty song (which won't have any midi devices)
> 3. restart jack with midi
> 4. start muse (now muse has plenty of midi devices from jack)
> 5. load the song (now all midi devices have vanished)
> 
> There's this choice to "create jack-devices" but I have no idea how to
> use that.

That's the one. You create a new Jack midi device, then use the 
 Input Routes and Output Routes drop-downs (in the list) to assign
 the new Jack midi device to/from actual Jack ports.

> I would really have expected all devices to still be visible after
> loading the song.

No, not after you save a song without Jack midi.
The particular Jack midi devices do not exist at the time of saving.
Therefore how can it possibly be expected to properly save all the relevant 
 parameters, such as routes to/from actual Jack ports, device name and so on.
Unless, as I mentioned, we somehow save previous configurations
 and allow back-peddling. 
Or multiple, selectable configurations, anyone? I mentioned this once.
Or at least a warning dialog rather than obscure command-line output
 when devices (or anything else for that matter) aren't found upon loading.
"Warning, devices will be lost upon saving".

I mentioned a while ago that I wanted to add a button or something
 which says "refill the list with Jack midi devices (as if you started with 
 a fresh song)". 
But that will not restore, and may upset, custom configurations where 
 specific devices were created or moved around the list or routed to 
 specific Jack ports.

There is flexibility in the system in how you use the Jack midi devices.
For one thing, because it allows the multiple connections to a Jack port,
 it may support  daisy-chaining midi, as someone asked about before.
(Our ALSA devices don't support that kind of thing and are
 'fixed' to their ALSA routes.)

Then, add synth devices along with ALSA + Jack devices, and it gets trickier.

I know, the system needs to be better, easier.

I know what you're thinking, "why can't we just automatically create 
 devices for the actual available devices, on the fly, and present them to
 the user when they select the drop down list in the configuration dialog?"

It's not that easy. For registering devices on the fly, there was an issue
 with infinite recursive creations of devices, goes something like this:
"we create ports for newly discovered Jack ports, then some other app,
 like another instance of MusE, sees THESE ports and automatically creates
 its own ports for these ports. Then THIS instance of MusE sees THOSE ports
 and creates ports for them. Then the other app  does the same. And so on,
 infinitely." 
 
It's because each created port is EXPOSED to the outside world.
(And needs to be, really. Other apps NEED to see your ports.)

So that was kind of out of the question.

However, a button which says "Re-scan devices now..." or something
 as I mention above, might help. 
But  I just could not find a way around this recursive 'mirroring' of 
 all ports, each time. To avoid that they needed to be specifically 
 created by the user.

It is tricky, I did the best I could at the time...
Adding Jack midi was fun though.

Also, I realized and mentioned once in discussions on LAD, that 
 ultimately the easiest thing is for the user to see the actual
 Jack ports and ALSA ports in each Midi TrackInfo panel.

That is, in each Midi TrackInfo panel, BYPASS the MusE Midi Ports 
 and display the actual currently available Midi Devices right there.

The system IIRC more or less supports this, it's just behind the scenes 
 Midi Ports could still be used.

It's not as easy as it sounds, but it would be a good thing.
I imagined ways to accomplish it and present the devices to the user.

> 
> Am I missing something?
> 
> > Definitely you have to be consistent how you start jack EACH time you
> > 
> >  start MusE, and open then STORE a song.
> > 
> > It's a fair and reasonable requirement, I think.
> > 
> > Too bad, I don't know of any easy way around that unless we
> > 
> >  somehow keep a record of previous midi configurations and somehow
> >  offer the user to re-establish them. Tricky... Keeping a list of previous
> >  configurations... Hmm...
> 
> Yeah, that would be nice for the future but my problem is more basic.
> I would be happy if they still were there for me to reassign.
> 
> > Flo said he wanted to add some more device abstractions by just
> > 
> >  storing names, or something like that.
> > 
> > Unfortunately not even that would help here when you fail to use -X,
> > 
> >  since the actual devices won't even exist then.
> > 
> > And there's a gray area here since it is said one should use one of the
> > 
> >  alsa-jack midi bridges instead of -X. And now one of those good
> >  bridges (I think Fons') is in jack-1 (I think, not -2).
> > 
> > I wish there was a way for MusE to know if jack had been started
> > 
> >  with a midi backend, so MusE could automatically know
> >  whether to use ALSA or jack midi.
> >  
> >> reenable -X alsa_midi and open the project the input device either
> >> won't appear or won't work, possibly I have had both happen. And
> >> there's no way I have found to get it working without messing with the
> >> internals.
> > 
> > Or as I say above, manually re-creating/re-assigning jack midi devices
> > 
> >  in the midi preferences dialog.
> >  
> >> I'll try to narrow this down further when I next have time. It's not
> >> out of the question I have made it worse myself, I know I have some
> >> changes in my source tree that might interfere ;)
> > 
> > Well I haven't touched anything jack related (I think - I'll check),  so
> > 
> >  there shouldn't be any overlaps if you want to commit some work there.
> 
> I have committed some bug fixes in the last weeks but hopefully
> nothing that affects your fixes much.

Here it is a long holiday weekend.

I will complete this stage of work, clean up and commit something soon.

Hang in there, sorry for the delay, been busy but also worked on MusE
 each night this week. 

> 
> <...>
> 
> > Makes me wonder what kind of summer we're in for.
> > 
> > I'll think about the jack midi thing more, if I can think of anything
> > else.
> > 
> > Thanks Robert, nice to hear from you, see some activity again.
> > Tim.
> 
> The same to you :)
> 
> I'm not sequencing that much at the moment but still using MusE, a lot!

Yay.

> I have MusE working as a live mixer with some extra features, like  a
> bunch of plugins, maybe a synth and the TAL-Vocoder, thanks to the
> native VST support! Working quite nicely through a firewire audio
> interface at 64 frames. :) 

Nice! 

> (actually not there with the vocoder yet,
> might be a bit too hungry for 64 frames)

Many times when I practice, I fire up MusE and load up the same project 
 which ties all my audio together, plus plugins, and lets me play my 
 keyboard too with various synth plugins.

It's all there, ready for me to use. 

Fun-o-matic.

When I'm feeling ambitious I record.

Tim.

> 
> Regards,
> Robert
> 


------------------------------------------------------------------------------
"Accelerate Dev Cycles with Automated Cross-Browser Testing - For FREE
Instantly run your Selenium tests across 300+ browser/OS combos.
Get unparalleled scalability from the best Selenium testing platform available
Simple to use. Nothing to install. Get started now for free."
http://p.sf.net/sfu/SauceLabs
_______________________________________________
Lmuse-developer mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/lmuse-developer

Reply via email to