草庐IT

ruby - 我将如何以编程方式与 VST(i) 插件交互以合成音频?

以VSTiTriforce为例,由Tweakbench提供。当加载到市场上的任何VST主机时,它允许主机向VSTi发送(大概是MIDI)信号。然后VSTi将处理该信号并输出​​由VSTi内的软件乐器创建的合成音频。例如,将A4(我相信是MIDI音符)发送到VSTi会导致它合成高于中央C的A。它将音频数据发送回VST主机,然后它可以在我的扬声器上播放或将其保存为.wav或其他一些音频文件格式。假设我有Triforce,我正在尝试用我选择的语言编写一个程序,它可以通过发送要合成的A4纸条与VSTi交互,并自动将其保存到系统上的文件?最终,我希望能够解析整个单轨MIDI文件(使用已经可用于此

windows - 创建音频插件 UI 的 "best"方法是什么,它既是音频单元又是适用于 OS X 和 Windows 的 VST?

我正在开发几个音频插件。现在,它们是音频单元。虽然“DSP”代码在大部分实现/端口之间不会改变,但我不确定如何处理GUI。例如,我正在查看Lion中Apple提供的AU。有谁知道他们是如何处理UI的?比如,旋钮和控件只是Cocoa控件的子类吗?他们是使用一些单独的框架还是从头开始对这些旋钮等进行编码?然后,我正在开发的插件也将作为适用于Windows的VST提供。我已经使用通用接口(interface)启动并运行它们。但我想知道我是否应该克服它并使用Steinberg提供的vstgui代码重新创建我的所有界面,或者是否有更实用的方法来使界面跨平台。 最佳答案

java - VST 乐器中的 "programs"是什么?

我最近开始使用jvstwrapper和juce框架。看来VSTSDK对您的乐器有一些不同“程序”的概念。例如,jvstwrapper和juce都有您继承的类,以便创建您的工具。这些类需要实现许多方法。在这两种情况下,(在VSTSDK中有详细说明),您必须实现方法“setProgram”、“getProgramName”、“setProgramName”、“getNumPrograms”等。我知道每个程序似乎都包含一系列仪器设置。但是在什么情况下实际使用它们呢?另外应该有多少? 最佳答案 VST程序类似于硬件ROM预设或MIDI程序更

c++ - VST 前瞻和 setInitialDelay()

我想我需要在我的VST中实现一个前瞻系统,但以前从未做过。我知道setInitialDelay(foo)被放置在构造函数中,然后你缓冲音频,但我不确定是否读取了“当前”音频和“先行”...... 最佳答案 所以我已经在我的评论中列出了所有内容,但我应该回答这个问题。我将setInitialDelay()设置为100。然后我填充了一个100样本大小的缓冲区,并在2个点处从中读取。前瞻从音频进入系统的0点开始读取。“实时”音频(用户听到的)总是比前瞻落后100步。这很适合我的要求。只需确保所有数组值都已初始化,否则扬声器会发出一些可怕的

c# - 每个 VST SDK 似乎都适用于 C++,那么 C# 呢?

我想开始制作VSTi的,更具体地说,midi的-那些不产生任何声音但只是将midi数据输出到其他vst插头(琶音器,和弦工具等)的东西。现在我刚买了C#的书,认为它是一种很好的入门语言(不仅适用于vst编程),但每个人都在说C++是必经之路,而VST.NET似乎适用于C++....似乎在我的C#道路上一切都对我不利?我脑子里有“编程思维”,但我是几年前开始编程的,VisualBasic、TurboPascal等。所以我有一个非常干净的开始。您有什么建议,卖掉我的新C#书籍(或将它们藏在书架中)并以C++为目标,或者C#仍然可以吗?我一直认为C++比C#学习起来要复杂得多。顺便说一下,C

c++ - VST乐器多进多出

我想创建一个具有16个MIDI输入和至少16个音频输出的VST乐器。类似于kontakt或halion的做法。有什么想法吗? 最佳答案 正如@leftaroundabout指出的那样,您不太可能需要16个输入和输出,尤其是对于乐器而言。然而,拥有16个MIDI输入和16个音频输出对于鼓机和其他多轨乐器来说非常普遍,用户可能希望单独处理每个声音。一般来说,音频输入对整个乐器来说并不是特别有用。也就是说,您只需像这样实例化您的插件:MyPlugin::MyPlugin(audioMasterCallbackaudioMaster):Au

VST:如何自动删除git分支

目前,我们的开发团队与git一起工作。分支机构的数量越来越大,而不是每个月手动删除分支机构,而是希望能够自动降低分支机构,例如60天。我知道这在詹金斯(Jenkins)可以做到这一点,但是目前我们没有詹金斯(Jenkins),并且想知道是否可以通过某种服务挂钩在VST中做到这一点?看答案VST是到目前为止不支持服务器端钩。但是,还有其他方法可以自动删除本地机器中的旧分支。详细步骤如下:1.在某个目录中(例如D:\script_for_git),克隆VSTSgitrepo(仅用于自动削弱分支)。2.添加一个shell脚本(del.sh)在rootgitrepo中(D:\script_for_gi

无法在VST构建中生成Nuget软件包

我有一个dotnet核心库,我试图将其发布给我的VST托管NugetFeed。我有一个问题,因为它似乎没有做任何事情。构建正在完成,没有错误,但是NUPKG文件似乎既不是创建也不推动的。下面的构建日志包含一个错误,因为我试图将输出作为构建资产发布,但没有输出可以发布...(简洁地开始截止日志开始)******************************************************************************Starting:NuGetpack*******************************************************

如何在VST中设置Node.js WebJob的连续集成

我熟悉如何使用VST设置Node.jsWeb应用程序的连续集成。如何为Node.jsWebJob设置连续集成。我已经找到了如何使用VisualStudio使用.NET项目进行操作的示例,但是找不到有关如何使用Node.jsWebJob进行的任何文档。看答案完成以下操作:构建+通过AzureAppServiceDeploy任务(由于我们的IT景观中的安全问题,FTP停止了)。这是一个快速&恢复我们的构建+发行过程的肮脏方法,这些方法受到威胁,对任何其他方法开放,但是关于此特定主题的文档(如最初的问题中所述)相当不存在。在我的项目中,所有内容(run.js+package.json+依赖项

出现错误消息时,将数据填充到VST / TFS时,构建 /发布摘要选项卡

我正在运行由我开发的VSTS/TFS扩展程序,并尝试显示摘要,并在构建/发布完成后,在build/prominesumparytabs中生成的数据。我在尝试在VSTS/TFS中显示我的报告时,我在下面添加了消息。构建/发布摘要选项卡“****扩展名称****花费比预期的更长。了解有关此扩展程序的更多信息,包括可用的支持选项。"在我刷新页面时,此消息会消失并在摘要选项卡上加载预期数据我试图在在线内容上找到此消息的原因,但找不到线索。请友好地提供一些提示,以摆脱此消息并显示数据。看答案这也发生在我的一些扩展中。我通过异步加载页面的内容来解决它。初始页面应加载非常快。仅在加载页面时,数据的处理和后显