Third-party binaries

Some component functionality can be extended using third party binaries. All binaries and their configuration options are described below. They can be configured on Maintenance tab of component preferences.

All binaries, used by component, are listed in Third-party Binaries list. Each item in the list has Source property that controls where to search this binary. To change source, use context menu.

All binaries have source called External. Using it you can specify path where this binary can be found. If binary is placed within foobar2000 profile or program directory, component will store path relative to that directory. This can be useful for portable installations.

Source called Managed is similar to External except that in this case component controls binaries by itself, providing the way to download these binaries and to check for updates. Managed source is always relative to profile directory.

Switching between sources requires program restart. If you have selected Managed item in context menu, after program restart it will become a popup menu. With this menu you can check for updates, download binary of delete previously downloaded version.

State of third-party binaries is printed in component log at program start. Alternatively one can use Status button on Maintenance tab.

ffmpeg

ffmpeg libraries are used to decode audio. Component has embedded ffmpeg with minimum required codecs to play audio from supported sites (represented by Internal source in the list).

If you want to use component for anything else, that requires broader formats support, you can use external ffmpeg libraries (e.g. from Zeranoe, or Roger Pack, or some custom build). To do that, select External source and specify directory where ffmpeg binaries are placed (component required 32-bit build with shared libraries)

If ffmpeg source is set to LAV Filters (that is by default), component uses ffmpeg libraries from LAV Filters. They also use ffmpeg internally, and that ffmpeg has much wider set of supported formats than the one embedded in component.

If ffmpeg source is set to anything other than Internal, and component cannot load ffmpeg from selected source, it falls back to internal ffmpeg.

LAV Filters

By default LAV Filters source is set to System. That means if they are installed in the system, component will find and load them.

Two other sources (External and Managed) do not require them to be installed.

If source is set to External or Managed, and you additionally have LAV Filters installed in the system, then component loads filters that have greater version.

In case of Managed source LAV Filters are downloaded from original repository on GitHub. You can change repository settings using Configure item of Managed popup menu. Note, in case of Windows XP default version there is set to 0.70.2 which is the last version that has XP support.

libcurl

In addition to internal libcurl one can select external DLL to be used by component. Primarily that is done to be able to use different SSL backends (in internal libcurl is used Windows native SSL backend).

Ready to use libcurl with OpenSSL is available on Download page. You may also experiment with other existing variants that are available on cURL download page.

VSFilter

This is DirectShow filter that is used to display subtitles. Configuration options are the same as in LAV Filters. Managed source uses this repository on GitHub.