Package: ardour2fxp
Convert between Ardour XML and binary FXP VST preset files.WarningThis is software is still inbeta stage. Use at your own risk!OverviewThe Open Source DAWArdoursaves user presets for VST plugins as XML documents
in the directory~/.config/ardour5/presets, with file names likevst-1094861636, where1094861636is the VST plugin indentifier as an
integer. Unfortunately, most proprietary DAWs expect presets for VST2 plugins
as FXP files (extension.fxp) or banks of presets as FXB files (extension.fxb). This makes it very hard to share presets for VST2 plugins between
users of Ardour and those propietary DAWs.Theardour2fxpscript converts Ardour VST preset XML files to FXP preset
files, so the presets can be imported when using the plug-in in another DAW.Thefxp2ardourscript converts FXP preset files to Ardour VST preset XML
files. FXB preset bank files are currently not supported.Getting StartedRequirementsPython 3.6+InstallationInstallardour2fxpwith pip:$ pip install ardour2fxpor directly from the source code:$ git clone https://github.com/SpotlightKid/ardour2fxp.git
$ cd ardour2fxp
$ pip install .Usageardour2fxpTheardour2fxpscript can be used like this:$ ardour2fxp -o my-vst-presets ~/.config/ardour6/presets/vst-1094861636This will create an FXP (extension.fxp) file for every preset in the
Ardour preset file(s) given on the command line (vst-1094861636in the
example above). FXP files will be put into sub-directories of the output
directory given with the-ocommand line option (my-vst-presetsin
the example). The FXP files will be named after the preset label (with spaces
replaced with underscores) and the sub-directories will be named after the
plug-in identifier (1094861636->"ABCD"in the example). Existing
files will not be overwritten (unless the-f/--forcecommand line
option is given).fxp2ardourThefxp2ardourscript can be used like this:$ fxp2ardour -o ardour-presets my-vst-presets/*.fxpThis will create Ardour VST preset XML files for all presets in the FXP file(s)
given on the command line. The Ardour preset files will be placed in the output
directory given with the-ocommand line option (ardour-presetsin the
example above, defaults to the current directory). One Ardour preset file per
plugin will be written. Each Ardour preset file is named with a"vst-"prefix plus the plugin identifier interpreted as a signed integer (e.g. when
the plugin identifier is"ABCD", the file name will bevst-1094861636).
Existing files will not be changed or overwritten, unless one of the-f/--force,-a/--appendor-m/--mergecommand
line options are used.The output files can be copied to the user’s Ardour preset directory. The
location of this preset directory differs depending on your operating system:OSPathLinux~/.config/ardour6/presetsWindows%LOCALAPPDATA%\Ardour6\presetsMacOS~/Library/Preferences/Ardour6/presetsThis assumes your Ardour major version is 6. Substitute6with5if
you are still using Ardour 5.x Care must be taken not to overwrite existing user
preset files.To append the converted FXP presets to (an) existing Ardour preset file(s), use
the command line option-a/--appendand set the output directory to
the one containing the ardour preset file(s). Existing presets in the Ardour
preset file(s) will not be changed.With the-m/--mergecommand line option you can merge the converted FXP
presets into (an) existing Ardour preset file(s). This means that existing presets
in the Ardour preset file(s) with the same label as a converted preset for the
same plugin will be be replaced with the latter.CAUTION: If you have several existing presets in an Ardour preset file with the
same label or several converted FXP presets with the same name for the same plugin,
it can be difficult to determine, which preset is overwriten by which.ContributingPlease submit an issue or pull request to theproject on GitHub.AuthorsChristopher ArndtLicenseThis project is licensed under the MIT License - see the fileLICENSE.txtabout copyright and usage terms.AcknowledgmentsThe following resources were used to implement this script:Ardour sources (vst_plugin.cc)VST SDK headers (pluginterfaces/vst2.x/vstfxstore.h)