RX 8 Send to PT and Render
Hi
I have this working in RX 7 - tried Copying the code and changed where it said "RX 7" to "RX 8" - but gives an error of UIElement and click(or something like that in Line 11 (Sorry - can't copy and paste that exactly
There is not this command in John Weir RX 8 package
I have made sure it is a different Macro assigned Keyboard shortcut
Cheers
John
- Christian Scheuer @chrscheuer2020-09-07 08:49:02.312Z
Hi John,
I've heard reports that some scripts need to be changed a bit more beyond just the 7 to 8 unfortunately.
@weirbarry do you have a Send to Pro Tools and Render function in yours? - In reply toJohn_York⬆:Walter Everton @WalterEverton
I discovered that I was having issue with my script too that I had cobbeled together from other sources. And for now my woraround is to use the default keyboard shortcut to send back to ProTools at the top of my script. So instead of clickign on the "shuttel" button I replaced those lines with the keyboard command "command+enter". Find the script here. It seems to be working fairly consistantly. But feel free to copy or alter based off of it. Also take note I'm new to the platform so it may not actually be stable :).
sf.keyboard.press({ keys: "command+enter", }); sf.wait({ intervalMs: 500 }); sf.ui.proTools.appActivateMainWindow({}, "Could not activate Pro Tools"); var win = sf.ui.proTools.floatingWindows.filter(function (w) { var t = w.title.value; return t.indexOf("Audio Suite: RX") == 0 && t.indexOf("Connect") >= 0 })[0]; if (!win || !win.exists) throw "Could not find iZotope RX Connect AudioSuite window"; win.buttons.whoseTitle.is("Render").first.elementClick({}, "Could not click Render"); sf.wait({ intervalMs: 100 }); sf.ui.proTools.waitForNoModals(); win.windowClose();
Dustin Harris @Dustin_Harris
for what it's worth, this has been reliably clicking the shuttle button for me:
var rxVersion = sf.ui.izotope.activeBundleID.slice(-1); var shuttleBtn = sf.ui.izotope.invalidate().mainWindow.children.whoseDescription.contains(`RX${rxVersion} Main Window`).first.getFirstWithDescription("Shuttle"); shuttleBtn.elementClick();
- JJohn York @John_York
H Dustin - is that a code on its own - or to add to Walters?
It looks like I only have to insert RX8 in the brackets
[rxVersion}
Is that correct?
That does not push the RENDER button in RX 8
Best regards
John
Dustin Harris @Dustin_Harris
Hi John, I misunderstood. The above code does not push the render button, it pushes the shuttle button to send the audio back to RX connect. This one should:
var rxVersion = sf.ui.izotope.activeBundleID.slice(-1); var shuttleBtn = sf.ui.izotope.invalidate().mainWindow.children.whoseDescription.contains(`RX${rxVersion} Main Window`).first.getFirstWithDescription("Shuttle"); shuttleBtn.elementClick(); sf.ui.proTools.appActivateMainWindow(); sf.wait({ intervalMs: 750 }); var asWin = sf.ui.proTools.getAudioSuiteWindow(`RX ${rxVersion} Connect`); asWin.audioSuiteRender()
- JJohn York @John_York
Hi Dustin
Great! - that works!
I fly in and out of RX all day - so I really appreciate you getting me back up and running with the Macro that I was using on RX 7 - OMG I missed that speed and ease I had gotten used to!
- and thanks to the others who were trying to work out a solution that would work for me
Christian has set up a fantastic and flexible system for us in the industry... matching the 'new way' of working that we all find ourselves in
Cheers
John
Dustin Harris @Dustin_Harris
Hi John, I’m glad it’s working for you too! It could be my single most important script out of all of my scripts for my workflow; I do everything in RX editor :)
Note: the first line of the script gets the version of RX that is running so it knows to find the corresponding RX Connect plugin in Pro Tools, so it should work after version updates and work on multiple versions of RX on the same system.
Cheers!
- In reply toDustin_Harris⬆:JJohn York @John_York
So should I leave
(`RX ${rxVersion}
as is?I have put in 8 instead of the $ sign and deleted the
{rxVersion}J
Dustin Harris @Dustin_Harris
What you did will work for the duration of RX 8 (assuming there are no significant changes to the bundleID from izotope's side), but this line:
var rxVersion = sf.ui.izotope.activeBundleID.slice(-1);
actually gets the version number from whichever version of RX that is running on the system,
and then the variable rxVersion is called in the other strings with the${rxVariable}
command.You could take my whole script and just manually assign the version number to the variable this way:
var rxVersion = "8"
and it would still work :)
- JIn reply toJohn_York⬆:John York @John_York
Hi Walter
Thank you for your workaround
I find that it seem to do something - like add the RX8Ccnt to the file name - but has not done anything - even though I had deleted all audio in the RX 8 Connect app to proven a difference
I note it seems to close any RX Connect Window in PT which was not happening in RX7 version I got working
Any thoughts
bst regards
John
Walter Everton @WalterEverton
Hey John,
So first thing: the last three lines of my code closes the RX window in ProTools. If you don't want this to happen just either delete it or comment it out. I find it helpful for my workflow.
Second: It is odd that it isn't working for you. The only thing I can think of is that the audio you are trying to send back to ProTools wasn't sent via the AudioSuite connect workflow and so it isn't seeing any changes. Or the other thought without knowing more is that there is a setting in the AudioSuite plugin that isn't correct. I took a screen cap of my RX AduioSuite Connect plugin. I also took a screen cap of the script working on my end here: https://youtu.be/9OwWfHSt5fA . I wonder what is different between our setups. Maybe "Command + enter" on your system is bound to a different control?Oh and if you don't want the AudioSuite window to close because of the script, here it is commented out.
sf.keyboard.press({ keys: "command+enter", }); sf.wait({ intervalMs: 500 }); sf.ui.proTools.appActivateMainWindow({}, "Could not activate Pro Tools"); // Finds the AudioSuite Connect window var win = sf.ui.proTools.floatingWindows.filter(function (w) { var t = w.title.value; return t.indexOf("Audio Suite: RX") == 0 && t.indexOf("Connect") >= 0 })[0]; if (!win || !win.exists) throw "Could not find iZotope RX Connect AudioSuite window"; // Clicks the render button win.buttons.whoseTitle.is("Render").first.elementClick({}, "Could not click Render"); // Waits for activity to cease and closes the AudioSuite window /*sf.wait({ intervalMs: 100 }); sf.ui.proTools.waitForNoModals(); win.windowClose(); */