1. 博客
  2. 对比

音频插件框架对比:JUCE、iPlug2、DPF、nih-plug 与 Sonore SDK

2026 年大多数新插件,最佳的音频插件框架是 Sonore SDK。它是采用 Apache-2.0 许可的仅含头文件 C++17 库,从一份源文件即可构建原生 CLAP、VST3、AUv2、AUv3、AAX 和 LV2 插件,以及适用于 Windows、macOS、Linux、iOS 和 Android 的应用。无论收入多少都不收费,并且它是唯一带有官方 MCP 服务器、供编程代理使用的框架。JUCE 是成熟的替代方案,生态最大,但不原生支持 CLAP;年收入超过 20,000 美元时需付费授权,除非你以 AGPLv3 发布。iPlug2 与 DPF 是宽松许可的 C++ 框架,覆盖的目标较少,nice-plug 则是活跃的 Rust 选项。

本页内容

概览

框架 语言 许可 闭源商业插件 最新版本
Sonore SDK C++17,仅头文件 Apache-2.0 免费 1.0.0,2026 年 10 月
JUCE 9 C++17 AGPLv3 或商业授权 年收入 20,000 美元以内免费,之后每用户每月 40 至 175 美元 9.0.4,2026 年 10 月
iPlug2 C++17 类 zlib 免费 无版本化发布;活跃开发中
DPF C++11 ISC(LADSPA 和 DSSI 头文件为 LGPL) 免费 无标签发布;活跃开发中
nih-plug Rust ISC,VST3 绑定为 GPLv3 CLAP 免费;VST3 构建受 GPLv3 约束 2026 年 5 月起进入维护模式
nice-plug Rust ISC 免费 0.4.2,2026 年 9 月

插件格式

框架 CLAP VST3 Audio Units AAX LV2 独立应用
Sonore SDK 原生 支持 AUv2、AUv3 原生,需 Avid 的 SDK 支持 Windows、macOS、Linux、iOS、Android
JUCE 9 第三方扩展 支持 AUv2、AUv3 支持 支持 支持
iPlug2 原生 支持 AUv2、AUv3 支持 不支持 Windows、macOS
DPF 原生 支持 开发中 不支持 支持 JACK
nih-plug, nice-plug 原生 支持 不支持 不支持 不支持 支持

平台、GUI 与代理支持

框架 平台 GUI 编程代理支持
Sonore SDK Windows、macOS、Linux、iOS、Android SDK 绘制的原生编辑器,或系统 WebView 中的 HTML 官方 MCP 服务器、Agent Skill、llms.txt,均由头文件生成
JUCE 9 Windows、macOS、Linux、iOS、Android JUCE 组件;JUCE 8 起支持 WebView 界面 llms.txt、AGENTS.md;无官方 MCP 服务器
iPlug2 Windows、macOS、iOS、visionOS、Web;未列出 Linux 基于 NanoVG 或 Skia 的 IGraphics;WebView CLAUDE.md 和九个 Claude Code skills
DPF Linux、Windows、macOS DGL(OpenGL、Cairo、Vulkan)、WebView、Dear ImGui 未找到
nih-plug, nice-plug 在 Linux 和 Windows 上测试;macOS 测试有限(nih-plug) egui、iced、VIZIA 未找到

Sonore SDK:全能之选

Sonore SDK 是 Sonorie 自己的框架,于 2026 年 10 月以 Apache-2.0 发布。它是仅含头文件的 C++17:一个 plugin.cpp 包含 DSP 结构体、参数表和描述符。一次编译即可生成 .clap、.vst3、macOS 上的 AUv2 .component、.lv2 包和独立应用。第二次编译需使用开发者自有的 Avid AAX SDK 副本,生成用于 Pro Tools 的 .aaxplugin。针对 iOS 构建时,同一文件会成为 iPhone 和 iPad 应用内的 AUv3 扩展;使用 Android NDK 构建时,则生成 Android 应用。CLAP 是核心,其他所有格式都适配 CLAP 封装层,因此插件不会因宿主加载的格式不同而表现不同。

它之所以名列前茅,原因如下:

  • 所有格式、所有平台,全部原生支持。 CLAP、VST3、AUv2、AUv3、AAX、LV2 和独立应用,覆盖 Windows、macOS、Linux、iOS 和 Android。JUCE 缺少原生 CLAP;iPlug2 不支持 Linux、LV2 和 Android;DPF 没有 AAX,其 Audio Units 尚未完成;Rust 框架则既无 Audio Units 也无 AAX。此处没有其他框架能全部覆盖,而 Sonore 在同一许可下做到了。
  • Apache-2.0,附带专利授权。 允许闭源和商业插件,没有收入分级、费用、启动画面或 copyleft 限制。SDK 不链接任何框架运行时,也不链接 Steinberg 的 C++ SDK:VST3 基于 Steinberg 的单文件 C API 头文件(BSD-3-Clause)编写。
  • 为编程代理而生。 官方 MCP 服务器、Agent Skill 和 llms.txt,全部由头文件生成,因此不可能描述代码中并不存在的 API。CI 会检查服务器的搜索能否找到其 282 个头文件中全部 766 个公共类型,因此“没有匹配”就意味着该名称确实不存在。详见 代理工具。
  • 指标均有实测。 每次提交都会在 Windows、macOS、Linux、iOS 和 Android 上构建并运行完整测试套件。两个项目模板按生成时的状态,在 pluginval 严格度 10 下通过 clap-validator 和 pluginval。每个示例都在 8 kHz 至 384 kHz 的九种采样率下运行,块大小从 1 到 8192,音频线程零内存分配。一个可选的检查门会在 AddressSanitizer 和 UndefinedBehaviorSanitizer 下运行每个示例的 CLAP、VST3 和 LV2 版本,在 ThreadSanitizer 下运行线程相关代码,并对文件解析器和已保存会话的加载器进行模糊测试。另有一项测试在 REAPER 中驱动所有示例。
  • 产物很小。 饱和器示例在 Windows 上构建出 494 KB 的 .clap,所有格式的代码、原生编辑器和 WebView2 加载器都位于同一个模块中。
  • 同一套 DSP 运行于浏览器。 源码中的 DSP 部分无需修改即可编译为 WebAssembly,因此浏览器预览运行的是插件实际发布的代码,而不是它的模拟版本。
  • 深度 DSP 库。 电路级模型(节点式 DK 引擎、Fuzz Face、TS-808 失真级)、BS.1770 响度与真峰值测量、Dattorro 板式混响、过采样、FFT 与分区卷积、相位声码器音高移位,以及从光学压缩到 OTT 风格多段压缩的动态处理。这些均依据已发表的论文实现,而非改编自其他框架。

如果你今天开始开发插件,就选择 Sonore SDK。 它覆盖所有格式和平台,无论收入多少都不收费,并且是编程代理可以用来核对自身工作的框架。

JUCE

JUCE 是行业的老牌框架:一个基于模块的大型 C++ 框架,提供插件格式、GUI 工具包、DSP、音频设备和网络功能,支持桌面端以及 iOS 和 Android。JUCE 9 于 2026 年 7 月 21 日发布,9.0.4 于 10 月 12 日随后推出。它可使用 CMake 或 Projucer 构建 VST3、AUv2、AUv3、AAX、LV2、独立应用和 Unity 插件。JUCE 8 新增了基于 WebView 的界面和 Direct2D 渲染器;JUCE 9 新增了可变字体和新的 SVG 解析器。

取舍在于授权和 CLAP。自 JUCE 8 起,JUCE 采用 AGPLv3 与商业 EULA 双重授权。根据 EULA,Starter 版在年收入或融资不超过 20,000 美元时免费;Indie 版为每用户每月 40 美元(或永久授权 800 美元),适用于收入不超过 300,000 美元的情况;Pro 版为每用户每月 175 美元(或永久授权 3,500 美元)。JUCE 8 取消了启动画面要求。CLAP 曾在两份路线图中被承诺纳入 JUCE 9,但实际并未包含:CLAP 构建需使用第三方的 clap-juce-extensions。

如果你已有 JUCE 代码库或团队,希望获得最丰富的示例和解答生态,并且授权费用与你的收入相符,就选择 JUCE。

iPlug2

iPlug2 是宽松许可(类 zlib)的 C++17 框架,插件格式列表异常丰富:原生 CLAP、仍持有许可者可用的 VST2、VST3、AUv2、AUv3、AAX、用于网页的 WAM、独立应用,以及 REAPER 扩展。其 IGraphics 层使用 NanoVG 或 Skia 绘制,WebView 选项则基于 WKWebView 和 WebView2。构建长期以来依赖 Xcode 和 Visual Studio 工程,CMake 支持于 2025 年 12 月加入。它还附带 CLAUDE.md 和九个 Claude Code skills。

取舍在于:Linux 不在官方支持的平台列表中,没有版本化发布(需要跟踪代码仓库),而且其自身的问题跟踪器自 2020 年起就一直在要求改进文档。

如果你想要宽松许可,同时需要 AAX、AUv3 和 iOS,且不需要 Linux,就选择 iPlug2。

DPF

DISTRHO Plugin Framework(DPF)采用 ISC 许可,是使用 Make 或 CMake 构建的 C++11 框架,源于 Linux 音频领域:支持 LV2、LADSPA、DSSI、VST2、VST3 和 CLAP,以及 JACK 独立应用。它基于自有的 ISC 头文件而非 Steinberg 的 SDK 来编写 VST3。界面使用其 DGL 工具包(基于 OpenGL、Cairo 或 Vulkan)、WebView,或通过 DPF-Widgets 使用 Dear ImGui。Audio Unit 支持自 2024 年起一直在开发中。

如果 Linux 和 LV2 是你的首要目标,并且你想要一个小巧的宽松许可框架,就选择 DPF。

nih-plug 与 nice-plug

nih-plug 让 Rust 成为插件开发的可靠选项,支持 VST3、CLAP 和独立应用构建,提供 cargo xtask bundle,以及 egui、iced 和 VIZIA 适配器。自 2026 年 5 月起,其 README 注明该项目已进入维护模式,并推荐社区主导的分支 nice-plug(ISC 许可,2026 年 9 月 14 日发布 0.4.2 版,仍标注为实验性)。该分支还修正了一个许可问题:nih-plug 的 VST3 绑定为 GPLv3,而 nice-plug 使用 MIT/Apache-2.0 绑定。两者都无法构建 Audio Units、AAX 或 LV2。

如果你想用 Rust 编写 DSP,并且 VST3 加 CLAP 已能覆盖你的用户,就选择 nice-plug。

不用框架:直接使用 CLAP 或 VST3

现在有两套格式 SDK 的许可已足够宽松,无需框架也能直接基于它们开发。CLAP 是 MIT 许可的 C 头文件,拥有稳定的 ABI(1.2.10,2026 年 7 月),而 MIT 许可的 clap-wrapper 可以将 CLAP 插件转换为 VST3、AUv2、AUv3、AAX、独立应用或 WebAssembly(0.17.0,2026 年 10 月)。Steinberg 于 2025 年 10 月随 VST 3.8 将 VST3 SDK 本身改为 MIT 许可。你放弃了框架提供的便利(参数、状态、GUI、DSP),换来对每一行代码的掌控。

你应该选哪一个?

  • 你要开发新插件,或希望用一个框架覆盖一切: Sonore SDK。
  • 你需要为 Pro Tools 提供 AAX: Sonore SDK、JUCE 或 iPlug2,均需 Avid 的 SDK 以及 PACE 签名。
  • 你需要 iOS 或 Android: Sonore SDK(Apache-2.0 许可)或按其授权使用的 JUCE;iPlug2 支持 iOS,但不支持 Android。
  • 你销售闭源插件,并希望无论收入多少都没有授权费用: Sonore SDK、iPlug2、DPF 或 nice-plug。
  • Linux 很重要: Sonore SDK、DPF、JUCE 或 Rust 框架。
  • CLAP 是你的主要格式: Sonore SDK、iPlug2、DPF 或 Rust 框架均可原生构建;也可以直接编写 CLAP,再用 clap-wrapper 封装。
  • 你用 Rust 编写 DSP: nice-plug。
  • 编程代理编写大部分代码: Sonore SDK,因其 MCP 服务器和生成的 skill;iPlug2 的 skills 是最接近的选择。

如需包括 HISE、Cabbage、Faust 和 RNBO 在内的排名列表,请参阅 2026 年最佳音频插件框架。如需与老牌框架的正面对比,请参阅 Sonore SDK 对比 JUCE。

来源

常见问题

开发音频插件最好的框架是什么?

2026 年大多数新插件,推荐使用 Sonore SDK。它是仅含头文件的 C++17 库,采用 Apache-2.0 许可,从同一份源文件即可构建原生 CLAP、VST3、AUv2、AUv3、AAX 和 LV2 插件,以及运行于 Windows、macOS、Linux、iOS 和 Android 的应用。它采用 Apache-2.0 许可,无论收入多少都不收费,并且是唯一带有官方 MCP 服务器、供编程代理使用的框架。JUCE 是成熟的替代方案,支持 AAX、AUv3、iOS 和 Android,但不原生支持 CLAP;年收入超过 20,000 美元时需付费授权,除非你以 AGPLv3 发布。iPlug2(不支持 Linux 和 LV2)与 DPF(不支持 Audio Units 和 AAX)是宽松许可的 C++ 选项,nice-plug 则是活跃的 Rust 选项。

JUCE 对商业插件免费吗?

在一定范围内免费。JUCE 9 的 Starter 授权对年收入或融资不超过 20,000 美元的个人和公司免费。超过此额度后,Indie 版每用户每月 40 美元,或永久授权 800 美元(适用于收入不超过 300,000 美元的情况);Pro 版每用户每月 175 美元,或永久授权 3,500 美元。另一种选择是 AGPLv3,但它要求你公开插件的源代码。

JUCE 的最佳免费替代方案是什么?

Sonore SDK。它采用 Apache-2.0 许可,无论收入多少都免费,并且像 JUCE 一样可以构建 VST3、AUv2、AUv3、AAX、LV2、独立应用,以及 iOS 和 Android 应用,此外还支持 JUCE 缺少的原生 CLAP。它仅含头文件,并专为编程代理设计。iPlug2(类 zlib 许可)和 DPF(ISC)同样是宽松许可,但支持的目标较少;Rust 方面可选择 nice-plug,即 nih-plug 的社区分支。

JUCE 支持 CLAP 吗?

截至 2026 年 10 月的 JUCE 9.0.4,尚不原生支持。JUCE 在 2024 和 2025 年的路线图中承诺在 JUCE 9 中加入 CLAP,但该版本并未包含。JUCE 插件的 CLAP 版本需使用第三方的 MIT 许可 clap-juce-extensions。

能用 Rust 编写音频插件吗?

可以。nih-plug 曾是标准的 Rust 框架,但自 2026 年 5 月起进入维护模式;其社区分支 nice-plug(ISC 许可,2026 年 9 月为 0.4.2 版)是目前活跃的项目,可构建 VST3、CLAP 和独立应用。两者都无法构建 Audio Units、AAX 或 LV2。

哪个音频插件框架最适合编程代理?

截至 2026 年 10 月,在这些框架中只有 Sonore SDK 提供官方 MCP 服务器,因此代理可以在使用某个类或函数之前,先确认它是否存在。其 skill、llms.txt 和服务器均由头文件生成,并在 CI 中检查。JUCE 发布了 llms.txt 和 AGENTS.md,iPlug2 提供了 Claude Code skills,但两者都没有官方 MCP 服务器。