Soundflow challenge 2: Since the last one was so successful, next problem is in ProTools to audiosuite a range of clips, crossfaded with some muted some not, but leave the muted ones muted after the render, it's ok if they are all audiosuited as long as the retain there previous mute state afterwards. The plugin is not important, Ill swap in a specific one later.
Possible ?, this might be a tough one.
- In reply toChristopher_Barnett⬆:Christopher Barnett @Christopher_Barnett
Answering my own question here:
In an Audiosuite render across multiple clips, some muted and some not, using clip list instead of play list will not unmute the muted clip but still perform the render. It’s been there for ages but I just realized how it worked. (edited)
Kitch Membery @Kitch2020-07-09 21:20:32.176Z
Nice! I did not realise that either.
Christopher Barnett @Christopher_Barnett
Im tryting to set this parameter via a string, my syntax wrong for sure, is it an argument ?
- In reply toChristopher_Barnett⬆:
Dustin Harris @Dustin_Harris
wait...so... it still processes the clips on the timeline?
Christopher Barnett @Christopher_Barnett
Yes, this is quite a big deal, as long as Use in Playlist is active
Kitch Membery @Kitch2020-07-09 22:15:12.850Z
You beat me to it!
- In reply toDustin_Harris⬆:
Kitch Membery @Kitch2020-07-09 22:14:38.253Z
And leves them muted, without messing with the fades!
Select "clip list" amd "USE IN PLAYLIST" like this;
- In reply toChristopher_Barnett⬆:Christopher Barnett @Christopher_Barnett
Kitch, are clip list and play list scriptable arguments ?
// Set processing options
asWin.audioSuiteSetOptions({
selectionreference: "cliplist" ,
processingInputMode: "ClipByClip",
processingOutputMode: "CreateIndividualFiles"Dustin Harris @Dustin_Harris
try these:
EDIT: This throws an error sometimes but I'm not sure why. (the selection reference popup menu)
EDIT 2: Changed the logic a little. Note 'Use Processed Output In Playlist' toggles regardless of being set as 'enable'
sf.ui.proTools.firstAudioSuiteWindow.buttons.whoseTitle.is('Use Processed Output In Playlist').first.checkboxSet({ targetValue: "Enable", }); if (sf.ui.proTools.firstAudioSuiteWindow.popupButtons.whoseTitle.is('Selection Reference').first.value.value != 'clip list') { sf.ui.proTools.firstAudioSuiteWindow.popupButtons.whoseTitle.is('Selection Reference').first.popupMenuSelect({ menuPath: ["clip list"], }); }
Christopher Barnett @Christopher_Barnett
Thank you, this toggles, so it turns on if it's off and vice versa, needs to check I think
Kitch Membery @Kitch2020-07-10 03:06:35.740Z2020-07-10 19:37:46.804Z
This should set the "USE IN PLAYLIST" one way, off => on.
Edited: Added "invalidate()" to if statement.
let win = sf.ui.proTools.firstAudioSuiteWindow; if (win.buttons.whoseTitle.is('Use Processed Output In Playlist').first.value.invalidate().value !== 'Selected') { win.buttons.whoseTitle.is('Use Processed Output In Playlist').first.elementClick(); }
Kitch Membery @Kitch2020-07-10 03:22:22.506Z
@Dustin_Harris & @Christopher_Barnett,
Are you legends getting an error from the following code if an Audiosuite window is open?;
sf.ui.proTools.firstAudioSuiteWindow.popupButtons.whoseTitle.is('Selection Reference').first.popupMenuSelect({ menuPath: ["clip list"], });
Dustin Harris @Dustin_Harris
I am, but only after the first time I run it. I amended my code to made it conditional, and that seemed to get rid of the error, but I haven’t tested it extensively...
Kitch Membery @Kitch2020-07-10 03:26:52.043Z
Thanks Dustin,
I'll test it a bit more later :-)
- In reply toKitch⬆:
Christopher Barnett @Christopher_Barnett
I'm not, it is opening a new window every time though I deselect the little red cube, but that's ok, I'd ideally like to leave all the windows open and just call them, but thats for another day. Great progress so far, thanks guys
Kitch Membery @Kitch2020-07-10 21:23:47.713Z
What audiosuite plugin are you trying to automate? I have an idea that might fix this.
Christopher Barnett @Christopher_Barnett
its going to be multiple plugins, and it looks like this will work across almost all of them, just swapping them in.
Kitch Membery @Kitch2020-07-10 22:10:47.791Z
The following script should check to see if there is already an instance of the plugin open and if there is it will raise that instance of the plugin (focus it). Otherwise it will open the audiosuite plugin you want.
function checkForAudiosuitePlugin(catogory, name) { if (sf.ui.proTools.windows.whoseTitle.is('Audio Suite: ' + name).first.exists) { sf.ui.proTools.windows.whoseTitle.is('Audio Suite: ' + name).first.elementRaise(); } else { sf.ui.proTools.audioSuiteOpenPlugin({ category: catogory, name: name, }); } } checkForAudiosuitePlugin('EQ', 'EQ3 1-Band');
Just change the last line
checkForAudiosuitePlugin('catogory name here', 'plugin name here');
K
Christopher Barnett @Christopher_Barnett
Yes I figured that out a few days ago, still learning this thing
Kitch Membery @Kitch2020-07-10 22:56:13.947Z
Nice!!
- In reply toKitch⬆:
Kitch Membery @Kitch2020-07-10 21:22:05.910Z
Heres a revision, champions!... I worked out that the order of operations for this script is important because switching the "Selection Reference" popup from "playlist" to "clip list" changes the "Use Processed Output In Playlist" to disabled;
New order would be as follows;
- Set "Selection Reference" popup to "clip list"
- Then enable "Use Processed Output In Playlist"
Like this; :-)
let win = sf.ui.proTools.firstAudioSuiteWindow; if (win.popupButtons.whoseTitle.is('Selection Reference').first.value.invalidate().value != 'clip list') { win.popupButtons.whoseTitle.is('Selection Reference').first.popupMenuSelect({ menuPath: ["clip list"], }); } if (win.buttons.whoseTitle.is('Use Processed Output In Playlist').first.value.invalidate().value !== 'Selected') { win.buttons.whoseTitle.is('Use Processed Output In Playlist').first.elementClick(); }
Christopher Barnett @Christopher_Barnett
Super stuff, I gotta say I have being asking Avid to fix this for YEARS !
Finally a relief from clicking
thank you
Kitch, how do you know all these arguments, is it part of the PT SDK you signed up for ?
Kitch Membery @Kitch2020-07-10 21:34:57.620Z
Rock on!
- In reply toChristopher_Barnett⬆:
Kitch Membery @Kitch2020-07-11 03:15:14.804Z
How do I know... Well I do have access to the SoundFlow API, but most of the arguments / properties etc I just get from the code editor by using "F2". Like this;
That and I am obsessed with this stuff! :-)
Do you have any programing experience before soundflow? If not, be sure to watch some of the videos in the help section of the editor. (by clicking the question mark in the right hand corner)
Christian and I created a couple of video's recently on "How to edit shortcuts & triggers." and "How to create your first macro." but if you feel you are past that be sure to check out the "How to automate UI across apps" videos that Christian made. :-)
Dustin Harris @Dustin_Harris
Kitch you absolute legend!
And did I catch that right, F2 brings up a list of applicable arguments?Kitch Membery @Kitch2020-07-11 03:48:49.552Z
You are!
And yes that is correct about F2. Another hot tip is press F1 in the editor and you can see all the Keyboard shortcuts for the the SoundFlow editor :-)
Rock on!
Dustin Harris @Dustin_Harris
Whaaaaaaattt. Now I need to go write code just for the sake of it.
Kitch Membery @Kitch2020-07-11 03:54:46.589Z
Hahahaaaa you are as obsessed as me. :-)
Dustin Harris @Dustin_Harris
It's true! I came to SoundFlow for the workflow improvements, but I never expected to learn Javascript as a side-effect. I use it for random stuff now too. Like tonight I wanted to average some benchmarks but didn't want to type it into a calculator so I just did this: ;)
let numbers = [ 60508, 58899, 55060, 72314, 50284, ] var result = 0; for (let i = 0; i < numbers.length; i++) { result += numbers[i] } alert(String(result / numbers.length))
Kitch Membery @Kitch2020-07-11 04:11:10.516Z
Heheheee! Yep I wrote some scripts for entering in my tax info last year. I’m right with you. Btw what benchmarks are they?
Dustin Harris @Dustin_Harris
Evaluating if I should swap out my video card for a different one. (Spoiler alert: 2016 Nvidia >= 2019 AMD)
Christopher Barnett @Christopher_Barnett
Well, I did have to learn to program a motorola 6800 in raw machine code in college but that was long time ago, I don't think I have enough available memory to fully learn a language and I don't believe there are memory upgrades available for my head !
Dustin Harris @Dustin_Harris
I'm sure Elon Musk is working on it.
Christopher Barnett @Christopher_Barnett
Thank you, gonna bash on this for a while, so far so good.
- In reply toChristopher_Barnett⬆:JJeremiah Moore @Jeremiah_Moore
This worked here but performance was unexpectedly poor operating in Clip List mode, across a long, dense dialogue edit.
SETUP:
2 subjects on lavs, with heavy use of muted clips to focus on one speaker then the other during quick banter. AKA Lots of edits.I decided to run Waves Clarity VX Pro, rendered on one of the tracks.
SO - to avoid wrecking the muting or having to manually trim it all out, I went searching for a method to audiosuite the whole thing leaving the mutes in place and was really happy to find this thread!
CPU is M1 Max MBP with 64 ram. aka: pretty fast.
HOWEVER:
-
when I ran in clip-list mode across a very dense, 1h 10min dialogue edit, it took over an hour to run, slower than real-time, created 800+ audio files (probably about right) then Pro Tools hung before saving. This was repeatable.
-
I ran same, across 22-minute chunks of the show... this did not crash. However, performance was poor: Taking longer than real-time to run, even w/ handles set to .75sec. After running it, I wanted to do it over as I'd mildly overbaked the material... but did not want to wait an hour for it to process.
I BAILED:
I ended up bailing, manually removing all muted clips from the tracks (took me about a half hour) and running VX again, which did the whole track in about 15 minutes without a hitch,FINDING:
clip-mode AS processing seems to be at least 2x performance penalty, for unknown reasonsAlso: It will replace the clips on other open playlists w/ same clips. Dangerous as I usu. use adjancent tracks to back up "pre NR" version of edits. I did successfully back it up using track playlists; the clips would not be modified on inactive playlists.
Curious if other folks are seeing poor performance.
Really want to make this work solidly! -
- In reply toChristopher_Barnett⬆:Christopher Barnett @Christopher_Barnett
Yes, it sucks; ultimately, I think that something AVID needs to fix; we have talked to them about this, of course, as well as deleting muted clips. It is so stupid that the editor would unmute a muted clip!