No internet connection
  1. Home
  2. Script Sharing

Reels Bounce

By Ricardo Cutz @Ricardo_Cutz
    2022-03-23 14:04:47.373Z

    Hello all, someone reach out on instagram asking for my bounce reel script. I'm sharing it here.
    Few considerations:

    1- I'd made it on macros and later loop it repeating the first reel script;
    2- it is necessary to firstly select the bounce location manually before start
    3- You should create 2 tracks with the name MIX and 2CH so the script could find the appropriate tracks - you can change it, changing the script
    4- I'm sharing only the first 2 reels, you need to loop it to the number of reels you want.
    5- The Batch Rename Clip operates loading a preset - you need to create it witht the same name '6ch-2ch' or create your own changing the names.
    6- On thr first reel it checks various conditions on the BOUNCE WINDOW, sample rate, bit reate, interleaved, offline, no mp3,
    import after bounce, etc... Eventually you need to change those parameters to meet your requirements.
    7- enjoy it and improvements are welcomed!

    //activate pro tools
    sf.ui.proTools.appActivateMainWindow();
    //SELECT TRACK MIX 5.1
    sf.ui.proTools.trackGetByName({ name: "MIX", makeVisible: true }).track.trackSelect();
    
    //start selecting the first clip
    sf.ui.proTools.mainWindow.counterDisplay.textFields.whoseTitle.is("Main Counter").first.elementClick();
    
    sf.keyboard.type({
        text: "01000000",
    });
    
    sf.keyboard.press({
        keys: "return",
    });
    
    sf.keyboard.press({
        keys: "shift+tab",
    });
    
    sf.keyboard.press({
        keys: "cmd+shift+r",
    });
    
    sf.ui.proTools.windows.whoseTitle.is("Name").first.elementWaitFor();
    
    sf.keyboard.press({
        keys: "cmd+c",
    });
    
    sf.ui.proTools.windows.whoseTitle.is("Name").first.buttons.whoseTitle.is("OK").first.elementClick();
    
    //open bounce window
    sf.ui.proTools.menuClick({
        menuPath: ["File","Bounce Mix..."],
    });
    
    sf.ui.proTools.windows.whoseTitle.is("Bounce Mix").first.elementWaitFor();
    
    sf.keyboard.press({
        keys: "cmd+v",
    });
    
    sf.ui.proTools.windows.whoseTitle.is("Bounce Mix").first.checkBoxes.whoseTitle.is("Offline").first.checkboxSet({
        targetValue: "Enable",
    });
    
    sf.ui.proTools.windows.whoseTitle.is("Bounce Mix").first.groups.whoseTitle.is("Audio").first.checkBoxes.whoseTitle.is("Add MP3").first.checkboxSet({
        targetValue: "Disable",
    });
    
    sf.ui.proTools.windows.whoseTitle.is("Bounce Mix").first.groups.whoseTitle.is("Location").first.checkBoxes.whoseTitle.is("Import After Bounce").first.checkboxSet({
        targetValue: "Enable",
    });
    
    sf.ui.proTools.windows.whoseTitle.is("Bounce Mix").first.groups.whoseTitle.is("Audio").first.popupButtons.allItems[1].popupMenuSelect({
        menuPath: ["Interleaved"],
    });
    
    sf.ui.proTools.windows.whoseTitle.is("Bounce Mix").first.groups.whoseTitle.is("Audio").first.popupButtons.allItems[2].popupMenuSelect({
        menuPath: ["24 Bit"],
    });
    
    sf.ui.proTools.windows.whoseTitle.is("Bounce Mix").first.groups.whoseTitle.is("Audio").first.popupButtons.allItems[3].popupMenuSelect({
        menuPath: ["48 kHz"],});
    
    sf.ui.proTools.windows.whoseTitle.is("Bounce Mix").first.buttons.whoseTitle.is("Bounce").first.elementClick();
    
    //WAIT AUDIO IMPORT DIALOG
    sf.ui.proTools.windows.whoseTitle.is("Audio Import Options").first.elementWaitFor({
        waitType: "Appear",
        timeout: 50000,
    });
    
    sf.ui.proTools.windows.whoseTitle.is("Audio Import Options").first.popupButtons.first.popupMenuSelect({
        menuPath: ["Spot"],
    });
    
    sf.ui.proTools.windows.whoseTitle.is("Audio Import Options").first.buttons.whoseTitle.is("OK").first.elementClick();
    
    sf.ui.proTools.clipSpotDialog.elementWaitFor({
        waitType: "Appear",
    });
    
    sf.ui.proTools.clipSpotDialog.buttons.whoseTitle.is("OK").first.elementClick();
    
    //WAIT AUDIO IMPORT FINISHING
    sf.wait({
        intervalMs: 2000,  
    });
    
    //BATCH RENAME * AUDIOFILE RENAME
    
    sf.keyboard.press({
        keys: "ctrl+shift+r",
    });
    
    sf.ui.proTools.windows.whoseTitle.is("Batch Clip Rename").first.elementWaitFor();
    
    sf.ui.proTools.windows.whoseTitle.is("Batch Clip Rename").first.children.whoseRole.is("AXMenuButton").whoseTitle.is("Librarian menu").first.popupMenuSelect({
        menuPath: ["6ch-2ch"],
    });
    
    sf.ui.proTools.windows.whoseTitle.is("Batch Clip Rename").first.buttons.whoseTitle.is("OK").first.elementClick();
    
    sf.keyboard.press({
        keys: "cmd+shift+r",
    });
    
    sf.keyboard.press({
        keys: "cmd+c",
    });
    
    sf.keyboard.press({
        keys: "cmd+v",
    });
    
    sf.ui.proTools.windows.whoseTitle.is("Name").first.buttons.whoseTitle.is("OK").first.elementClick();
    
    //MOVE 2.0 BOUNCE TO IT OWN TRACK DELET ORIGINAL TRACK
    
    sf.keyboard.press({
        keys: "cmd+x",
    });
    
    sf.ui.proTools.trackGetByName({ name: "2CH", makeVisible: true }).track.trackSelect();
    
    sf.keyboard.press({
        keys: "cmd+v",
    });
    
    sf.keyboard.press({
        keys: "p",
    });
    
    sf.ui.proTools.menuClick({
        menuPath: ["Track","Delete"],
    });
    
    //SELECT 5.1 ORIGINAL
    sf.ui.proTools.trackGetByName({ name: "MIX", makeVisible: true }).track.trackSelect();
    
    //REPEAT ALL OVER TO 2º REEL WITHOUT CHECKING BOUNCE PARAMETERS
    
    sf.ui.proTools.mainWindow.counterDisplay.textFields.whoseTitle.is("Main Counter").first.elementClick();
    
    sf.keyboard.type({
        text: "02000000",
    });
    
    sf.keyboard.press({
        keys: "return",
    });
    
    sf.keyboard.press({
        keys: "shift+tab",
    });
    
    sf.keyboard.press({
        keys: "cmd+shift+r",
    });
    
    sf.ui.proTools.windows.whoseTitle.is("Name").first.elementWaitFor();
    
    sf.keyboard.press({
        keys: "cmd+c",
    });
    
    sf.ui.proTools.windows.whoseTitle.is("Name").first.buttons.whoseTitle.is("OK").first.elementClick();
    
    //abre o janela de dialogo do bounce
    sf.ui.proTools.menuClick({
        menuPath: ["File","Bounce Mix..."],
    });
    
    sf.ui.proTools.windows.whoseTitle.is("Bounce Mix").first.elementWaitFor();
    
    sf.keyboard.press({
        keys: "cmd+v",
    });
    
    sf.ui.proTools.windows.whoseTitle.is("Bounce Mix").first.buttons.whoseTitle.is("Bounce").first.elementClick();
    
    sf.ui.proTools.windows.whoseTitle.is("Audio Import Options").first.elementWaitFor({
        waitType: "Appear",
        timeout: 50000,
    });
    
    sf.ui.proTools.windows.whoseTitle.is("Audio Import Options").first.buttons.whoseTitle.is("OK").first.elementClick();
    
    sf.ui.proTools.clipSpotDialog.elementWaitFor({
        waitType: "Disappear",
    });
    
    sf.ui.proTools.clipSpotDialog.buttons.whoseTitle.is("OK").first.elementClick();
    
    sf.wait({
        intervalMs: 2000,
    });
    
    //BATCH RENAME * AUDIOFILE RENAME
    
    sf.keyboard.press({
        keys: "ctrl+shift+r",
    });
    
    sf.ui.proTools.windows.whoseTitle.is("Batch Clip Rename").first.elementWaitFor();
    
    /*sf.ui.proTools.windows.whoseTitle.is("Batch Clip Rename").first.children.whoseRole.is("AXMenuButton").whoseTitle.is("Librarian menu").first.popupMenuSelect({
        menuPath: ["6ch-2ch"],
    });*/
    
    sf.ui.proTools.windows.whoseTitle.is("Batch Clip Rename").first.buttons.whoseTitle.is("OK").first.elementClick();
    
    sf.keyboard.press({
        keys: "cmd+shift+r",
    });
    
    sf.keyboard.press({
        keys: "cmd+c",
    });
    
    sf.keyboard.press({
        keys: "cmd+v",
    });
    
    sf.ui.proTools.windows.whoseTitle.is("Name").first.buttons.whoseTitle.is("OK").first.elementClick();
    
    //MOVE O BOUNCE 2.0 PARA PISTA STEREO E DELETA A PISTA ORIGINAL
    
    sf.keyboard.press({
        keys: "cmd+x",
    });
    
    sf.ui.proTools.trackGetByName({ name: "2CH", makeVisible: true }).track.trackSelect();
    
    sf.keyboard.press({
        keys: "cmd+v",
    });
    
    sf.keyboard.press({
        keys: "p",
    });
    
    sf.ui.proTools.menuClick({
        menuPath: ["Track","Delete"],
    });
    
    sf.ui.proTools.trackGetByName({ name: "MIX", makeVisible: true }).track.trackSelect();
    
    • 1 replies
    1. V
      Vanessa Garde @Vanessa_Garde
        2022-03-23 20:35:57.147Z

        Fantastic! Many thanks!!! :-)