如何使用 OSX/XCode 构建 VST 插件

Posted

技术标签:

【中文标题】如何使用 OSX/XCode 构建 VST 插件【英文标题】:How to build a VST-plugin with OSX/XCode 【发布时间】:2009-08-18 15:36:26 【问题描述】:

我想在 OSX 上构建一个 VST 插件。我可以很好地编译它,但是 VST 主机(Cubase Essential 4)在尝试加载它或报告插件以某种方式损坏时总是崩溃。 这可能是因为我缺少 VST 捆绑包的一些成分。

需要在 XCode 中设置哪些首选项以及必须将哪些内容放入捆绑包中才能使其正常工作?或者在某个地方甚至有一个示例项目?

提前谢谢你

【问题讨论】:

您是在尝试构建 VST2.4 还是 VST3 插件? 通常是 VST3,但可能有一些遗留代码...... 【参考方案1】:

我在这里编写了一份在 Mac OSX 上手动开发 VST 插件的指南:

Making a VST plugin from scratch with Xcode

我还开发了一组 Xcode 项目模板,您可以使用它们为您完成所有这些工作,并为您提供 VST 效果/乐器的基础项目:

Teragon Audio Xcode VST Templates

这两个都是为 VST 2.x SDK 编写的,因为我没有使用 3.x SDK,也没有使用任何已经迁移到它的序列器。

【讨论】:

没问题!如果您有任何问题或发现任何错误,请在博客条目上发表评论...我希望保持最新和准确。 是否有任何可用于更新 Xcode (5) 版本的资源?【参考方案2】:

我在网上搜索了有关如何使用 Xcode 构建 VST2 插件的完整指南,发现一些指南,尤其是 Nik 上一篇文章中的指南很有用,但其中缺少一些步骤(例如 Ableton Live 9.1.1 没有'没有第 3 步就看不到插件),有些是多余的。所以我决定为最新的 Xcode 编写完整的指南。

在 OSX 上使用 Xcode 5 创建优化的 VST2 插件的完整指南

    下载VST SDK,可以是VST3 sdk(我这里是3.6),vst2.x文件夹还在。解压并放入文件夹Documents/Xcode,使其看起来像Documents/Xcode/VST3 SDK 打开 Xcode。 Create New Project OSX -> Framework & Library -> Bundle 在对话框中选择 Cocoa Framework。 创建项目后,在信息选项卡中: 添加新键Resource should be file-mapped,值为YES 在构建设置选项卡中: Deployment -> Deployment Location -> 设置Yes Deployment -> Deployment Postprocessing -> 设置Yes Deployment -> Installation Built Products Location -> 设置/ Deployment -> Installation Directory -> 设置/Library/Audio/Plug-Ins/VST Packaging -> Wrapper Extension -> 设置vst Search Paths -> Header Search Paths -> 添加路径 "$(HOME)/Documents/Xcode/VST3 SDK" 带引号,带有 recursive 标志 Menu -> Product -> Scheme -> Edit Scheme -> Run -> Info -> Build Configuration -> 设置Release 将 vst2.x 文件夹从 VST3 SDK/public.sdk/source/ 拖到项目树中。在添加文件对话框中: 取消选中Copy items into destination group's folder 检查Create groups for any added folderAdd to targets中检查您的项目 为您的效果或乐器添加 .h 和 .cpp 文件。 您可以简单地从 https://github.com/kn0ll/vst-2.4-xcode-examples 添加 again.h 和 again.cpp 文件进行检查。 按 Run(它可能会警告 SDK 源代码中的类型转换不当 - 让 Xcode 修复它)

【讨论】:

我还必须将 Build Settings/Packaging/Force Package Info Generation 设置为 YES 以获取单个包文件而不是文件夹。没有这个,插件就不会出现在 Live 中。【参考方案3】:

VST3 SDK/public.sdk/samples/vst/mac 的示例项目也是一个不错的起点。

【讨论】:

【参考方案4】:

This guide 涵盖了您所询问的所有内容以及更多内容。

【讨论】:

以上是关于如何使用 OSX/XCode 构建 VST 插件的主要内容,如果未能解决你的问题,请参考以下文章

windows下构建vst时如何使用外部dll

关于如何使用 JUCE 托管 VST 插件的教程? [关闭]

如何在 C# 中使用 VST 插件 dll?

如何使用命令行编译 VST 3 或音频单元?

VST 音频插件如何检测来自 VST 主机的流中断?

如何编译 VST 插件?