Help understanding Vst Hosts, DAWs and Vst plugins


#1

I’ve sampled my saxophone for this learning experience. The one note is now a .wav and .mp3 file. I want to play it at different frequencies using Cantabile software, so I need it as a VST dll. .

How can I create a VST dll from either of these files? (I know C but no other computer language)


#2

Hi,

I don’t think you’ll need to do any programming to get this managed. The only thing necessary is a Sampler. Kontakt or Halion would do the kob. If you are looking for freeware a quick search showed:

Grace Sampler:

TX16WX:
http://www.tx16wx.com

Never used one of them (so I can’t answer questions here) and there are surely pretty more out there.

Regards, humphrey


#3

Definitely if it were me doing this I would just import your audio file into a sampler- that’s what it’s for :smiley:


#4

Many thanks, humphrey and FredProgGH. I had been searching the web but never used the right keywords. I’ll give Grace a try. Most truly free sites usually have a way to donate to their efforts. Many years ago, I sent $40 USD to Audacity Software not expecting anything in return. They sent me a very nice shirt with their logo on it. I still wear it to jam sessions.


#5

Glad we could help and good luck!:slight_smile:

Regards, humphrey


#6

It’s 3 months later and I have been using Grace with Cantabile. The two work together perfectly! Grace uses .wav files, so I don’t need VST dlls at all. I had gone down that path when I was trying to get my guitar to work with Midi Guitar 2. I finally gave that up due to a nasty little problem when a string is released – Midi Guitar 2 “hears” that as a Hammer Off and generates a tone. So now I am feeding MIDI signals from a MIDI keyboard to Cantabile/Grace. I wish I played keys as well as I play guitar. Maybe that will happen in time.


#7

Today I decided I wanted to include some non-wav files, like DSK Brass.dll. I downloaded a DAW called Savihost3x64, but that seems to want .vst3 files.

Bottom line is I think my problem is that don’t have a handle on how to make Cantabile Solo aware of DAWs. I got Cantabile Lite (now Solo) to work with .wav files using Grace; I just don’t remember how I did that. Maybe I just need a hint.

I’ve concatenated the directories at Tools>Options>Plugin Options, but I get a message 13205 “the plugin is not built for this platform” when I try to Add Object>By Folder>Browse for plugin>DSK Brass.dll.

I’ll look for .vst3 files in the meantime but I need to know what is what. (It’s like giving a pistol to a child, this).


#8

Seems that Juce us the software for that?


#9

OK, it looks like you’ll need to read up on the whole universe of computer audio and VST technology - you’ll need more basics to get anything useful out of Cantabile. Can’t do the whole lecture here :wink: - but I’ll try to clear up some things.

First: you’re confusing plugins, DAWs and VST hosts.

  • a DAW (Digital Audio Workstation) is a piece of software to record, edit and mix audio (mostly music :wink: ). Typical programs here are Cubase, Logic, Studio One, Reaper and tons of others.

  • Within practically all DAWs, you can use plugins - these are smaller programs, designed to run within another program and process an audio or a MIDI stream, to provide a specific processing task like an equalizer, compressor or reverb. Some plugins also can generate sounds from a MIDI input - these we call instruments.

  • plugins can’t run on their own, they need a host program to run them. A DAW can be such a host, but there are also other host programs that are not DAWs. Cantabile is one of them - it is a plugin host specifically built to play these plugins live. SaviHost is another very specialized host, designed to run only one plugin.

  • Plugins come in different technologies: the most widespread standard is VST (virtual studio technology), developed by Steinberg. Another important one is AAX (Avid audio extension) - this one is specific to ProTools (the de-facto standard DAW in professional studios). To make matters worse, there are currently two active versions of VST plugins: VST2 and VST3. Cantabile can only deal with VST2 plugins, so any VST3 or AAX plugins are of no use here.

  • to make matters even worse, nowadays you have a choice between 32 bit and 64 bit technology - to make use of ever-increasing amounts of RAM, programs need to address memory using 64 bits. This means that DAWs and VST hosts can be built in two versions: a 64 bit and a 32 bit version. You need a 64 bit host to run 64 bit plugins and a 32 bit host to run 32 bit plugins. If you want to e.g. run a 32 bit plugin inside a 64 bit host, you’ll need a special “bridging” software inbetween - that’s what software like JBridge is for.

  • VST plugins live in specific directories on your PC, which your VST host needs to be made aware of. Depending on the plugin technology (32 bit or 64 bit), these directories are different. Typically, on 64 bit windows these are C:\ProgramFiles\Steinberg\VstPlugins for 64 bit plugins and C:\ProgramFiles(x86)\Steinberg\VstPlugins for 32 bit plugins (if you don’t use Cubase, frequently the default install path doesn’t have the “Steinberg” in it).

So to explain your experience with SaviHost: SaviHost3x64 is specifically built to run 64 bits VST3 plugins - unfortunately DSK Brass is a 32 bits VST2 plugin (no other versions available) - SaviHost3x64 will not know how to deal with this. You’ll need SaviHostx86 to run DSK brass.

Same with Cantabile: to run DSK brass, you’ll need to either run 32 bit Cantabile or, if you want to run Cantabile 64 bit, you’ll need JBridge so that it can run 32 bit plugins.

So, to use the simpler case: move the DSK Brass DLL to your 32 bit VST plugin folder (e.g. C:\ProgramFiles(x86)\VstPlugins. Then run Cantabile 32 bits and make sure that Cantabile is aware of this folder (Tools->Options->Plugin Options). When you now scan for plugins, either on startup or via Add Object->Plugin->More->Rescan Plugin Folders, your DSK Brass should appear in your list of available plugins.

Hope this gives you some clarity on what is what - yes, it’s all a bit overwhelming :confounded:, but you’ll get there!

Cheers,

Torsten


#10

Not sure what Juce has to do with this problem? :confused:


#11

I’m talking about the topic:“How to create a VST dll”


#12

Thanks, So_Godly. I found a tutorial that shows how to create vst3 files using Juce. I’ll read it as well.

Currently, I have printed Torsten’s reply and will read that and highlight it. The “problem” I have is that I’m really, really new to this. So I need to learn and appreciate the lingo/terms, as well as the procedures. This reminds me of having to explain BETA, VHS, and VCR to my mother-in-law years ago; then we moved on to cursors in computers. LOL (Don’t you dare, Yosanna Babich!)


#13

Thank you for the detailed explanation, Torsten. Let me see if I can repeat it in my own words, as it applies to my situation. Correct me if I misinterpret something.

A DAW (Digital Audio Workstation) is a host program that, among other functions, runs (loads-and-executes) plugins, each a dll (dynamic-link library) program called only when needed, hence not static (not permanently resident). Dll(s) can have an extension of .dll, .vst2, .vst3, .aax, and probably others. Plugins related to making music based on MIDI commands are also known as instruments.

Cantabile is also a host program that, while not a full-blown DAW, runs dll(s), but only VST2 dll(s). ???Grace, then, must be a VST2 dll that accesses .wav files.??? Savihost3x64 is a host program that runs only VST3 dll(s), so it cannot be used with DSK Brass.dll, a 32 bit dll; Savihostx86 should be able to run that though.

MicroSoft Windows 10 uses 64-bit addressing, so plugins must be 64-bit or bridged to appear as such when running the Cantabile 64 bit version; or, 32-bit or bridged to appear as such when running the Cantabile 32 bit version.

The dll(s) must reside in specific libraries known to the host program. Your verbiage on this topic is excellent. Torsten. Thanks, again.


#14

Yup - but if you read the original post, @RonArt was really struggling with how to play samples within Cantabile - not something that you need to build a VST dll for, but rather you need to use a vst sampler for - something that @humphrey explained.

Now his question was how to run a specific vst plugin - @RonArt already has a specific vst dll - again, he doesn’t need to build something in Juce, but rather understand how the whole VST host / plugin world works.

So the title is somewhat misguiding - need to read the full content to really understand what the problem is…

Cheers,

Torsten


#15

@RonArt: I’d suggest that you leave building your own plugins for much later, once you really have got the hang of the basics - or even forget about it completely.

Most of us here - even the very sophisticated Cantabile users - have probably never had the need to build their own VST plugins - there are tons of readily available plugins that will keep you busy and happy for years without ever having to create your own plugin in Juce or whatever programming environment.

Cheers,

Torsten


#16

This is correct - Cantabile is a program that can host VST2 dll plugins.

Grace is a specialized VST instrument: it is a sample player. Remember the horribly expensive hardware samplers that dominated the sound of the 90s (Akai S3000 or the EMU IV come to mind)? These were hardware boxes costing north of $5000 that allowed you to sample natural sounds, map them to keys and play them back. Grace is essentially the same (just without the ability to actually sample, since converting audio to WAV files is easy nowadays) as a software program - and instead of costing $5000, it comes for free!

BTW: we don’t usually talk about VST2 "dll"s but simply about VST plugins and VST instruments (shortened to VSTi by some). So Grace is a free sampler VSTi, available as a 32bit and as a 64bit VST2 plugin - you need to download the correct version for your needs. Then you use the Grace manual to understand in detail how to load WAV files in Grace and map them to keys.

Almost correct, but not 100%: you need Windows 10 64 bit version to run 64 bit programs like Cantabile 64 bit (and of course the 64 bit plugins as well). There is also a 32 bit version of Windows 10 - that will only be able to run Cantabile 32 bit (and 32 bit plugins). BUT: Windows 10 64 bit can ALSO run 32 bit programs - so if for some reason you only want to run 32 bit plugins, you can run Cantabile 32 (with 32 bit plugins) in Windows 10 64 bit! Windows 64 bit has some technology built-in that allows you to do that…

But the rest of your statement is correct: when running Cantabile 64, you need to run 64 bit plugins or use JBridge so Cantabile 64 can “understand” 32 bit plugins.

Most commercial plugins today are available as 32 bit AND 64 bit plugins, but a lot of the free ones (especially the ones built with some older plugin construction kits) are only available as 32 bit versions, so they won’t run in 64 bit hosts, unless you bridge them.

I’d recommend leaving that for later and just start with a basic set of VST instruments and other plugins in one technology only, either 32 bit or 64 bit and get going with the corresponding version of Cantabile. Once you’ve mastered the basics, you can move on to the question of bridging or other more sophisticated wizardry.

Cheers,

Torsten


#17

When I first started this topic, I was under the mistaken impression that I had to create a dll myself, and that it would contain the sound file. Originally, I was trying to get my guitar to use Midi Guitar 2 and Guitar Rig; guitars often leave a sound (“hammer off”) when the string is released; these software packages use the term dll a lot . Since then I have found that Cantabile can call Grace who, in turn, plays wav files. Great!

Then, wanting to access sounds without having to convert them to wav files, I hit a brick wall. So that is how I got to this point, and how I posted using the wrong title.

I’m really happy with the entire “package”. I had no idea that all this existed. Thanks to all for their help.


#18

Hi Ron,

You can change the title by pressing the pencil beside the title if you have that permission. If not and you would like it changed just post what you would like to name it and I can for you if you wish.

Cheers,

Dave


#19

Thanks dave_dore, I don’t seem to have that permission (I don’t see a pencil next to the title).

You are welcomed to change the title but in my original posting I was under the mistaken impression that I had to create my own dll, so I don’t know what a better title would be. Any suggestions? If you have one and feel that it will serve to expose the latter posting(s) better, just go for it (change the title to it). Thx again.


#20

Hey Ron,

I took a shot at it, Hope it’s ok

Best,

Dave