首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >VST插件是如何制作的?

VST插件是如何制作的?
EN

Stack Overflow用户
提问于 2010-04-06 04:37:08
回答 5查看 112.6K关注 0票数 115

我想制作(或学习如何制作) VST插件。有没有专门的SDK来做这个?如何生成.vst而不是.exe?另外,如果一个人正在寻找为Logic Pro制作音频单元,这是如何完成的?谢谢

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2010-04-06 05:37:14

从这个指向维基的link开始,解释它们是什么,并给出指向sdk的链接。以下是关于开发的一些信息

如何编译插件-为了在C++Builder中制作VST插件,首先你需要Steinberg的VST sdk。它可以在Yvan Grabit的网站上找到(链接在页面顶部)。

您需要做的下一件事是创建一个.def文件(例如: myplugin.def)。它至少需要包含以下几行:

代码语言:javascript
运行
复制
EXPORTS main=_main

Borland编译器在函数名上添加了一个下划线,这样就可以按照VST主机期望的方式导出main()函数。有关.def文件的详细信息,请参阅C++Builder帮助文件。

然而,这还不够。如果你打算使用任何VCL元素(任何与表单或组件有关的东西),你必须注意你的插件不会使Cubase崩溃(或其他VST主机,就这一点而言)。下面是操作步骤:

  1. 将Float.h.
  2. 包含在effect类的构造函数中,编写

_control87(PC_64|MCW_EM、MCW_PC|MCW_EM);

这应该能起到作用。

下面是一些更有用的站点:

http://www.steinberg.net/en/company/developer.html

通过http://www.asktoby.com/#vsttutorial实现的how to write a vst plugin (pdf)

票数 59
EN

Stack Overflow用户

发布于 2013-10-06 01:10:03

我知道这已经有3年的历史了,但对于现在正在阅读这篇文章的每个人来说:不要坚持VST、AU或任何供应商的格式。Steinberg已经停止了对VST2的支持,人们在将代码移植到较新的格式时遇到了麻烦,因为它与VST2的联系太紧密了。

These tutorials涵盖了创建在Win/Mac,32/64上运行的插件,所有插件格式都来自相同的代码库。

票数 50
EN

Stack Overflow用户

发布于 2010-04-06 16:09:35

不久前我写了一篇HOWTO for VST development on C++ with Visual Studio,详细介绍了为Windows平台创建一个基本插件所需的步骤(本文的Mac版本即将发布)。在Windows上,VST插件只是一个普通的DLL,但有许多“陷阱”,你需要使用一些特定的编译器/链接器开关来构建插件,否则它将无法被某些主机识别。

至于Mac,VST plugin只是一个带有.vst扩展的捆绑包,尽管也有一些设置必须正确配置才能生成一个有效的插件。你也可以下载我前段时间制作的一组Xcode VST plugin project templates,它们可以帮助你在该平台上编写一个工作插件。

至于AudioUnits,苹果已经提供了他们自己的项目模板,这些模板包含在Xcode中。Apple也有非常好的在线教程和文档:

  • Audio Unit Programming Guide

我也强烈推荐使用Juce Framework,它对创建跨平台的VST/AU插件有很好的支持。如果你打算开源,那么Juce是不需要动脑筋的,但是如果你打算在没有源代码的情况下发布你的作品,你就需要为此支付许可费。

票数 30
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2581025

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档