Restore complete Jack-session

All your LV2 and LADSPA goodness and more.

Moderators: MattKingUSA, khz

Post Reply
Musicteacher
Established Member
Posts: 167
Joined: Mon Nov 13, 2017 5:54 am

Restore complete Jack-session

Post by Musicteacher »

Hi,

I´m a newbie to using Jack. While I found most of it very intuitive, I have failed in saving and restoring a complete setup.

I use qjackctl . I had pianoteq and jack-rack with g-verb running. I saved my session in qjackctl. But when I restore that session, the connections do not work, even though the other software is running.

What is a safe way to safe and restore complete setups?

Andreas

Frank Carvalho
Established Member
Posts: 363
Joined: Sat Nov 17, 2012 3:36 pm

Re: Restore complete Jack-session

Post by Frank Carvalho »

It's a good question. When all plugins of the session are hosted in the same host - like Carla or Ardour - it is no problem, as it will save the entire setup, including connections, and start it up again. But when you use other programs that are not under the hosts control, you are more on your own.

I solved this problem with a generalized bash script, that will support startup of a number of different applications, currently jackd, Carla, Bristol, NON-Mixer, MidiLayer, QTractor, jack-keyboard and a2jmidid (which is what I use live). Not exactly a groundbreaking piece of software, but it gives me a couple of advantages; A fixed, predictable application startup order, which is important if Carla is to connect everything correctly at the end of the startup sequence, and better portability of each setup, as it helps separate the startup program logic from the configuration of each setup. And the script, being a script, is of course very easy to extend with more programs. Next on my list is the addition of Guitarix to the script.

I suggest you do something similar.

Portability, though, is an issue, though you may not have this issue (yet). I've been trying to build zip-packages with the complete set of presets, config files etc., to reliably port a complete setup, with presets from one PC to another. I need this, so I can prepare a complete setup on my main machine, and install the setup on a portable laptop. It doesn't always work, but it does most of the time.
Presets are particularly hard to deal with. There are no definitive rules or standards for the location of the presets. Those for lv2 and vst default to system-wide locations such as /usr/lib/<something>, other to user specific locations such as ~/.config/<something>, ~/.<something> and similar, and that does not make it easy to package a complete setup. Many programs can save presets locally, but then some cannot. So for each program one wants to add to the package, you have to read up on the program to see how it deals with presets and paths, to be able to add it to the package. Some programs accept relative paths to the presets some don't. For example, Carla accepts relative paths in the .carpx-file. If you hand edit the file that is. But at next Carla save all paths turn absolute again, which is *really* annoying when you try to port a Carla setup to another installation and location. So one future task for me is to make my script automatically rewrite the carpx-locations to relative paths again. (Alternatively FalkX might have a good solution for this. Notch! notch!)

/Frank
Vox, Selmer, Yamaha and Leslie amplifiers. Rickenbacker, Epiphone, Ibanez, Washburn, Segovia, Yamaha and Fender guitars. Hammond, Moog, Roland, Korg, Yamaha, Crumar, Ensoniq and Mellotron keyboards. Xubuntu+KXStudio recording setup.

Musicteacher
Established Member
Posts: 167
Joined: Mon Nov 13, 2017 5:54 am

Re: Restore complete Jack-session

Post by Musicteacher »

Hi,

thanks for your answer. I think I´ll try out Carla.

Yesterday I had a QTractor Session and was in the hope that it would take care of saving all settings for the plugins, but it didn´t.

Carla can use Windows VST, can it? I am under the impression that there are not enough native Linux VSTs, especially virtual instruments.

As for your problems: I´d consider the converting of relative paths to absolute a bug and report it. Of course, if you use relative paths, the configuration file itself is not portable.

Have you thought about booting from a portable device? As long as you don´t use proprietary display drivers this usually works without problems (one might be the audio hardware, if that differs on your different machines).
What I mean is: Not a live system. Do a real install on an USB Drive. You then can boot from it on any machine, with the aforementioned exceptions.

I´ll keep the possibility to write a script in the background.

Thanks for your Answer

Andreas

tavasti
Established Member
Posts: 956
Joined: Tue Feb 16, 2016 6:56 am
Location: Kangasala, Finland
Contact:

Re: Restore complete Jack-session

Post by tavasti »

I use non-session-manager. Most likely it can't command all softwares to save properly, and maybe not all softwares can't be started to same state, but anyway get right softwares up and jack connections restored.
Linux veteran & Novice musician

Hear my music at https://audiu.net/users/tawaste

glowrak guy
Established Member
Posts: 1429
Joined: Sat Jun 21, 2014 8:37 pm

Re: Restore complete Jack-session

Post by glowrak guy »

Musicteacher wrote: Carla can use Windows VST, can it? I am under the impression that there are not enough native Linux VSTs, especially virtual instruments.
Andreas
Hi, there are lot's of linux vsts now, but most lack the basic soundbank function of .fxb,
so saving presets one makes in an easily creatable/recallable bank is not possible.
Then, changing sounds can be a trudge that most musicians won't tolerate.

It follows that there are very few new presets created for instruments that are otherwise quite capable
of excellent sounds. But some excellent linux native vst synths have some built-in preset management,
including all of the U-he products, Zynaddsubfx/Yoshimi, Rave-Generator, TAL Noisemaker, and Helm.

For windows vsts, the latest wine-staging is a very capable foundation for linux daw apps.
When some .dll over-rides are added to winecfg, and a solid videocard driver is in use,
there are very few plugins that are fully out of reach. Even software ilok manager has been
reported in working order. YMMV, but the road is far smoother than it was in 2015.

For finding potential candidates for over-rides, osxmidi at the linux reaper forum
shared this tip:

"Finding out what dll's to possibly override can be done by running "strings vstname.dll | grep -i dll",
which will display a list of dll's from the plugins dll file. For instance, if the dll list contains d2d1.dll
and there are problems running the plugin, then d2d1 might possibly be a candidate to override or disable"

Also starting a daw app in a terminal might leave error-hints from a scanning operation
that mention .dll files. To create an over-ride, rename the desired .dll or move it to safety,
obtain and copy the real one in it's place, run the winecfg command to open the config panel,
in the libraries tab, there is a little filebrowser, select the dll to replace,
and there is an 'add' button to click, and it will then appear in a little list box.
Restart wine and rescan your plugins for each daw app.

Cheers

User avatar
noedig
Established Member
Posts: 144
Joined: Wed Feb 12, 2014 4:39 am
Location: South Africa

Re: Restore complete Jack-session

Post by noedig »

Musicteacher wrote:But when I restore that session, the connections do not work, even though the other software is running.

What is a safe way to safe and restore complete setups?

Andreas
I created some software a while ago to aid in this for my keyboard playing use cases.
http://www.noedig.co.za/konfyt/
https://github.com/noedigcode/konfyt --> See Testing branch for latest features.

In your case you would create a MIDI output port to Pianoteq (or not if Pianoteq gets MIDI directly from your device), an audio input port from Pianoteq again and then an audio bus out to jack-rack.
The main thing is that, once you set up the JACK connections within Konfyt, it ensures they are maintained permamently, even when the other apps close and open again.

Check the Documentation --> Use Cases section on the web site for some insight on how it could be used.

Musicteacher
Established Member
Posts: 167
Joined: Mon Nov 13, 2017 5:54 am

Re: Restore complete Jack-session

Post by Musicteacher »

Thank you!

I have now done some work using qtractor. I used carla-rack for virtual instruments (native linux plugins), those got restored after re-loarding qtractor.

Pianotec doesn´t seem to get started automatically. I have to double-click that once, then it works.

Maybe I should put the pianotec into a carla rack.

I will try out your suggestions for sure.

simonvanderveldt
Established Member
Posts: 37
Joined: Mon Sep 04, 2017 9:30 pm

Re: Restore complete Jack-session

Post by simonvanderveldt »

If you want to do this with standalone applications your best bet is either session management, which means either LADISH or Non Session, or use a script/scripting or something like autocable https://llllllll.co/t/beginning-a-gnu-l ... ystem/1119.

Otherwise if you want to do this with plugins you can use any of the DAW's plugin hosts available. You can use native linux plugins (LV2 or VST) directly within them, no need for another plugin host in between.

Post Reply