1
1
-- @description FX chain A-B
2
2
-- @author Thomas Dahl
3
- -- @version 1.02
4
- -- @changelog Some bugs and forgotten reaper.ShowConsoleMsg :-)
5
- -- @provides [windows] .
3
+ -- @version 1.03
4
+ -- @changelog
5
+ -- Added visual feedback on loaded A and B buttons (white border)
6
+ -- Added target platform: All (tested on Windows and Ubuntu linux)
7
+ --
8
+ -- Removed in description about copying to another track - waiting for
9
+ -- a solution on possible bug in ultraschall.SetFXStateChunk.
6
10
-- @about
7
- -- # tompad_FXchain_A-B
11
+ -- # tompad_FX_chain_AB
8
12
-- Reascript for A/B-ing FX chains in Reaper DAW
9
13
--
10
- -- Use tompad_FXchain_A-B to compare different fx chains you create on a track.
11
- -- You can also use it to copy a fx chain to another track.
14
+ -- Use tompad_FX_chain_AB to compare different fx chains you create on a track.
15
+ --
12
16
--
13
17
-- How to use:
14
18
-- 1. Create a fx chain on a track.
15
- -- 2. Run tompad_FXchain_A-B .
19
+ -- 2. Run tompad_FXchain_AB .
16
20
-- 3. Make sure the track with the fx chain is selected and press Inject A-button.
17
21
-- 4. Make a new fx chain on track OR make some adjustments to the fx chain and press Inject B-button.
18
22
-- 5. Its now possible to compare the two fx chains by pressing the two big buttons A and B.
24
28
-- Ultraschall API package from https://github.com/Ultraschall/ultraschall-lua-api-for-reaper/raw/master/ultraschall_api_index.xml
25
29
26
30
31
+
27
32
-- Setup package path locations to find rtk via ReaPack
28
33
local entrypath = ({reaper .get_action_context ()})[2 ]:match (' ^.+[\\ //]' )
29
34
package.path = string.format (' %s/Scripts/rtk/1/?.lua;%s?.lua;' , reaper .GetResourcePath (), entrypath )
@@ -114,12 +119,12 @@ fx_chain2 = nil
114
119
115
120
local hbox1 = window :add (rtk .HBox {spacing = 20 , margin = 20 })
116
121
117
- local btn_a = hbox1 :add (rtk .Button {" A" ,fontscale = 7 , h = 140 , w = 86 , color = ' red' ,border = ' white ' ,})
122
+ local btn_a = hbox1 :add (rtk .Button {" A" ,fontscale = 7 , h = 140 , w = 86 , color = ' red' ,border = ' black ' ,})
118
123
btn_a .onclick = function ()
119
124
loadFXChain1 ()
120
125
end
121
126
122
- local btn_b = hbox1 :add (rtk .Button {" B" ,fontscale = 7 ,h = 140 , w = 86 , color = ' blue' ,border = ' white ' ,})
127
+ local btn_b = hbox1 :add (rtk .Button {" B" ,fontscale = 7 ,h = 140 , w = 86 , color = ' blue' ,border = ' black ' ,})
123
128
btn_b .onclick = function ()
124
129
loadFXChain2 ()
125
130
end
@@ -128,11 +133,13 @@ local hbox2 = window:add(rtk.HBox{spacing=40, tmargin=170, lmargin=30})
128
133
local btn_inject_a = hbox2 :add (rtk .Button {" Inject A" })
129
134
btn_inject_a .onclick = function ()
130
135
saveFXChain1 ()
136
+ btn_a :attr (' border' , ' white' )
131
137
end
132
138
133
139
local btn_inject_b = hbox2 :add (rtk .Button {" Inject B" })
134
140
btn_inject_b .onclick = function ()
135
141
saveFXChain2 ()
142
+ btn_b :attr (' border' , ' white' )
136
143
end
137
144
138
145
-- Save the current FX chain to a string variable (Inject)
0 commit comments