Introduction
July 20, 2026 ยท View on GitHub
What is Heavy?
Heavy is a framework for easily generating audio plugins for use in interactive sound and music applications such games, instruments or installations.
It aims to reduce the dependency on low-level programming from a creative standpoint and bridge the gap from idea to production-ready implementation.
Heavy makes use of modern software principles to generate highly optimised C/C++ code specifically targeting a wide variety of popular hardware architectures and software frameworks. It can also automatically build plugin binaries for these platforms.
Supported Patch Formats
Currently Heavy supports compiling Pure Data (.pd) patch files.
However it's important to note that Pd is merely used as a front-end authoring editor, Heavy does not make use of any Pure Data code, and it is entirely unrelated to the embeddable Pd engine, libpd.
What is Pure Data?
Pure Data (Pd) is an open source visual programming environment for real-time time audio and music creation.
Heavy can interpret and convert a subset of features from Pure Data patches:
Supported Platforms
- Windows 10, 11 and WSA
- Mac OSX
- Linux
- PS4
- Xbox One
- iOS
- Android
- Bela
- Hoxton OWL
- Daisy
- Raspberry Pi
- Web (Javascript)
Supported Frameworks
Optimisations
Heavy-generated code comes pre-optimised for architectures that can take advantage of AVX, SSE or NEON instructions. For more bespoke platforms, Heavy also provides a basic implementation supporting single sample block sizes.
Licensing
In general hvcc is free to use, though please be aware of the following licences applied to particular parts of the system.
All the hvcc python compiler code is GPLv3.
The files that hvcc generates are split into two types:
-
Static: this code is independent of the input patch contents and provides the basic DSP functionality with which generated output can link against. It has a liberal ISC licence.
-
Generated: this relates to all the source files that use information about the input patch, for example
Heavy_{{name}}.cpp. By default all these files will have aCopyright (c) 2018 Enzien Audio, Ltdheader, but this can be modified with the user copyright argument.
Generators
Some generators use other libraries and SDKs with different licensing:
- Daisy - requires libDaisy and our internal json2daisy library, both using
MITlicense. - DPF - requires the DPF library and optionally the DPF-Widgets or PDVG GUI libraries. These are all
ISClicensed. - FMOD - no SDK required for building, but requires a license for distribution.
- Javascript - requires emscripten which is dual licensed
MITandUniversity of Illinois/NCSA Open Source License. - OWL - requires OwlProgram which uses
GPLv2. - PD External - requires
pd.dllfor linking on Windows, which comes from Puredata and isBSD3license. - Unity - no SDK required for building, but requires a Unity license to use.
- Wwise - requires the Wwise SDK and a proprietary license.
How to start patching for heavy
See the Getting started page on more information about how to construct compatible pure data patches.