Notifications
Clear all

How To Unify VSTs with AutoHotKey Scripts

Page 1 / 4

craigr68
(@craigr68)
Trusted Member
Joined: 11 months ago
Posts: 89
Topic starter  

This topic used to be titled "My Alternative Browser PlugInGuru Forums" but quickly turned into a discussion about "Unifying VSTs with Autohotkey Scripts" so the title was changed.  It involves discussion between mostly 3 individuals as they shared how to automate Unify libraries.  Through out the discussion there are Autohotkey examples as they evolved.  It led to the creation of many of the now available free libraries hosted at PluginGuru website.  

This topic was modified 8 months ago by craigr68
This topic was modified 5 months ago 2 times by craigr68

Quote
JeremyH
(@zinct)
Member
Joined: 1 year ago
Posts: 429
 

@craigr68 

Thanks, this looks interesting; I'm going to give AutoHotkey a try myself.

I'm just wondering whether it could be used to help automate Unifying Kontakt libraries (or any other library I suppose). 

So when I Unify a Kontakt library I usually create the first patch, set levels, add the master effects etc and save it while keeping both the Unify and Kontakt UI open so that I can quickly switch to the next patch in Kontakt, then Save - Save As using the name of the next patch from Kontakt for the each new Unify patch. This can be very boring, repetitive, error prone and time consuming (I just Unified Rigid Audio Synferno - 350 patches which took a fair time but there are much bigger libraries than this).

Can AutoHotkey, for example, copy/paste the patch name from a specific screen area and click on a UI button (e.g. Kontakt next patch)? Failing that I guess the patch names could be captured in a text file easily if they are stored on disk in a specific folder. 

I will be watching a few YouTube videos on AutoHotkey tonight! Thanks for the inspiration.

 


ReplyQuote
getdunne
(@getdunne)
Member Admin
Joined: 2 years ago
Posts: 2788
 

It would be great if you guys can devise a semi-automated procedure for unifying Kontakt libraries. Please keep us posted!


JeremyH liked
ReplyQuote
thsve
(@thsve)
Estimable Member
Joined: 2 years ago
Posts: 182
 

@zinct

That is exactly what I’m doing with AHK. I have used it to Unify libraries from several different VSTi’s among them Kontakt, Massive, Absynth, Serum and Omnisphere. I have described my procedure in other posts in the forum.

Win 10/Cubase Pro 11/Wavelab 8/Spectrasonics all/NI 13/Izotope MPS2Serum/Cthulhu/MusicLab guitar vsts/etc


ReplyQuote
JeremyH
(@zinct)
Member
Joined: 1 year ago
Posts: 429
 

@thsve Thanks, I must have missed them, oops! I will have a search!

EDIT: found your post re BreakTweaker https://forums.pluginguru.com/questions-about-unify-v1-0/batch-resave-of-unify-files/#post-6555  

This post was modified 8 months ago 2 times by JeremyH

ReplyQuote
thsve
(@thsve)
Estimable Member
Joined: 2 years ago
Posts: 182
 

@zinct

Good. Let me know if you want more detailed input, I can put together an example for Kontakt.

Win 10/Cubase Pro 11/Wavelab 8/Spectrasonics all/NI 13/Izotope MPS2Serum/Cthulhu/MusicLab guitar vsts/etc


JeremyH liked
ReplyQuote
craigr68
(@craigr68)
Trusted Member
Joined: 11 months ago
Posts: 89
Topic starter  

I've got a few scripts that do automated mouse clicks and moves, copy/paste the clipboard, etc.  If that's all you need to do, it seems do-able.  Autohotkey comes with a utility Window Spy that helps you figure out the mouse coordinates and other information.  I don't have Kontakt so I'm trying it with Synthmaster One as a test.  Anyway, sounds like thsve has you covered.


JeremyH liked
ReplyQuote
JeremyH
(@zinct)
Member
Joined: 1 year ago
Posts: 429
 

@thsve

Thanks for your offer of help.

I am working my way through your Breaktweaker example and I can see where you are sizing the Unify window and clicking on next patch and save in Unify but I don't see where it is changing patches and getting the patch name in Breaktweaker? 

Here's how I imagine it could work...

1. The user loads Kontakt and its library into Unify.

2. User selects the first patch in the Kontakt library

3. User sets up Unify layer as necessary (effects, MIDI etc)

4. User saves the patch in Unify, creating a new library named as per the Kontakt library name

5. User calls up the AutoHotkey script which....

  • a. Sizes the Kontakt and Unify windows
  • b. Asks the user for the number of patches, user enters the number.  
  • c. Loops through the number of times:
  •        Activates Kontakt window, clicks on next patch arrow, extracts patch name (how?), pause
  •        Activates Unify window, clicks on save, names patch as per extracted Kontakt patch name, clicks on save as, then save.

I can see that there needs to be pauses to allow time for patch loading/saving etc but how does AutoHotkey extract the patch name from Kontakt? Alternatively it's quite easy to make a list of the patch names in most libraries so can AutoHotkey read a list of names in a file and use it to name each patch in Unify? 


ReplyQuote
thsve
(@thsve)
Estimable Member
Joined: 2 years ago
Posts: 182
 

@zinct

In order to get the patchnames, I extract them from the Kontakt-folder where they are stored. I am using the command dir *.nki /B /S to get a list. After that I use Notepad++ to extract the patchname only and save the list in a textfile. Notepad with this file is opened when I run the script and the script is cutting the patchname one by one from the list and pastes them into Unify.

I have recorded a short movie that shows the scripts running. You will find the movie here and the two scripts I used for this. One is for positioning the windows and one is the actual script that creates Unify patches. You can use them as a starting point.

https://www.dropbox.com/sh/zkz13bhxnjzkitd/AAAqJqk32NEfkJjXCClcFjika?dl=0

If you need to change positioning, use WindowSpy that Craigr68 mentioned above. That is included in AHK. Good luck and don't hesitate to ask if you need more input. 

 

Win 10/Cubase Pro 11/Wavelab 8/Spectrasonics all/NI 13/Izotope MPS2Serum/Cthulhu/MusicLab guitar vsts/etc


ReplyQuote
JeremyH
(@zinct)
Member
Joined: 1 year ago
Posts: 429
 

Thanks @thsve will let you know how I get on.

Thanks also @craigr68


ReplyQuote
craigr68
(@craigr68)
Trusted Member
Joined: 11 months ago
Posts: 89
Topic starter  

I got it working to Unify my Synthmaster One Favorites.  Took a while to get all those mouse clicks correct.  Of course with this approach, every vst would need a special script since they all have unique interfaces.  Anyway, I guess you only need the Kontakt one.

I bought BBCSO Discover and added it to my Program Change script (screenshot).  It's not real pretty but it's functional.  I was thinking when Shane gets around to incorporating Progam Changes within Unify, if he might lay it out something like this with program change next to each preset and in a table like format.  Anyway, just a suggestion.  I'm actually using this to create my own patch changing library with my favorite VSTs (last screenshot).


JeremyH liked
ReplyQuote
craigr68
(@craigr68)
Trusted Member
Joined: 11 months ago
Posts: 89
Topic starter  
Posted by: @thsve

In order to get the patchnames, I extract them from the Kontakt-folder where they are stored. I am using the command dir *.nki /B /S to get a list. After that I use Notepad++ to extract the patchname only and save the list in a textfile. Notepad with this file is opened when I run the script and the script is cutting the patchname one by one from the list and pastes them into Unify.

How about loop the folder with Loop, Files command, fileappend names to a text file.  Then FileReadLine command to retrieve.


JeremyH liked
ReplyQuote
thsve
(@thsve)
Estimable Member
Joined: 2 years ago
Posts: 182
 

@craigr68

I’m aware that there are other and probably better ways to do this 😀, but this was the fastest way to solve my requirement . When I started I had no knowledge of AHK so I started to experiment. After that I kept this solution and it has been easy to adapt this to different circumstanses. Today I have a bunch of specialized  scrips. Some are far more advanced than this one 😎 . I also have made different Python programs to add/change metadata in Unify patches by reading the source patches or other sources where metadata are located. Every VSTi requires an unique solution .  

Win 10/Cubase Pro 11/Wavelab 8/Spectrasonics all/NI 13/Izotope MPS2Serum/Cthulhu/MusicLab guitar vsts/etc


ReplyQuote
JeremyH
(@zinct)
Member
Joined: 1 year ago
Posts: 429
 

@thsve

I got the window move script working OK and then moved on to the Kontakt patch creation one using Window Spy to modify the mouse co-ordinates for my setup.

Relying on exact co-ordinates for mouse clicks is a bit scary when you get it wrong! So the biggest issue I have is debugging the script without it screwing up something else (like my desktop) by making sure the mouse co-ordinates are correct when it clicks somewhere and does something like selecting and pasting text. 

What's the best way to force interruption of a running script? Is there a hotkey already set up (I couldn't find one)? Failing that I might add breakpoints in the loop which require user input (e.g. return carries on and x exits) until it is working so that I can manually exit if I need to.  I looked in Task Manager but couldn't see AutoHotKey running there so had to log out to interrupt it before it wreaked too much havoc on my system! In my case all that seems to have happened is my Kontakt patch creation script got overwritten by patch names.

Failing that maybe debugging it in a VM might be the best way forward. 

This post was modified 7 months ago 2 times by JeremyH

ReplyQuote
thsve
(@thsve)
Estimable Member
Joined: 2 years ago
Posts: 182
 

@zinct

Good that you've got it working. I was inspired by Craigr68, so I made a new version that skips the initial steps of creating textfiles and loops directly from the Kontakt directory. I have uploaded a new movie showing this and the new script. I integrated the positioning script in the same script file and added a counter..

This is the sequence:

1. Find the Kontakt directory with patches and ad the filepatch in the script (2 places)

2. Open Unify

3. Select Kontakt as instrument and open the Kontakt window

4. Load the first patch in the directory i Kontakt

5. Setup and save a dummy patch in  UNIFY with a new directory if needed and add description, tags etc.

6. Open the AHK script and arm it

7. Run the positioning script (Alt+z)

8. Run the main script (Alt+q)

Let the script run until finished.

Pause with Alt+z, Stop with Escape.

 

When I debug, I let it run som loops to see if it "behaves". If not I adjust and run it again. No harm done, just go to the library in the Unify-folder and delete the created patches and run again.

 

Win 10/Cubase Pro 11/Wavelab 8/Spectrasonics all/NI 13/Izotope MPS2Serum/Cthulhu/MusicLab guitar vsts/etc


JeremyH liked
ReplyQuote
craigr68
(@craigr68)
Trusted Member
Joined: 11 months ago
Posts: 89
Topic starter  

Since scripts can get out of control, I define the hotkey ESC to stop them like this.  (I see thsve already has done something like this.)

Hotkey, ESC, ExitScript   ;put this top of script

ExitScript:                     ;put this near bottom of script
ExitApp

Another way of stopping scripts is to look for its icon in the tray, left click on it, and choose Exit.

It occurred to me that the mouse coordinates are most likely dependent on what your screen resolution is set to.  So that if a script was run on another computer, the clicks would have to be adjusted.

One other cool thing about Autohotkey is you can compile scripts to .exe, which enables you to run it on another computer without even installing Autohotkey on that other computer.  Which probably isn't any advantage in this case.  

If you click on the tray icon, you can click on Help which is very extensive.  It shows a lot of examples too.  And if that doesn't do it - the amount of info from Google searches is amazing.  I usually type Autohotkey followed by best description of what I'm seeking.  I've been doing Autohotkey sporadically for a few years, but some of these people make me feel like I don't know anything with their knowledge.  But you can copy, alter, and adapt their code.

There's another forum posting where someone is posting Air Hybrid presets.  I was wondering if he or she is doing it manually.  Since I use Hybrid some, I might try automating that next.  Might be fun.


JeremyH liked
ReplyQuote
JeremyH
(@zinct)
Member
Joined: 1 year ago
Posts: 429
 

Thanks for the further ideas and suggestions @thsve and @craigr68

Incidentally, I was looking in the Taskbar for the AutoHotkey icon to quit/exit but now I see it's over on the Notifications area on the right.

Using AutoHotkey is certainly a million times better than doing this manually 😉  

By the way, I found some useful bits here for setting up Notepad++ for editing AHK files 

https://www.autohotkey.com/boards/viewtopic.php?t=50  

This post was modified 7 months ago 2 times by JeremyH

ReplyQuote
JeremyH
(@zinct)
Member
Joined: 1 year ago
Posts: 429
 

I'm just trying to Unify Sam Spacey Epica Bass (Kontakt) which has sub-folders for Monophonic, Arp etc. and I'm doing it in sections until I'm happy that it's working correctly. 

AutoHotkey seems to be having trouble selecting the text in my list of patches (256) which looks like this....

Monophonic - Anna Flange
Monophonic - Ant Music
Monophonic - Appalachian

It works on some and not others. Maybe the "-" is confusing it?


ReplyQuote
craigr68
(@craigr68)
Trusted Member
Joined: 11 months ago
Posts: 89
Topic starter  

One other possible helpful thing:

If you want to pause the script when it's running you can use the pause command.  Then the tray icon will show in red.  You can click on it and unpause it to continue.  But usually what I do instead, is put in a Msgbox command.  This will pause and put a message on your screen.  It's even more useful where you have variables that are changing and you can step thru the script to see how they're changing.  Here's an example that I yanked out of Help->Loop, Files

Loop Files, %A_ProgramFiles%\*.txt, R ; Recurse into subfolders.
{
MsgBox, 4, , Filename = %A_LoopFileFullPath%`n`nContinue?
IfMsgBox, No
break
}

Variables (surrounded by %) often starting with A_ are built in reserved variables, but you can do this with your own variables too.

 


JeremyH liked
ReplyQuote
craigr68
(@craigr68)
Trusted Member
Joined: 11 months ago
Posts: 89
Topic starter  
Posted by: @zinct

It works on some and not others. Maybe the "-" is confusing it?

There are some special characters like commas where you have to put a ` in front of it.  That's tick (key below Esc on most keyboards, not an apostrophe).  Or maybe you need double quotes around the whole "Monophonic - Appalachian".  Specifically, what is it doing with the dash?  If I saw a few lines, I might know what to do.

 


ReplyQuote
thsve
(@thsve)
Estimable Member
Joined: 2 years ago
Posts: 182
 

@zinct

Are you sure that it is ”regular” hyphens and spaces? I think I encountered a simular thing once. I solved it by search and replace with a regular hyphen and spaces.

Win 10/Cubase Pro 11/Wavelab 8/Spectrasonics all/NI 13/Izotope MPS2Serum/Cthulhu/MusicLab guitar vsts/etc


ReplyQuote
JeremyH
(@zinct)
Member
Joined: 1 year ago
Posts: 429
 

Thanks @thsve and @craigr68 

I checked the file for special characters but wasn't expecting to find any as it was created from Dir /s /b and then find/replace in Notepad to replace the folder structure with "Monophonic - ". Anyway, I managed to fix the problem by using the simple FileReadLine command to read the patch list file directly rather than copy/paste from the screen.

This also means that I only need the Unify and Kontakt windows open and in the right position so I modified the window positioning script too.

See attached modified scripts and also the epicabass01.txt file list of patches.

https://www.autohotkey.com/docs/commands/FileReadLine.htm

Note this is not perfect but a quick mod to get it working for Epica Bass e.g. it mentions the epicabass01.txt file specifically rather than asking for a filename or offering a file browser. This file needs to be in the same folder as the script by default. For general use this could improved.

Incidentally, I picked up Epica Bass a couple of years ago in a sale but it is currently on sale at VSTBuzz for a decent price....

https://vstbuzz.com/deals/65-off-epica-bass-by-sam-spacey/  

 

This post was modified 7 months ago 6 times by JeremyH

ReplyQuote
JeremyH
(@zinct)
Member
Joined: 1 year ago
Posts: 429
 

I have lowered the 5 second pause after changing patches in Kontakt to 2.5 seconds and I think that could be further reduced for some libraries and maybe some of the other timings. It probably depends on the library to some extent but Epica Bass seems to load its patches quickly and it probably helps that my system is a recent build with all SSD drives.

I timed it over 1 minute with the reduced Kontakt wait and it Unified five Epica Bass patches in that time which is around 300 patches/hour. Not bad but I think there is further room for tweaking. 

It certainly will speed things up and I have a big list of other Kontakt and non-Kontakt libraries waiting in the wings to be Unified e.g. all U-He synths and Microtonic for starters.

Thanks again @thsve and @craigr68 for getting me going on AutoHotkey 👍 


ReplyQuote
craigr68
(@craigr68)
Trusted Member
Joined: 11 months ago
Posts: 89
Topic starter  

That's good news.  What's the end game?  Are you going to post a bunch of zip files containing the patches?  Or do other Kontakt users need the actual script to run themselves because their libraries aren't the same?  I'm not too familiar with Kontakt.

This post was modified 7 months ago 2 times by craigr68

ReplyQuote
JeremyH
(@zinct)
Member
Joined: 1 year ago
Posts: 429
 

Yes I was planning on posting them on this forum, like this one I did last week, but I Unified the 350 patches here by hand...

https://forums.pluginguru.com/unify-share/rigid-audio-synferno-kontakt-unified/#post-7113

I'm hoping a few other people might do likewise and we can share the burden of Unifying libraries that we own.

The issue with Kontakt libraries is that they reference the absolute location of samples on your machine. It means that if I Unify the patches in a Kontakt library it won't work on someone else's machine.

Luckily though Shane came up with a solution recently but NI promptly broke it with their v6.5 update to Kontakt. I gather that Shane is in discussion with NI to find a solution but until then only those who haven't updated to Kontakt v6.5 can use Unified Kontakt libraries made on someone else's installation.

This post was modified 7 months ago by JeremyH

ReplyQuote
JeremyH
(@zinct)
Member
Joined: 1 year ago
Posts: 429
 

Yes it's playing fine here.

I'm a Synthmaster fan also and have the everything pack as well as Synthmaster One so would be interested in your Unified version of the patches when they are done. 


ReplyQuote
craigr68
(@craigr68)
Trusted Member
Joined: 11 months ago
Posts: 89
Topic starter  
Posted by: @zinct

I'm hoping a few other people might do likewise and we can share the burden of Unifying libraries that we own.

The script might work on other computers.  One option - you could compile it to an .exe by just right clicking on the file and distribute that (as a zip file probably).  Then it could be run elsewhere without autohotkey being installed.  I think screen resolution would probably need to be identical though.  Otherwise, I don't see much in your script that would be unique to your computer that would cause problems elsewhere.  It would be interesting to see how well that would work out.


ReplyQuote
craigr68
(@craigr68)
Trusted Member
Joined: 11 months ago
Posts: 89
Topic starter  
Posted by: @zinct

I'm a Synthmaster fan also and have the everything pack as well as Synthmaster One so would be interested in your Unified version of the patches when they are done.

I created that script just to see if it was possible.  I started thinking there's like 1449 factory presets, probably somewhat different from yours, and I don't think I want to Unify it at this point.  If I wanted to delete it, I'd have to do it one patch at a time until we get the capability to delete entire libraries easily.  

My screen resolution is 1920x1800.  I'm going to try Hybrid later because it has the patches in standard categories which probably stay the same for most people and this would be more manageable and should work somewhat universally.  

Update: I deleted this Synthmaster One script because it wasn't working good enough and I couldn't see any way to fix it.

 

This post was modified 7 months ago 2 times by craigr68

ReplyQuote
thsve
(@thsve)
Estimable Member
Joined: 2 years ago
Posts: 182
 

@craigr68, @zinct

To delete a whole library, just delete the folder under libraries and run a scan in Unify.

FYI, before you start sharing libraries, please read Shanes (@getdunne) answer to me about sharing in this thread:   https://forums.pluginguru.com/unify-share/sharing-unified-versions-of-omnisphere-factory-libraries/

Win 10/Cubase Pro 11/Wavelab 8/Spectrasonics all/NI 13/Izotope MPS2Serum/Cthulhu/MusicLab guitar vsts/etc


ReplyQuote
JeremyH
(@zinct)
Member
Joined: 1 year ago
Posts: 429
 

@thsve 

I was aware of that post. If you look at my Unified Synferno post you will see that I am very clear that anyone who uses it needs to own the full versions of Unify, Kontakt and Synferno. I am only sharing Unify patches not original libraries. Shane has "liked" the post it so I assume it must be OK to do this.

The sharing of Unify patches does seem to be a bit of a grey area in terms of which Unified patches can be shared and which cannot. For example it seems to not be allowed for Spectrasonics libraries. If in doubt I guess it might be prudent to contact the library author/developer and get their approval for any of their libraries. Failing that just Unify the libraries you want for your own consumption and let everyone else do the same even though we will all end up duplicating work at least it's not such a hardship when we have tools to automate the process.

This post was modified 7 months ago by JeremyH

ReplyQuote
JeremyH
(@zinct)
Member
Joined: 1 year ago
Posts: 429
 
Posted by: @craigr68
Posted by: @zinct

I'm a Synthmaster fan also and have the everything pack as well as Synthmaster One so would be interested in your Unified version of the patches when they are done.

I created that script just to see if it was possible.  I started thinking there's like 1449 factory presets, probably somewhat different from yours, and I don't think I want to Unify it at this point.  If I wanted to delete it, I'd have to do it one patch at a time until we get the capability to delete entire libraries easily.  

I posted the script in case you want to play around with it.  It assumes that Unify is open, that you've already created one patch in a library called Synthmaster One.  Then it will position Unify and Synthmaster One screens, and take off running.  For sure it would need modifying to work for your computer.  My screen resolution is 1920x1800.  I'm going to try Hybrid later because it has the patches in standard categories which probably stay the same for most people and this would be more manageable and should work somewhat universally.  

https://drive.google.com/file/d/1u6rxZRwem69xNRkV2WfXsuxs52c6cOhg/view?usp=sharing

@craigr68

Thanks for the script. My screen is also 1920 x 1080. I take your point about Synthmaster One. I was considering doing Bazille and that has 1700 factory patches but I might just do the 112 "Factory Best Of" patches plus any that I like. 

I quite like the idea of sharing scripts to allow end users to Unify their own patches rather than sharing the Unify patches themselves if that is an issue. 


ReplyQuote
JeremyH
(@zinct)
Member
Joined: 1 year ago
Posts: 429
 
Posted by: @craigr68
Posted by: @zinct

I'm a Synthmaster fan also and have the everything pack as well as Synthmaster One so would be interested in your Unified version of the patches when they are done.

I'm going to try Hybrid later because it has the patches in standard categories which probably stay the same for most people and this would be more manageable and should work somewhat universally.  

Hybrid's a nice one. Not sure if you know but someone has already started doing Unified Hybrid patches (436 so far) here...

https://forums.pluginguru.com/unify-share/vst-hybrid/#post-6958  


ReplyQuote
craigr68
(@craigr68)
Trusted Member
Joined: 11 months ago
Posts: 89
Topic starter  
Posted by: @thsve

To delete a whole library, just delete the folder under libraries and run a scan in Unify.

I didn't know that.  I thought you had to delete them individually.  I'll try that out.  Huh, wonder if that's documented anywhere.  Thanks a lot.

Posted by: @zinct

I quite like the idea of sharing scripts to allow end users to Unify their own patches rather than sharing the Unify patches themselves if that is an issue. 

With all the legal aspects, I'll just share scripts.  I think it makes sense to unify special patches for oneself, such as Favorites.  And since everyone has their own favorites, sharing scripts rather than libraries makes sense.  But if there's been permissions, then I guess it's cool for someone to provide the unified libraries.  I guess that's the case with Kontakt but I have no first hand knowledge of that.

Posted by: @zinct

Hybrid's a nice one. Not sure if you know but someone has already started doing Unified Hybrid patches (436 so far) here...

Yes, I'm aware of that post and is what inspired me to try scripts in the first place.  I just was thinking how much manual work that would be.


ReplyQuote
JeremyH
(@zinct)
Member
Joined: 1 year ago
Posts: 429
 
Posted by: @craigr68
Posted by: @thsve

To delete a whole library, just delete the folder under libraries and run a scan in Unify.

I didn't know that.  I thought you had to delete them individually.  I'll try that out.  Huh, wonder if that's documented anywhere.  Thanks a lot.

Posted by: @zinct

I quite like the idea of sharing scripts to allow end users to Unify their own patches rather than sharing the Unify patches themselves if that is an issue. 

With all the legal aspects, I'll just share scripts.  I think it makes sense to unify special patches for oneself, such as Favorites.  And since everyone has their own favorites, sharing scripts rather than libraries makes sense.  But if there's been permissions, then I guess it's cool for someone to provide the unified libraries.  I guess that's the case with Kontakt but I have no first hand knowledge of that.

Posted by: @zinct

Hybrid's a nice one. Not sure if you know but someone has already started doing Unified Hybrid patches (436 so far) here...

Yes, I'm aware of that post and is what inspired me to try scripts in the first place.  I just was thinking how much manual work that would be.

@craigr68

Funnily enough last July I queried the lack of "how to delete a library" in the online manual and Shane then added it.

See here...

https://forums.pluginguru.com/postid/3951/  

and the relevant section in the manual  https://pluginguru.net/unify/manual/doku.php?id=libraries  

Agreed re the sharing Unified libraries comment.

Hybrid does seem to have a huge list of presets and I'm sure mine came with 3 addon packs making the number even greater. 


ReplyQuote
craigr68
(@craigr68)
Trusted Member
Joined: 11 months ago
Posts: 89
Topic starter  

Wow, I'm going to have to read the manual more.  Thanks very much.


JeremyH liked
ReplyQuote
getdunne
(@getdunne)
Member Admin
Joined: 2 years ago
Posts: 2788
 

@craigr68

I think some people may be put off by the online manual because not everything is one link away from the start page. Note there is a search box at the top right, which can be quite helpful, and I have tried to structure links in a logical way, starting with the table of contents on the main page, BUT I strongly suspect this isn't good enough.

Suggestions for improving the manual are welcome; we have a whole section of the Forum for this: https://forums.pluginguru.com/unify-manual/


ReplyQuote
craigr68
(@craigr68)
Trusted Member
Joined: 11 months ago
Posts: 89
Topic starter  

I created an Air Hybrid script that worked well for me.  I chose the Arpeggios since I didn't see that as one that was done in that other posting.

https://forums.pluginguru.com/unify-share/vst-hybrid/

It took about 10 minutes to do 47 patches.  It might be able to be sped up by changing the sleep times, but I figure that's not bad.  It seems like it's moving plenty fast as you watch it. 

Here's some things to keep in mind if you want to try it:

It assumes you've created one patch in a library which I called Hybrid Arpeggios, although you should be able to name it whatever.  Just load that first patch and verify Hybrid is loaded with Hybrid Arpeggios as the Library.  I'm not sure about coordinates, but I'm running at 1920x1080, and I would think that is what matters for it to work elsewhere.  I put comments through out for troubleshooting.  In one of the early steps after it opens Hybrid, I have it expanding the Arpeggio folder - that might need altering.  To do a different patch folder should only require changing that coordinate and creating a new library, I think.  I'm about to try that next.  

Also, there's  this at top of script which means all coordinates are relative to the full screen.  So that corresponds to the Screen coordinates in Window Spy.

CoordMode, Mouse, Screen

Video running in realtime (is not sped up) https://streamable.com/kc8idw

This post was modified 7 months ago 8 times by craigr68

JeremyH liked
ReplyQuote
JeremyH
(@zinct)
Member
Joined: 1 year ago
Posts: 429
 

Thanks @craigr68, I will give it a go.


ReplyQuote
craigr68
(@craigr68)
Trusted Member
Joined: 11 months ago
Posts: 89
Topic starter  

I just ran it a 2nd time and it took about 7 minutes.  After it does the last 47th patch, it will continue on into Wobbles and so you need to be watching for it and hit Escape to stop it.  I let it go a while to see what would happen and it just put Wobbles patches into the same library and I just deleted those couple presets.  I presume it would continue right down the list indefinitely if it wasn't stopped.  Problem is, it would put them all in the same library.  I think I'd like to leave it as is and just do one group at a time.

Another thing - might want to set up Unify before you start the script in whatever form you want it.  For instance, you might want to have a reverb in Master Effects, Aux Effects, or anything desired.  But don't put anything in the upper region where it would throw off the coordinates unless you alter the script accordingly.

This post was modified 7 months ago 2 times by craigr68

JeremyH liked
ReplyQuote
thsve
(@thsve)
Estimable Member
Joined: 2 years ago
Posts: 182
 

@craigr68

Made a version of my script for Hybrid3. This script is only processing a source folder of your choosing. I also simplified the "go to next patch". This script runs the Arpeggios in around 4 minutes 😎 

 

Win 10/Cubase Pro 11/Wavelab 8/Spectrasonics all/NI 13/Izotope MPS2Serum/Cthulhu/MusicLab guitar vsts/etc


JeremyH liked
ReplyQuote
JeremyH
(@zinct)
Member
Joined: 1 year ago
Posts: 429
 

Looking good @craigr68 and @thsve  👍 

I checked all of the presets I have for Hybrid 3 and it comes to a grand total of 2,947 although that does include 1,004 v2 patches!!

Subtract the 436 that have already been Unified and that leaves 2,511 patches still to Unify.

Using thsve's timings that would take around 3.5 hours to Unify in one go but I would probably do them a folder at a time.

Not bad at all.

What other libraries are you guys planning to Unify (Kontakt or other)?

For anyone who doesn't have Hybrid 3 it's regularly on sale (like now at Pluginboutique ) and you can also pick up bundles including the expansions. There's a decent list of expansions also at Pluginboutique although not on sale at the moment they are at reasonable prices. 

This post was modified 7 months ago 2 times by JeremyH

ReplyQuote
craigr68
(@craigr68)
Trusted Member
Joined: 11 months ago
Posts: 89
Topic starter  

Great job and good idea on retrieving file names from folder.  I thought of that once, and started looking where they were, then got off on a tangent thinking they're probably in an inaccessible database file.  But nope.  I'm trying your script but the mouse isn't going where it should for some reason.  I'll have to look into that.  zinct - did thsve script work for you just as is?

I have 3,221 Files, 66 Folders of mostly factory presets.  Of that 172 are my User presets.  And I have some extra Expansions, Free Paks, Prime Loops, Producer Presets.  Don't even know where I got those.  Anyway, don't think I'll want to Unify them all, just certain ones.

I was thinking about doing Xpand next although I only want a few categories there.

This post was modified 7 months ago by craigr68

ReplyQuote
craigr68
(@craigr68)
Trusted Member
Joined: 11 months ago
Posts: 89
Topic starter  

thsve,

I like the way your script works.  It isn't working for me in the "Save unify patch" section.  First I had to change MouseClick, left, 1413, 306 to MouseClick, left, 1187, 306 in order to click on the Unify Save button.  From there, I'm trying to figure out how you're handling the Save dialog.  How are you handling the Library Name field?  With my script I was assuming the first manual patch was created and loaded with the Library name there.  Then I was starting the automation with the 2nd patch.  Your script seems to start right off with the 1st patch but there isn't a Library name.  Could you clarify that?


JeremyH liked
ReplyQuote
thsve
(@thsve)
Estimable Member
Joined: 2 years ago
Posts: 182
 

@craigr68

See attached document for answers to your questions.

Win 10/Cubase Pro 11/Wavelab 8/Spectrasonics all/NI 13/Izotope MPS2Serum/Cthulhu/MusicLab guitar vsts/etc


JeremyH liked
ReplyQuote
craigr68
(@craigr68)
Trusted Member
Joined: 11 months ago
Posts: 89
Topic starter  

I ended up modifying yours some with different assumptions on starting it.  I think for my use, I'll just use this one because I'm familiar with it.  One thing you might want to add to yours is this to enable choosing the library instead of having to edit the script:

;Allow user to select folder
FileSelectFolder, LibraryFullPath,C:\Program Files (x86)\AIR Music Technology\Hybrid\Presets\, 1, Choose Library
SplitPath, LibraryFullPath,,,, LibraryName
Source_dir=C:\Program Files (x86)\AIR Music Technology\Hybrid\Presets\%LibraryName%\*.tfx"
;Msgbox, LibraryName: %LibraryName%`nSource_dir: %Source_dir%

I added SetTitleMatchMode, 2 so that that when Hybrid screen is moved, it seems to move it better.  Window Spy name wasn't matching up and that's probably cuz I'm starting the process differently with loading the first patch manually.  And that's why I have the A_Index loop at the bottom.  It's working great though.

 


JeremyH liked
ReplyQuote
Page 1 / 4
Share: