首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在Kontakt VSTi中获取/设置加载的仪器?

如何在Kontakt VSTi中获取/设置加载的仪器?
EN

Stack Overflow用户
提问于 2019-09-25 00:54:49
回答 1查看 63关注 0票数 0

我已经阅读了VST2.4SDK文档和包含的内容,但仍然没有找到任何方法来做到这一点:

当您在VST主机应用程序(如Cubase )中将Native Instruments Kontakt实例化为VSTi时,主机应用程序能够找出在Kontakt窗口中加载了哪个仪器,并且能够在加载Cubase项目时恢复该仪器(告诉Kontakt在其自身中加载它)。Cubase甚至能够在单个Kontakt实例中恢复多个仪器。

他们使用什么API命令/事件来实现这一点?或者,Steinberg和NI之间是否有任何专有方式达成一致?

顺便说一句,Kontakt是VST版本2.4 (而不是3.x)。谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-10-01 04:40:24

好了,我已经成功地写出了我需要的代码:

获取内部插件状态:

代码语言:javascript
复制
if (pEffect->flags & effFlagsProgramChunks)
{
    void *stateBuf = NULL;

    stateBufSize = (int) pEffect->dispatcher (pEffect, effGetChunk, 0, NULL, &stateBuf, 0);

    // ...
}

要设置/恢复内部插件状态:

代码语言:javascript
复制
if (pEffect->flags & effFlagsProgramChunks)
{
    pEffect->dispatcher (pEffect, effSetChunk, 0, (VstIntPtr) stateBufSize, stateBuf, 0);
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58084976

复制
相关文章

相似问题

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