将VST音频效果/插件应用于音频文件

时间:2010-12-01 16:06:17

标签: c++ audio vst

这是我在这里徘徊一段时间之后的第一个问题。所以饶了我。

我需要通过CLI或C ++将iZotope Vinyl VST效果应用于某些音频文件(因此语言并不重要),它必须在Mac或基于Unix的系统上运行。我已经研究了所有的网络,找不到任何有效的解决方案。

我尝试过使用命令行实用程序MissWatson,但是我的结果音频文件是静默的......

./MissWatson -plugin=Vinyl -input-file="/Users/Sjaq/Desktop/test.wav" -output-file="/Users/Sjaq/Downloads/MissWatson-v1.0-mac/res.wav" -parameter=1:0.6,2:0.6,11:0.4

然后我尝试使用Steinberg VST SDK创建主机应用程序,从SDK提供的vstvalidator开始。但是当我尝试加载VST时,我收到了这个错误:

2010-12-01 16:57:40.774 vstvalidator[4654:903] Error loading /Library/Audio/Plug-Ins/VST/Vinyl.vst/Contents/MacOS/Vinyl: dlopen(/Library/Audio/Plug-Ins/VST/Vinyl.vst/Contents/MacOS/Vinyl, 262): no suitable image found. Did find: /Library/Audio/Plug-Ins/VST/Vinyl.vst/Contents/MacOS/Vinyl: no matching architecture in universal wrapper

我不知道该怎么办。我对C ++很陌生,并且做了一些没有任何问题的应用程序,但这次我已经走到了死胡同。

我读过关于pyvst的内容,但它似乎需要一个用于VST的DLL,所以它也不起作用。

2 个答案:

答案 0 :(得分:4)

我是MissWatson的作者,正如您在网页上可能注意到的那样,我很遗憾需要关闭代码,因此我不能真正要求您提供更多诊断信息,因为我不会能够修补MissWatson,如果它是一个bug。但是,我建议使用-verbose开关运行MissWatson,如果洪泛终端,可能会将该输出记录到文件中。您可能会在该输出中找到可帮助您诊断问题的内容。

无论如何,对于VST主机中的错误,我感觉您正在将应用程序编译为64位可执行文件并尝试加载32位插件。由于几乎没有任何VST / AU插件(以及序列发生器)已经实现了64位的飞跃,所以最好只将应用程序编译为32位x86二进制文件。

默认情况下,Xcode中的“debug”配置仅为您机器的本机架构构建应用程序,以节省编译期间的时间。我建议您在项目的构建设置中禁用此功能,并始终使用您计划随附的体系结构进行构建。这将防止像您在上面看到的那样出现奇怪的跨架构类型的错误。

编辑:我已经启动了一个新的命令行VST主机来替换名为MrsWatson的MissWatson。您应该尝试使用此工具。

答案 1 :(得分:0)

也许您可以移植此开源vst主机的源代码以匹配您的平台?

http://www.hermannseib.com/english/vsthost.htm

向下滚动到页面底部。

希望它有所帮助。