9 ms·
VST3 audio plugin format is now MIT
- radarsat1 1y agoOh wow, finally! They should have done this 20 years ago but this is awesome news.
- codedokode 1y agoBefore VST3 code was under GPL3 license and GPL2 software (like LMMS) couldn't use it. Also the license change could be caused by competition from CLAP which is very openly licensed.
- adzm 1y agoThis simplifies a ton of things.
- rewgs 1y agoWow!! What a huge and wonderful change. Hats off, Steinberg.
- p4bl0 1y agoThere is a lot of good news in open source audio these days. Also see this video presenting the work done and planned for the future version 4 of Audacity: https://www.youtube.com/watch?v=QYM3TWf_G38 https://www.youtube.com/watch?v=QYM3TWf_G38
- dtf 1y agoFunnily enough, that video talks about the pain of implementing a VST3 host at around the 25 minute mark. "If you're planning on doing it, set aside a lot of time."
- sim7c00 1y agotry implementing the same without VST3 technology. If you're planning to do that. Set aside a lot of time.....
- Zoadian 1y agoi have my own vst3 host. it's not really that difficult. the real problem is that theres a lot of plugins that do some random thing that wont work becasue it's not standard.
- moritzruth 1y agoIIRC that's also what is said in the video.
- junon 1y agoI just hope they don't try to sneak in Google Analytics again.
- Forgeties79 1y agoI’m keeping a very close eye on audacity 4 mostly to make sure they don’t try something again lol
- crispinh 1y agodupe: https://news.ycombinator.com/item?id=45665752 https://news.ycombinator.com/item?id=45665752
- keyle 1y agoCongrats for making it but it feels like being pushed to do it since CLAP was brought forward quite successfully [1] [1] https://u-he.com/community/clap/ https://u-he.com/community/clap/
- Polarity 1y agoclap is way better
- codedokode 1y agoClap doesn't allow describing plugin in a manifest (like VST3 and LV2 do). This allows to scan for plugins faster. Also, CLAP uses 3 or 4 methods to represent MIDI data (MIDI1, MIDI1 + MPE, MIDI2, CLAP events). This requires to write several converters when implementing a host. But, CLAP is much simpler and doesn't use COM-like system (VST3 resembles a Windows COM library with endless interfaces and GUIDs). Also, VST3 interfaces in SDK are described as C++ classes with virtual functions (example: [1]), and I wonder how do they achieve portability, if the layout for such classes (vtables) is not standardized and may differ across compilers. [1] https://github.com/steinbergmedia/vst3_pluginterfaces/blob/31d6eeba6daaa3e2a8bfbe3e7a90ca0b7fbfbc1c/vst/ivstaudioprocessor.h#L259 https://github.com/steinbergmedia/vst3_pluginterfaces/blob/3...
- Zoadian 1y agothey are com classes. the vtable layout for them is specified.
- debugnik 1y agoNot really, VST3's COM-like API just uses virtual methods, they don't guarantee layout to the same degree actual COM does with compiler support. They simply rely on the platform ABI being standardized enough.
- codedokode 1y agoI don't think GCC has a special case for handling COM classes. However, I found that GCC uses "Itanium CXX ABI" on Linux which specifies vtable layout which accidentally might match the layout of COM classes. However, it is not guaranteered (for example, by C++ standards) that other compilers use the same layout.
- rana762 1y ago[dead]
- rana762 1y ago[flagged]
- LoganDark 1y agono, his name is John Cena!
- sagacity 1y agoThat's very interesting news. Definitely brought on by CLAP as others have mentioned, but it's interesting to see how this evolves. VST is a pretty complicated standard to support whereas CLAP is much simpler, although the former is much more widely used.
- coldtea 1y agoLike 1 in 200 plugins supports CLAP, where 100% support VST, so if they can do it more easily and with less licensing burden, and even have some community contribution, that would be big. It will be a while, if ever, before most plugins get the CLAP (pun intended).
- mycall 1y agoCLAP might be similar to AU in plugin support which is pretty common too.
- coldtea 1y agoCLAP is nowhere near close to AU in adoption. Almost all VST plugins have an AU version (like 80%-90% or so, and 99% of the major ones). Almost no VST plugins have a CLAP version (like 1%-5%, and that's charitable).
- mycall 1y agoI know it isn't nowhere near in adoption NOW. I meant it shows there is room for another format and AU is a good example of how another format can make inroads.
- pottering 1y agoAU support grew because Logic Pro only loads AU, Logic userbase is a attractive enough market for plugin devs. On the other hand, there is not a single DAW that only loads CLAP. That's the same problem Steinberg faced with VST3 years ago, every host/DAW/plugin supported VST2 (including Cubase), there was no reason for devs to switch to VST3. Steinberg forced the issue killing the VST2 licenses, any new plugin and host had only access to the VST3 license, even then devs resisted, only recently Steinberg announced future Cubase/Nuendo versions won't support VST2 anymore (plugin devs may hate Steinberg, but they won't simply leave Cubase/Nuendo users without support, they are not to blame for Steinberg's stupidity). CLAP can't force the issue the same way Steinberg did with VST3, there is no CLAP-only DAW either.
- mastazi 1y agoI'm going to file this under "examples of Yamaha doing the right thing" (Steinberg is owned by Yamaha) previous examples: * Yamaha saved Korg by buying it when it was in financial trouble and giving it a cash injection, only to then sell it back to its previous owners once they had enough cash[1]. * Yamaha in the 80's had acquired Sequential (for those not familiar: Sequential Circuits is one of the most admired synthesizer makers). Many years later, Sequential's founder Dave Smith established a new company under a different name and in 2015 Yamaha decided to return the rights to use the Sequential brand to Smith, as a gesture of goodwill, on Sequential's 40th anniversary (this was also thanks to Roland's founder Ikutaro Kakehashi who convinced Yamaha that it would be the right thing to do) [1][2][3] [1] https://www.soundonsound.com/music-business/history-korg-part-2 https://www.soundonsound.com/music-business/history-korg-par... [2] https://www.gearnews.com/american-giants-the-history-of-sequential/ https://www.gearnews.com/american-giants-the-history-of-sequ... [3] https://ra.co/news/42428 https://ra.co/news/42428
- pantulis 1y agoGreat recap!
- coldtea 1y agocustomer: hello, I want to buy a piano please yamaha: sure, here you go customer: great, thanks! lol, I also need a motorcycle. Do you know where I can buy a good one? yamaha: you're not gonna believe this...
- sparky_z 1y agoCompletely separate companies, both called Yamaha. One was spun off from the other, but I don't think there was ever a time when the same company sold both. (Basically, the musical instrument company was redirected to making war materiel during WWII. After the war, they didn't want to just throw away all of their new industrial capacity so they spun off a company to make use of all their new equipment and expertise and then went back to making instruments.)
- 1y ago
- matkv 1y agoHaving only used VSTs but never even looked into how they're actually built - what does this now mean in simple terms? Did you need a specific closed source framework to build them or something like that? What has changed now?
- cdavid 1y agoYou had to accept some license terms before you could download the VST SDK. When linux audio started to get "serious" 20 years ago, it was a commonly discussed pain point. Concretely, it made distributing OSS VST plugins a pain. Especially for Linux which generally will want to build their packages.
- TonyTrapp 1y agoNote that his was the VST2 era. VST3 was commercial license or GPL 3, which was an improvement, but only slightly, because it excluded open-source software released under the GPL 2, and also MIT/BSD/whatever-licensed software couldn't use it (without effectively turning the whole software into GPL-licensed software).
- unwind 1y agoAs a complete audio outsider, my observations are: 1. Great news! VSTs seem to fill an important role in the audio-processing software world, and having them more open must be a good thing. 2. From the things they mention, the SDK seems way larger than I had imagined, but that is normal for (software) things, I guess. "This API also enables the scheduling of tasks on the main thread from any other thread." was not easy to unpack nor see the use of in what was (to me) an audio-generation-centered API. 3. The actual post seems to be somewhat mangled, I see both proper inline links and what looks like naked Markdown links, and also bolded words that also have double asterisks around them. Much confusing.
- swiftcoder 1y ago> the SDK seems way larger than I had imagined, but that is normal for (software) things, I guess. "This API also enables the scheduling of tasks on the main thread from any other thread." was not easy to unpack nor see the use of in what was (to me) an audio-generation-centered API VST plugins almost all have a GUI, thus the VST SDK has to support an entire cross-platform UI framework... This threading functionality is mostly about shipping input events/rendering updates back and forth to the main (UI) thread
- codedokode 1y agoThere is no single UI framework in VST. The plugin API only has interfaces for creating/destroying/resizing a GUI window. You are not required to use VSTGUI.
- dramm 1y agoWell done Steinberg/Yamaha. At the same time Steinberg also open sourced their ASIO audio hardware interface standard but under GPL3. GPL2 here would have made more sense to me to align with the Linux kernel GPL2 only licensing. So why GPL3? Other commenters here have mentioned OBS, and OBS is "GPLv2 or later" so sure that works for them. Not being GPL 2 and missing on the Linux kernel just surprises me. I have been using the nice cwASIO (https://github.com/s13n/cwASIO https://github.com/s13n/cwASIO) re-implementation of the ASIO SDK, it's MIT licensed. https://github.com/s13n/cwASIO https://github.com/s13n/cwASIO. It's nice there just to see something more up to date than the ancient ASIO SDK documentation. I would love to see the Steinberg ASIO SDK updated and improved, if you are listening Steinberg folks: nobody cares about the history of ASIO on Macs or Silicon Graphics Workstations, just dive in and get deep into the weeds of ASIO on Windows, and include lots more sample code, especially covering the ASIO device enumeration mess on Windows.
- odiroot 1y agoMost probably a response to CLAP gaining popularity. But they buried a lede with Wayland support. This puts VST3 ahead of CLAP in that regard.
- pmkary 1y agoThis is technical people at their finest! There couldn't be any news more important than this—or more anticipated by the community. For so many years people wished for this, and they announce it this low-key in a forum! This is so awesome. Thanks to Steinberg & YAMAHA, I guess so much good is to come out of it.
- deleted 1y ago[deleted]
- junon 1y agoWow, after all these years. This is a very Good Thing. You could get access to it before but you had to sign a very long agreement and it was always a PITA. Steinberg is only going to benefit from this, I think.
- spacechild1 1y ago> You could get access to it before but you had to sign a very long agreement and it was always a PITA. That was with VST2, which is/was a proprietory format. VST3 has been dual licensed as GPLv3 + commercial for a long time now.
- junon 1y agoI didn't realize VST3 was dual licensed but I don't know of any other way to download the VST3 libs other than the same Steinburg panel that, if memory serves, also required signing the agreement before you had access to any of them - ASIO included.
- spacechild1 1y agoThe VST3 SDK has been available on GitHub since 2017. I think that's when they introduced the GPLv3 option. See https://github.com/steinbergmedia/vst3sdk https://github.com/steinbergmedia/vst3sdk
- junon 1y agoOh neat, thanks! Had no idea.
- WhereIsTheTruth 1y agoWhy are we still centralizing open source on Microsoft's GitHub? Haven't we learned the risks of giving one corporation, especially one with a such a shady history, exclusive control over the world's open source activity?
- dorkypunk 1y agoBecause they don't have exclusive control, unlike social media where you can't take your data and move it to another provider, you can just take your repo to whichever provider or self-hosted GitOps option you want.
- phkahler 1y agoNot only can you take it with you, every developer already has a local copy of the entire repository. The real value IMHO of github is the issue tracker and the visual diff/display of PR changes.
- postit 1y agoThe shift away from proprietary formats is long overdue. As a composer and arranger working with different studios, I need multiple DAWs installed for compatibility. Every time I open my DAW or Gig Performer after a few days, it rescans all plugins. With around 800 installed, that happens across AU, VST, and VST3. I hope Apple and Avid are holding meetings after this decision to help simplify the life of library/plugin makers. As an example AAX requires a complete mess to compile and test their plugins, and several AU plugins are just wrappers aroud VST that add another layer. I really hope the next five years bring real standardization and smoother workflows.
- sureglymop 1y agoIt sucks to say but I completely stopped using DAWs and being into music production a few years ago when I completely switched to linux. I have always felt the industry of digital audio processing and software to be overcommercialized and ripe for something akin to blender to change the game.
- Lapsa 1y agoCLAP supports polyphonic modulation
- brulard 1y agoNo more takedown notices for including legacy VST SDK in your github project? Wait, mine was 2.4, so I guess steinberg would still chase me down if I hadn't complied already.
- deleted 1y ago[deleted]
- lateralux 1y agoI’d really like to see more plugins available in the LV2 format for my Ardour RT DAW. Also, a quick recommendation : LSP (Linux Studio Plugins) an excellent collection of several open source plugins supporting CLAP, AU, LV2, VST2, VST3, LADSPA, and a standalone Jack versions https://lsp-plug.in/ https://lsp-plug.in/
- deleted 1y ago[deleted]
- 999900000999 1y agoThis is fantastic. Audio programming is still low level and difficult, but I'm looking forward towards vibe coding some experiments with this. I like to work privately on my open source projects, and then push it to a public repo after deleting my git history ( for the public repo anyway).
- botanrice 1y agoI've never dabbled in audio programming but am both a tech-minded musician and developer. Care to share any starter links, orgs, platforms, tools, or even your own work to point me in the right direction? ( rly, feel free to plug your own work :D )
- oybng 1y agoThe direct result of the newer, open CLAP format being objectively better in every way. Steinberg has gone to great lengths to force adoption of the trash that is VST3 and retain it's stranglehold on the audio world, including but not limited to, takedowns of distributors, takedowns of VST2.4 SDKs, constant threats of legal action against independent VST2.4 developers forcing them to remove purchases from customers, and funding particular plugin frameworks & daw developers to slow CLAP adoption.
- AaronAPU 1y agoI still get customers requesting that I distribute VST(2) builds. Some old DAWs and apps still can’t load VST3. Thus far it hasn’t been possible due to licensing restrictions with commercial plug-ins, imposed by Steinberg. I wonder if that will change as well..
- pottering 1y agoNope, the wording in the SDK explicitly says, and I quote "VST 2 API source code is NOT part of this VST 3 license!" https://steinbergmedia.github.io/vst3_dev_portal/pages/VST+3+Licensing/VST3+License.html https://steinbergmedia.github.io/vst3_dev_portal/pages/VST+3... https://steinbergmedia.github.io/vst3_dev_portal/pages/VST+3+Licensing/Which+files+fall+under+which+license.html#what-about-vst-2 https://steinbergmedia.github.io/vst3_dev_portal/pages/VST+3... It is the same, there is only the pre-2018 licenses. (But a few hosts that avoided VST3 due to licensing may implement it now due to this change.)
- squeaky-clean 1y agoSince I never agreed to the VST3 SDK terms, which required you to give up your license to VST2, does this mean I can finally make VST3 plugins without losing the ability to publish VST2?
- Benanov 1y agoYou'd have to use this version (not sure if they back-licensed old versions) but MIT would mean you wouldn't have to agree to that draconian licensing.
- lolive 1y agoCan anyone fluent with all this tell me whether that will make the usage of Arturia [zillion of] plugins trivial in Linux distros?
- hypertexthero 1y agoIf someone at Yamaha is reading this, could you please release a firmware update for the Yamaha Reface CP so that the toy piano setting plays the hidden grand piano sound instead? To get the hidden piano sound: 1. Turn Reface CP off. 2. Turn piano sound knob so it rests in between any two settings. 3. Turn Reface CP on. The Reface CP is one of my favorite small keys piano instruments, and I got one specifically for the hidden piano sound, but it’s annoying to have to go through the above steps and I’m not experienced enough to mod the circuitry.
- waffletower 1y agoIn principle this is a great thing -- but in reality this will only continue to exacerbate the monoculture of 1970s era musical metaphors in digital music production. The VST3 format is confined, much like MIDI 1.0, to provide extremely opinionated and limited instrument and sound processing designs. If AudioUnits were suddenly MIT licensed I would react very differently.
- wrl 1y ago"opinionated and limited" in what way? I'm also curious to hear how AU differs appreciably from VST3, mostly at a conceptual level (as I'm already familiar with the low-level details of both APIs).
- botanrice 1y agoI am unfamiliar with the differences between these two at all, as someone who uses audio plugins but does not develop with them. What are the main differences and why is OP claiming that there are far better methods of doing so?
- Slow_Hand 1y agoMe three would like to know. I'm producer/mixer who favors AU over VST3 plugins. Not for any opinionated reason. Merely because my experience is that they're slightly less error prone in my DAW.
- wrl 1y agoThe short answer is that there really aren't. All extant audio plugin APIs/formats are basically ways of getting audio data into and out of a `process()` (sometimes called `Render`) function which gets called by the host application whenever it needs more audio from the plugin. Every API has its own pageantry not just around the details of calling `process()`, but also exposing and manipulating things like parameters, bus configuration, state management, MIDI/note i/o, etc. There are differences in all of these (sometimes big differences), but there aren't any real crazy outliers. At the end of the day, a plugin instance is a sort of "object", right? And the host calls methods on it. How the calls look varies considerably: VST2 prescribes a big `switch()` statement in a "dispatcher" function, with different constants for the "command" (or "method", more or less). VST3 uses COM-like vtables and `QueryInterface`. CLAP uses a mechanism where a plugin (or host) is queried for an "extension" (identified by a string), and the query returns a const pointer to a vtable (or NULL if the host/plugin doesn't support the extension). AudioUnits has some spandrels of the old mac "Component Manager", including a `Lookup` method for mapping constants to function pointers (kind of similar to VST2 except it returns a function rather than dispatching to it directly), and then AU also has a "property" system with getters and setters for things like bus configuration, saving/loading state, parameter metadata, etc. I'm not sure why OP is claiming that AU is somehow unopinionated or less limited. It doesn't support any particular extensibility that the other formats don't too.
- spacechild1 1y agoThis is great news! At the same time it's too little too late. I still won't forget how they killed the VST2 SDK and came after people who hosted copies. This was terrible for people who tried to build existing open source VST2 plugins. It was even worse for people who wanted to write a VST2 host, but couldn't get a license anymore. This was at a time when VST3 support was far from universal and many plugins didn't ship VST3 versions. (Not to mention all the existing plugins that never will.) I mean, these "SDKs" are just goddamn header files! *) They shouldn't have been proprietory in the first place. Now, if they also re-release the VST2 SDK under the MIT license and apologize for their crass behavior, then I will actually give them credit. /rant off *) Yes, the VST3 SDK is huge, but the only things you really need are the headers in https://github.com/steinbergmedia/vst3_pluginterfaces/tree/master https://github.com/steinbergmedia/vst3_pluginterfaces/tree/m.... The VST2 SDK only consistet of two header files (aeffect.h and aeffectx.h)