gpt4 book ai didi

midi - 虚拟 midi 和 VST

转载 作者:行者123 更新时间:2023-12-02 07:56:27 28 4
gpt4 key购买 nike

我想制作一个简单的 VST 插件来执行此操作:

  1. 分析音频流(音量、节拍等...)
  2. 在分析器的输出上有触发器(例如,当音量 > 阈值时做某事)
  3. 根据触发器生成 MIDI 事件

这是为了能够链接插件,即使它们不是为此设计的。例如,我可以通过音频流的包络来控制压缩器的增益,只需将插件的 MIDI OUT 连接到压缩器增益按钮的 MIDI IN。

问题是我不知道该怎么做。在 VST 中是否支持像这样的直接 MIDI 连接?或者我可能需要某种“虚拟 MIDI 设备”来进行互连?

最佳答案

您的预感可能是正确的;通过编写虚拟 MIDI 设备而不是 VST 插件,这项任务将更容易完成。可以使用 sendVstEventsToHost() 调用将 MIDI 事件发送到音序器,但问题是文档从未指定 host 需要如何对这些事件使用react。许多主机只是忽略它们,我当然想不出一个允许从插件轻松路由到 MIDI channel 的主机(也许是 plogue bidule?)。

您可以使用带有 kAudioUnitType_Generator 插件类型的音频单元来完成此操作...虽然我从未编写过这样的插件,但我的印象是这就是您用来为主机生成 MIDI 的工具。但同样,这里的问题是我不确定主机如何允许您将音频路由到插件并从中接受 MIDI。

无论如何,当您想要针对最广泛使用的音序器对其行为进行标准化时,作为插件实现的想法将是最难实现的。我认为实现您想要的效果的一种更简单的方法是创建一个虚拟 MIDI 设备,正如您已经想到的那样,然后使用 rewire 将输入信号路由到您的程序。

编辑:这里有一些关于为各种系统编写 MIDI 驱动程序的资源:

关于midi - 虚拟 midi 和 VST,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/702842/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com