Airwin2Rack Documentation

repository·main·Indexed 20 days ago

https://github.com/baconpaul/airwin2rack

Airwin2Rack consolidates the Airwindows audio plugin collection into three formats: a developer-friendly static library (airwin-registry), a VCV Rack module, and a multi-format DAW plugin supporting CLAP, VST3, AU, LV2, and Standalone. It provides access to over 300 Airwindows effects with integrated documentation, polyphony options, and customizable block sizes for CPU/latency tradeoffs.

Tokens
2.5K
Snippets
3
Records
17
Agent score
72%

What's inside Airwin2Rack

  1. Available flavors of Airwin2Rack

    main

    Airwin2Rack provides the Airwindows collection in three distinct formats depending on your needs:

    1. Static Library: A uniform registry and access pattern via the airwin-registry target. This is intended for developers who want to use Airwindows as a submodule in their own projects.
    2. VCV Rack Module: Available via the Rack library or as Rack nightly builds.
    3. DAW Plugin: A plugin format supporting CLAP, VST3, AU, LV2, and Standalone for use in digital audio workstations.
  2. Adjust Block Size for CPU/Latency tradeoff

    main

    The Airwindows DSP code processes on a block sample basis. You can adjust the block size in the main menu to balance CPU load and latency.

    • Smaller Block Sizes (e.g., 4 samples): Lower latency, but higher CPU usage because the pre-block setup stage occurs more frequently.
    • Larger Block Sizes: Higher latency (due to more pre-cached information required), but lower CPU usage.

    Supported values are powers of 2 between 4 and 64. The default is 4.

  3. Configure Polyphony mode

    main

    By default, the module runs a single instance of the effect and sums input voltages to a monophonic signal.

    If you need to apply effects (like filters or accent effects) polyphonically:

    1. Open the main menu.
    2. Select "Polyphonic".

    Note: In Polyphonic mode, the module creates an instance of the effect per channel and uses CV inputs polyphonically if they have polyphonic modulators applied. This can significantly increase CPU usage.

  4. Filter effects using Collections

    main

    Because the collection contains over 350 effects, you can use Collections to narrow down the list.

    • The default collection is "Recommended" (containing curated 'greatest hits').
    • To change the view, open the "Filter by Collections" menu and select a specific collection.
    • To see every available effect, select "All plugins" to remove all filtering.
  5. Licensing and closed-source usage

    main

    The project has a complex licensing structure due to its different flavors:

    • MIT License: The core Airwindows code, the airwin-registry CMake target, AirwinRegistry.h, the documentation in res/awdoc, the top-level CMakeLists.txt, and everything in src are MIT licensed. These are safe to use in closed-source projects.
    • GPL3/GPL3+: Building the DAW plugin (which uses JUCE and VST3 SDK) or the Rack plugin (which uses the VCV Rack SDK) introduces GPL3 dependencies. Distributing products built from src-juce or src-rack may result in including GPL3 assets.
  6. Navigate the Airwindows Consolidated UI

    main

    The interface is divided into three main regions:

    1. Effect Selector (Top):
      • Use the 'hamburger' icon to open the menu.
      • Use jog buttons to scroll through effects.
      • Click the plugin name to activate typeahead-search (type partial names or categories to filter).
    2. Parameters (Left Column):
      • Knobs: Drag to edit. Hold Shift for slower, fine-grained adjustments. Double-click a knob to reset to the default value.
      • Text Entry: Click the parameter value to open a text editor for precise input. (Note: Not supported for all parameters).
    3. Documentation (Right Side): Displays a scrollable description of the currently selected effect.

    Footer: Contains the settings menu (for color schemes, menu ordering, etc.) and build information (git hash and date).

  7. Install the Airwindows Consolidated Plugin

    main

    The Airwindows Consolidated Plugin is available as a CLAP, AU, VST3, LV2, or Standalone plugin. Installation methods vary by operating system:

    • Windows: Download and run the ...-Setup.exe installer. Alternatively, download the .zip file and manually place the plugins in your DAW's plugin folder.
    • macOS: Download and run the signed .dmg installer.
    • Linux: Download the .zip file and move the contents to your plugin directory.

    Binaries are released on the GitHub Releases page whenever new Airwindows effects are added.

    # No specific command provided; use OS-specific installers or manual file movement.
  8. Use the Airwindows Suite for Rack module

    main

    The Airwindows Suite for Rack is a single VCV Rack module containing over 300 Airwindows effects.

    Layout and Controls

    • FX Selector Display: Located at the top. Shows the current effect name and category.
    • FX Parameters & Modulation: Located in the center. The faceplate dynamically displays between 0 and 10 knobs depending on the selected effect.
    • CV Modulation: You can modulate parameters using adjacent CV inputs. Use the small knob (bipolar attenuverter) to scale the modulation.
    • Stereo I/O: Located at the bottom.
    • Inactive CV Ports: If an effect has fewer than 10 parameters, unused CV inputs are displayed with dimmed ports to prevent 'dangling' cables.

    Changing Effects

    1. Arrow Buttons: Use the arrow buttons next to the effect name to cycle through effects in category or alphabetical order.
    2. Parameter Selector Menu: Click on the effect name or the category name to open a menu. This menu allows you to:
      • Select effects by category.
      • Search for specific effects using the search-by-name feature (supports partial names).
  9. Accessibility: Using a Screen Reader

    main

    The UI is exposed to screen readers on macOS and Windows.

    Navigation and Controls:

    • Tab: Move between elements.
    • Arrow Keys: Change parameter values.
    • Shift + Arrow Keys: Change values in smaller increments.
    • Home / End: Set value to extrema.
    • Delete: Reset value to default.
    • Shift + F10: Activate the text-entry area for a knob (if supported).

    Documentation Accessibility: By default, the documentation region is a read-only label. For better screen reader compatibility, you can convert it to an editable region by pressing F7 or selecting the option in the settings menu. This setting is persistent (sticky) on your machine.

  10. Access effect documentation via the Help Panel

    main

    Each Airwindows effect includes its original documentation imported from the Airwindopedia. To view the documentation for the currently selected effect:

    1. Locate the "?" button at the top of the module panel.
    2. Press the "?" to overlay the help text.
    3. Press the "?" again to close the overlay.
  11. Update the airwindows sub-library

    main

    If you are maintaining a fork or contributing, you can update the internal Airwindows library using the provided script and then performing a clean build of the Rack plugin.

    # 1. Pull the latest airwindows plugins
    ./scripts/updateToLatest.sh
    
    # 2. Perform a test build (assuming RACK_DIR is set)
    RACK_DIR=(path-to-sdk) make -j cleandep
    RACK_DIR=(path-to-sdk) make -j clean
    RACK_DIR=(path-to-sdk) make -j install
  12. Add custom documentation to effects

    main

    You can prepend your own text to the existing effect documentation by using the customDocs directory.

    Steps to add documentation:

    1. Open the plugin settings menu and select "Show Config Dir" to locate the configuration directory.
    2. Navigate to the customDocs folder.
    3. Create a .txt file named exactly after the effect (e.g., ToTape7.txt).
      • Note: Filename casing is critical on Linux and macOS (e.g., use ToTape7.txt, not totape7.TXT).
    4. Add your text to the file and save.
    5. In the plugin UI, switch to a different effect and then back to the target effect to force the documentation to reload.

    The custom text will appear at the top, followed by a separator and the original documentation.