2

在最近获得 MAC 后,我只是想涉足 OSX 世界。

在过去的几个月里,我还没有成功地构建一个有效的 VST 2.4。我只是不明白为什么:vst 示例中的项目(有点)开箱即用,但我自己的项目无法正常工作。

我已经准确地镜像了每个构建设置(包括 info.plist 和 pkginfo),仔细检查了 vst.app 的内容是否相同,正确地构建为具有正确扩展名的 vst 等,并且代码实际上是相同的,但是我尝试过的任何主机都无法识别我的 vst。命令行甚至与构建相同。我已经使用附带的 minihost vst 测试仪测试了我的 VST,它通过并工作 - 但仍然无法识别。我什至用 nm 检查了导出的符号,它们看起来正确(即 createEffectInstance 已正确导出)。

是什么赋予了?一定有一些我没有发现的隐藏构建设置似乎取消了我的 VST 资格。

4

2 回答 2

1

可能是最明显但被忽视的设置:您是构建 32 位还是 64 位?您需要确保位数与您的主机匹配,否则将不会加载插件(顺便说一句,这可能解释了为什么插件可以加载到您自建的迷你主机而不是另一个音序器中)。为了确保与大多数主机兼容,我会选择 32 位版本。

另外,这是我不久前就该主题写的教程。但是,您声称您使用 Info.plist 和诸如此类的东西做的一切都是正确的,但也许您错过了一小步:

http://teragonaudio.com/article/Making-a-VST-plugin-from-scratch-with-Xcode.html

另一个可能有用的工具是MrsWatson(免责声明:我是该程序的作者)。它是一个命令行 VST 主机,可用于提供有关 VST 的诊断信息,也可用于插件测试和调试。由于插件的 32/64 位困难,在 Mac OSX 上,该程序提供单独的 32 位和 64 位二进制文​​件,而不是使用通用二进制文件。

您应该尝试在插件上运行以下命令:

mrswatson --verbose --plugin /path/to/wherever/you/put/the/plugin.vst --display-info

如果您看到参数列表和其他信息,那么它应该是洁净的并且能够在大多数音序器中加载。希望这能让你走上正轨!

于 2014-02-28T08:41:25.853 回答
0

尝试使用您的调试器来观察Dispatcher()调用主机的内容。检查您的插件和包含的示例项目之间是否存在任何差异。根据我的经验,主机通常会在 Dispatcher() 调用引发异常或返回主机因任何原因不喜欢的结果后立即中止加载插件。

于 2014-03-02T01:48:49.877 回答