You are here

Integrating plugin (Calf LV2) functionality?

Greetings - THANK YOU and kudos to Rui for creating these phenomenal audio/midi tools. Amazing accomplishments, and FOSS, no less!

Based on (@cfirwin3) Carl Irwin's excellent YouTube tutorial (of using Qtractor's "inserts" to enable bus outputs to be fed into other bus inputs), I've felt like the floodgates have opened for me to more fully ditch my decades of Win/Mac home studio setups and go 100% Arch Linux. Can't express my appreciation enough!

I'm now trying to utilize the Calf LV2 plugins and am experiencing piping/connectivity confusion - i.e., it's unclear which inputs/outputs of the Calf plugins should be patched to which inputs/outputs within Qtractor's instances of those same plugins (i.e., within the Mixer).

I've searched just about everywhere I could think of throughout the wiki, manual, youtube, Forum, 'net, etc. but haven't yet found any meaningful guidance on how to configure the plugins themselves with Qtractor.

I don't want to waste anyone's time since I'm assuming the answers are already out there somewhere ...

QUESTION: Can someone perhaps just point me in the right direction for an existing tutorial or manual on the way(s) to configure these plugins within Qtractor?

(Meanwhile, I'll continue to fiddle around in hopes of stumbling on the right combinations.)

Thank you again for these amazing tools!

rncbc's picture

hi, thanks you're very welcome

may I ask, what exactly is your (up)setting about?

fwiw. most of the calf plugins should work nicely (including their GUI's)...

please give some more details about your side--qtractor version, package source, environment, system, machine, etc.


Rui --

Many thanks for your reply!

FWIW, I'm using the very latest spring release download of Qtractor (yay'ed via Arch community repository) along with the latest Calf downloads (same source) all running on a repurposed Dell Optiplex which is highly functional, fast quad-processor, etc. Everything is running fast as a squirrel (for comparison, I'm separately running Arch installations on an old MacBookPro and a iMac desktop too (although not for music purposes) but this Dell runs circles around any of those (originally) Apple platforms.

To clarify my (up)settings, my Qtractor is running perfectly - awesome, in fact. My only current confusion surrounds just not understanding - after I open the Calf plugin mgr rack - just which inputs and outputs I'm supposed to be connecting the various FX into/out of for various results. Perhaps it's complicated because I'm using "Inserts" (per Carl Irwin's suggestion) to cascade (i.e., waterfall?) my audio signals (from left to right in the Mixer) and replaced by default "Master" for a final bus-created track which feeds my studio monitors via a Presonus AudioUSB box.

Frankly, I can visually see the incoming signal on the meters within the Calf rack and I hear the clean signal through the monitors... but I can't seem to hear any actual difference between the pre and post FX signal. It's as if bypass is on (which it's not) regardless of whichever corresponding input I connect within that same Calf rack connection panel back into Qtractor.

This may be entirely a Calf issue. I just figured there might be a "tutorial" of sorts out there somewhere. If not, I'll just keep muddling along - discover a solution - and post it here for anyone else coming along after me. Thanks for reading this far.

- OneWatt

rncbc's picture


can you give even more details, especially why you're resorting to external loops (send/return inserts) and not using the calf plugins right inside tracks or buses?

I know Carl resorted to those side hustlers (my wording;)) for some reason some time ago, maybe because some lack of gtk2 build/packaging on his side or distro? idk... move on...

anyway, if you're still up to with send/returns inserts (as per Carl's solution) please beware that you're doing it on the _outside_ of qtractor premises, so to speak, and then you'll need to tame those _external_ connections on your own, meaning that you most probably have to make them somehow with the help of a JACK connection manager, for sake of a better term: qjackctl may get handy in that very business, but there are (plenty) other options if you care: patchage, carla, catia, raysession,... the list goes on and on... though you may well also do it in qtractor: View > Windows > Connections [F8], but you're free to use anything else ;)


The reason I'm using loops (bus outs/ins) is because, like Carl, I cannot get my initial buses (e.g., Audio1, Audio2, etc.) to be heard as inputs to another bus (like AudioMix), nor can that output be heard by the input of "Master" (the default, comes with the package).

If I do what Carl describes, i.e., create buses from left to right (spilling eventually into my own-created "Master" replacement bus), then everything works just fine. I've gone as far as to rename "Master" as "Ignore" since I don't use it for anything as it won't "hear" any of my audio bus tracks.

But even this isn't quite enough. These buses I've made still won't hear the audio signal that's coming from another internal bus from "upstream" - just silence. Yet, if I create inserts inside those upper bus tracks and feed them into a downstream bus track (again, only moving from left to right within the Mixer view) then everything works just fine.

I never would've discovered this solution to my original problem (i.e., silence from my audio bus tracks into the Master) without Carl's helpful post(s).

Believe me, I'm NOT trying to complicate things (any more than Carl was) ... I'm simply trying to overcome some kind of limitation within Qtractor on my installation that we both seem to be experiencing. Hopefully that explains (our) situation and why the "insert" solution is needed.

My setup is using the latest rolling version of Arch Linux (Kernel 6.2.etc) as an EndeavourOS distribution and i3 window environment. I have not issues with any other audio software (like Ardour, et al) but the functionality of Qtractor is so much superior - love it!

Perhaps it's the use of these inserts that create the need to use Calf plugins in a different way than directly without the Calf rack app? If I could use the Calf plugins directly within Qtractor, that'd be great!

So far, I can't seem to figure out how to make that happen - hence my original question about which ins & outs are needed to use these cool Calf FX plugins.

FWIW, I don't seem to need to use an outside application for a different set of LV2 plugins I recently installed. Those work right along side or inside of Qtractor. So perhaps I need to explore in more detail what the difference might be between how my Calf plugins are installed and the other.

Anyhow, I probably shared more than you care to read, so hopefully some of this clarification is helpful in further explaining my present situation and how I got here. Simple is always my strong preference! ;-)

rncbc's picture

ok, sorry if I made you even more confused than you already are

again, can you post a screenshot of a connections manager where one can see all the routing in and out? that would probably help more than my confusing wordings... ;)

anyway, maybe the reason you have silence is because of some limitations and that I've been alerting here and then some time ago, even before to Carl indeed:

Audio Bus Signal Stops After First Layer

also look around these threads here, again not necessarily related to calf plugins but believed relevant to the topic in question:

Routing/Buss issues with LSP Multi Sampler
Audio tracks to a BUS
Qtractor : routing problem
'Subgroup' problem

and for some one-stop visual reference:

The Bus Concept


Well, I've spent time reading & digesting all of the links you've provided above (and some of the links contained in those links ... kind of like bus sends going into other bus inputs ;-) ... what patience you have for the multiple bus routing issue! This has been going on as a confusing obstacle for newbies about a decade now, and you gently nudge folks along to better understand it each time it rears its head. Kudos for your easy going way with us all.

Okay, I've come to understand that my issues with the buses routed into other buses is inherent in the JACK-based design. And that Carl's "internal inserts" solution works around it - although I'm still not sure I entirely understand what's wrong with that solution? (Except the somewhat mysterious comment you shared that this sometimes may work and at other times simply not work - as I didn't think computers intermittently decide to handle data & code differently [i.e. perhaps until we employ AI to manage our virtual studio hookups]).

I'll come back to my original Calf plugin challenge after I more fully digest the system-wide issue of cascading buses a bit more.

Thanks again for your persistence in helping newbies like me better understand what you've known for a very long time.

Add new comment