Foobar2000:Components/VST 2.4 adapter (foo vst)

From Hydrogenaudio Knowledgebase
Jump to: navigation, search
foo_vst
Fb2k-vsts.png
VST 2.4 adapter
Developer(s) Yegor Petrov
Repository {{{repository}}}
Release information
Initial release {{{released}}}
Stable release 0.8.0.1
Preview release 0.8.0.1
foobar2000 compatibility
Architecture {{{foobar2000_architecture}}}
Minimum version 1.0+
Maximum version {{{foobar2000_maximum}}}
UI module(s) N/A
Additional information
Use VST plug-ins as native Foobar2000 DSPs
License Proprietary freeware
Discussion thread Discussion and download page
View all components
Foobar2000_Logo.png

VST 2.4 adapter is a component which aims to allow Foobar2000 users to use VST 2.4 plug-ins equally with “native” ones.

Usage

First, add VST plug-ins you would like to use in the VST manager: Preferences → Components → VST plug-ins. Restart is required for the changes to take effect. After the restart open the DSP Manager or some conversion dialog box to try the plug-ins you've added.

Preferences VST plug-ins.pngPreferences DSP Manager.png Converter Setup VST.png

Use View → DSP menu to access DSP configuration windows. Bind commands by their number to keyboard shortcuts if necessary.

Fb2k modeless dsp menu.png Preferences Keyboard Shortcuts DSP modeless.png

VST program file (.fxp) import/export items are in the system menu of editor windows (right click on the window's titlebar).

Microsoft Visual C++ 2008 Redistributable Package (x86) may be required for versions below 0.8.1

Download

See the attachment in the first post of the discussion thread.

Features

The component has support for the following feature set:

  • Multiple instances
  • Multiple channels (including asymmetric configs like 2.0 → 5.1)
  • Chain presets and secondary DSP chains (“convert” feature)
  • Modeless DSP configuration windows with keyboard shortcut binding
  • FXP import/export

Limitations and known issues

  • Supports only up to 20 VST entries due to API limitations (not to be confused with particular instances in a chain).
  • No support for VSTs without custom editors yet (to be implemented in the near future).
  • Display goes ahead of audio by the size of the output buffer.
  • Doesn't support x64 VST plug-ins: Foobar2000 is 32-bit application.
  • Smooth track switching must be disabled for some plug-ins to work (so they will be unloaded in the same thread as the one they were loaded in).
  • Modeless DSP configuration functionality isn't well synchronized with the DSP manager in the Preferences window.
  • There are two versions labeled as v1.0 and v1.0.01 which are actually v0.1 and v0.2.

Important notes

  • The adapter doesn't scan plug-ins at startup nor does it track changes in the VST directory. If some plug-in is absent then the adapter bypasses its processing.
  • The component stores its settings in a separate binary file because of API limitations.

Settings

This component has only advanced settings placed in the corresponding section of Foobar2000 preferences. Depending on the component version they can be found either in the Playback or VST category (the latter is true for v0.6+). All the problems that mentioned here are caused by the differences between Foobar2000 and VST approaches to DSP implementation.

Declicker size (256*n samples, 4 by default)
Number of zero samples to be passed through VST on transport switches to suppress plug-in's output data that can produce click at the beginning of the next track, i.e. ringing of filters or delay effect tail. The latter requires this number to be increased. Changes to this setting take effect after restart.
Limit number of outputs
In contrast to DAW, audio players don't manage outputs of their DSPs. Besides, many VST plug-ins don't report activity of their outputs. Hence the only way to output data from 16-channel VST is to drop some of the channels according to the setting.
VST idle time to unload DLL (0-10,000 ms) (0.7.1 and below)
The delay is needed to suppress excessive unload-load cycles between tracks, i.e. to keep VST plug-ins loaded as it is supposed to be for them. In 0.8 the [un]loading strategy was revamped and this setting isn't necessary anymore.

Change log

0.8.1.0

  • Revamped VST [un]loading strategy with regard to threading issues.
  • Doesn't use registry anymore (hold Shift and press Add button to get VST entries back).

0.7.1

  • Bugfixes in the portable mode support.

0.7.0

  • Serious bugfixes.
  • Relative paths in portable mode.

0.6.0

  • Added FXP export/import.
  • Improved View → DSP menu.
  • Introduced declicker.

0.52

  • Fixed the bug which could lead to crash after stopping the playback

0.51

  • Added experimental support for no-reload track switching.

0.5

  • Added experimental support for non-modal config dialogs (View → DSP).
  • Added some formal procedures for some capricious plug-ins to work.
  • Added output number limitation setting

0.2

  • Fixed major stability issues. Marked as v1.00.01.

0.1

  • Initial release marked as v1.0. Very unstable.

External links