juce-framework/JUCE
GitHub: juce-framework/JUCE
JUCE 是一个面向音频领域的跨平台 C++ 应用框架,专注于简化桌面和移动端音频插件及宿主应用的开发流程。
Stars: 8135 | Forks: 2013

JUCE 是一个开源的跨平台 C++ 应用程序框架,用于创建桌面和移动应用程序,包括 VST、VST3、AU、AUv3、AAX 和 LV2 音频插件及插件宿主。JUCE 可以通过 CMake 轻松集成到现有项目中,也可以通过 [Projucer](#the-projucer) 用作项目生成工具,后者支持导出 Xcode (macOS 和 iOS)、Visual Studio、Android Studio 和 Linux Makefiles 的项目,并且包含一个源代码编辑器。
## 入门指南
JUCE 仓库包含 [master](https://github.com/juce-framework/JUCE/tree/master) 和 [develop](https://github.com/juce-framework/JUCE/tree/develop) 分支。develop 分支包含最新的错误修复和功能,并会定期合并到 master 分支成为稳定的[标记版本](https://github.com/juce-framework/JUCE/releases)(包含预构建二进制文件的最新版本也可以从 [JUCE 网站](https://juce.com/get-juce)下载)。
JUCE 项目可以使用 Projucer(JUCE 自己的项目配置工具)或 CMake 进行管理。
### Projucer
仓库中不包含预构建的 Projucer,因此你需要为自己的平台构建它 —— Xcode、Visual Studio 和 Linux Makefile 项目位于 [extras/Projucer/Builds](/extras/Projucer/Builds)(最低系统要求列在下方的[最低系统要求](#minimum-system-requirements)部分)。Projucer 随后可用于创建新的 JUCE 项目、查看教程和运行示例。也可以直接将 JUCE 模块源代码包含在现有项目中,或者将它们构建为静态或动态库以链接到项目中。
如需更多入门帮助,请参考 JUCE [文档](https://juce.com/learn/documentation)和[教程](https://juce.com/learn/tutorials)。
### CMake
需要 3.22 或更高版本。要使用 CMake,你需要安装它,可以通过系统包管理器或[官方下载页面](https://cmake.org/download/)安装。有关 JUCE CMake API 的详细文档,请参阅 [JUCE CMake 文档](/docs/CMake%20API.md)。有关可能作为新 CMake 项目起点有用的示例,请参阅 [CMake 示例目录](/examples/CMake)。
#### 构建示例
要使用 CMake 构建 JUCE 捆绑的示例和额外工具,只需克隆 JUCE,然后运行以下命令,将“DemoRunner”替换为你希望构建的目标名称。
```
cd /path/to/JUCE
cmake . -B cmake-build -DJUCE_BUILD_EXAMPLES=ON -DJUCE_BUILD_EXTRAS=ON
cmake --build cmake-build --target DemoRunner
```
## 最低系统要求
#### 构建 JUCE 项目
- __C++ 标准__: 17
- __macOS/iOS__: Xcode 12.4 (Intel macOS 10.15.4, Apple Silicon macOS 11.0)
- __Windows__: Visual Studio 2019 (Windows 10)
- __Linux__: g++ 7.0 或 Clang 6.0(有关依赖项的完整列表,请参阅[此处](/docs/Linux%20Dependencies.md))。
- __Android__: Windows、macOS 或 Linux 上的 Android Studio (NDK 26)
#### 部署目标
- __macOS__: macOS 10.11 (x86_64, Arm64)
- __Windows__: Windows 10 (x86_64, x86, Arm64, Arm64EC)
- __Linux__: 主流 Linux 发行版 (x86_64, Arm64/aarch64,像 armv7 这样的 32 位 Arm 系统应该可以工作,但没有定期测试)
- __iOS__: iOS 12 (Arm64, Arm64e, x86_64 (模拟器))
- __Android__: Android 7 - Nougat (API Level 24) (arm64-v8a, armeabi-v7a, x86_64, x86)
## 许可
有关许可和依赖项信息,请参阅 [LICENSE.md](LICENSE.md)。
## AAX 插件
AAX 插件需要使用 PACE Anti-Piracy 的签名工具进行数字签名,然后才能在商业版本的 Pro Tools 中运行。这些工具由 Avid 免费提供。在获取签名工具之前,你需要使用 Pro Tools 的特殊版本(称为 Pro Tools Developer)来测试你的未签名插件。获取 Pro Tools Developer 的步骤如下:
1. 在[此处](https://developer.avid.com/aax/)注册成为 AAX 开发者。
2. 发送电子邮件至 [devauth@avid.com](mailto:devauth@avid.com) 请求 Pro Tools Developer Bundle 激活码。
3. 从你的 Avid 开发者账户下载最新的 Pro Tools Developer 构建。
当你的插件在 Pro Tools Developer 中经过测试和调试,并且你准备好对其进行数字签名时,请发送电子邮件至 [audiosdk@avid.com](mailto:audiosdk@avid.com),主题为“PACE Eden Signing Tools Request”。你需要包含每个插件的概述以及显示该插件在 Pro Tools Developer 中运行的屏幕录像,如果可能的话请包含音频。
请同时包含以下信息:
- 公司名称
- 管理员全名
- 电话号码
提交请求后,PACE Anti-Piracy 将直接联系你,提供有关签名插件的信息。当插件签名完成后,你就可以自由销售和分发它们。如果你有兴趣在 Avid Marketplace 上销售你的插件,请发送电子邮件至 [audiosdk@avid.com](mailto:audiosdk@avid.com)。
标签:AAX, Android Studio, AU, Bash脚本, C++, CMake, DSP, LV2, Projucer, Visual Studio, VST, VST3, Xcode, 中间件, 应用开发框架, 开源, 插件开发, 数字信号处理, 数据擦除, 桌面应用, 移动应用, 音乐制作, 音频处理, 音频插件