If you have a problem or need to report a bug please email : support@dsprobotics.com
There are 3 sections to this support area:
DOWNLOADS: access to product manuals, support files and drivers
HELP & INFORMATION: tutorials and example files for learning or finding pre-made modules for your projects
USER FORUMS: meet with other users and exchange ideas, you can also get help and assistance here
NEW REGISTRATIONS - please contact us if you wish to register on the forum
Users are reminded of the forum rules they sign up to which prohibits any activity that violates any laws including posting material covered by copyright
New DLL calling feature
12 posts
• Page 1 of 2 • 1, 2
New DLL calling feature
I've got a few thoughts and questions about using external .dll files with Flowstone. I've just gotten started with making multiplatform plugins with C++ so it's come just in time.
First, the big question -- could this be used to call an external plugin? VSTs are .dll files after all. Could we stream something in and out of a plugin with this feature? Does anyone have the knowledge to do a tutorial on this?
As far as comments, I have a few. The biggest possibility I see with this is easier conversion to multiplatform. When using Flowstone as a prototyping tool for a full-on multiplatform project, the main processing could be kept in .dll files. When it comes time to code the multiplatform version, there will be less work to do.
Also, with .dll calls being possible, someone who is moving from Flowstone into C++ coding like myself can have a smoother transition, where they can try out the middle-ground. That was one advantage of SynthEdit over Flowstone that is no more.
First, the big question -- could this be used to call an external plugin? VSTs are .dll files after all. Could we stream something in and out of a plugin with this feature? Does anyone have the knowledge to do a tutorial on this?
As far as comments, I have a few. The biggest possibility I see with this is easier conversion to multiplatform. When using Flowstone as a prototyping tool for a full-on multiplatform project, the main processing could be kept in .dll files. When it comes time to code the multiplatform version, there will be less work to do.
Also, with .dll calls being possible, someone who is moving from Flowstone into C++ coding like myself can have a smoother transition, where they can try out the middle-ground. That was one advantage of SynthEdit over Flowstone that is no more.
-
SBMastering - Posts: 17
- Joined: Tue Jun 12, 2012 11:47 pm
Re: New DLL calling feature
SBMastering wrote:First, the big question -- could this be used to call an external plugin?
I would imagine that a VST input/output buffer is just an array of float values, so I see no reason why not in principle. But the FS .dll primitive requires a very specific call signature, so you'd probably need to build a "middle man .dll" to re-arrange the call arguments, acting as an interface between the two.
SBMastering wrote:moving from Flowstone into C++ coding like myself can have a smoother transition
Totally agree - it's finally kicked me into trying out some C++ and getting my head around the whole 'IDE' thing.
All schematics/modules I post are free for all to use - but a credit is always polite!
Don't stagnate, mutate to create!
Don't stagnate, mutate to create!
-
trogluddite - Posts: 1730
- Joined: Fri Oct 22, 2010 12:46 am
- Location: Yorkshire, UK
Re: New DLL calling feature
Here's a question -- could we call DLLs in such a way that we avoid opcode use, then compile VSTs that could run under bootcamped Windows on a Mac?
Flowstone has one fatal drawback -- it is not crossplatform. This limits it to being a prototyping tool. I dream of it being programmed to use the iPlug/WDL or JUCE libraries in the backend, and support crossplatform VST/AU/AAX development. Then, Flowstone users could make a real living off of the software. Even if I could pay DSP Robotics to convert a plugin I create to multiplatform, that'd do it for me and there would be additional revenue for them.
One step closer would be if a Flowstone plugin could be used on a Mac at all. Right now, the majority of audio people are on Protools with a Mac, and with Flowstone we're blocked from them entirely.
I don't know if the GUI controls use PC-specific processing, but maybe they don't and maybe I could do all my audio processing in .dll files. Would this be a way to reach bootcamped Windows with a Flowstone plugin?
Flowstone has one fatal drawback -- it is not crossplatform. This limits it to being a prototyping tool. I dream of it being programmed to use the iPlug/WDL or JUCE libraries in the backend, and support crossplatform VST/AU/AAX development. Then, Flowstone users could make a real living off of the software. Even if I could pay DSP Robotics to convert a plugin I create to multiplatform, that'd do it for me and there would be additional revenue for them.
One step closer would be if a Flowstone plugin could be used on a Mac at all. Right now, the majority of audio people are on Protools with a Mac, and with Flowstone we're blocked from them entirely.
I don't know if the GUI controls use PC-specific processing, but maybe they don't and maybe I could do all my audio processing in .dll files. Would this be a way to reach bootcamped Windows with a Flowstone plugin?
-
SBMastering - Posts: 17
- Joined: Tue Jun 12, 2012 11:47 pm
Re: New DLL calling feature
SBMastering wrote:I don't know if the GUI controls use PC-specific processing
That's one of the biggest problems right there - all graphics/mouse interaction is handled through Windows' GDI+ library and various other OS .dlls.
So a good first step towards Mac compatibility would be the use of a standard like OpenGL for graphics - which would be a boon for Windows users too, as it would give us GPU hardware accelerated graphics (including a great 3D engine), whereas GDI+ is processed solely using the main motherboard CPU.
But that's a big change to make for what is essentially a one-man development team - and with DSPr's target audience now mainly the education market, where PCs are king because they're cheaper, that seems unlikely, at least in the short term.
All schematics/modules I post are free for all to use - but a credit is always polite!
Don't stagnate, mutate to create!
Don't stagnate, mutate to create!
-
trogluddite - Posts: 1730
- Joined: Fri Oct 22, 2010 12:46 am
- Location: Yorkshire, UK
Re: New DLL calling feature
...but it would have to be old version openGL. Otherwise many computers (not so old) will say "nope, ypu can't run it". So then complains would start about updating the openGL "because..."
Need to take a break? I have something right for you.
Feel free to donate. Thank you for your contribution.
Feel free to donate. Thank you for your contribution.
- tester
- Posts: 1786
- Joined: Wed Jan 18, 2012 10:52 pm
- Location: Poland, internet
Re: New DLL calling feature
Too true- I use 3D CAD software at work where the single most common cause of problems for new users is that their OpenGL drivers/settings cause display corruption.
All schematics/modules I post are free for all to use - but a credit is always polite!
Don't stagnate, mutate to create!
Don't stagnate, mutate to create!
-
trogluddite - Posts: 1730
- Joined: Fri Oct 22, 2010 12:46 am
- Location: Yorkshire, UK
Re: New DLL calling feature
SBMastering wrote:Here's a question -- could we call DLLs in such a way that we avoid opcode use, then compile VSTs that could run under bootcamped Windows on a Mac?
Maybe i misunderstand that part of your question but Flowstone works pretty well on bootcamp.
- stw
- Posts: 111
- Joined: Tue Jul 13, 2010 11:09 am
Re: New DLL calling feature
I was under the impression that since Flowstone uses opcodes, which are built into the PC processors, that the VST plugins it creates would not run under bootcamped Windows. Maybe Flowstone itself does, but it's plugins do not? I've never actually tried it though.
-
SBMastering - Posts: 17
- Joined: Tue Jun 12, 2012 11:47 pm
Re: New DLL calling feature
SBMastering wrote:Flowstone uses opcodes, which are built into the PC processors
For quite a few years now Apple have used the same Intel x86 based CPU's that PC's do. That's a big factor in making software like bootcamp possible. Incompatibility between Mac and PC is mostly a software problem these days - there's no need to re-compile the binary code from source - so long as every single required resource is available (i.e. hardware drivers, .dll libraries, file and memory management etc.).
Hardware wise, the biggest difference is that Apple will only allow very specific components to be used in their machines - whereas most PC's are a free-for-all mongrel of whatever parts Dell find lying around in their bottom drawer! That's why Macs have a reputation for greater reliability - the parts themselves aren't necessarily any better, but Apple can support their stuff and test it more thoroughly because there are so few combinations of parts.
If you know PC hardware well, you can equal or exceed what Apple can build easily - but for a designer who is not also a computer engineer, using a Mac has traditionally meant a lot less hardware problems to deal with.
It also makes customer support much easier - one company to deal with who know exactly what is inside your computer - none of the PC thing where your graphics card maker and motherboard maker just blame each other for your problems! It's rarely said, but that is one of the prime reasons that Macs cost more - a homogenous support network (that and "because we can get away with it"!!)
All schematics/modules I post are free for all to use - but a credit is always polite!
Don't stagnate, mutate to create!
Don't stagnate, mutate to create!
-
trogluddite - Posts: 1730
- Joined: Fri Oct 22, 2010 12:46 am
- Location: Yorkshire, UK
Re: New DLL calling feature
Really glad you guys told me that -- really helps me out! Will a Flowstone VST work with one of those Mac Protools VST adapters, non-bootcamped?
-
SBMastering - Posts: 17
- Joined: Tue Jun 12, 2012 11:47 pm
12 posts
• Page 1 of 2 • 1, 2
Who is online
Users browsing this forum: No registered users and 65 guests