FabFilter User Forum

FabFilter Plugin GUI freezing in Custom DAW

Hey,

I'm currently developing a DAW with VST3 support and FabFilter plugins show some weird behavior there.

They look like they are processing the very first audio frame they receive and after that the UI looks like it is not receiving any audio, knob changes etc also don't seem to affect the audio signal but it's still processing with initial settings.

All other non FabFilter VST3 plugins work well, but Pro-Q, L-2, Pro-R etc for some reason are not working as expected.

Did anyone implementing a custom DAW have the same problem by any chance and found a solution?

Cheers,
Chris

Chris

I met similar problems like yours. I'm also developing a VST3 host DAW. I have successfully load and test many VST3 plug-ins and they all work well. By when I load fabfilter plug-ins such as Pro-C2, Pro-Q3, the editors UI don't show any input data. I check the ChannelBuffer32 and found the input data and output data are all the same. No matter how I rotate the knob, nothing changed, the plug-ins are not processing data.

Obsidian

I believe most VST3 plugins don't actually implement proper separation between the processor and controller, but we do. In this case, it is vital for the host to synchronize parameter changes between the processor and controller and I think you are not doing that. So if you receive a parameter change in the controller (e.g. via performEdit) you should transmit that to the processor so it ends up in the list of parameter changes passed to the process function.

And if the UI looks like it isn't receiving any audio data, you are not transmitting messages from the processor to the controller and vice versa.

Cheers,

Frederik (FabFilter)

Thanks Frederik, you are right. I found that I didnt push the paramChanges to the processData and I fix this problem. But I still wonder how could we transmitting audio data from the processor to the controller, I didnt find any related functions in the VST3 SDK

Obsidian

Hi Frederik,

thanks a lot for getting back to us and clarifying! With passing the parameter changes received in performEdit() to the inputParameterChanges the plugins are now processing audio correctly.

Do you have any more details on the "transmitting messages from the processor to the controller and vice versa" part? The plugins sadly still don't display any audio meters in the UI, how would I pass these from the processor to the controller?

Thanks again for your time!

Cheers,
Chris

Chris

Reply to this topic: