VSTi插件式ASIO主机,用于连接DAW中其他ASIO驱动程序的输入

我曾经遇到一种情况,如果有一个带有ASIO驱动程序的主声卡,则必须将一个USB麦克风及其ASIO驱动程序连接到DAW。而且DAW不支持同时连接两个ASIO驱动程序。搜索时,我遇到了用Delphi编写的VST插件“ VST接口的ASIO-Host”。不幸的是,尽管该插件是通过jBridge看到的,但从未正常工作。因此,我必须自己编写一个类似的插件。结果,开源ASIOInput插件在10天内被编写。在本文中,我将讨论其设计和体系结构的一些功能。

从技术上讲,VST插件本身是一个导出单个函数的.dll。

SVSTPlugin* VSTPluginMain(void*)

DAW , . , .

  • InputCount OutputCount - . - , . 0 2 . 1 , .

  • PluginProperties - . 3 : , UpdateBufferData() , - DAW , .

  • RequestFromHost() - DAW, . : - , , , , : , , - .

  • UpdateBufferData() - DAW , . , , , DAW .

ASIO Windows COM-. GUID-. ASIO- ( GUID-) HKEYLOCALMACHINE\SOFTWARE\ASIO. ASIO-, COM- GUID- CoCreateInstance(), ASIO-, , ASIO-. , ASIO- .

, : DAW , DAW - VSTPluginCallUpdateBufferData(), ASIO- , - ASIOHostCallUpdateBufferDataEx(). . , DAW ASIO- , . ASIO- DAW, .

. , DAW- , ASIO-, DAW , DAW- . Windows ( CreateEvent(), SetEvent() WaitForSingleObject()).

DAW ASIO- , . ASIO- , DAW- . , OC Windows. DAW ASIO-, 2, 3 4.

.

  • COM- ASIO- 0 . , . , , 1. .

  • DAW . , , , , DAW Cubase 9.5, DAW - .. ", " ..

  • ASIO- , ASIO- , , . 0. .

  • - COM- ASIO- ASIO-.

.

下载插件的最新版本(VST2,x86和x64):tyts

来源github:tyts




All Articles