在跨平台应用中构建 VST 主机

Posted

技术标签:

【中文标题】在跨平台应用中构建 VST 主机【英文标题】:Building VST host in cross platform application 【发布时间】:2016-02-17 09:40:30 【问题描述】:

我计划为我正在开发的跨平台应用程序实现 VST 主机。

我应该更喜欢哪个版本的 VST,VST-2 还是 VST-3? VST-2 似乎已被贬低,但大多数其他主机应用程序仍在使用它而不是 3。

是否有任何可以在 Linux (Ubuntu) 上构建的示例,这些示例内置了主机并获得了 BSD 或类似许可?我对 JUCE 没有任何问题,除非经过一天的尝试,VST 主机示例在 Linux 上存在太多构建问题。

应用程序是用 C++ 编写的。

【问题讨论】:

【参考方案1】:

绝对是 VST2.x。我不会将 VST2 标准称为“已弃用”,就像 VST3 是“DOA”一样。 ;) 几乎所有的商业音序器都支持 VST2,几乎没有(除了 Steinberg 的 Cubase)支持 VST3。就插件而言,几乎所有插件制造商都支持 VST2,但提供 VST3 插件的厂商要少得多。

很少有插件/主机跳转到 VST3 的原因如下:

与 VST2 API 提供的工具相比,VST3 API 没有真正的技术优势 VST3 API 比 VST2 更大且更难理解 VST3 不向后兼容 VST2;它基本上是一个完全不同的插件标准

至于 Linux 兼容的 VST2 示例,请查看 MrsWatson,它在 BSD 下获得许可(完全免责声明:我是该项目的作者和维护者)。

【讨论】:

看起来很完美,谢谢。 LiveBlox 发布后,我会给你一份免费副本。在您的构建说明中可能要提到的一件事是 Steinberg 现在在他们的网站上只有 3.x 版本,但它确实在子目录中包含 2.x 版本。 "几乎没有任何支持 VST3" 嗯更好地检查你的事实老兄。 @obiwanjacobi 太好了,请说出一些支持它的除 cubase 之外的音序器。 @robby987 是的,我知道。 Steinberg 最近更改了分发 zipfile 格式(并删除了旧版 vst2.x 下载)。我还没有使 MW 适应新的结构(它在项目积压中)。

以上是关于在跨平台应用中构建 VST 主机的主要内容,如果未能解决你的问题,请参考以下文章

开发插件:DX 还是 VST?

Apache构建虚拟Web主机

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

在 C#/C++ 中托管 VST/DX 仪器? [关闭]

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

VST 主机 - 泄漏的对象 - Juce/C++