werman / noise-suppression-for-voice

Noise suppression plugin based on Xiph's RNNoise
GNU General Public License v3.0
4.73k stars 228 forks source link

VST2 plugin: can't save VAD threshold in Cantabile #67

Closed jvdeijnden closed 2 years ago

jvdeijnden commented 3 years ago

I use Cantabile as VST host and have to manually set the VAD Threshold every time Cantabile is restarted. VST presets don't work, but I can import/export the program with saved VAD (manually).

I'm not sure if this is an issue with the plugin itself or Cantabile.

goodfore commented 3 years ago

I have the same problem. I use "VSTHost" as VST host. https://www.hermannseib.com/english/vsthost.htm

Other plugin's parameter saved fine. Although my other plugin is a VST3 plugin, not sure if that makes a difference.

Uronic commented 3 years ago

I have the same issue as well.

werman commented 3 years ago

Hmmm, it's a bit strange. Looking at the VST sdk I see two ways of how plugin parameters could be saved:

This plugin doesn't support the second option at the moment, it seems some host unconditionally expect it...

Arakula commented 2 years ago

You might want to make your PlugIn report that it has 1 program (instead of 0). Confronted with "This PlugIn has no programs", the host won't necessarily ask it for any parameter when trying to save the current bank.

jukofyork commented 2 years ago

I had this problem too but managed to find a work-around for VSTHost:

image

It's a bit hacky and keeps updating this every 50ms or so, but it does work and it does keep the setting when you reload.

This method of sending the parameter via MIDI should work in other software too (eg: by using ReaPlugs VST and the ReaJS plugin if no similar "MIDI --> Parameters" option).

werman commented 2 years ago

@jukofyork I'm preparing new release in develop branch (https://github.com/werman/noise-suppression-for-voice/commits/develop), I think now it support saving parameters since now I'm using JUCE, here are latest build: https://github.com/werman/noise-suppression-for-voice/actions/runs/2618374807. If you could test it - it would be great!

jukofyork commented 2 years ago

Hi, thanks I'll try this later today if I get chance. Juk

8 Jul 2022 10:15:34 pm Danil @.***>:

@jukofyork[https://github.com/jukofyork] I'm preparing new release in develop branch (https://github.com/werman/noise-suppression-for-voice/commits/develop), I think now it support saving parameters since now I'm using JUCE, here are latest build: https://github.com/werman/noise-suppression-for-voice/actions/runs/2618374807. If you could test it - it would be great!

— Reply to this email directly, view it on GitHub[https://github.com/werman/noise-suppression-for-voice/issues/67#issuecomment-1179364953], or unsubscribe[https://github.com/notifications/unsubscribe-auth/AQQEBYH3CYEAJII5TILDV4LVTCK7LANCNFSM4VSVSYKQ]. You are receiving this because you were mentioned.[Tracking image][https://github.com/notifications/beacon/AQQEBYCZ7T3JQ2N6BZHOM53VTCK7LA5CNFSM4VSVSYK2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOIZF24WI.gif]

jukofyork commented 2 years ago

Hi,

The link the the build you send had expired so I had to use the build from today.

Sadly VSTHost just silently refused to load the either of the plugins. I've no idea why but did notice the file size was much larger than the original dll.

If you have any ideas I can give them a try?

Juk

8 Jul 2022 10:15:34 pm Danil @.***>:

@jukofyork[https://github.com/jukofyork] I'm preparing new release in develop branch (https://github.com/werman/noise-suppression-for-voice/commits/develop), I think now it support saving parameters since now I'm using JUCE, here are latest build: https://github.com/werman/noise-suppression-for-voice/actions/runs/2618374807. If you could test it - it would be great!

— Reply to this email directly, view it on GitHub[https://github.com/werman/noise-suppression-for-voice/issues/67#issuecomment-1179364953], or unsubscribe[https://github.com/notifications/unsubscribe-auth/AQQEBYH3CYEAJII5TILDV4LVTCK7LANCNFSM4VSVSYKQ]. You are receiving this because you were mentioned.[Tracking image][https://github.com/notifications/beacon/AQQEBYCZ7T3JQ2N6BZHOM53VTCK7LA5CNFSM4VSVSYK2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOIZF24WI.gif]

Arakula commented 2 years ago

Hmmm, the version from https://github.com/werman/noise-suppression-for-voice/actions/runs/2650728052 could be loaded into VSTHost. At least into my current beta version from https://www.hermannseib.com/programs/beta ... The Editor screen acts totally weird, however. grafik

werman commented 2 years ago

I've no idea why but did notice the file size was much larger than the original dll.

I now use JUCE framework and there is also GUI, so the size ballooned.

Sadly VSTHost just silently refused to load the either of the plugins.

The Editor screen acts totally weird, however.

Ok, it seems I won't get away without installing Windows into virtual machine and actually testing it...

Thanks!

werman commented 2 years ago

Sadly VSTHost just silently refused to load the either of the plugins

@jukofyork Could it be that your VSTHost is 32 bit? Because I'm building only x64 version of the plugin.

werman commented 2 years ago

@Arakula How did you load it? I installed the beta version, opened it in default configurations, pressed "New Plugin" and selected vst3 dll. Nothing happened afterwards.

Arakula commented 2 years ago

Downloaded win_mnoise.zip, opened it, extracted the files from the vst subfolder into a plugin directory, opened VSTHost (latest 1.58 64bit beta, on a 64bit Windows 10), dragged the files onto VSTHost's client area. But it works with "New Plugin" as well. I can't see any "vst3 dll", however. What's that supposed to be?

werman commented 2 years ago

@Arakula Hmmm, after I manually started VSTHostBridge64 before launching vsthost - it now works... Or maybe it's something else, anyway it works now, and without any GUI glitches.

I can't see any "vst3 dll", however. What's that supposed to be?

I meant rnnoise.vst3 - it's just a .dll but has different extension.

werman commented 2 years ago

Back to the original issue, in Cantabile the plugin settings are still not being saved.

And aren't saved in Carla on Linux. Yeah, I'd see what's wrong.

werman commented 2 years ago

:facepalm: Fixed in https://github.com/werman/noise-suppression-for-voice/commit/763afdbc56871e0eb8a23129f3d5341a7ee869ee

werman commented 2 years ago

Released v1.01, settings should be saved now. Regarding GUI corruption - I cannot reproduce it, though I updates JUCE and there were a few fixes regarding gui components which might have fixed the corruption. @Arakula If it is still reproducible please open a new issue.