aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* LV2/makeplugin: Missing require.Harald Eilertsen2021-03-281-0/+3
|
* LV2/makeplugin: Detect more plugin types.Harald Eilertsen2021-03-281-3/+13
|
* LV2/makeplugin: Fix end of var decl detection.Harald Eilertsen2021-03-281-1/+1
| | | | | Detect end of variable decralations in original header file even if end brace is not first char on line.
* LV2: Fix url for ADClip7Harald Eilertsen2021-03-281-1/+1
|
* LV2: Add more pluginsHarald Eilertsen2021-03-2722-5/+853
| | | | | | | | | | | | | | This adds the following plugins: - Baxandall - Beam - Biquad - Biquad2 - BiquadOneHalf Had to manually fix the `Type` param in the Biquad* plugins, since the script isn't able to pick up enumeration values. Apart from that the script took care of everything.
* LV2/makeplugin: Add --pristine cmd line arg.Harald Eilertsen2021-03-271-4/+25
| | | | | This arg will make the plugin from scratch, throwing away any existing port of the same plugin.
* LV2/makeplugin: Allow non-word chars in param name.Harald Eilertsen2021-03-271-1/+1
|
* LV2: Fix manifest.ttl plugin templateHarald Eilertsen2021-03-271-7/+1
| | | | | This makes the generated plugin manifest.ttl.in file suitable to append to the bundle manifest.ttl.in file.
* LV2/makeplugin: fix template code for AssignParamsHarald Eilertsen2021-03-271-1/+1
|
* LV2: add activate method to plugin template headerHarald Eilertsen2021-03-271-0/+1
|
* LV2/makeplugin: Pick up var init from plugin cpp file.Harald Eilertsen2021-03-273-0/+18
|
* LV2/makeplugin: Get variable decls from plugin header.Harald Eilertsen2021-03-273-1/+14
|
* LV2/makeplugin: Move Plugin.ttl stuff to it's own class.Harald Eilertsen2021-03-272-43/+87
|
* LV2/makeplugin: Add slug to PluginInfo class.Harald Eilertsen2021-03-271-0/+4
|
* LV2/makeplugin: ctrl ports know their name and symbol.Harald Eilertsen2021-03-272-14/+10
| | | | | Could possibly flesh out this to a proper class, but a hash is ok enough for now.
* LV2/makeplugin: Move type mapping to PluginInfo class.Harald Eilertsen2021-03-272-13/+17
|
* LV2/makeplugin: Refactor makeplugin script.Harald Eilertsen2021-03-272-24/+40
| | | | | Instantiate PluginInfo object instead of using a class method returning a hash.
* LV2/makeplugin: Refactor makeplugin script.Harald Eilertsen2021-03-272-48/+72
| | | | | Make PluginInfo class to hold the code for fetching info about the plugin from other sources.
* Improve makeplugin scriptHarald Eilertsen2021-03-131-13/+34
| | | | | Fetch number of control ports and their labels from the WinVST source files.
* Move all plugins into bundle.Harald Eilertsen2021-03-1316-158/+120
| | | | | As suggested by @dromer@github.com, this moves all Airwindows plugins into a separate bundle. This cleans up the lv2 directory quite a bit.
* LV2: Reset state on activate.Harald Eilertsen2020-09-0226-36/+423
| | | | | | | | | | 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.
* LV2: add support for (de)activate in plugin wrapper.Harald Eilertsen2020-09-022-1/+10
| | | | | | | | 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.
* LV2: Fix plugin type for BassKit.Harald Eilertsen2020-08-022-1/+3
| | | | And add the EQ type to makeplugin.
* LV2: Port BassKit plugin.Harald Eilertsen2020-08-025-1/+194
| | | | | | | 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.
* LV2: Fix incorrect min values for Air plugin.Harald Eilertsen2020-08-021-2/+2
|
* LV2: Port BassDrive plugin.Harald Eilertsen2020-08-025-1/+188
|
* LV2: Update readme with mailing list info.Harald Eilertsen2020-08-021-0/+6
|
* LV2: makeplugin use cheatsheet db for plugin type mapping.Harald Eilertsen2020-08-022-1/+42
| | | | | | 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.
* LV2: makeplugin create control port defs in ttl.Harald Eilertsen2020-08-022-28/+45
| | | | | | 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.
* LV2: makeplugin script not handles number of control ports.Harald Eilertsen2020-07-223-4/+14
| | | | | | | | 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.
* LV2: Added Aura, Average and AverMatrix plugins.Harald Eilertsen2020-07-2213-3/+408
| | | | | | 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.
* Added airwindows-cheatsheet from ajboni & al as submodule.Harald Eilertsen2020-07-222-0/+3
| | | | | | | | | | | 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/
* LV2: Add Atmosphere plugins (buss and channel.)Harald Eilertsen2020-07-219-2/+347
|
* LV2: Add template plugin and script.Harald Eilertsen2020-07-215-0/+151
| | | | | | | | | 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.
* LV2: Add plugin AQuickVoiceClipHarald Eilertsen2020-07-205-1/+176
|
* LV2: Add plugin Apicolypse.Harald Eilertsen2020-07-205-1/+147
|
* LV2: Refactor in, out and params to base class.Harald Eilertsen2020-07-209-290/+48
| | | | | | | | | 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...
* LV2: Add plugin AirHarald Eilertsen2020-07-195-1/+284
|
* LV2: Add plugin ADT.Harald Eilertsen2020-07-195-1/+247
|
* LV2: Refactor common code to base class.Harald Eilertsen2020-07-195-37/+32
|
* LV2: Refactor common LV2Wrapper.Harald Eilertsen2020-07-198-140/+89
| | | | | Move the common wrapper code into a template class that can be instantiated from each plugin.
* LV2: Port plugin ADClip7.Harald Eilertsen2020-07-186-1/+305
| | | | | See https://www.airwindows.com/adclip-7/ for a great introduction to what this plugin does.
* LV2: Add readme and license files.Harald Eilertsen2020-07-183-0/+107
| | | | | Also add a README in the root of the project to clarify that this is merely a port of the official plugins.
* LV2: Move built plugins to an lv2 subfolder under the build dir.Harald Eilertsen2020-07-181-4/+4
|
* LV2: Tighten compiler warnings and drop optimizationHarald Eilertsen2020-07-181-1/+1
| | | | | | | | | | | | | | | | 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.
* LV2/Acceleration: Use the LinuxVST processing codeHarald Eilertsen2020-07-182-6/+59
|
* LV2: Split lv2 interface code and actual plugin.Harald Eilertsen2020-07-163-115/+131
| | | | | | | 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.
* LV2: Move actual processing into Acceleration class.Harald Eilertsen2020-07-161-34/+50
|
* LV2: Make Acceleration class instead of POD struct.Harald Eilertsen2020-07-161-5/+6
| | | | | 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.
* LV2: Add stereo ports to Acceleration.Harald Eilertsen2020-07-152-16/+37
|