4 ms·
As an alternative to JUCE, you can use write VST with Rust, using EGUI lib: https://github.com/DGriffin91/egui_baseview_test_vst2 https://github.com/DGriffin91
by chaosprint 5y ago
As an alternative to JUCE, you can use write VST with Rust, using EGUI lib:
https://github.com/DGriffin91/egui_baseview_test_vst2 https://github.com/DGriffin91/egui_baseview_test_vst2
Audio lib choice:
- https://github.com/RustAudio/dasp https://github.com/RustAudio/dasp
- https://github.com/SamiPerttu/fundsp https://github.com/SamiPerttu/fundsp
- https://github.com/chaosprint/glicol https://github.com/chaosprint/glicol
Typically, you can use MIT license in Rust community.
In this video demo, you can even live coding audio effect in DAWs with Glicol as VST plug-in, built with EGUI:
https://youtu.be/tmmBhBmIEW0 https://youtu.be/tmmBhBmIEW0
Apparently, you can use the same combo to make your own.
- PaulDavisThe1st 5y agoRealistically, the hard parts of writing a plugin are: 1. understanding the DSP behind it 2. correctly implementing the GUI I have yet to see a mechanism by which language choices really help with the problems of either of those aspects of the job.
- monetus 5y agoThe visual programming languages tend to have really thorough guides on the DSP - max/msp's built in docs in particular, but pure data and external libraries are super in depth too. They also tend to have horrible GUI practices...
- chaosprint 5y agoActually I am teaching both pd and glicol in the University of Oslo this semester. It's even quite surprising to me that most students seem to gain more logic programming ideas from pd (such as the counter and metro controlled sequencer) while learning more dsp from glicol and its browser console based docs: https://glicol.org https://glicol.org Of course, Miller's book is always there http://msp.ucsd.edu/techniques.htm http://msp.ucsd.edu/techniques.htm and the examples are in pd, which is always helpful for learning dsp.
- chaosprint 5y agoI agree with the first half. For the second half, I think for beginners, the examples are very important. From this perspective, many Rust projects comes with examples: https://github.com/RustAudio/vst-rs https://github.com/RustAudio/vst-rs Once following the readme, it is very easy to get it work in your own machine. Then beginners can play around the examples, tweaking parameters, etc. while learning new stuffs with books or online resources. Rust audio has also got a very helpful Discord community where beginners can always ask questions. For the GUI part, I am not an expert, but there are more and more Rust GUI libraries (egui, iced, druid, rui): among them, egui-rs and iced-rs can all be used for VST. Still, there are some examples to get started with.