Skip to content

My hacks for v1.5.5 and v1.6.2 on xxj's WINE/vst wrapper. My changes lie on the branches named v1.5.5 and v1.6.2.

License

Notifications You must be signed in to change notification settings

caoliver/fsthost

Repository files navigation

Whats This ?
------------

This is official successor of FST.
Well .. so what was fst ?
Linux VST host with runs as a jack client and with GTK GUI.

Supports:
- 32 and 64 bit plugins
- load/save state to LASH, JackSessions, FPS files (own XML format)
- load/save FXB/FXP files
- Jack Transport
- Jack MIDI
- Jack autoconnection
- LADIsh - L1 or L2 (JackSession)
- Control via MIDI SysEx e.g. dump some settings ( but not all )
- MIDI CC automation (MIDI learn)
- bypass/resume state (also via MIDI CC or SysEx)
- simple midi filters
- volume control
- plugins which not handling MIDI Program Change messages
- easily plugin discovering (-g option)
- GTK2/GTK3 ( you can compile even without GTK )
- control using TCP socket ( e.g. via telnet )

There are also:
- fsthost_menu - Perl GTK[23] menu to startup plugins
- fsthost_ctrl - Perl GTK[23] app for control via TCP socket
- fsthost_list - simple application to show known plugins ( read about XML DB )

Getting Started
---------------

1) Ensure you have the necessary build dependencies (devel packages).
Obviouslly you need 32 bit versions for build fsthost32 on AMD64.

  REQUIRED:
     wine ( wine-staging recommended )
     jack
     libxml-2.0

  OPTIONAL:
     For GTK GUI:
        glib-2.0
        gtk+-2.0 or gtk+-3.0

     For fsthost_menu
        perl XML::LibXML module for fsthost_menu ( libxml-perl ? )

     For LASH
        lash-1.0

NOTE: the simplest form to compile && install is just ( and you can skip points 2 - 5 ;-)
make install

2) Type 'make'. If everything works correctly this should create an
   executable file called 'fsthost32' and optionaly 'fsthost64'

3) Type 'make GTK=2' to force GTK+2 GUI or 'make GTK=0' for exclude GTK code

4) Type 'make LASH=0' to build without lash.
   This is default if lash libs are not available

5) Type 'make fsthost64' to build only 64bit version and respectively
        'make fsthost32' to build only 32bit version

6) Set correct libdir if needed e.g. 'make LIBDIR32=/usr/lib32 LIBDIR64=/usr/lib'

6) To run your vst plugins:

   for VST32
      ./fsthost32 /path/to/someplugin.dll other_plugin.dll ...
   or for VST64
      ./fsthost64 /path/to/someplugin.dll other_plugin.dll ...

you can load multiple plugins or load plugins with some "state".

7) To install type 'make install' ( there are also install32 and install64 targets respectively )

XML Database and simple plugins menu
-----

You can build XML Database, and update it later by such command
fsthost32 -g ~/VST
fsthost64 -g ~/VST64

Where ~/VST* are paths which will be scanned recursivelly for plugins.
You can use later this database by some GUI app ( e.g. fsthost_menu ).
Default path for database is ~/fsthost.xml.
Separate 32/64 databases is unnecessary.

You can also export VST_PATH and scan it recursivelly like:
   % export VST_PATH=~/VST:/usr/share/vst:/otherlocation
   % fsthost -g

You can force GTK version (2/3) for "fsthost_menu.pl" by:
   % export FSTMENU_GTK=2 # or 3

TCP control protocol
-----
If you start fsthost with option -S <port> you can control it remotely.
It will listen on that port on all interfaces. For random port use -S 0.
You can check later with port you got in /tmp/fsthost directory.
To connect use telnet like:
telent <host> <port>
Then check available commands by typing "help".
There is also fsthost_ctrl application with similar GUI to fsthost.
Eventually you can compile fsthost without gtk gui at all by make GTK=0,
and then control it via fsthost_ctrl or telnet.

JackSession / LASH
-----

With JackSession or LASH you can save and restore the state of the plugin.

Known BUGs
---------------

If you experience WineBUG like RenderBadPicture, please update this ticket:
http://bugs.winehq.org/show_bug.cgi?id=6673

Possible workaround:
export WINEDEBUG=synchronous

You can try also this one below ( but personally I see no difference ;-)
export GDK_NATIVE_WINDOWS=1

License
-------

fsthost is licenced under the GNU General Public License version 2.
See file 'COPYING' for details.

Authors / contributors
----------------------
Current maintainer of FSTHost: Pawel Piatek <[email protected]>

Autors of FST:
Torben Hohn, Paul Davis, Kjetil S. Matheussen / Notam, Mark Williamson
Joe Button, Nedko Arnaudov

About

My hacks for v1.5.5 and v1.6.2 on xxj's WINE/vst wrapper. My changes lie on the branches named v1.5.5 and v1.6.2.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published