No internet connection
  1. Home
  2. Support

RX 8 Send to PT and Render

By John York @John_York
    2020-09-06 22:44:13.555Z

    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

    • 11 replies
    1. 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?

      1. In reply toJohn_York:
        Walter Everton @WalterEverton
          2020-09-08 06:01:58.993Z

          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();
          1. Dustin Harris @Dustin_Harris
              2020-09-08 16:28:53.689Z

              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();
              
              1. JJohn York @John_York
                  2020-09-08 19:29:58.338Z

                  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

                  1. Dustin Harris @Dustin_Harris
                      2020-09-08 19:35:12.513Z

                      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()
                      
                      1. JJohn York @John_York
                          2020-09-09 07:20:33.609Z

                          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

                          1. Dustin Harris @Dustin_Harris
                              2020-09-09 13:10:53.118Z

                              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
                                2020-09-09 13:36:21.258Z

                                So should I leave
                                (`RX ${rxVersion}
                                as is?

                                I have put in 8 instead of the $ sign and deleted the
                                {rxVersion}

                                J

                                1. Dustin Harris @Dustin_Harris
                                    2020-09-09 13:42:40.450Z

                                    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 :)

                          2. J
                            In reply toJohn_York:
                            John York @John_York
                              2020-09-08 13:57:55.908Z

                              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

                              1. Walter Everton @WalterEverton
                                  2020-09-09 18:29:23.999Z

                                  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();
                                  */