问题标签 [vst]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - VST SDK 2.4 Instrument - processReplace and processEvents
Example: If I want to play a sound in my soon to be homemade VST instrument, and this note in the sequencer is 15000 samples long and the note is set to ON by the processEvents, the processReplace function starts to play the sound from 0 to sampleFrames (that is 10000 in my example here). Then there will be 5000 samples left to play of the note the next time it enters the loop in processReplace, but still the loop will play from 0 to 10000 which is 5000 more than samples to play from the note. There will be 5000 samples of silence that are going to be played and that means that this note will not be turned off until 5000 samples later!?
If a new sound in the sequencer is placed directly after the first one the processReplace function will not see the short period of OFF set by the processEvents and see the next sample as a continous sound of the first one because it will only see the new notes ON when the loop is entered again.
How can I prevent this from happening? How can I stop the processReplace loop if the note ends in the middle of the loop?
c++ - VST2.4 SDK 一个音符结束而另一个音符开始时的乐器点击声
我已经在 C++ 中使用我的 VST 乐器一段时间了,当一个音符在另一个开始的地方结束时,我遇到了一个响亮的点击问题。
实际上,当音符结束时问题也存在,但我添加了一个“淡出”算法来消除该部分。但是,一旦另一个音符开始到另一个音符结束,我的淡出算法就没有空间了。
我一直在尝试扫描输出缓冲区以找到将在短时间内发生的陡峭的响亮值,以通过静音来消除该部分的咔嗒声,让它在那里工作了一段时间但达到了终点区。
带有来自音序器的图像的文件在此处上传,供您在 Soundcloud 上听到简短 mp3 文件中的点击声音 在声音云上点击声音
对这些事情有更多了解的人可以分享一些关于这个主题的信息,我知道点击过滤器是如何工作的,但我不知道如何在这样的 VST 仪器中实现它,显然不是。有什么好的方法来解决这个问题?
c++ - 这个 Vst Synth 例子的解释
我无法理解 Steinberg VST Synth 示例中的特定代码区域
在这个函数中:
}
我理解该功能的方式是,如果当前打开了一个 MIDI 音符,我们需要将我们的波表复制到输出数组中以传回 VstHost。我不明白具体是什么区域
件块正在做。似乎它只是将零写入输出数组......c++ - 如何创建指向与 VST 音频缓冲区相同的指针数组的指针?
在 VST 规范中,多通道音频数据的缓冲区被传递......
我想创建一个类似的“二维指针数组”,但没有太大的成功。我可以创建一个简单的指针并遍历它读取/写入值....
....但是我正在举办一个崩溃节,试图实施一些能让我...
实现这一点的正确方法是什么?
audio - 记住 Max/Msp 中的 VST 预设
我试图让 Max/MSP 记住我的补丁的 vst 预设。每次我关闭补丁并重新打开时,vst 都会默认。我尝试使用的 vst 称为炼金术(免费版)。有谁知道如何让 max/msp 记住 vst 预设,它是否因不同的 vst 和音频单元插件而异?这是炼金术播放器的下载链接。 http://www.camelaudio.com/AlchemyPlayer.php
objective-c - 仅加载 2 个 Mac 插件包(AU、VST)的一个模块
我的音频插件是与包含所有支持格式(如 AU 和 VST)的导出的二进制文件捆绑在一起的。我将完全相同的包(只是不同的扩展名)复制到
现在,当用户打开说 VST 插件时,它工作正常。但是当他之后打开 AU 插件时,它崩溃了,从堆栈跟踪来看,它看起来像一个模块调用另一个模块等等。我最初认为这是一个很好的旧 Cocoa 全局类名,是巨大的 Mac OS X 设计缺陷,但它似乎不是这样,因为 VST 使用的是 Carbon。
它似乎根本没有加载AU模块,它只是从VST模块创建了另一个组件,只是带有AU接口!我在那里有一个全局变量,所以我记录了它的地址,两个插件的地址都是一样的,所以它必须是同一个模块,对吧?
不幸的是,我确实需要为每个加载正确的,因为它们具有不同的初始化和全局变量。那么如何让操作系统正确加载第二个呢?
谢谢!
macos - 如何让 OSX 打开同一个包两次?
我有 2 个内容完全相同的包,只是将它们复制到不同的文件夹并适当地重命名(这些是特定的音频插件)。主机打开一个包,这是正确的,但是当它应该打开第二个包时,它实际上似乎只是附加了已经加载的第一个包。但我也需要它来打开第二个。我试图重命名它,改变道具......什么都没有......它仍然只是使用已经加载的一个而不是加载第二个。我怎样才能做到这一点?
谢谢!
c++ - VSTGUI 4.0 - 错误 C2664: 'std::make_pair'
我正在尝试使用 vstgui 4.0 为 vst 插件制作一个非常简单的 gui。我正在使用 Visual Studio 2012 Express。当我构建它时,我从一个 sdk 文件中得到一个错误。错误是:
它来自 cview.cpp 中的“attributes.insert...”行:
我能做些什么来解决这个问题?有什么方法可以抑制这个错误吗?
xcode - 使用 Xcode 5.0.1 和 Mavericks 编译 Autotalent v2 问题
我一直在努力让Oli Larkin 的Auto Talent编译一段时间。我对 Xcode 很陌生,这可能是问题所在,但无论哪种方式,我都想看看是否有人可以帮助我。我正在尝试编译它以制作 64 位版本。
从顶部开始:
我已经找到了一些我认为是问题的事情。
- 注意到缺少 wdl sdk。从https://github.com/olilarkin/wdl-ol下载。在 src 文件夹之外添加了 wdl 文件夹。
- 启动 Xcode 5.0.2 时收到一些警告。让 Xcode 修复它们。
- 意识到 /Developer/Examples 文件夹在 Mavericks 中不存在。找到https://developer.apple.com/library/mac/samplecode/CoreAudioUtilityClasses/Introduction/Intro.html#//apple_ref/doc/uid/DTS40012328-Intro-DontLinkElementID_2,下载示例代码,链接到 AUBase 我意识到此路径需要在 AU 构建设置中更新(参见屏幕截图)。
- iPlug.xcodeproj 是红色的。不知道该怎么做。有任何想法吗?我假设这很重要。
更新:根据最近的评论,我现在有所进展。但是,目前我收到以下错误。这与没有 Lice SDK 或其他东西有关。这是绝对需要的吗?如果是这样,您是否有时间详细说明这一点以及从哪里获得它?再次感谢所有的帮助。
看起来我遇到了另一个与 clang 相关的问题。可能与Xcode 有关 - Command /Developer/usr/bin/clang failed with exit code 1,不确定。
注意:在最终解决上述错误之前,我必须...
将 CoreMIDI.framework “框架和库” -> “链接框架” -> 应用程序链接到 /System/Library/Frameworks/CoreMIDI.framework。
将构建设置中的编译器设置为默认编译器。否则它会说不支持的编译器并抛出一些警告。希望这没有搞砸任何事情。
将 VST3 SDK 中的 aeffect.h 和 aeffectx.h 重命名为 aeffect.h 和 aeffectx.h。你可以在 public.sdk -> source -> vst2.x 中找到这些文件。显然 2.x 不再受支持。重命名它们后,我按照自述文件的指示将它们移动到 WDL 中的 VST_SDK 文件夹中。
c# - 每个 VST SDK 似乎都是针对 C++ 的,那么 C# 呢?
我想开始制作 VSTi,更具体地说,midi 的——那些不产生任何声音而只是将 midi 数据输出到其他 vst 插件(琶音器、和弦工具等)的。
现在我刚刚为 C# 买了书,认为这将是一门不错的语言(不仅仅是用于 vst 编程),但每个人都在说 C++ 是要走的路,而 VST.NET 似乎是用于 C++... .似乎在我的 C# 道路上一切都对我不利?
我脑子里有“编程思维”,但自从我编程以来,Visual Basic、Turbo Pascal 等已经是几年前的事了。所以我有一个非常干净的开始。
在这里你有什么建议,卖掉我的新 C# 书(或把它们藏在书架上)并瞄准 C++,还是 C# 还可以?我一直认为 C++ 比 C# 学习要复杂得多。
顺便说一句,说用于 C++ 的 VST.NET SDK,它可以以某种方式用于 C# 吗?