Platform Agnostic SWH plugins

I am wondering if there is a way to create platform agnostic versions of plugins like the wonderful Steve Harris Plugin pack. I currently have multiple users collaborating on projects using different machines and some don’t have the flexibility to run linux due to hardware drivers being unavailable for some of their devices. Any help would be appreciated.

Platform agnostic, or available for multiple platforms? The only way to make a single plugin which runs on multiple platforms is to use an interpreted language, like the Lua plugins available in Ardour.
That limits how sophisticated the plugin can be.

To make plugins available on multiple platforms you “just” need a plugin developer with the time and motivation to make multiple builds of the same plugins available. The ACE plugins which come with Ardour are available on all platforms where Ardour runs, the Overtone DSP plugins are available for Mac, Linux, and Windows on x86 platforms (no ARM builds available currently), the Airwindows plugins are available for Windows, Linux, and Mac on x86 and Linux and Mac on ARM platforms. The x42 plugins are available on Windows, Linux, and Mac.

Presumably that is what you really want, a way that projects can be opened on multiple different platforms, whether or not it uses a platform agnostic plugin, or just a plugin which is available on all the platforms you want to use.

tl;dr: It will need some work to make the whole set available for windows. I suggest you ask upstream at Issues · swh/lv2 · GitHub

Sadly the source-code of the SWH plugins is not yet entirely portable.

The plugins target POSIX systems and can be compiled on Linux, *BSD and macOS (around a decade ago I compiled the old LV1 plugins for PPC and intel mac:

Looking at the LV2 sources, the pitch-shift plugins (mbeq, pitch_scale) require FFTW (which can be compiled for Windows), and some other plugins (fm-osc, hermes-filter, analog-osc) require mmap(2), which is POSIX only. That code will have to be changed for Windows to use CreateFileMapping, MapViewOfFile.

The rest of the plugins do compile fine. After commenting out the aforementioned plugins, cross-compiling CC=x86_64-w64-mingw32-gcc make produces the following result

unzip and copy all *.lv2 bundles to %COMMONPROGRAMFILES%\LV2\ (see also Filesystem Hierarchy Standard) and Ardour should see them next time you start it.

@GMaq there’s a native Windows version of Barry’s Satan Maximzer for you.


Wow, thanks! Bye bye Linux! :stuck_out_tongue_closed_eyes:

1 Like

I encountered a strange issue. The plugins are recognized just fine and show up in Ardour. However, they don’t actually show up when I try to add them to a track. The stub doesn’t show up. (edit: I realized that I had put the plugins in the wrong place. Now it works).