HydrogenAudio

Hosted Forums => foobar2000 => Development - (fb2k) => Topic started by: AndreaT on 2019-05-01 13:36:35

Title: Feature request: native VST support
Post by: AndreaT on 2019-05-01 13:36:35
Dear Development Team,

I think it is time for Foobar2000 of having a native VST (at least VST2 and VST3) wrapper (or VST host) in order to provide a solid support for extremely interesting Hi-Fi Hi-End functionalities elsewhere not appropriately manageable.

The best VST wrapper today available is dated 2011 and, you know, it often crashes... and it supports only VST2 simple plug-in.

Looking forward
Best regards,
Andrea

Title: Re: Feature request: native VST support
Post by: sveakul on 2019-05-01 19:08:47
+1  big-time
Title: Re: Feature request: native VST support
Post by: edwardar on 2019-05-01 19:16:56
Agreed - I use the vst wrapper all the time, would be great to have it built in and maintained.
Title: Re: Feature request: native VST support
Post by: darkflame23 on 2019-05-02 09:09:39
I would also LOVE to see this, and have asked for it before.
Title: Re: Feature request: native VST support
Post by: j7n on 2019-05-03 00:08:33
I would like to see VST with adjustable low latency for realtime visualization and file conversion with do-not-reset-dsp mode.

VST3 doesn't bring any signficant (https://www.gearslutz.com/board/music-computers/1215939-steinberg-announces-vst2-ending.html#post13325074) new functionality. All Windows-plugins that I know of come in VST2 versions, are compatible and stable, good for most tasks, can process any number of channels, have resizable gui... Of course many people will believe that "3" has to be better than "2" and advance the progress.
Title: Re: Feature request: native VST support
Post by: kode54 on 2019-05-03 23:36:41
Especially since Steinberg doesn't distribute a VST 2 SDK any longer.
Title: Re: Feature request: native VST support
Post by: Simon_ Thunder on 2019-05-04 03:47:43
Dear Development Team,

I think it is time for Foobar2000 of having a native VST (at least VST2 and VST3) wrapper (or VST host) in order to provide a solid support for extremely interesting Hi-Fi Hi-End functionalities elsewhere not appropriately manageable.

The best VST wrapper today available is dated 2011 and, you know, it often crashes... and it supports only VST2 simple plug-in.

Looking forward
Best regards,
Andrea

Well.
There you go:

A. Go to download the VST HOST 32 and 64 bit version: http://www.niallmoody.com/apps/pedalboard2
B. Go to download the virtual sound card: https://www.vb-audio.com/Cable/
C. Install VST HOST and Virtual Sound Card - reboot the computer
D. Go to F2K set volume to 100% and select the Output:VB-Audio HI-FI Cable
E .Go to Pedalboard2 and open main window and select:
1)Options
2)Plugins list
3)Options
4)Scan fon new or updated VST plugins
5)Add VST folder or remove
6)Select folder with yours VST plugins
7)Scan.
F. Go to Pedalboard2 and open main window and select - Options- Audio settings - Select Input (is F2K OUTPUT)
                                                                                                               - Select Output (yours sound card Output)
G.Place yours plugins and plug them - draw the lines from one plugin to another. Stereo - 2 lines/mono - 1 line
H. Enjoy.
Title: Re: Feature request: native VST support
Post by: sveakul on 2019-05-04 06:09:52
IMHO, what we are looking for is a simple, NATIVE, built-in vst plugin host for Foobar, as opposed to two different, chained 3rd-party add-ons, although I'm sure your suggestion would work as an alternative until that happens.
Title: Re: Feature request: native VST support
Post by: j7n on 2019-05-04 07:25:48
The GUI of Pedalboard has rather high CPU usage whenever a plugin's window is interacted with or updated, which doesn't happen, for example, in Reaper (via record monitoring). Pedalboard doesn't seem to be accelerated with OpenGL unlike other JUCE programs, and the GUI runs at above normal priority 13. This method doesn't permit to apply an effect during batch conversion with Foobar.
Title: Re: Feature request: native VST support
Post by: Simon_ Thunder on 2019-05-04 15:10:02
The GUI of Pedalboard has rather high CPU usage whenever a plugin's window is interacted with or updated, which doesn't happen, for example, in Reaper (via record monitoring). Pedalboard doesn't seem to be accelerated with OpenGL unlike other JUCE programs, and the GUI runs at above normal priority 13. This method doesn't permit to apply an effect during batch conversion with Foobar.

I use Pedalboard2 with 32 bit vst plugins it works not bad at all, Pedalboard2 use only up 15% of CPU.
You can use others VST HOSTS, here https://bedroomproducersblog.com/2011/05/16/bpb-freeware-studio-best-free-vst-host-applications/
For better sound quality - use Audiomulch VST host - http://www.audiomulch.com
or BlueCats PatchWork v2 - https://www.bluecataudio.com/Products/Product_PatchWork/
Title: Re: Feature request: native VST support
Post by: darkflame23 on 2019-05-04 15:42:29
These solutions are all just as convoluted as the current workaround of using one of the two buggy, no longer updated VST components though. I think what we are all after is native support to avoid all the faffing around.
Title: Re: Feature request: native VST support
Post by: Simon_ Thunder on 2019-05-04 22:21:57
These solutions are all just as convoluted as the current workaround of using one of the two buggy, no longer updated VST components though. I think what we are all after is native support to avoid all the faffing around.

For first time its look like convoluted but second time you can control over VST HOST.
I am amateur radio broadcaster and for a second time i learn to take control over VST host.
It's wasn't difficult it's easy for me and i am 46 old. 
Try it something new. It's worth it. Just read a documentation of VST host.
Title: Re: Feature request: native VST support
Post by: sveakul on 2019-05-04 23:02:39
Simon_Thunder: I appreciate what you're saying--that when there's a will there's a way--but the folks here are just requesting a safer, easier way than installing a system-resident "virtual sound card" from a third party, and then trying to select the best compatible, non-buggy, free host among other 3rd-party choices before you can even get to trying to run your VST plugin.   Ergo, this thread.
Title: Re: Feature request: native VST support
Post by: Simon_ Thunder on 2019-05-04 23:40:19
Simon_Thunder: I appreciate what you're saying--that when there's a will there's a way--but the folks here are just requesting a safer, easier way than installing a system-resident "virtual sound card" from a third party, and then trying to select the best compatible, non-buggy, free host among other 3rd-party choices before you can even get to trying to run your VST plugin.   Ergo, this thread.
2Sveakul. That's right, but...
The problem of native Vst plugin is  how that plugin can handle various plugins with different latency.
So some of  Vst plugins often crashing F2K because they have different latency, just because F2K core can't handle it.
So therefore must be some adaptor (in my case - is VST  HOST) that can take control over F2K core and native Vst plugin and chain of yours vst plugins...
So here a 3 question must be asked:
1. How many samples can handle F2K and what is minimal value of low latency can handle F2K?
2. Vst native plugin: How many samples can handle and what is minimal value of his low latency ?
3. Yours desirable VST plugins: How many samples can handle and what is minimal value of his low latency ?
And now- the problem is: F2K wasn't programmed to be like VST host application, so this task must be taken by Native VST plugin...

Title: Re: Feature request: native VST support
Post by: sveakul on 2019-05-05 03:33:50
Just to give an idea of the type of built-in VST host functionality that would be great to have in Foobar, a screenshot is attached below of the uLilith player showing its own built-in host.  The config window is called from a right-click context menu.

One can add, remove, activate/deactivate, assign order, and call up GUI window("Properties") of the VST plugin, as well as opting to always show that VST's GUI when the player starts.  In this example, "Inspector" is always shown at startup and remains open until closed by user, while the Unlimited plugin runs and stays hidden.

Shown not to plug an otherwise rather limited player, just demonstrating a very successful implementation of the same idea by another source.

Title: Re: Feature request: native VST support
Post by: AndreaT on 2019-05-05 20:52:42
Hi All,
I am not a developer, so I have not understood the point of the latency that Foobar cannot handle, but I can say that using the VST wrapper 0.9.0.3 (by Yegor) I can chain 2 extremely "heavy" vst plug-ins that do 6ch x-over, time-phase alignment and convolution.
These 2 vst plug-ins are introducing a remarkable latency of about 40ms.

If I don't play with the Foobar2000 DSP view and the like, there are no problems.
I have the crashes when I open the DSP chain interface for changing the configuration.

I think that a good developer could just take the old VST Wrapper 0.9.0.3 and fix that bug (Yegor was the original developer. Once I got in touch with him).

Regarding Pedalboard2, that I used for 2-3 years, I cannot recommend it any longer. Now is a lot better to use Cantabile 3 (free edition).

Regards, Andrea
Title: Re: Feature request: native VST support
Post by: Simon_ Thunder on 2019-05-05 23:47:24
Regarding Pedalboard2, that I used for 2-3 years, I cannot recommend it any longer. Now is a lot better to use Cantabile 3 (free edition).



I get the the better sound with Audiomulch.
Cantabile 3 need annoying registration, right?
But Pedalboard and SaviHost not bad at all run for years on my XP with a lot 32 bit plugins and get saturated and good sound with minimal compression.
Title: Re: Feature request: native VST support
Post by: j7n on 2019-05-06 00:36:42
Most stable external VST host with least CPU usage is REAPER. It has friendly interface like winamp (to me). Create a track with effects, click record armed and record monitoring to apply them to incoming signal. There is a small learning curve if you need routing from one plugin to another on different channels. Instead of visual wire connections, it needs sends under routing/IO (right-click the button, and everything else) and/or the Plug-in pin connector (2 in 2 out). I'd use a resampler plugin in foobar to avoid closing and reopening the sound device on track changes. There is an excellent batch converter in Reaper, but it doesn't enjoy the file format support of Foobar player, nor can it be applied without reset between album tracks.

I'd be careful with installation of a virtual soundcard system driver. Not needed if the actual sound card is multichannel already.

There is less latency and lag upon loading if the plugin is kept in the same process. Bridging/external host is useful if the plugin crashes often, when I'd consider replacing it, or for 64-bit plugins. Usually plugins don't crash. Also an external host can be set to realtime priority, but one should be very careful with that, and use only with light plugins.

Probably the selected plugins should be loaded, running and paused in Foobar, as some take some time to load.

uLilith is nice little old style player. But the buffering wasn't very stable even after I configured the priorities in its settings. The visuals weren't synchronized either.
Title: Re: Feature request: native VST support
Post by: AndreaT on 2019-05-12 13:12:48
Hello Boys and Girls,
now, coming back to the point, what about if I could get the original source code of the VST Wrapper 0.9.0.3?

Is out there anyone capable (good enough developer) to improve it / fix it for making it a good, stable, and updated Foorbar2000 component?

Cheers,
Andrea
Title: Re: Feature request: native VST support
Post by: Rollin on 2019-05-12 13:37:51
what about if I could get the original source code of the VST Wrapper 0.9.0.3?
Source code is available for anyone - https://hydrogenaud.io/index.php/topic,84947.msg767807.html#msg767807
But, obviously, for 8 years nobody was willing to improve it (at least for free).
Title: Re: Feature request: native VST support
Post by: mudlord on 2019-05-13 06:17:59
The VST wrapper has too many fundamental problems.

For one it uses hacks for the UI, secondly it doesn't properly sandbox plugins for proper multi-instance safety.
Title: Re: Feature request: native VST support
Post by: AndreaT on 2019-05-13 20:38:40
Thanks for the follow-ups.

@Rollin : I am not sure that Source Code is really the last Yegor has... I asked him, but no reply yet.

@mudlord : I don't question your consideration, however, so-far, that VST wrapper would good enough if it wouldn't crash at any change of DSP config.
My big problem with this VST wrapper if that it crashes Foobar every time I change the DPS chain config by loading a new one.

Thanks again to all of you for your attention in this topic.
Regards, Andrea
Title: Re: Feature request: native VST support
Post by: mudlord on 2019-05-21 00:17:38
To fix the crashes would mean a sane configuration system that doesn't rely on hacks.

That and the plugins should be sandboxed in seperate processes.
Title: Re: Feature request: native VST support
Post by: mozkan007 on 2019-08-21 07:10:41
Dear Development Team,

I think it is time for Foobar2000 of having a native VST (at least VST2 and VST3) wrapper (or VST host) in order to provide a solid support for extremely interesting Hi-Fi Hi-End functionalities elsewhere not appropriately manageable.

The best VST wrapper today available is dated 2011 and, you know, it often crashes... and it supports only VST2 simple plug-in.

Looking forward
Best regards,
Andrea



I certainly agree with you. Please save us from these unstable 3rd party vst plugins. I look forward to the next updates.
Title: Re: Feature request: native VST support
Post by: darkflame23 on 2019-08-21 16:58:40
Been thinking about this a lot again recently, would really appreciate native VST plugin support, any chance it's even on the cards?
Title: Re: Feature request: native VST support
Post by: mudlord on 2019-08-29 13:12:36
I am not really opposed to adding this to foo_dsp_effect. Only issue to me is somehow fucking up the process, since what I want is a decent VST adapter that doesn't crash like crazy.

Which means sandboxing the plugins so only the host wrapper crashes, not FB2K.
Title: Re: Feature request: native VST support
Post by: sveakul on 2019-08-29 20:00:22
Thanks Mudlord for thinking about this!  We know you've got the "chops" to do it, and it would be a perfect complement to your Effects plugin.  I know the sandbox part must be a PITA to contemplate, but at least you've given us some HOPE, and it's much appreciated.
Title: Re: Feature request: native VST support
Post by: darkflame23 on 2019-08-30 08:48:45
Yes, I'd be over the moon too, so thanks for considering it!
Title: Re: Feature request: native VST support
Post by: AndreaT on 2019-09-02 16:14:27
Mmh! I see that something is starting moving!

Crossing my fingers and hoping, hoping, STRONGLY HOPING, ...
... GOOD VST HOST comes to us!

Many thanks to all for keeping thinking to it.
Best regards, Andrea
Title: Re: Feature request: native VST support
Post by: racerxnet on 2019-09-15 14:56:02
I also would like to see the development of a VST plug-in for foobar. With today's room correction , a choice of which software to use would be great. I'd prefer Foobar over Jriver, Roon, or others providing the support. Is there a fund to help move the development forward? My hope is to use Dirac Live with the latest Foobar.

MAK
Title: Re: Feature request: native VST support
Post by: sveakul on 2019-11-25 06:56:35
mudlord, can you give your supplicants any updates on your thoughts/actions on adding this to foo_dsp_effect?  Much appreciated!
Title: Re: Feature request: native VST support
Post by: sveakul on 2020-02-16 00:18:03
Just wondering if this is on anybody's current or future development list (Kode54? Mudlord?).  It would be nice to think we still have a reason to hope--thanks!