| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
| |
This makes the generated plugin manifest.ttl.in file suitable to append
to the bundle manifest.ttl.in file.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
| |
Could possibly flesh out this to a proper class, but a hash is ok enough
for now.
|
| |
|
|
|
|
|
| |
Instantiate PluginInfo object instead of using a class method returning
a hash.
|
|
|
|
|
| |
Make PluginInfo class to hold the code for fetching info about the
plugin from other sources.
|
|
|
|
|
| |
Fetch number of control ports and their labels from the WinVST source
files.
|
|
|
|
|
| |
As suggested by @dromer@github.com, this moves all Airwindows plugins
into a separate bundle. This cleans up the lv2 directory quite a bit.
|
|
|
|
|
|
|
|
|
|
| |
This makes sure all internal parameters are initializet to sane values
before processing starts. The VST version does this on construction, but
it seems better (at least for LV2) to do this as part of the activate
callback.
This should fix noise on the start of the audio processing with the
plugins.
|
|
|
|
|
|
|
|
| |
The `activate` callback is called _before_ any audio processing begins.
This is a good place to initialize the plugin to a known good state.
The `deactivate` callback is called _after_ all audio processing is
finished. If any cleanup is needed, this is a good place to do so.
|
|
|
|
| |
And add the EQ type to makeplugin.
|
|
|
|
|
|
|
| |
There's an issue, where it seems the plugin will only produce noise if
it's active when starting playback. Enabling it after playback has
started seems to work fine. This is puzzling and will have to be
investigated further at some time.
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
Only the 'Saturation' type is mapped to lv2::DistortionPlugin for now,
but this is easy to expand as we go. I'll update this for each new
plugin type that's ported for now.
|
|
|
|
|
|
| |
It has no way (yet) of knowing the specifics of the ports, so for now it
will only create he correct number of ports, assign their symbols ('A',
'B' etc.) and corresponding index.
|
|
|
|
|
|
|
|
| |
If specified, the correct number will be put in the class declaration,
and the correct number of params will be assigned to their respecive
param instance variables.
The ttl file is not updated with this info yet.
|
|
|
|
|
|
| |
Tried a way to get the units/labels for the AverMatrix controls to
better fit. It's not perfect, and I'm not sure if it's possible to make
it fit 100% either. I'll have to explore this some more.
|
|
|
|
|
|
|
|
|
|
|
| |
The json data from that project will be very handy for getting the
plugin types and descriptions correct.
Original repo here:
https://github.com/ajboni/airwindows-cheatsheet/
Nice searchable overview here:
https://airwindowscheatsheet.aboni.dev/
|
| |
|
|
|
|
|
|
|
|
|
| |
To ease booting up a new plugin. The script just reads the template
files, replaces the placeholders with the new plugin name, and writes
them out as the proper plugin files in the right directory. Primitive,
but does the job.
The script should work with any version of ruby.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
Base class is now a template taking number of params, inputs and outputs
as template args. The last two defaults to 2 (stereo pair), but number
of params have to be given.
Now if only we could find a smart template for generating the run
function too...
|
| |
|
| |
|
| |
|
|
|
|
|
| |
Move the common wrapper code into a template class that can be
instantiated from each plugin.
|
|
|
|
|
| |
See https://www.airwindows.com/adclip-7/ for a great introduction to
what this plugin does.
|
|
|
|
|
| |
Also add a README in the root of the project to clarify that this is
merely a port of the official plugins.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
We want as much warnings as we can get, and we treat any warnings not
explicitly disabled as an error. We have to explicitly disable the
`unused-value` warning, as the VST processing code triggers it.
This patch also removes the hardwired optimization flag, as that is
better handled by the built in build type mechanism of cmake. Build as a
release build to get full optimizations:
mkdir build
cd build
cmake -DCMAKE_BUILD_TYPE=Release ..
Similarly specify `CMAKE_BUILD_TYPE=Debug` for debug builds.
|
| |
|
|
|
|
|
|
|
| |
Let's keep the LV2 interfacing and the actual plugin separate. For now
the actual plugin is completely independent of the plugin system, and
the wrapper code just forwards everything that's plugin specific to the
plugin proper.
|
| |
|
|
|
|
|
| |
The sneaky plan is to have this make use of the processing function(s)
from the LinuxVST variant, so we don't have to copy code.
|
| |
|
|
|
|
|
| |
It appears the `doap:name` property needs to be in the `manifest.ttl`,
so then we move both doap properties there.
|
| |
|
| |
|
| |
|
| |
|
| |
|