 |
|
|
08-06-2018, 09:44 AM
|
#1
|
Human being with feelings
Join Date: Oct 2013
Location: Moscow, Russia
Posts: 3,810
|
MPL WiredChain: handling per-track FX routing
EDIT:17.05.2020 I left it as is for now, the 4th prototype still have bad behaviour because of too much limitations of REAPER flexible routing. Near impossible to implement it without external tools. So I`ll probably stick it as is and return to it in the future...
WiredChain is a lua script for REAPER.
It provides configuring FX routing with dropping wires instead digging FX IO pin menus.
This is 4th prototype, hope this attempt is better then previous. You probably saw TrackFX Routing by eugen + mods by kawa and DarkStar, it does the job perfectly, but it still pin-based which can be strange for beginner after wired software like FrutyLoops Patcher, MUX modular etc. So my point is to make interface, which let user connect FX without touching pins, with auto-build routing, in some cases preventing known limitations of Reaper routing inside single track FX chain or workaround them if possible.

Features (will be updated from time to time):- drag/drop wires to connect FX
- allow to reset/clear all pins or pins of FX under mouse cursor
- when route source FX to previous in chain, auto move destination FX
- dockable
Any doable suggestions are welcome.
For this project it is highly recommended to attach gif and description about what happens and what you are expecting. Because I see most of users feel script do something wrong, while it is just handle REAPER routing as it is. So it mostly not a bug, but a desired behaviour which should be workarounded on data or GUI level.
Download/Install: ReaPack, search Action List for mpl_WiredChain (background).lua
Requirements: - REAPER 5.95+
- SWS 2.9.7+
- ReaPack 1.2.1+
- if you install package manually OR you have [Action List/ReaPack: Manage repositories/Options/Install new packages] unchecked, you must also pick for install MPL_Scripts/Functions/Various_functions.lua. It is a must have file to have WiredChain working
Telegram channel for MPL scripts: t.me/mplscripts_chat
Last edited by mpl; 05-17-2020 at 07:49 AM.
|
|
|
08-06-2018, 10:06 AM
|
#2
|
Human being with feelings
Join Date: Oct 2017
Location: Black Forest
Posts: 4,880
|
Now, when you think that most of the cool stuff exists already...
Great work mpl!
|
|
|
08-06-2018, 01:02 PM
|
#3
|
Human being with feelings
Join Date: Aug 2015
Posts: 3,522
|
i'm not a dumb guy, but i always had to take longer than i wished to figure out REAPER's track pinout view. this, however, makes immediate sense.
thank you as always for your work. i check reapack daily for new MPL releases.
__________________
mccrabney scripts: MIDI editing directly from the Arrange screen, inspired by jjos/MPC style sequencers
|
|
|
08-06-2018, 04:52 PM
|
#4
|
Human being with feelings
Join Date: Apr 2013
Location: France
Posts: 9,229
|
Very nice concept ! Thx for your work !
|
|
|
08-06-2018, 04:58 PM
|
#5
|
Banned
Join Date: Dec 2016
Location: England
Posts: 2,432
|
Quote:
WiredChain is a lua script for REAPER.
It provides configuring FX routing with dropping wires instead digging FX IO pin menus.

Features (will be updated from time to time):- drag/drop wires to connect FX
- allow to reset/clear all pins or pins of FX under mouse cursor
- when route source FX to previous in chain, auto move destination FX
- dockable
|
mpl for election? now your on it! much much bettererrer. =)
drag n drop is the way forward.
have cockos not actually employed u yet m8?
|
|
|
08-06-2018, 05:16 PM
|
#6
|
Banned
Join Date: Dec 2016
Location: England
Posts: 2,432
|
+this would be awesome combined with cockos ideas + + eugen2777 lua:fx rack
 killa kombi4the nations.
focusing on targets really helps nail them;;great job all++ thanking you
|
|
|
08-06-2018, 09:53 PM
|
#7
|
Human being with feelings
Join Date: Jun 2013
Location: Krefeld, Germany
Posts: 13,116
|
Are you intending to include "containers" with that concept ?
(i.e. allowing to combine effects to a "multis" that can be used in the same way as single effect in multiple chains)
-Michael
|
|
|
08-06-2018, 10:25 PM
|
#8
|
Human being with feelings
Join Date: Oct 2013
Location: Moscow, Russia
Posts: 3,810
|
I think it is more a request to REAPER devs than to me.
|
|
|
08-06-2018, 11:21 PM
|
#9
|
Human being with feelings
Join Date: Aug 2006
Location: Berlin
Posts: 11,736
|
Very nice. I find this simplification very useful.
|
|
|
08-07-2018, 02:33 AM
|
#10
|
Human being with feelings
Join Date: Aug 2009
Location: NL
Posts: 1,380
|
This is great man!
Much easier to work with than the pins. Thanks for the great work.
Just out of curiosity, what license do you release these scripts under?
|
|
|
08-07-2018, 03:56 AM
|
#11
|
Human being with feelings
Join Date: Oct 2013
Location: Moscow, Russia
Posts: 3,810
|
Use/share/modify/do_whatever_you_want for free.
|
|
|
08-07-2018, 04:44 AM
|
#12
|
Banned
Join Date: Dec 2016
Location: England
Posts: 2,432
|
Quote:
Use/share/modify/do_whatever_you_want for free.
|
^power moves!! source is >open< always.
@mpl- with your wildest imagination,is it actually feasible,to combine 4,or more coders abilities?? (++cockos mind+support of course).
wired chain+lbx stripper+fx rack+rearack ??
|
|
|
08-07-2018, 06:23 AM
|
#13
|
Human being with feelings
Join Date: Mar 2010
Location: Adelaide, South Australia (originally from Geelong)
Posts: 5,596
|
This looks REALLY useful mpl. Going to download this when I'm in the studio.
Nice one.
|
|
|
08-07-2018, 06:44 AM
|
#14
|
Human being with feelings
Join Date: Jun 2013
Location: Krefeld, Germany
Posts: 13,116
|
Containers / macros / multis:
Quote:
Originally Posted by mpl
I think it is more a request to REAPER devs than to me.
|
I don't think so.
Containers / macros / multis just are a way to handle and display basic setup of the plugin routing (and for "morphing" the plugin parameters) within a single totally normal track FX chain.
But in fact this feature is quite independent of the way of displaying the FX chain content as "wired" or otherwise.
-Michael
Last edited by mschnell; 08-08-2018 at 09:32 PM.
|
|
|
08-07-2018, 02:10 PM
|
#15
|
Human being with feelings
Join Date: Feb 2017
Posts: 305
|
If you let me I've got a couple thoughts.
Could you add please one-wire routing mode I mean one-wire with pins 1/2 instead of 1 and 2 ect?
Bypass fx function and visualisation one. (and unconnected wires make a mess a bit I guess. I mean for what to see them)
Double-click on fx to float one would be better than via menu I suppose.
By the way it works well on v5.40
|
|
|
08-07-2018, 04:05 PM
|
#16
|
Human being with feelings
Join Date: Feb 2015
Posts: 703
|
Much thanks, mpl for this one!
If you want suggestions, how about some quick routing shortcuts, for audio and cv/midi splitters and joiners/mixers. Maybe a right-click menu for quick selection and placement in a specific area.
Also some smooth panning. Maybe using a keyboard modifier while dragging or something.
Awesome work, dude!
|
|
|
08-07-2018, 10:59 PM
|
#17
|
Human being with feelings
Join Date: Oct 2013
Location: Moscow, Russia
Posts: 3,810
|
Quote:
Originally Posted by Ivannn Bennnettt
one-wire routing mode I mean one-wire with pins 1/2 instead of 1 and 2 ect
|
added for 1.06 (forgot to mention in changelog)
Quote:
Bypass fx function and visualisation one. (and unconnected wires make a mess a bit I guess. I mean for what to see them)
|
Yeah it need slightly deep calculation of signal flow, I`ll take a look at this, when will attach bypass/offline buttons.
Quote:
Double-click on fx to float one would be better than via menu I suppose.
|
Still didn`t get proper doubleclicking in reascript so currently I didn`t add this to newly written code. I can add an internal mousemodifier (like Ctrl+Alt+LeftClick or MiddleClick) or keyboard shortcut standing for something like "float selected FX" (FX selection was added also in 1.06)
Quote:
Originally Posted by Ozman
If you want suggestions, how about some quick routing shortcuts, for audio and cv/midi splitters and joiners/mixers. Maybe a right-click menu for quick selection and placement in a specific area.
|
Yes, I planning to release some JSFX tools exactly for this script. On this area I`ll probably need some clever guys help (for example building JSFX sharing signal to global memory for feedback/cross-track routing possibilities). Probably I should take a look at ReaRack stuff.
|
|
|
08-08-2018, 01:53 AM
|
#18
|
Banned
Join Date: Dec 2016
Location: England
Posts: 2,432
|
blank-ed.
that's ok.but you know it makes sense for all to work as a team.
|
|
|
08-08-2018, 01:59 AM
|
#19
|
Human being with feelings
Join Date: Feb 2017
Posts: 305
|
one-wire routing mode I mean one-wire with pins 1/2 instead of 1 and 2 ect
Quote:
Originally Posted by mpl
added for 1.06 (forgot to mention in changelog)
|
You mean "auto route further channel"?
I'm talking about to see only one stereo wire (1/2, 3/4 ect). And it works a bit weird (on portable) for instance one conects 1/2 to fx and 1/2 to output (and to input too).
Wire glitches (freezes) when change mind to pin.
|
|
|
08-08-2018, 02:12 AM
|
#20
|
Banned
Join Date: Dec 2016
Location: England
Posts: 2,432
|
Quote:
Wire glitches (freezes) when change mind to pin.
|
^yes,well Ivannn Bennnettt- maybe i am on ignore,but if you could pose the question-
"does it not make sense to put all of these scripts together,as they all deal with the same areas,and affect 1 another,and then get cockos to natively implement the whole thing,as 1 thing+with thorough corner case testings,before any public releases".
please+ty.
|
|
|
08-08-2018, 03:06 AM
|
#21
|
Human being with feelings
Join Date: Feb 2017
Posts: 305
|
Quote:
Originally Posted by Bri1
^yes,well Ivannn Bennnettt- maybe i am on ignore,but if you could pose the question-.
|
Sorry, I've got no idea what you mean
|
|
|
08-08-2018, 04:55 AM
|
#22
|
Human being with feelings
Join Date: Oct 2013
Location: Moscow, Russia
Posts: 3,810
|
Quote:
Originally Posted by Ivannn Bennnettt
one-wire routing mode I mean one-wire with pins 1/2 instead of 1 and 2 ect
You mean "auto route further channel"?
I'm talking about to see only one stereo wire (1/2, 3/4 ect). And it works a bit weird (on portable) for instance one conects 1/2 to fx and 1/2 to output (and to input too).
Wire glitches (freezes) when change mind to pin.
|
I thought before do this thing exactly what you suggested, but for now let it be this way. When we'll sure there aren't any major bugs, I'll make function also handle GUI (stereo pair wire). But note, it is planned for further development also to add vca's, panners, joiners/splitters, and I think it will be hard to maintain stereo pair wires for stuff like this.
Can you attach gif with weird behaviour?
|
|
|
08-08-2018, 07:34 AM
|
#23
|
Human being with feelings
Join Date: Feb 2017
Posts: 305
|
Quote:
Originally Posted by mpl
But note, it is planned for further development also to add vca's, panners, joiners/splitters, and I think it will be hard to maintain stereo pair wires for stuff like this.
|
Button switcher between mode but I guess you mean maintain code and I'm afraid you should to figure out how to do that else it'll be total chaos)
Quote:
Can you attach gif with weird behaviour?
|
|
|
|
08-08-2018, 08:43 AM
|
#24
|
Human being with feelings
Join Date: Jun 2013
Location: So Florida
Posts: 1,313
|
Hi,
Since I'm on xp, I have to go through extra effort to do reapack, so I ask first...
Does this work with midi?and the midi busses?
Something like Logic's enviourment?
Thank you very much mpl.
BTW...you're English has gotten better and better. Grats.
|
|
|
08-08-2018, 10:05 AM
|
#25
|
Human being with feelings
Join Date: Feb 2018
Posts: 30
|
Quote:
Originally Posted by mpl
Still didn`t get proper doubleclicking in reascript so currently I didn`t add this to newly written code. I can add an internal mousemodifier (like Ctrl+Alt+LeftClick or MiddleClick) or keyboard shortcut standing for something like "float selected FX" (FX selection was added also in 1.06)
|
Why not a simple icon inside device boxes?
Bypass and dry/wet wuold be convenient.
Btw great job!!!
|
|
|
08-08-2018, 10:14 AM
|
#26
|
Human being with feelings
Join Date: Oct 2013
Location: Moscow, Russia
Posts: 3,810
|
Quote:
Originally Posted by LugNut
Does this work with midi?and the midi busses?
|
Not yet. Depending on complexity of API implementation (but I anyway requested it to Justin).
|
|
|
08-08-2018, 12:18 PM
|
#27
|
Human being with feelings
Join Date: Jul 2018
Posts: 2
|
Midi modular wiring
Thank you very much MPL for your genius work.
Midi modular wiring will be a powerful addition to this brilliant script with the possibility to bypass and open 32 and 64 bit plugins as Reaper do.
+1000
Greetings from Portugal
|
|
|
08-08-2018, 12:46 PM
|
#28
|
Human being with feelings
Join Date: Oct 2013
Location: Moscow, Russia
Posts: 3,810
|
Quote:
Originally Posted by DIONISIO
Midi modular wiring will be a powerful addition to this brilliant script with the possibility to bypass and open 32 and 64 bit plugins as Reaper do.
|
Float/Bypass/Offline was just added for 1.07
|
|
|
08-08-2018, 01:35 PM
|
#29
|
Human being with feelings
Join Date: Feb 2017
Posts: 305
|
Better, thanks! Keep it up!)
issue: when remove fx pins for instance 3/4 on next fx retun to input
|
|
|
08-08-2018, 08:51 PM
|
#30
|
Human being with feelings
Join Date: Oct 2013
Location: Moscow, Russia
Posts: 3,810
|
Quote:
Originally Posted by Ivannn Bennnettt
Better, thanks! Keep it up!)
issue: when remove fx pins for instance 3/4 on next fx retun to input
|
Here is the note not only for you but for all who reported issues:
For this project it is highly recommended to attach gif and description about what happens and what you are expecting. Because I see most of users feel script do something wrong, while it is just handle REAPER routing as it is. So it mostly not a bug, but a desired behaviour which should be workarounded on data or GUI level.
|
|
|
08-09-2018, 06:01 AM
|
#31
|
Human being with feelings
Join Date: Feb 2017
Posts: 305
|
it is not a bug just some pins remain from fx which is removed.
and a couple other
Last edited by Ivannn Bennnettt; 08-09-2018 at 11:55 AM.
|
|
|
08-10-2018, 01:40 AM
|
#32
|
Human being with feelings
Join Date: Feb 2017
Posts: 305
|
Previous static input/out was better I believe.
I didn't get new option x,y what does that do?
|
|
|
08-10-2018, 02:28 AM
|
#33
|
Human being with feelings
Join Date: Oct 2013
Location: Moscow, Russia
Posts: 3,810
|
Quote:
Originally Posted by Ivannn Bennnettt
it is not a bug just some pins remain from fx which is removed.
and a couple other
|
Everything is expected here. I use rule:
If you link pin2 to pin1, that means you send pin2 to channel 1(pin 1) and feed pin1 by channel 1.
If there are plugins in between, disable anything out to channel 1. Otherwise you will need a pin-based minding chain routing, which I try to prevent. Also not following this rule will be ridiculous complex for designing complex chains and use additional tools.
It can be workarounded by custom jsfx tools i planning to introduce in future.
Removing FX does make 3/4 channel feed by track input, doesn't it?
Last edited by mpl; 08-10-2018 at 02:36 AM.
|
|
|
08-10-2018, 02:34 AM
|
#34
|
Human being with feelings
Join Date: Oct 2013
Location: Moscow, Russia
Posts: 3,810
|
Quote:
Originally Posted by Ivannn Bennnettt
Previous static input/out was better I believe.
I didn't get new option x,y what does that do?
|
Read the changelog?
|
|
|
08-10-2018, 05:13 AM
|
#35
|
Human being with feelings
Join Date: Feb 2017
Posts: 305
|
Quote:
Originally Posted by mpl
Read the changelog?
|
but nothing happens, then
Quote:
Originally Posted by mpl
Everything is expected here. I use rule:
If you link pin2 to pin1, that means you send pin2 to channel 1(pin1) and feed pin1 by channel 1.
If there are plugins in between, disable anything out to channel 1. Otherwise you will need a pin-based minding chain routing, which I try to prevent. Also not following this rule will be ridiculous complex for designing complex chains and use additional tools.
It can be workarounded by custom jsfx tools i planning to introduce in future.
|
I thought idea of mode "Auto route further channel" is be kind of pseudo stereo pair and I expected to see the same behavior from second pin (that is logically I think). If I need to send pins apart I'll just switch the mode.
But I see there's weird behavior: when I send from pin2 to pin1 next fx's cleared pins output and from first fx's sent to 1/2 main output. When send pin2 to pin3 next fx's sent pin4 to main input.
Just 2 mode and that won't be sophisticated I suppose.
Quote:
Removing FX does make 3/4 channel feed by track input, doesn't it?
|
Yes it does, If I remove fx I excpect that route pins remove as well (the same with clean pins)
And if you let me I advise you to hold on with "new complex features"
|
|
|
08-10-2018, 05:25 AM
|
#36
|
Human being with feelings
Join Date: Oct 2015
Posts: 691
|
Mpl, one request. Can you please add function to select all bypassed/offline effects, so that they can be removed quickly.
I try to use your script "mpl_Delete bypassed and offline fx from selected tracks.lua", but for some reason it gets extremely slow with some plugins. It does the job, but it deletes plugins one by one, which takes several minutes on some of my chains. It depends on plugins in chain - with some plugins it is much faster, but when certain plugins are in chain, it takes forever..
If there was a way to just select all bypassed/offline plugins, and then remove them in one go, it would do it much faster. In my chain, if I select many plugins, and click "Remove" button, it removes them almost instantly. But your plugin removes one by one, and something is refreshing each time, so it takes many seconds to remove just one plugin.
Last edited by sonicowl; 08-10-2018 at 06:23 AM.
|
|
|
08-10-2018, 07:34 AM
|
#37
|
Human being with feelings
Join Date: Oct 2013
Location: Moscow, Russia
Posts: 3,810
|
Quote:
Originally Posted by sonicowl
In my chain, if I select many plugins, and click "Remove" button, it removes them almost instantly
|
There were some new APIs introduced in 5.95pre3+, which are dedicated to pligins order/deletion and getting/setting offline state. It still removes plugins one by one, but should be faster. WiredChain use this API already (I`ll probably add internal action to select bypassed or offline FX so you can remove it by "delete" key). m pl_Delete bypassed and offline fx from selected tracks.lua was just splitted into 3 new actions which use new API, check ReaPack.
|
|
|
08-10-2018, 07:55 AM
|
#38
|
Human being with feelings
Join Date: Oct 2015
Posts: 691
|
Quote:
Originally Posted by mpl
There were some new APIs introduced in 5.95pre3+, which are dedicated to pligins order/deletion and getting/setting offline state. It still removes plugins one by one, but should be faster. WiredChain use this API already (I`ll probably add internal action to select bypassed or offline FX so you can remove it by "delete" key). mpl_Delete bypassed and offline fx from selected tracks.lua was just splitted into 3 new actions which use new API, check ReaPack.
|
Wow, new API is really faster. Before it took few minutes to do it, now same chain is cleared in few seconds. It is really handy that you split bypassed and offline into two actions, much more versatile. And the third one, to change bypassed fx into offline, very handy.
If you will implement some of this functionality into WiredChain, I think removing selected fx with "delete" key would be most practical.
|
|
|
08-10-2018, 08:22 AM
|
#39
|
Human being with feelings
Join Date: Oct 2013
Location: Moscow, Russia
Posts: 3,810
|
Quote:
Originally Posted by Ivannn Bennnettt
but nothing happens
|
Clearing destination FX when route FX to FX should be fixed in 1.09
Quote:
When send pin2 to pin3 next fx's sent pin4 to main input.
|
Expected. There is no FX1 pin3 so pin4 feed on previous source (in your case it is track input)
Quote:
And if you let me I advise you to hold on with "new complex features"
|
I didn`t get your point here. The developing process I follow is close to what Cockos do: developing new features, responding to bug reports, refactoring, improving etc at the same time. Otherwise you`ll never get stuff like you see here with zero investment from community. In other words, no, I will NOT sit for hours and doing one feature perfect working. Instead I will do something else and wait for someone to response about how good old feature works and does it need fix or improvement (btw thanks for bug reports).
Quote:
Yes it does, If I remove fx I excpect that route pins remove as well (the same with clean pins)
|
I don`t think it is a good idea to clear pins of further FX if you delete previous.
Last edited by mpl; 08-10-2018 at 10:00 PM.
|
|
|
08-10-2018, 08:50 AM
|
#40
|
Human being with feelings
Join Date: Oct 2015
Posts: 691
|
MPL WiredChain v1.08: Some plugins are long, so they are truncated, with three dots in front. Would it make sense to flip text into two lines?
|
|
|
Thread Tools |
|
Display Modes |
Linear Mode
|
Posting Rules
|
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
HTML code is Off
|
|
|
All times are GMT -7. The time now is 06:11 AM.
|