Published 2024-02-21.
Last modified 2024-02-23.
Time to read: 1 minutes.
av_studio collection.
Checking the VST Version
VSTs can be provided in 32-bit and 64-bit versions, and might comply with the VST2 or VST3 specification. VSTs must be installed into the appropriate location for them to be detected. In addition, VSTs might be provided in Windows, Linux or Mac format.
Version 2 VSTs for Windows are provided with the dll filetype;
version 3 VSTs are provided with the vst3 filetype.
PE Header
The PE Header indicates whether the file is for a 32-bit or a 64-bit operating system.
Filealyzer can show this to you in the PE Header tab; check the Machine value: it will either say 8664 64-bit Windows (AMD) or i386.
Pedump
Another way to check, via the command line, is to use the
pedump gem Ruby Gem.
$ gem install pedump
The --pe option of the pedump command returns many lines of information.
Filter out the Machine line with the following incantation.
$ pedump --pe my_vst.dll | \ grep 'Machine:' | rev | cut -d' ' -f1 | rev x64
-
A value of
x86indicates a 32-bit program or library. -
A value of
x64indicates a 64-bit program or library.
Bash Script
The following script reports the types of VSTs found in the current directory tree:
#!/bin/bash
function check {
X="$( pedump --pe "$1" | grep 'Machine:' | rev | cut -d' ' -f1 | rev )"
printf "$X $1\n"
}
export -f check
find . -type f \( -iname '*.dll' -o -iname '*.vst' -o -iname '*.vst3' \) \
-exec /bin/bash -c 'check "$0"' {} \;
Here is the script in action, on WSL/Ubuntu. First I change to the standard Windows VST2 directory, then I run the script:
$ cd "$(wslpath 'C:\Program Files\VSTPlugins')"
$ vst_version x64 ./Celemony/Melodyne/Melodyne.dll x64 ./GVST/GTune.dll x64 ./Jagged Planet/JScope_x64.dll x64 ./Native Instruments/Guitar Rig 6.dll x64 ./ReaPlugs/reastream-standalone.dll x64 ./ReaPlugs/reaxcomp-standalone.dll x64 ./Satellite Sessions/Satellite Sessions.dll x86 ./sika/sika 1.5.dll x64 ./Voxengo/Boogex.dll
Now lets run the script on the standard Windows VST3 directory:
$ cd "$(wslpath 'C:\Program Files\Common Files\VST3')"
$ vst_version x64 ./Celemony/Melodyne/Melodyne.dll x64 ./Boogex.vst3 x64 ./bx_masterdesk Classic.vst3 x64 ./bx_masterdesk.vst3 x64 ./bx_opto.vst3 x64 ./Celemony/Melodyne/Melodyne.vst3 x64 ./Chorus.vst3 x64 ./Compress.vst3 x64 ./De-Ess.vst3 x64 ./Delay.vst3 x64 ./EZdrummer 3.vst3 x64 ./Guitar Rig 6.vst3 x64 ./Komplete Kontrol.vst3 x64 ./Kontakt 7.vst3 x64 ./Kontakt.vst3 x64 ./Master.vst3 x64 ./NoiseGate.vst3 x64 ./PitchFix.vst3 x64 ./ProEQ.vst3 x64 ./Reaktor 6.vst3 x64 ./Reverb.vst3 x64 ./Rotary.vst3 x64 ./SGear.vst3/Contents/Resources/FlxComm64.dll x64 ./SGear.vst3/Contents/Resources/FlxCore64.dll x64 ./SGear.vst3/Contents/Resources/SonuusTuner64.dll x64 ./SGear.vst3/Contents/x86_64-win/SGear.vst3 x64 ./SimpleEQ.vst3 x64 ./Supercharger.vst3 x64 ./Toontrack/ezdrummer.dll x64 ./Youlean Loudness Meter 2.vst3