Skip to content

xoofx/NPlug

Repository files navigation

NPlug Build Status NuGet

NPlug is a library that allows to easily develop VST3 audio native plugins in .NET using NET7+ NativeAOT.

What is VST?

Virtual Studio Technology (VST) is an audio plug-in software interface that facilitates the integration of software synthesizers and effects in digital audio workstations (DAW).

Features

  • Purely managed, fast interop, no C++/CLI.
  • Compatible with NET7+ NativeAOT
    • Build a native VST3 plugin with NPlug with zero dependencies!
  • Exposes the interfaces from VST3 version 3.7.7.
  • Provides builtin support for synchronizing automatically the data model between the AudioProcessor and AudioController.
  • Supports multiple platforms: win-x64, win-arm64, osx-x64, osx-arm64, linux-x64, linux-arm64
    • Please notice that osx full native supports will be only possible with .NET8+
  • Provides the official VST3 Validator to unit test your plugin developed with NPlug via the package NPlug.ValidatorNuGet
    • Usage documentation of NPlug.Validator is available here.

User Guide

The official documentation for VST3 is https://steinbergmedia.github.io/vst3_dev_portal/pages/

For more details on how to use NPlug, please visit the user guide.

Samples

You will find VST3 NPlug samples available in the NPlug.Samples repository.

License

The core part of this software is released under the BSD-2-Clause license but you have also to follow the following VST3 license:

NOTICE

When you are developing a plugin with NPlug, your plugin needs to comply with the VST 3 Licensing. If your plugin is distributed, it needs to either be published under:

What it means is that you are allowed to modify and redistribute NPlug (according to the BSD-2-Clause license) but you need to publish your plugin under the VST3 dual-license.

Author

Alexandre Mutel aka xoofx.