Open2

NPlug - dotnet VST3 plugin library

ピン留めされたアイテム
いぬいぬいぬいぬ

NPlugとは?

https://github.com/xoofx/NPlug

  • dotnetでVSTプラグインを作れるライブラリ
    • .NET7以降のNativeAOTに対応してて、VST3 SDK不要で.vst3ファイルが書き出せる
      • NativeAOTのmac対応は.NET8以降なので、macは.NET8以降が必要
    • C++を書かずにC#だけでプラグインが書ける
      • サンプルは本当にSDKも要らなかった
    • GUIの提供無し
      • NativeAOT対応が問題のため(Avaloniaはいけたような?)
      • IAudioPluginView を実装してね、とある

API reference

公式には用意されてないのでfugetで読む
ドキュメントコメントはちゃんと書いてあるっぽい

https://www.fuget.org/packages/NPlug/

他のライブラリと比較

  • *1 VST2は既に新規開発不可なので省く
  • *2 プラグインとしてリリースする際は、どのライブラリを使っても VST3 or GPLv3ライセンスにする必要がある
NPlug VST.NET AudioPlugSharp SharpSoundDevice
VST3 *1 △(開発中)
VST SDK 不要 ? 必要
VSTe
VSTi
VST host
GUI ✔(WPF/Windows From) ✔(WPF/Windows Forms) ✔(WPF/Windows Forms)
OS Win/mac/Linux Win Win ?
最終更新 2023年 2022年 2023年 2019年
ライセンス *2 BSD-2 LGPL MIT MIT
いぬいぬいぬいぬ

サンプルを試す

ユーザーガイドのサンプルを試す。

  • SimpleDelay
    • 指定秒数再生を遅らせるエフェクトプラグイン
    • GUIなし(ホストのUIが使われる)

各VSTホストアプリでの結果

Cakewalk by bandlab (DAW)

  • △エラーがでる
  • 無視して有効にすると使える
  • "NPlug"という会社の製品あつかい

Waveform Free (DAW)

  • ✔特に問題なく使える
  • Plugin本体と ControllerSimpleDelayController)もプラグインとして認識される

Audacity (音声編集ソフト)

  • ✔特に問題なく使える

MuseScore 4 (楽譜作成ツール)

  • ✖空のUIのウィンドウがでる
  • 値を設定できない

VSTHost (VSTホストアプリ)

  • ✔特に問題なく使える