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

作者：Sonorie。发布于 2026-10-26，最后修改于 2026-10-27。 https://sonore.dev/zh/blog/audio-plugin-frameworks-compared/

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 个公共类型，因此“没有匹配”就意味着该名称确实不存在。详见 [代理工具](/zh/#agents)。
- **指标均有实测。** 每次提交都会在 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](https://github.com/free-audio/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](https://github.com/free-audio/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 年最佳音频插件框架](/zh/blog/best-audio-plugin-frameworks-2026/)。如需与老牌框架的正面对比，请参阅 [Sonore SDK 对比 JUCE](/zh/blog/sonore-sdk-vs-juce/)。

## 来源

- JUCE：[许可](https://github.com/juce-framework/JUCE/blob/master/LICENSE.md)、[JUCE 9 EULA](https://juce.com/legal/juce-9-licence/)、[价格](https://juce.com/get-juce/)、[发布](https://github.com/juce-framework/JUCE/releases)、[CMake 格式](https://github.com/juce-framework/JUCE/blob/master/docs/CMake%20API.md)、[JUCE 8 EULA 变更](https://forum.juce.com/t/amendments-to-the-juce-end-user-licence-agreement-for-juce-8/61265)、[路线图，2025 年第三季度](https://juce.com/blog/juce-roadmap-update-q3-2025/)、[JUCE 9 新功能](https://juce.com/whats-new/)、[AGENTS.md](https://github.com/juce-framework/JUCE/blob/master/AGENTS.md)
- iPlug2：[仓库与 README](https://github.com/iPlug2/iPlug2)、[许可](https://github.com/iPlug2/iPlug2/blob/master/LICENSE.txt)、[CMake 支持](https://github.com/iPlug2/iPlug2/commit/f2eac985a899dc9bf9cad9b729abedc17e2c8441)、[文档问题](https://github.com/iPlug2/iPlug2/issues/470)
- DPF：[仓库与 README](https://github.com/DISTRHO/DPF)、[授权说明](https://github.com/DISTRHO/DPF/blob/main/LICENSING.md)、[功能](https://github.com/DISTRHO/DPF/blob/main/FEATURES.md)
- nih-plug：[仓库与 README](https://github.com/robbert-vdh/nih-plug)、[维护说明](https://github.com/robbert-vdh/nih-plug/commit/60e3f5274127de51381798e7f2b5650dce9e3302)、[vst3-sys](https://github.com/RustAudio/vst3-sys)
- nice-plug：[仓库](https://codeberg.org/RustAudio/nice-plug)、[crate](https://crates.io/crates/nice_plug)
- CLAP：[CLAP SDK](https://github.com/free-audio/clap)、[clap-wrapper 发布](https://github.com/free-audio/clap-wrapper/releases)；VST3：[VST3 SDK](https://github.com/steinbergmedia/vst3sdk)、[VST 3.8 公告](https://forums.steinberg.net/t/vst-3-8-0-sdk-released/1011988)
- Sonore SDK：[仓库](https://github.com/SonorieAI/sonore-sdk)、[平台与格式](/docs/platforms-and-formats/)、[测试](/docs/testing/)

## 常见问题

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

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 服务器。
