Closed igorski closed 4 years ago
@igorski Thank you so much for the feedback. Very glad you find it easy to use as this was the intent.
Jamba is indeed requiring SDK 3.6.9 at the moment. I never thought that Jamba would support (for a given version of Jamba) multiple version of the VST SDKs. The main reason being that, as described in the introduction, you are still writing VST SDK code and Jamba is only here to help doing that and providing many helpers along the way. Since APIs tend to change willy-nilly in the SDK, then Jamba would have to become an abstraction to hide all the changes (to have different implementations based on SDK version) and then you would not write a VST plugin but a Jamba plugin.
In regards to the specific version 3.6.9, when I started writing Jamba this was the one available and I thought I was going to upgrade with the SDK but then a few things happened:
they announced that to kill VST2, they were going to remove it from the SDK and that did happen in 3.6.11. I think this is a really wrong move because it is not going to kill the 7000+ plugins that have been written with VST2 but make them harder to evolve. At this time, not all DAWs support VST3 (ex: Maschine, Reason, ...) and it was one of my goal that Jamba would allow you to happily write with the way nicer APIs (and VSTGUI) of VST3 while still being able to generate a VST2 version for the DAWs that do not support it.
the way that Steinberg is managing the release of the SDK is not really following good software engineering practices in my view: Once they release a new version (called "the latest version" on the developers page), they make it impossible to find previous ones (they don't even have tags on github for all their versions). They seem to fix things in new versions while breaking other things which seems to show that they do not really test their work thoroughly. This would be "ok" if they were to release fixes quickly (like a 3.6.12.patch1) for example. And finally, as you pointed out they make serious (breaking) api changes, yet the next version is still a point release.
The conclusion is that I have not found the right way on how to make the VST3 SDK evolve in Jamba but I am thinking about it as I also do not believe I can stay on 3.6.9 forever.
Thanks for your explanation. It makes sense that Jamba will be tied to the Steinberg SDK's frills.
I agree killing VST2 is a harsh thing to do as it's real-world usage is very much alive and widespread (heck, Ableton doesn't event support VST3...) but I can understand Steinbergs frustration with VST3 having been available for 10+ years...
With regards to version 3.6.9: the link in the README is outdated, seems like Steinberg doesn't like keeping archives of older/more stable versions. I think the version you were linking to is reflected in commit 985d945639f5a2f7498d9483e8b5e6d921bcb580 of the vst3sdk repo.
Thanks!
Ouch :( That is not good at all. This is what I was talking about "not following good software practices". I have never seen an open source project that doesn't let you download an old version.
The issue with the vst3sdk repo is that it does NOT contain VST2 (on purpose...)...
Guess I need to address "finding a solution" sooner than anticipated since Steinberg pulled it with no warnings...
I was able to find a quick fix for the link (it works again), but I definitely need to come up with a long term solution fast!
Guys I tried to build using vstsdk3612_03_12_2018_build_67 on Mac.
It seems to be working fine?
@aidv I have not personally tried, so I do not know if it works or not with 3.6.12, but I am a bit surprised it does: as far as I remember from the 3.6.12 release notes, there was a bunch of changes in the CMake files including renaming some variables which I believe jamba uses. For sure you will not have VST2 support.
@ypujante aah i see. It compiled fine for me though.
Out of curiousity, why don’t you update the framework to the latest SDK, say, every 3 or 6 months?
It is explained in this very thread first response
Oh I missed that.
@aidv np. If you end up using jamba successfully for you project, please do let me know. I am very interested in how people use it and if it is useful. Also if you have feedback and/or comments do not hesitate to create new issues.
Oh I def will. You seem to have a set of skills that could be very useful for my project. Are tou available to take on a new project and how could I contact you outside of GitHub?
You can find my contact info on my blog (https://www.pongasoft.com/blog/yan) if you want to contact me outside of GitHub. I am currently not really looking for new projects but can provide help if you need some (currently traveling until mid march though...)
Alright I’ll shoot a message some time withon a week. Happy traveling.
With the release of Jamba 5.0.0, I found a way to support the latest version of the SDK (3.7.0 as of 08/2020) while still allowing support for VST2. So I am closing this issue.
Hello, first up: great project! Tremendously easy to use, allowing one to focus on the fun part: writing the darn plugin!
Not so much an issue, but rather an enquiry:
I have read that Jamba is currently tied to SDK 3.6.9. Having looked at the current SDK 3.6.12 I see there are some breaking changes (mostly in VSTGUI, also in /base source Makelists). Is there a plan on how to add support for a wider ranges of SDKs ? Am I correct in assuming that Jamba is dependent upon Steinberg make list restructuring (and therefore making it hard to support just any SDK version) ?