nih-plug
vst3-sys
Our great sponsors
nih-plug | vst3-sys | |
---|---|---|
30 | 3 | |
1,308 | 256 | |
- | 5.1% | |
8.5 | 2.2 | |
5 days ago | 9 months ago | |
Rust | Rust | |
ISC License | GNU General Public License v3.0 or later |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
nih-plug
-
Write your business logic with Rust, Empowered by Rinf for Native Performance Apps
Super cool. Any experience doing audio/synthesis/DSP work with this in a Flutter app? It would be particularly awesome if this enabled building VST plugins with Flutter and one of the Rust crates for VSTs (like NIH-plug or similar).
-
Get Started Making Music
I don't think Max4Live is not a good choice for building audio plugins. It's a weird platform that was designed for 'institutionalized academic music,' as I once read someone describe it. It's difficult to program in and not efficient. None of my favorite music software is made with it. It's also quite buggy, in my experience. For doing some basic extensions to Ableton Live specifically, beyond what VST allows access to, it's OK, since it's the only official way to do so.
If you want to just dive into DSP using wires and boxes, with some additional code sprinkled in, SynthEdit or Reaktor Core are faster, more fun, and produce better results. If you don't mind C++, check out iPlug from REAPER's WDL codebase: https://www.cockos.com/wdl/ — there are some forks of it.
There's also JUCE. You'll find some people complain about it and some people regret using it, despite it being relatively popular.
There are some Rust things for doing VST (and AU) development. Here's one that I've seen a few things made with: https://github.com/robbert-vdh/nih-plug/tree/master I wouldn't worry too much about the differences between C++ and Rust in this world. Audio software tends to be buggy, so the bar for being considered 'good enough' is pretty low.
-
Chromatic - instrument tuner by nate-xyz.
As it's written in Rust, perhaps it could be implemented as a CLAP plugin. This is a nice framework I've been playing with https://github.com/robbert-vdh/nih-plug/
-
What do you think is the next major direction for Rust adoption?
The potential is both in terms of moving away from proprietary corporate-controlled standards (but also still providing shared wrappers to support those "legacy" :) audio plugin formats) and supporting Rust as a first class development language (via e.g. https://github.com/robbert-vdh/nih-plug).
- Ask HN: Any sound-related project suggestions for learning Rust?
-
Seeking: Non GPL - VST3 basic API support
Yep, Steinberg licensing sucks. I suggest you use nih-plug, it has a much nicer Rust API and supports generating both VST3 and CLAP plugins from your code. I'm only targetting CLAP nowadays, but unfortunately not many DAW's support it.
-
Is it possible to create a VST that wraps around a standalone Java program, launching it as a separate process?
Since I seem to be stuck in turning the Java program into a VST, is it instead possible to create a separate program that is a VST using C++ (e.g. with JUCE) or Rust (e.g. with nih-plug) that starts my Java synth as a separate process and communicates via localhost or pipes and just forwards any inputs to the synths, as well as recieving any audio data generated?
-
I'm a (kinda) new programmer with some questions
If you want to make a CLAP audio plugin, you should use nih-plug, as it's a higher level library that supports vst and clap bindings. Also check out rust.audio
-
Uses of Rust and C++ that only one has?
At least, https://github.com/robbert-vdh/nih-plug already gives many features for developing VST and CLAP. I know, it's not JUCE, and maybe it even doesn't want to be like JUCE in terms of GUI building blocks, but it makes very promising progress.
-
Multiband FX-4
This free one exists, although I haven't personally used it https://github.com/robbert-vdh/nih-plug/tree/master/plugins/crossover
vst3-sys
-
Seeking: Non GPL - VST3 basic API support
There is VST3 API for Rust but sadly, its GPL licensed https://github.com/RustAudio/vst3-sys unsuitable for commercial development.
-
VST3 in Rust?
vst3-sys are bindings provided for VST3, but aren't "rustic" in nature i.e. are simple, raw bindings. It doesn't seem that there's a "nice" crate which abstracts over the VST3 library (correct me if I'm wrong).
-
How do you go about making VSTs?
*even then, the masterminds over at RustAudio actually ported the VST3 API, but this is all pretty bleeding edge, so unless you really, really hate C++..
What are some alternatives?
augmented-audio - Rust - Augmented Audio Libraries
vst3-rs - Easy to use VST3 library for Rust
vst-rs - VST 2.4 API implementation in rust. Create plugins or hosts. Previously rust-vst on the RustDSP group.
loopers - Loopers is graphical live looper, written in Rust, designed for ease of use and rock-solid stability
cargo-limit - Productivity improvements for Rust ecosystem: warnings are skipped until errors are fixed, LSP-independent Neovim integration, etc.
kakoune-lsp - Kakoune Language Server Protocol Client
bonsai - A library for building dynamic webapps, using Js_of_ocaml
clap-imgui - Minimal example of prototyping CLAP audio plugins using Dear ImGui as the user interface.
JUCE - JUCE is an open-source cross-platform C++ application framework for desktop and mobile applications, including VST, VST3, AU, AUv3, LV2 and AAX audio plug-ins.
rust-xml-schema - [WIP] (Self-generating) XML parser generator based on XML schemas.