The JUCE team is excited to reveal the first details of the upcoming JUCE 6 release.
This release is the culmination of many months of work and strengthens JUCE's position as the leading framework for creating multi-platform audio software. JUCE 6 provides numerous updates that collectively allow developers to create new applications and plug-ins more efficiently, and includes powerful new workflows for combining existing software components.
New Features in JUCE 6
JUCE 6 improves the way JUCE-based software is built and distributed, making it much easier to interoperate with existing infrastructure and ecosystems of third-party libraries.
The comprehensive CMake support in JUCE 6 allows JUCE users to have much more control over how their software is built. This opens up advanced workflows that were previously out of reach and makes it much simpler to reuse parts of your software in different build products.
Building your software with CMake also allows:
- A wider variety of integrated development environments (IDEs), including Visual Studio Code and CLion
- Incorporation of automatic testing and linting toolkits like clang-tidy.
- Inclusion of the JUCE framework in package managers like vcpkg and Conan, which simplifies distribution
The CMake support now available in JUCE allows advanced developers to avoid the Projucer entirely. However, those who use the Projucer to manage project files across multiple platforms can look forward to a much improved experience. Updates include:
- You are no longer required to sign in to a MyROLI account when using the Projucer
- All analytics collection has been removed
- A new notifications area prevents pop-up windows from getting in your way, but keeps you abreast of any issues or upgrades.
- It’s now simple to run the Projucer headlessly on Linux, making it much easier to integrate with automated build workflows and continuous integration systems.
JUCE 6 incorporates the latest webview components on all platforms, allowing you to mix and match C++ and modern, browser-based rendering in your software.
Run Headless on Linux and Linux VST3
The ability to run headless software on Linux is not just limited to the Projucer. All software based on JUCE 6 can now run, without modification, interchangeably on Linux platforms with and without a graphical user environment.
If you are making software targeting headless environments like embedded platforms or Internet of Things devices you can deploy exactly the same product on a much wider range of targets.
JUCE 6 also comes with built-in support for both creating and hosting VST3 plug-ins on Linux.
DSP Building Blocks
In addition to infrastructure and platform improvements JUCE 6 comes with an extensive new range of DSP building blocks to supplement the existing DSP module. These blocks include:
- Delay Line
- Ballistic Filter
- Dry/Wet Mixer
- Noise Gate
Using these components developers can perform common audio processing tasks quickly and build rich, complex effects by combining multiple blocks. The new improved DSP module allows developers to try out new ideas rapidly and decreases time to market.
Many more improvements
- The ability to use Intel’s Integrated Performance Primitives FFT
- Support for Metal shaders in JUCE modules
- More modern C++ iterators over JUCE containers
- A new ParameterAttachment class to simplify binding GUI elements to plug-in parameters
- Better handling of VST3 MIDI CC messages
- Improved MacOS Camera support
- Google’s Oboe library for Android distributed with JUCE
Release Date & Pricing
A more generous Personal tier no longer requires developers to include analytics collection in their software, and the Indie tier features a much higher revenue limit where revenues can more than double before license holders are required to upgrade. The minimum subscription periods for both the Indie and the Pro tiers has also been reduced to a single month.
The updated pricing tiers in JUCE 6 will benefit the majority of the JUCE community. These changes make creating audio software much easier for developers getting started with JUCE. Furthermore, a significant number of developers previously in the JUCE 5 Pro tier will find themselves eligible for a cheaper JUCE 6 Indie license.
The substantial increase of the price in the Pro tier has allowed us to improve our offering in the lower tiers whilst aiming the big ticket items of this release at those in the Pro section. We believe that the JUCE framework is a valuable resource and that wealthier companies can offset the cost for the larger number of smaller scale JUCE developers.
License Upgrades and Recent Purchases
If you have previously purchased any version of JUCE you will be eligible for a 30% discount on an upgrade to a JUCE 6 Perpetual license at any time.
If you have purchased a JUCE 5 Perpetual license in the 3 months before the launch of JUCE 6, and upgrade to a JUCE 6 Perpetual license within 1 month of the launch of JUCE 6, then we will offer you a discount such that the total purchase price is equivalent to a direct purchase of JUCE 6. This is a 50% discount for Pros and a 87.5% discount for Indies.
Active JUCE 5 subscriptions will not be automatically upgraded to JUCE 6 subscriptions.
JUCE 6 Early Access and Release Date
JUCE 6 features will become available for preview over the next few weeks. To access the new functionality before the official launch date you can check out the 'juce6' branch of the JUCE repository. This provides the opportunity to try out features and provide any feedback on how they can best work for you.
You can find JUCE 6 discussion on the JUCE forum.
Following a successful technical preview JUCE 6 will launch in June 2020.