Docs

Project Settings

Project

Name

The name of the project. This will be also the name of the plugin binaries

Version

The version number of the project. Try using semantic versioning (1.0.0 ) for this.
The version number will be used to handle the user preset backward compatibility.

Be aware that some hosts (eg. Logic) are very picky when they detect different plugin binaries with the same version.

Bundle Identifier

This is a unique identifier used by Apple OS to identify the app. It must be formatted as reverse domain like this:

com.your-company.product

Plugin Code

The code used to identify the plugins. This has to be four characters with the first one being uppercase like this:

Abcd

Embed Audio Files

If this is enabled , it will embed all audio files (impulse responses & loops) as well as images into the plugin.This will not affect samples - they will always be streamed.
If it's disabled , it will use the resource files found in the app data directory and you need to make sure that your installercopies them to the right location:

Windows: %APPDATA%\Company\Product\

macOS: ~/Library/Application Support/Company/Product/

Normally you would try to embed them into the binary, however if you have a lot of audio files (> 50MB)the compiler will crash with an out of heap space error, so in this case you're better off not embedding them.

Embed Image Files

If this is enabled , it will embed all audio files (impulse responses & loops) into the plugin.If it's disabled , it will use the resource files found in the app data directory and you need to make sure that your installercopies them to the right location:

Windows: %APPDATA%\Company\Product\

macOS: ~/Library/Application Support/Company/Product/

Normally you would try to embed them into the binary, however if you have a lot of images (> 50MB)the compiler will crash with an out of heap space error, so in this case you're better off not embedding them.

Support Full Dynamics HLAC

If enabled, the user can extract the sample monolith files to support the full dynamic range of 24 bit.The HLAC codec is 16bit only, but with this feature enabled, it normalises the audio data in chunks of 1024 samples in order to recreate higher bit depths. This results in a lower compression ratio, but removes the quantisation noise that can occur under certain circumstances:For normal sample libraries without heavy dynamics processing this feature is not required, but for projects that heavily process the dynamic range (eg. drum libraries that squash the samples with a compressor) the quantisation noise floor of -96dB might get attenuated into the audible range. So: If you start to hear quantisation noise, enable this, otherwise enjoy the low disk usage and performance of 16bit samples.

The end user can still choose whether he wants to use the samples in the full dynamics range. However in order to make this work, create the sample archive with the Support Full Dynamics option set to true.

Additional Dsp Libraries

If you have written custom DSP objects that you want to embed statically, you have to supply the class names of each DspModule class here

OSXStatic Libs

If you need to link a static library on macOS, supply the path to the .a library file here.

Windows Static Lib Folder

If you need to link a static library on Windows, supply the absolute path to the folder here. Unfortunately, relative paths do not work well with the VS Linker

Extra Definitions Windows

This field can be used to add preprocessor definitions for Windows builds. Use it to tailor the compile options for HISE for the project.

Examples

ENABLE_ALL_PEAK_METERS=0
NUM_POLYPHONIC_VOICES=100

Extra Definitions OSX

This field can be used to add preprocessor definitions for macOS builds. Use it to tailor the compile options for HISE for the project.

Examples

ENABLE_ALL_PEAK_METERS=0
NUM_POLYPHONIC_VOICES=100

Extra Definitions IOS

This field can be used to add preprocessor definitions for iOS builds. Use it to tailor the compile options for HISE for the project.

Examples

ENABLE_ALL_PEAK_METERS=0
NUM_POLYPHONIC_VOICES=100

Extra Definitions Linux

This field can be used to add preprocessor definitions
for Linux builds. Use it to tailor the compile options for HISE for the project.

Examples

ENABLE_ALL_PEAK_METERS=0
NUM_POLYPHONIC_VOICES=100

App Group ID

If you're compiling an iOS app, you need to add an App Group to your Apple ID for this project and supply the name here.App Group IDs must have reverse-domain format and start with group, like:

group.company.product

Redirect Sample Folder

You can use another location for your sample files. This is useful if you have limited space on your hard drive and need to separate the samples.

HISE will create a file called LinkWindows / LinkOSX in the samples folder that contains the link to the real folder.

AAXCategory FX

If you export an effect plugin, you can specify the category it will show up in ProTools here

ID Description
AAX_ePlugInCategory_EQ Equalization
AAX_ePlugInCategory_Dynamics Compressor, expander, limiter, etc.
AAX_ePlugInCategory_PitchShift Pitch processing
AAX_ePlugInCategory_Reverb Reverberation and room/space simulation
AAX_ePlugInCategory_Delay Delay and echo
AAX_ePlugInCategory_Modulation Phasing, flanging, chorus, etc.
AAX_ePlugInCategory_Harmonic Distortion, saturation, and harmonic enhancement
AAX_ePlugInCategory_NoiseReduction Noise reduction
AAX_ePlugInCategory_Dither Dither, noise shaping, etc.
AAX_ePlugInCategory_SoundField Pan, auto-pan, upmix and downmix, and surround handling
AAX_EPlugInCategory_Effect Special effects

This setting will have no effect for virtual instruments.

Support Mono FX

If enabled, the effect plugin will also be compatible to mono channel tracks.

This setting will have no effect for virtual instruments.

Enable Midi Input FX

If enabled, the effect plugin will process incoming MIDI messages (if the host supports FX plugins with MIDI input

Enable Sound Generators FX

If enabled, the effect plugin will also process child sound generators (eg. Global modulation containers and Macro modulation sources

Be aware that the sound output of the child sound generators will not be used, so this is only useful with "quiet" sound generators

VST3 Support

If enabled, the exported plugins will use the VST3 SDK standard instead of the VST 2.x SDK. Until further notice, this is a experimental feature so proceed with caution.

Be aware that Steinberg stopped support for the VST 2.4 SDK in October 2018 so if you don't have a valid VST2 license agreement in place, you must use the VST3 SDK.

Use Raw Frontend

If enabled, the project will not use the preset structure and scripted user interface and lets you use HISE as C++ framework.You will have to implement a custom C++ class in the AdditionalSourceCode subfolder.

Expansion Type

Sets the expansion type you want to use for this project. You can choose between:

If you use a custom expansion, you will need to implement ExpansionHandler::createCustomExpansion() in your project's C++ code

Encryption Key

Sets the BlowFish encryption key (up to 72 characters) that will be used to encrypt the intermediate expansions.

If you're using the Full expansion type you will need to set the key here, otherwise, you can call ExpansionHandler.setEncryptionKey() for the same effect.

Make sure you restart HISE after changing this setting in order to apply the change.

Redirects the expansion folder in the app data directory of the compiled plugin back to your project folder's expansion folder.
A compiled plugin will look in its app data folder for the expansions, so during development, you might want it to link back to the subfolder of the project directory so that you can see the expansions that you have created.
If you do not enable this, the expansion list in a compiled project will be empty unless you manually copy the Expansion folder from the project folder to the app data folder.

Be aware that this will only work on the development machine and has nothing to do with proper distribution of the expansions to the end user

Be aware that this is a system-specific setting so if you load a project from another machine, make sure to tick / untick this box in order to create the expansion folder on this machine

Read Only Factory Presets

If enabled, the user presets that are part of the compiled plugin (and expansions) can not be overriden by the end user.

It will grey out the save button for all factory presets

User

Company

Your company name. This will be used for the path to the app data directory so make sure you don't use weird characters here

Company Code

The unique code to identify your company. This must be 4 characters with the first one being uppercase like this:

Abcd

Team Development ID

If you have a Apple Developer Account, enter the Developer ID here in order to code sign your app / plugin after compilation