JUCE Framework

repository·master·Indexed 27 days ago

https://github.com/juce-framework/juce

An open-source cross-platform C++ framework for creating desktop and mobile applications, specifically targeting audio plug-ins (VST, VST3, AU, AUv3, AAX, LV2) and plug-in hosts.

Tokens
37.5K
Snippets
37
Records
298
Agent score
91%

What's inside JUCE

  1. Overview of VST 3 SDK public_sdk contents

    master

    The public_sdk directory contains essential components for working with various plugin formats and interfaces, including:

    • Helper classes: Implementations of VST 3 Interfaces.
    • Samples: Examples of VST 3 Hosting and VST 3 plug-ins.
    • Wrappers: Support for AAX, AU, and AUv3 formats.
    • InterAppAudio: Support for the InterAppAudio standard.
  2. Overview of libvorbis components

    master

    The Vorbis package provides several libraries for handling the Ogg Vorbis audio format:

    • libvorbis: The core BSD-style implementation of the Vorbis specification.
    • libvorbisfile: A convenience library built on top of Vorbis to simplify common file-based use cases.
    • libvorbisenc: A library providing a simple, programmatic interface for encoding setup.

    All components are subject to a BSD-style license.

  3. Key updates in JUCE 8.x series

    master

    Notable improvements across the 8.x release cycle include:

    • Audio & MIDI: Support for MIDI 2.0 Universal MIDI Packet demo, updated VST3 SDK (3.8.0), updated AAX SDK (2.9.0), and inclusion of ASIO SDK source files (GPLv3). Added juce_audio_processors_headless module.
    • Graphics & UI: New Direct2D renderer (introduced in 8.0.0), support for WebView-based UIs, and improved text shaping/unicode handling.
    • Platform Support: Added Windows Arm support, improved macOS/iOS 26 support, and updated Android toolchain/Oboe versions.
    • Development: Added support for C++20 and C++23, and added a Visual Studio 2026 exporter/default in Projucer.
  4. License and usage guidelines for VST 3 SDK

    master

    The VST 3 SDK is licensed under the MIT license. This allows developers to use, modify, and redistribute the code freely, including in commercial products, provided the MIT license terms are followed.

    Key Licensing Notes:

    • Licensing under GPLv3 or the Steinberg proprietary license is no longer available.
    • Developers can adopt the MIT license for full open-source integration.

    For complete legal details, refer to www.steinberg.net/sdklicenses_vst3.

  5. Use the juce_box2d module

    master

    The juce_box2d module provides a JUCE-wrapped version of the Box2D physics library. To use Box2D features in your JUCE project, include the juce_box2d module. The source code has been modified from the original Box2D distribution to use relative include paths and to ensure header files are properly guarded, making it compatible with the JUCE module system.

    For detailed information regarding the physics engine API, algorithms, and core concepts, refer to the official Box2D documentation at http://box2d.org.

  6. Key updates in JUCE 6.x series

    master

    Notable improvements across the 6.x release cycle include:

    • Accessibility: Introduced comprehensive accessibility support.
    • Plugin Formats: Enabled use of VST3 plug-in extensions.
    • Graphics: Improved OpenGL function loading and added support for creating OpenGL 3.2 contexts on Windows.
    • Language: Updated to C++14 support.
    • Platform Support: Added support for macOS Monterey and iOS 15.
  7. Key updates in JUCE 7.x series

    master

    Notable improvements across the 7.x release cycle include:

    • Plugin Formats: Added Audio Random Access (ARA) SDK support and support for authoring/hosting LV2 plug-ins.
    • Graphics: Added a default renderer for macOS and iOS, and improved Metal layer rendering.
    • Core Features: Added MIDI-CI support, new threading classes, and a unique machine ID.
    • Platform Support: Added support for Xcode 15, macOS Sonoma, and LLVM 17.
  8. New features in JUCE 9.0.0

    master

    JUCE 9.0.0 introduces several major updates including:

    • A new SVG parser.
    • Support for variable fonts.
    • A new macOS CoreAudio implementation.
    • Improved software renderer performance.
    • OpenGL ES support for Linux.
    • Improved multi-touch support on Linux and Windows.
    • Improved CMake build system for headless environments.