VST host (etc.) for DSP language?

Started by Hides-His-Eyes, July 03, 2011, 06:12:44 AM

Previous topic - Next topic

Hides-His-Eyes

I really want to start doing my own DSP programs, and I've done a lot of reading, etc. But I can't yet spring the £100 for an FV-1 devboard.

That appeals because the instruction set is sufficiently limited that one can just about keep a track of what one is actually DOING, even if you do have to keep pissing around with the accumulator.

I know VSTs are written in C and probably come with all the illogical baggage C brings with it... What other options are there for coding DSP on a computer?

Hides-His-Eyes


Resynthesis


Synthedit is a halfway house letting you visually build VSTs. You can also handcode custom modules in C.

Csound is another alternative which is well documented. There are plenty of extensions, at least one of which (from Gogins) lets you use Csound as a VST.

CynicalMan

If you're interested in coding, I'd probably go with SynthMaker. It's similar to SynthEdit in that they're both visual modular VST-making programs, but SynthMaker has modules in it that directly accept C++ or assembly code. Coding your own modules for SynthEdit is as difficult and annoying as making your own GUI-less VSTs, which you might as well do instead.

Resynthesis


Never used Synthmaker so I can't compare. I haven't done much Synthedit coding either TBH but I found it reasonably straightforward using Xoxos's help*

http://www.xoxos.net/sem/sem.html


*I did write hard real-time operating systems for a living once upon a time though  :icon_eek:

CynicalMan

My point is that it's not any less complicated than making a GUI-less VST. If the OP doesn't want to code VSTs at all, then Synthmaker is the better choice. It's really easy, you just put in a C or assembly module, click on it, and enter your code. It is rather expensive, though.

I think you'll find yourself rather constrained without going into C or C++. VST, LADSPA, CSound, etc. are all C or C++. Nyquist seems optimised towards fairly simple plugins without going into DSP code much. Also, VST plugins are much more universal than other standards. You might just want to bite the bullet and deal with the C++ junk to get coding. Low-level DSP is fun.  :icon_cool:

Hides-His-Eyes

I've done non-DSP C++/C.

Is it just like PIC programming where appart from some special commands and specific registers the C is more for directing and arithmetic than any more fundamental complications?

potul

You could also try to use PureData. I think there is a version called pdVST that allows modules to be loaded as VST pluggins.

Mat

ExpAnonColin

The two ways I've found best to avoid lots of "C baggage" are Juce: http://www.rawmaterialsoftware.com/juce.php which is native C++ but does most of the wrapping for you and Faust http://faust.grame.fr/ which is its own language.  Other good high-level languages for prototyping are Nyquist (previously mentioned) and ChucK http://chuck.cs.princeton.edu/.

-Colin

Hides-His-Eyes

Reading up on Faust right now. Having real troubles installing it though! The downloaded installer only seems to give me the IDE and not the compiler itself.

ExpAnonColin

Well, lucky for you - there's an online compiler! 

http://faust.grame.fr/compiler.php

What system are you on?  I have always compiled it from source. They have an active mailing list, too.  Hopefully you've found these Faust tutorials:

http://stomach.v2.nl/docs/Software/Faust/faust_tutorial.pdf
https://ccrma.stanford.edu/~jos/aspf/

Hides-His-Eyes

#11
I'm on windows, but if I can't get it working I may get a VM going to run it in ubuntu because it would be so handy to be able to use faustworks properly.

I can't find anyone else through google with the same issue but I suppose this is niche.

EDIT: ooh, the online one gives me block diagrams too. That's well enough to spend the next few days doing some decent study :)

Hides-His-Eyes

>allpass(dt,fb) = (_,_ <: (*(fb):+:@(dt)), -) ~ _ : (!,_);

I have a lot of reading to do.