# VST plugin

**URL:** <https://qa.fmod.com/t/vst-plugin/13234>\
**Category:** FMOD Studio\
**Created:** [June 15, 2017, 6:12pm UTC](https://qa.fmod.com/t/vst-plugin/13234 "2017-06-15T18:12:42Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![Tom1](https://avatars.discourse-cdn.com/v4/letter/t/b487fb/32.png) [@Tom1](https://qa.fmod.com/u/Tom1)\
**Post date:** [June 15, 2017, 6:12pm UTC](https://qa.fmod.com/t/vst-plugin/13234/1 "2017-06-15T18:12:42Z")

</div>

Hi,

I’ve created a VST plugin that I’d like to use in FMOD studio.  
Can I import it in FMOD studio and - if so - how ?

Kind regards,

Tom

---

<div class="post-metadata">

**Author:** ![richard\_simms](https://yyz2.discourse-cdn.com/flex036/user_avatar/qa.fmod.com/richard_simms/32/261_2.png) [@richard\_simms](https://qa.fmod.com/u/richard_simms)\
**Post date:** [June 16, 2017, 4:45am UTC](https://qa.fmod.com/t/vst-plugin/13234/2 "2017-06-16T04:45:20Z")

</div>

Hi Tom,

FMOD Studio does not work with VSTs, instead you will need to create a proprietary DLL file and place it into the Plugins folder of either your installation folder or your projects folder.

For an example of how to create an FMOD plugin, please see the dsp\_custom project in our FMOD API.

[https://www.fmod.org/documentation#content/generated/example\_lowlevel/dsp\_custom.html](https://www.fmod.org/documentation#content/generated/example_lowlevel/dsp_custom.html)

You can also read up on custom DSPs in our documentation.

[https://www.fmod.org/documentation#content/generated/lowlevel\_api\_DSP.html](https://www.fmod.org/documentation#content/generated/lowlevel_api_DSP.html)

I hope this has been useful.

Thanks,  
Richard

---

<div class="post-metadata">

**Author:** ![Tom1](https://avatars.discourse-cdn.com/v4/letter/t/b487fb/32.png) [@Tom1](https://qa.fmod.com/u/Tom1)\
**Post date:** [June 19, 2017, 8:56am UTC](https://qa.fmod.com/t/vst-plugin/13234/3 "2017-06-19T08:56:59Z")

</div>

Hi Richard,

Thanks for your quick answer.

I’ve implemented a dsp and it’s working fine on the master group.  
The only thing is that I want it to operate on a channelgroup on the master group.  
In FMOD studio I created a channel group to be able to adjust the volume of a group of sounds.  
I only want my custom DSP to influence the channelgroup for those sounds.

So I entered the following code:  
`FMOD::DSP \*mydsp;  
FMOD\_DSP\_DESCRIPTION dspdesc;  
memset(&dspdesc, 0, sizeof(dspdesc));

```
	strcpy_s(dspdesc.name, "My first DSP unit");
	dspdesc.version = 0x00010000;
	dspdesc.numinputbuffers = 1;
	dspdesc.numoutputbuffers = 1;
	dspdesc.read = dsp_equalizer;
	dspdesc.userdata = (void *)0x12345678;

	lowLevelSystem->createDSP(&dspdesc, &mydsp);
	mydsp->setBypass(false);
	mydsp->setActive(true);
	FMODErrorCheck(system->getBus("bus:/subgroup", &Bus));
	Bus->getChannelGroup(&subgroup);
	FMODErrorCheck(subgroup->addDSP(0, mydsp));`

```

FMODErrorCheck(system-\>getBus(“bus:/subgroup”, &Bus)); Retrieves the Low Level ChannelGroup used by the bus, according to the manual.

Unfortunately the DSP is not doing anything on this subgroup.  
How do I get this DSP to work on a subgroup ?

Best regards,

Tom

---

<div class="post-metadata">

**Author:** ![richard\_simms](https://yyz2.discourse-cdn.com/flex036/user_avatar/qa.fmod.com/richard_simms/32/261_2.png) [@richard\_simms](https://qa.fmod.com/u/richard_simms)\
**Post date:** [June 20, 2017, 5:25am UTC](https://qa.fmod.com/t/vst-plugin/13234/4 "2017-06-20T05:25:17Z")

</div>

Hi Tom,

You need to make sure that the bus has been created when you try to add your DSP. Buses are normally dynamically created and destroyed on demand so you will need to lock the bus first before getting the channel group from it.

```
bus->lockChannelGroup();
system->flushCommands();
FMODErrorCheck(bus->getChannelGroup(&subgroup));

```

I hope this helps.

Thanks,  
Richard
