View Single Post
Old 08-01-2017, 06:43 PM   #85
osxmidi
Human being with feelings
 
Join Date: Feb 2014
Posts: 620
Default

From what I've gathered (might not be totally accurate),

All of the below use IPC (Inter Process Communication) to communicate between Linux (native) processes and Windows vst's running in Wine processes.

One of the first (maybe the first) Windows vst enablers on Linux was "vst server" which was a server and used sockets for communicating with the Windows vst running under Wine.

Then after that there was dssi-vst which used named pipes for communicating with the Windows vst running under Wine.

Then a Mac programmer added native host DAW vst's to dssi-vst which was wac-vst, and then Windows vst's could be used just like Mac vst's in Mac DAW's.

Then Abique came out with his vst bridge which was based on sockets and had similar capabilities to wac-vst but for Linux.

Then Airwave came out and it was based on Abique's vst bridge and I think it used semaphores and then a later version used futexes for communicating with the Windows vst running under Wine.

Carla appeared as well and I think maybe the first version had some dssi-vst parts and later versions might use something else.

LinVst is based on wac-vst and dssi-vst and used named pipes for communicating with the Windows vst running under Wine and the latest version uses a mix of named pipes and semaphores.

They all have their pros and cons and it's not that easy doing IPC with a Wine process and dealing with Linux host quirks and Wine quirks, so nothing is going to be perfect, but quite a lot of windows vst's can run ok.

Last edited by osxmidi; 08-01-2017 at 07:14 PM.
osxmidi is offline   Reply With Quote