| @@ -4,6 +4,36 @@ JUCE breaking changes | |||
| Develop | |||
| ======= | |||
| Change | |||
| ------ | |||
| The VST2 SDK embedded within JUCE has been removed. | |||
| Possible Issues | |||
| --------------- | |||
| 1. Building or hosting VST2 plug-ins requires header files from the VST2 SDK, | |||
| which is no longer part of JUCE. | |||
| 2. Building a VST2-compatible VST3 plug-in (the previous default behaviour in | |||
| JUCE) requires header files from the VST2 SDK, which is no longer part of | |||
| JUCE. When a new JUCE plug-in project is created the option | |||
| JUCE_VST3_CAN_REPLACE_VST2 will be set to zero. | |||
| Workaround | |||
| ---------- | |||
| 1. The VST2 SDK can be obtained from the vstsdk3610_11_06_2018_build_37 (or | |||
| older) VST3 SDK or JUCE version 5.3.2. You should put the VST2 SDK in your | |||
| header search paths. | |||
| 2. For new plug-in projects where you will be releasing both a VST2 and VST3 | |||
| version, and you want the VST3 plug-in to replace the VST2 plug-in in | |||
| hosts that support it, then you should enable the JUCE_VST3_CAN_REPLACE_VST2 | |||
| option. | |||
| Rationale | |||
| --------- | |||
| Distributing VST2 plug-ins requires a VST2 license from Steinberg. Following | |||
| Steinberg's removal of the VST2 SDK from their public SDKs we are also removing | |||
| the VST2 SDK from the JUCE codebase. | |||
| Change | |||
| ------ | |||
| The AudioProcessorValueTreeState::createAndAddParameter function has been | |||
| @@ -383,9 +383,6 @@ add_library( ${BINARY_NAME} | |||
| "../../../../../modules/juce_audio_processors/format_types/VST3_SDK/pluginterfaces/vst/vstpshpack4.h" | |||
| "../../../../../modules/juce_audio_processors/format_types/VST3_SDK/pluginterfaces/vst/vstspeaker.h" | |||
| "../../../../../modules/juce_audio_processors/format_types/VST3_SDK/pluginterfaces/vst/vsttypes.h" | |||
| "../../../../../modules/juce_audio_processors/format_types/VST3_SDK/pluginterfaces/vst2.x/aeffect.h" | |||
| "../../../../../modules/juce_audio_processors/format_types/VST3_SDK/pluginterfaces/vst2.x/aeffectx.h" | |||
| "../../../../../modules/juce_audio_processors/format_types/VST3_SDK/pluginterfaces/vst2.x/vstfxstore.h" | |||
| "../../../../../modules/juce_audio_processors/format_types/VST3_SDK/pluginterfaces/LICENSE.txt" | |||
| "../../../../../modules/juce_audio_processors/format_types/VST3_SDK/public.sdk/source/common/memorystream.cpp" | |||
| "../../../../../modules/juce_audio_processors/format_types/VST3_SDK/public.sdk/source/common/memorystream.h" | |||
| @@ -1954,9 +1951,6 @@ set_source_files_properties("../../../../../modules/juce_audio_processors/format | |||
| set_source_files_properties("../../../../../modules/juce_audio_processors/format_types/VST3_SDK/pluginterfaces/vst/vstpshpack4.h" PROPERTIES HEADER_FILE_ONLY TRUE) | |||
| set_source_files_properties("../../../../../modules/juce_audio_processors/format_types/VST3_SDK/pluginterfaces/vst/vstspeaker.h" PROPERTIES HEADER_FILE_ONLY TRUE) | |||
| set_source_files_properties("../../../../../modules/juce_audio_processors/format_types/VST3_SDK/pluginterfaces/vst/vsttypes.h" PROPERTIES HEADER_FILE_ONLY TRUE) | |||
| set_source_files_properties("../../../../../modules/juce_audio_processors/format_types/VST3_SDK/pluginterfaces/vst2.x/aeffect.h" PROPERTIES HEADER_FILE_ONLY TRUE) | |||
| set_source_files_properties("../../../../../modules/juce_audio_processors/format_types/VST3_SDK/pluginterfaces/vst2.x/aeffectx.h" PROPERTIES HEADER_FILE_ONLY TRUE) | |||
| set_source_files_properties("../../../../../modules/juce_audio_processors/format_types/VST3_SDK/pluginterfaces/vst2.x/vstfxstore.h" PROPERTIES HEADER_FILE_ONLY TRUE) | |||
| set_source_files_properties("../../../../../modules/juce_audio_processors/format_types/VST3_SDK/pluginterfaces/LICENSE.txt" PROPERTIES HEADER_FILE_ONLY TRUE) | |||
| set_source_files_properties("../../../../../modules/juce_audio_processors/format_types/VST3_SDK/public.sdk/source/common/memorystream.cpp" PROPERTIES HEADER_FILE_ONLY TRUE) | |||
| set_source_files_properties("../../../../../modules/juce_audio_processors/format_types/VST3_SDK/public.sdk/source/common/memorystream.h" PROPERTIES HEADER_FILE_ONLY TRUE) | |||
| @@ -2398,9 +2398,6 @@ | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst\vstpshpack4.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst\vstspeaker.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst\vsttypes.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x\aeffect.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x\aeffectx.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x\vstfxstore.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\public.sdk\source\common\memorystream.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\public.sdk\source\common\pluginview.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\public.sdk\source\vst\hosting\hostclasses.h"/> | |||
| @@ -143,9 +143,6 @@ | |||
| <Filter Include="JUCE Modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst"> | |||
| <UniqueIdentifier>{B90A44F3-B62D-B5C0-81A2-683D2650AEE6}</UniqueIdentifier> | |||
| </Filter> | |||
| <Filter Include="JUCE Modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x"> | |||
| <UniqueIdentifier>{0723C856-9C0F-5AF7-81B2-1986BC1E09E3}</UniqueIdentifier> | |||
| </Filter> | |||
| <Filter Include="JUCE Modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces"> | |||
| <UniqueIdentifier>{DAF30656-5915-0E45-C4E4-54439617D525}</UniqueIdentifier> | |||
| </Filter> | |||
| @@ -3378,15 +3375,6 @@ | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst\vsttypes.h"> | |||
| <Filter>JUCE Modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst</Filter> | |||
| </ClInclude> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x\aeffect.h"> | |||
| <Filter>JUCE Modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x</Filter> | |||
| </ClInclude> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x\aeffectx.h"> | |||
| <Filter>JUCE Modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x</Filter> | |||
| </ClInclude> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x\vstfxstore.h"> | |||
| <Filter>JUCE Modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x</Filter> | |||
| </ClInclude> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\public.sdk\source\common\memorystream.h"> | |||
| <Filter>JUCE Modules\juce_audio_processors\format_types\VST3_SDK\public.sdk\source\common</Filter> | |||
| </ClInclude> | |||
| @@ -2398,9 +2398,6 @@ | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst\vstpshpack4.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst\vstspeaker.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst\vsttypes.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x\aeffect.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x\aeffectx.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x\vstfxstore.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\public.sdk\source\common\memorystream.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\public.sdk\source\common\pluginview.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\public.sdk\source\vst\hosting\hostclasses.h"/> | |||
| @@ -143,9 +143,6 @@ | |||
| <Filter Include="JUCE Modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst"> | |||
| <UniqueIdentifier>{B90A44F3-B62D-B5C0-81A2-683D2650AEE6}</UniqueIdentifier> | |||
| </Filter> | |||
| <Filter Include="JUCE Modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x"> | |||
| <UniqueIdentifier>{0723C856-9C0F-5AF7-81B2-1986BC1E09E3}</UniqueIdentifier> | |||
| </Filter> | |||
| <Filter Include="JUCE Modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces"> | |||
| <UniqueIdentifier>{DAF30656-5915-0E45-C4E4-54439617D525}</UniqueIdentifier> | |||
| </Filter> | |||
| @@ -3378,15 +3375,6 @@ | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst\vsttypes.h"> | |||
| <Filter>JUCE Modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst</Filter> | |||
| </ClInclude> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x\aeffect.h"> | |||
| <Filter>JUCE Modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x</Filter> | |||
| </ClInclude> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x\aeffectx.h"> | |||
| <Filter>JUCE Modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x</Filter> | |||
| </ClInclude> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x\vstfxstore.h"> | |||
| <Filter>JUCE Modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x</Filter> | |||
| </ClInclude> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\public.sdk\source\common\memorystream.h"> | |||
| <Filter>JUCE Modules\juce_audio_processors\format_types\VST3_SDK\public.sdk\source\common</Filter> | |||
| </ClInclude> | |||
| @@ -2400,9 +2400,6 @@ | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst\vstpshpack4.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst\vstspeaker.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst\vsttypes.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x\aeffect.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x\aeffectx.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x\vstfxstore.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\public.sdk\source\common\memorystream.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\public.sdk\source\common\pluginview.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\public.sdk\source\vst\hosting\hostclasses.h"/> | |||
| @@ -143,9 +143,6 @@ | |||
| <Filter Include="JUCE Modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst"> | |||
| <UniqueIdentifier>{B90A44F3-B62D-B5C0-81A2-683D2650AEE6}</UniqueIdentifier> | |||
| </Filter> | |||
| <Filter Include="JUCE Modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x"> | |||
| <UniqueIdentifier>{0723C856-9C0F-5AF7-81B2-1986BC1E09E3}</UniqueIdentifier> | |||
| </Filter> | |||
| <Filter Include="JUCE Modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces"> | |||
| <UniqueIdentifier>{DAF30656-5915-0E45-C4E4-54439617D525}</UniqueIdentifier> | |||
| </Filter> | |||
| @@ -3378,15 +3375,6 @@ | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst\vsttypes.h"> | |||
| <Filter>JUCE Modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst</Filter> | |||
| </ClInclude> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x\aeffect.h"> | |||
| <Filter>JUCE Modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x</Filter> | |||
| </ClInclude> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x\aeffectx.h"> | |||
| <Filter>JUCE Modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x</Filter> | |||
| </ClInclude> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x\vstfxstore.h"> | |||
| <Filter>JUCE Modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x</Filter> | |||
| </ClInclude> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\public.sdk\source\common\memorystream.h"> | |||
| <Filter>JUCE Modules\juce_audio_processors\format_types\VST3_SDK\public.sdk\source\common</Filter> | |||
| </ClInclude> | |||
| @@ -364,9 +364,6 @@ add_library( ${BINARY_NAME} | |||
| "../../../../../modules/juce_audio_processors/format_types/VST3_SDK/pluginterfaces/vst/vstpshpack4.h" | |||
| "../../../../../modules/juce_audio_processors/format_types/VST3_SDK/pluginterfaces/vst/vstspeaker.h" | |||
| "../../../../../modules/juce_audio_processors/format_types/VST3_SDK/pluginterfaces/vst/vsttypes.h" | |||
| "../../../../../modules/juce_audio_processors/format_types/VST3_SDK/pluginterfaces/vst2.x/aeffect.h" | |||
| "../../../../../modules/juce_audio_processors/format_types/VST3_SDK/pluginterfaces/vst2.x/aeffectx.h" | |||
| "../../../../../modules/juce_audio_processors/format_types/VST3_SDK/pluginterfaces/vst2.x/vstfxstore.h" | |||
| "../../../../../modules/juce_audio_processors/format_types/VST3_SDK/pluginterfaces/LICENSE.txt" | |||
| "../../../../../modules/juce_audio_processors/format_types/VST3_SDK/public.sdk/source/common/memorystream.cpp" | |||
| "../../../../../modules/juce_audio_processors/format_types/VST3_SDK/public.sdk/source/common/memorystream.h" | |||
| @@ -1637,9 +1634,6 @@ set_source_files_properties("../../../../../modules/juce_audio_processors/format | |||
| set_source_files_properties("../../../../../modules/juce_audio_processors/format_types/VST3_SDK/pluginterfaces/vst/vstpshpack4.h" PROPERTIES HEADER_FILE_ONLY TRUE) | |||
| set_source_files_properties("../../../../../modules/juce_audio_processors/format_types/VST3_SDK/pluginterfaces/vst/vstspeaker.h" PROPERTIES HEADER_FILE_ONLY TRUE) | |||
| set_source_files_properties("../../../../../modules/juce_audio_processors/format_types/VST3_SDK/pluginterfaces/vst/vsttypes.h" PROPERTIES HEADER_FILE_ONLY TRUE) | |||
| set_source_files_properties("../../../../../modules/juce_audio_processors/format_types/VST3_SDK/pluginterfaces/vst2.x/aeffect.h" PROPERTIES HEADER_FILE_ONLY TRUE) | |||
| set_source_files_properties("../../../../../modules/juce_audio_processors/format_types/VST3_SDK/pluginterfaces/vst2.x/aeffectx.h" PROPERTIES HEADER_FILE_ONLY TRUE) | |||
| set_source_files_properties("../../../../../modules/juce_audio_processors/format_types/VST3_SDK/pluginterfaces/vst2.x/vstfxstore.h" PROPERTIES HEADER_FILE_ONLY TRUE) | |||
| set_source_files_properties("../../../../../modules/juce_audio_processors/format_types/VST3_SDK/pluginterfaces/LICENSE.txt" PROPERTIES HEADER_FILE_ONLY TRUE) | |||
| set_source_files_properties("../../../../../modules/juce_audio_processors/format_types/VST3_SDK/public.sdk/source/common/memorystream.cpp" PROPERTIES HEADER_FILE_ONLY TRUE) | |||
| set_source_files_properties("../../../../../modules/juce_audio_processors/format_types/VST3_SDK/public.sdk/source/common/memorystream.h" PROPERTIES HEADER_FILE_ONLY TRUE) | |||
| @@ -2039,9 +2039,6 @@ | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst\vstpshpack4.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst\vstspeaker.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst\vsttypes.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x\aeffect.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x\aeffectx.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x\vstfxstore.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\public.sdk\source\common\memorystream.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\public.sdk\source\common\pluginview.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\public.sdk\source\vst\hosting\hostclasses.h"/> | |||
| @@ -128,9 +128,6 @@ | |||
| <Filter Include="JUCE Modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst"> | |||
| <UniqueIdentifier>{B90A44F3-B62D-B5C0-81A2-683D2650AEE6}</UniqueIdentifier> | |||
| </Filter> | |||
| <Filter Include="JUCE Modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x"> | |||
| <UniqueIdentifier>{0723C856-9C0F-5AF7-81B2-1986BC1E09E3}</UniqueIdentifier> | |||
| </Filter> | |||
| <Filter Include="JUCE Modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces"> | |||
| <UniqueIdentifier>{DAF30656-5915-0E45-C4E4-54439617D525}</UniqueIdentifier> | |||
| </Filter> | |||
| @@ -2820,15 +2817,6 @@ | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst\vsttypes.h"> | |||
| <Filter>JUCE Modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst</Filter> | |||
| </ClInclude> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x\aeffect.h"> | |||
| <Filter>JUCE Modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x</Filter> | |||
| </ClInclude> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x\aeffectx.h"> | |||
| <Filter>JUCE Modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x</Filter> | |||
| </ClInclude> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x\vstfxstore.h"> | |||
| <Filter>JUCE Modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x</Filter> | |||
| </ClInclude> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\public.sdk\source\common\memorystream.h"> | |||
| <Filter>JUCE Modules\juce_audio_processors\format_types\VST3_SDK\public.sdk\source\common</Filter> | |||
| </ClInclude> | |||
| @@ -210,9 +210,8 @@ | |||
| </MAINGROUP> | |||
| <JUCEOPTIONS JUCE_WASAPI="1" JUCE_DIRECTSOUND="1" JUCE_ALSA="1" JUCE_QUICKTIME="disabled" | |||
| JUCE_USE_FLAC="0" JUCE_USE_OGGVORBIS="0" JUCE_USE_CDBURNER="0" | |||
| JUCE_USE_CDREADER="0" JUCE_USE_CAMERA="0" JUCE_PLUGINHOST_VST="1" | |||
| JUCE_PLUGINHOST_AU="1" JUCE_WEB_BROWSER="0" JUCE_PLUGINHOST_VST3="1" | |||
| JUCE_PLUGINHOST_LADSPA="1"/> | |||
| JUCE_USE_CDREADER="0" JUCE_USE_CAMERA="0" JUCE_PLUGINHOST_AU="1" | |||
| JUCE_WEB_BROWSER="0" JUCE_PLUGINHOST_VST3="1" JUCE_PLUGINHOST_LADSPA="1"/> | |||
| <MODULES> | |||
| <MODULE id="juce_audio_basics" showAllCode="1"/> | |||
| <MODULE id="juce_audio_devices" showAllCode="1"/> | |||
| @@ -381,9 +381,6 @@ add_library( ${BINARY_NAME} | |||
| "../../../../../modules/juce_audio_processors/format_types/VST3_SDK/pluginterfaces/vst/vstpshpack4.h" | |||
| "../../../../../modules/juce_audio_processors/format_types/VST3_SDK/pluginterfaces/vst/vstspeaker.h" | |||
| "../../../../../modules/juce_audio_processors/format_types/VST3_SDK/pluginterfaces/vst/vsttypes.h" | |||
| "../../../../../modules/juce_audio_processors/format_types/VST3_SDK/pluginterfaces/vst2.x/aeffect.h" | |||
| "../../../../../modules/juce_audio_processors/format_types/VST3_SDK/pluginterfaces/vst2.x/aeffectx.h" | |||
| "../../../../../modules/juce_audio_processors/format_types/VST3_SDK/pluginterfaces/vst2.x/vstfxstore.h" | |||
| "../../../../../modules/juce_audio_processors/format_types/VST3_SDK/pluginterfaces/LICENSE.txt" | |||
| "../../../../../modules/juce_audio_processors/format_types/VST3_SDK/public.sdk/source/common/memorystream.cpp" | |||
| "../../../../../modules/juce_audio_processors/format_types/VST3_SDK/public.sdk/source/common/memorystream.h" | |||
| @@ -1727,9 +1724,6 @@ set_source_files_properties("../../../../../modules/juce_audio_processors/format | |||
| set_source_files_properties("../../../../../modules/juce_audio_processors/format_types/VST3_SDK/pluginterfaces/vst/vstpshpack4.h" PROPERTIES HEADER_FILE_ONLY TRUE) | |||
| set_source_files_properties("../../../../../modules/juce_audio_processors/format_types/VST3_SDK/pluginterfaces/vst/vstspeaker.h" PROPERTIES HEADER_FILE_ONLY TRUE) | |||
| set_source_files_properties("../../../../../modules/juce_audio_processors/format_types/VST3_SDK/pluginterfaces/vst/vsttypes.h" PROPERTIES HEADER_FILE_ONLY TRUE) | |||
| set_source_files_properties("../../../../../modules/juce_audio_processors/format_types/VST3_SDK/pluginterfaces/vst2.x/aeffect.h" PROPERTIES HEADER_FILE_ONLY TRUE) | |||
| set_source_files_properties("../../../../../modules/juce_audio_processors/format_types/VST3_SDK/pluginterfaces/vst2.x/aeffectx.h" PROPERTIES HEADER_FILE_ONLY TRUE) | |||
| set_source_files_properties("../../../../../modules/juce_audio_processors/format_types/VST3_SDK/pluginterfaces/vst2.x/vstfxstore.h" PROPERTIES HEADER_FILE_ONLY TRUE) | |||
| set_source_files_properties("../../../../../modules/juce_audio_processors/format_types/VST3_SDK/pluginterfaces/LICENSE.txt" PROPERTIES HEADER_FILE_ONLY TRUE) | |||
| set_source_files_properties("../../../../../modules/juce_audio_processors/format_types/VST3_SDK/public.sdk/source/common/memorystream.cpp" PROPERTIES HEADER_FILE_ONLY TRUE) | |||
| set_source_files_properties("../../../../../modules/juce_audio_processors/format_types/VST3_SDK/public.sdk/source/common/memorystream.h" PROPERTIES HEADER_FILE_ONLY TRUE) | |||
| @@ -2115,9 +2115,6 @@ | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst\vstpshpack4.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst\vstspeaker.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst\vsttypes.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x\aeffect.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x\aeffectx.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x\vstfxstore.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\public.sdk\source\common\memorystream.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\public.sdk\source\common\pluginview.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\public.sdk\source\vst\hosting\hostclasses.h"/> | |||
| @@ -134,9 +134,6 @@ | |||
| <Filter Include="JUCE Modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst"> | |||
| <UniqueIdentifier>{B90A44F3-B62D-B5C0-81A2-683D2650AEE6}</UniqueIdentifier> | |||
| </Filter> | |||
| <Filter Include="JUCE Modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x"> | |||
| <UniqueIdentifier>{0723C856-9C0F-5AF7-81B2-1986BC1E09E3}</UniqueIdentifier> | |||
| </Filter> | |||
| <Filter Include="JUCE Modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces"> | |||
| <UniqueIdentifier>{DAF30656-5915-0E45-C4E4-54439617D525}</UniqueIdentifier> | |||
| </Filter> | |||
| @@ -2973,15 +2970,6 @@ | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst\vsttypes.h"> | |||
| <Filter>JUCE Modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst</Filter> | |||
| </ClInclude> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x\aeffect.h"> | |||
| <Filter>JUCE Modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x</Filter> | |||
| </ClInclude> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x\aeffectx.h"> | |||
| <Filter>JUCE Modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x</Filter> | |||
| </ClInclude> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x\vstfxstore.h"> | |||
| <Filter>JUCE Modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x</Filter> | |||
| </ClInclude> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\public.sdk\source\common\memorystream.h"> | |||
| <Filter>JUCE Modules\juce_audio_processors\format_types\VST3_SDK\public.sdk\source\common</Filter> | |||
| </ClInclude> | |||
| @@ -2113,9 +2113,6 @@ | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst\vstpshpack4.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst\vstspeaker.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst\vsttypes.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x\aeffect.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x\aeffectx.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x\vstfxstore.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\public.sdk\source\common\memorystream.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\public.sdk\source\common\pluginview.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\public.sdk\source\vst\hosting\hostclasses.h"/> | |||
| @@ -134,9 +134,6 @@ | |||
| <Filter Include="JUCE Modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst"> | |||
| <UniqueIdentifier>{B90A44F3-B62D-B5C0-81A2-683D2650AEE6}</UniqueIdentifier> | |||
| </Filter> | |||
| <Filter Include="JUCE Modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x"> | |||
| <UniqueIdentifier>{0723C856-9C0F-5AF7-81B2-1986BC1E09E3}</UniqueIdentifier> | |||
| </Filter> | |||
| <Filter Include="JUCE Modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces"> | |||
| <UniqueIdentifier>{DAF30656-5915-0E45-C4E4-54439617D525}</UniqueIdentifier> | |||
| </Filter> | |||
| @@ -2973,15 +2970,6 @@ | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst\vsttypes.h"> | |||
| <Filter>JUCE Modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst</Filter> | |||
| </ClInclude> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x\aeffect.h"> | |||
| <Filter>JUCE Modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x</Filter> | |||
| </ClInclude> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x\aeffectx.h"> | |||
| <Filter>JUCE Modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x</Filter> | |||
| </ClInclude> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x\vstfxstore.h"> | |||
| <Filter>JUCE Modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x</Filter> | |||
| </ClInclude> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\public.sdk\source\common\memorystream.h"> | |||
| <Filter>JUCE Modules\juce_audio_processors\format_types\VST3_SDK\public.sdk\source\common</Filter> | |||
| </ClInclude> | |||
| @@ -2115,9 +2115,6 @@ | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst\vstpshpack4.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst\vstspeaker.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst\vsttypes.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x\aeffect.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x\aeffectx.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x\vstfxstore.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\public.sdk\source\common\memorystream.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\public.sdk\source\common\pluginview.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\public.sdk\source\vst\hosting\hostclasses.h"/> | |||
| @@ -134,9 +134,6 @@ | |||
| <Filter Include="JUCE Modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst"> | |||
| <UniqueIdentifier>{B90A44F3-B62D-B5C0-81A2-683D2650AEE6}</UniqueIdentifier> | |||
| </Filter> | |||
| <Filter Include="JUCE Modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x"> | |||
| <UniqueIdentifier>{0723C856-9C0F-5AF7-81B2-1986BC1E09E3}</UniqueIdentifier> | |||
| </Filter> | |||
| <Filter Include="JUCE Modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces"> | |||
| <UniqueIdentifier>{DAF30656-5915-0E45-C4E4-54439617D525}</UniqueIdentifier> | |||
| </Filter> | |||
| @@ -2973,15 +2970,6 @@ | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst\vsttypes.h"> | |||
| <Filter>JUCE Modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst</Filter> | |||
| </ClInclude> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x\aeffect.h"> | |||
| <Filter>JUCE Modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x</Filter> | |||
| </ClInclude> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x\aeffectx.h"> | |||
| <Filter>JUCE Modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x</Filter> | |||
| </ClInclude> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x\vstfxstore.h"> | |||
| <Filter>JUCE Modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x</Filter> | |||
| </ClInclude> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\public.sdk\source\common\memorystream.h"> | |||
| <Filter>JUCE Modules\juce_audio_processors\format_types\VST3_SDK\public.sdk\source\common</Filter> | |||
| </ClInclude> | |||
| @@ -141,7 +141,7 @@ | |||
| // juce_audio_processors flags: | |||
| #ifndef JUCE_PLUGINHOST_VST | |||
| #define JUCE_PLUGINHOST_VST 1 | |||
| //#define JUCE_PLUGINHOST_VST 0 | |||
| #endif | |||
| #ifndef JUCE_PLUGINHOST_VST3 | |||
| @@ -368,9 +368,6 @@ add_library( ${BINARY_NAME} | |||
| "../../../../../modules/juce_audio_processors/format_types/VST3_SDK/pluginterfaces/vst/vstpshpack4.h" | |||
| "../../../../../modules/juce_audio_processors/format_types/VST3_SDK/pluginterfaces/vst/vstspeaker.h" | |||
| "../../../../../modules/juce_audio_processors/format_types/VST3_SDK/pluginterfaces/vst/vsttypes.h" | |||
| "../../../../../modules/juce_audio_processors/format_types/VST3_SDK/pluginterfaces/vst2.x/aeffect.h" | |||
| "../../../../../modules/juce_audio_processors/format_types/VST3_SDK/pluginterfaces/vst2.x/aeffectx.h" | |||
| "../../../../../modules/juce_audio_processors/format_types/VST3_SDK/pluginterfaces/vst2.x/vstfxstore.h" | |||
| "../../../../../modules/juce_audio_processors/format_types/VST3_SDK/pluginterfaces/LICENSE.txt" | |||
| "../../../../../modules/juce_audio_processors/format_types/VST3_SDK/public.sdk/source/common/memorystream.cpp" | |||
| "../../../../../modules/juce_audio_processors/format_types/VST3_SDK/public.sdk/source/common/memorystream.h" | |||
| @@ -1716,9 +1713,6 @@ set_source_files_properties("../../../../../modules/juce_audio_processors/format | |||
| set_source_files_properties("../../../../../modules/juce_audio_processors/format_types/VST3_SDK/pluginterfaces/vst/vstpshpack4.h" PROPERTIES HEADER_FILE_ONLY TRUE) | |||
| set_source_files_properties("../../../../../modules/juce_audio_processors/format_types/VST3_SDK/pluginterfaces/vst/vstspeaker.h" PROPERTIES HEADER_FILE_ONLY TRUE) | |||
| set_source_files_properties("../../../../../modules/juce_audio_processors/format_types/VST3_SDK/pluginterfaces/vst/vsttypes.h" PROPERTIES HEADER_FILE_ONLY TRUE) | |||
| set_source_files_properties("../../../../../modules/juce_audio_processors/format_types/VST3_SDK/pluginterfaces/vst2.x/aeffect.h" PROPERTIES HEADER_FILE_ONLY TRUE) | |||
| set_source_files_properties("../../../../../modules/juce_audio_processors/format_types/VST3_SDK/pluginterfaces/vst2.x/aeffectx.h" PROPERTIES HEADER_FILE_ONLY TRUE) | |||
| set_source_files_properties("../../../../../modules/juce_audio_processors/format_types/VST3_SDK/pluginterfaces/vst2.x/vstfxstore.h" PROPERTIES HEADER_FILE_ONLY TRUE) | |||
| set_source_files_properties("../../../../../modules/juce_audio_processors/format_types/VST3_SDK/pluginterfaces/LICENSE.txt" PROPERTIES HEADER_FILE_ONLY TRUE) | |||
| set_source_files_properties("../../../../../modules/juce_audio_processors/format_types/VST3_SDK/public.sdk/source/common/memorystream.cpp" PROPERTIES HEADER_FILE_ONLY TRUE) | |||
| set_source_files_properties("../../../../../modules/juce_audio_processors/format_types/VST3_SDK/public.sdk/source/common/memorystream.h" PROPERTIES HEADER_FILE_ONLY TRUE) | |||
| @@ -2124,9 +2124,6 @@ | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst\vstpshpack4.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst\vstspeaker.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst\vsttypes.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x\aeffect.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x\aeffectx.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x\vstfxstore.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\public.sdk\source\common\memorystream.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\public.sdk\source\common\pluginview.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\public.sdk\source\vst\hosting\hostclasses.h"/> | |||
| @@ -128,9 +128,6 @@ | |||
| <Filter Include="JUCE Modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst"> | |||
| <UniqueIdentifier>{B90A44F3-B62D-B5C0-81A2-683D2650AEE6}</UniqueIdentifier> | |||
| </Filter> | |||
| <Filter Include="JUCE Modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x"> | |||
| <UniqueIdentifier>{0723C856-9C0F-5AF7-81B2-1986BC1E09E3}</UniqueIdentifier> | |||
| </Filter> | |||
| <Filter Include="JUCE Modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces"> | |||
| <UniqueIdentifier>{DAF30656-5915-0E45-C4E4-54439617D525}</UniqueIdentifier> | |||
| </Filter> | |||
| @@ -2955,15 +2952,6 @@ | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst\vsttypes.h"> | |||
| <Filter>JUCE Modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst</Filter> | |||
| </ClInclude> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x\aeffect.h"> | |||
| <Filter>JUCE Modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x</Filter> | |||
| </ClInclude> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x\aeffectx.h"> | |||
| <Filter>JUCE Modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x</Filter> | |||
| </ClInclude> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x\vstfxstore.h"> | |||
| <Filter>JUCE Modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x</Filter> | |||
| </ClInclude> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\public.sdk\source\common\memorystream.h"> | |||
| <Filter>JUCE Modules\juce_audio_processors\format_types\VST3_SDK\public.sdk\source\common</Filter> | |||
| </ClInclude> | |||
| @@ -2124,9 +2124,6 @@ | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst\vstpshpack4.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst\vstspeaker.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst\vsttypes.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x\aeffect.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x\aeffectx.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x\vstfxstore.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\public.sdk\source\common\memorystream.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\public.sdk\source\common\pluginview.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\public.sdk\source\vst\hosting\hostclasses.h"/> | |||
| @@ -128,9 +128,6 @@ | |||
| <Filter Include="JUCE Modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst"> | |||
| <UniqueIdentifier>{B90A44F3-B62D-B5C0-81A2-683D2650AEE6}</UniqueIdentifier> | |||
| </Filter> | |||
| <Filter Include="JUCE Modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x"> | |||
| <UniqueIdentifier>{0723C856-9C0F-5AF7-81B2-1986BC1E09E3}</UniqueIdentifier> | |||
| </Filter> | |||
| <Filter Include="JUCE Modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces"> | |||
| <UniqueIdentifier>{DAF30656-5915-0E45-C4E4-54439617D525}</UniqueIdentifier> | |||
| </Filter> | |||
| @@ -2955,15 +2952,6 @@ | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst\vsttypes.h"> | |||
| <Filter>JUCE Modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst</Filter> | |||
| </ClInclude> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x\aeffect.h"> | |||
| <Filter>JUCE Modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x</Filter> | |||
| </ClInclude> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x\aeffectx.h"> | |||
| <Filter>JUCE Modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x</Filter> | |||
| </ClInclude> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x\vstfxstore.h"> | |||
| <Filter>JUCE Modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x</Filter> | |||
| </ClInclude> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\public.sdk\source\common\memorystream.h"> | |||
| <Filter>JUCE Modules\juce_audio_processors\format_types\VST3_SDK\public.sdk\source\common</Filter> | |||
| </ClInclude> | |||
| @@ -1046,7 +1046,9 @@ void Project::createAudioPluginPropertyEditors (PropertyListBuilder& props) | |||
| { Ids::buildVST3.toString(), Ids::buildAU.toString(), Ids::buildAUv3.toString(), | |||
| Ids::buildRTAS.toString(), Ids::buildAAX.toString(), Ids::buildStandalone.toString(), Ids::buildUnity.toString(), | |||
| Ids::enableIAA.toString(), Ids::buildVST.toString() }), | |||
| "Plugin formats to build."); | |||
| "Plugin formats to build. If you have selected \"VST (legacy)\" then you will need to ensure that you have a VST2 SDK " | |||
| "in your header search paths. The VST2 SDK can be obtained from the vstsdk3610_11_06_2018_build_37 (or older) VST3 SDK " | |||
| "or JUCE version 5.3.2. You also need a VST2 license from Steinberg to distribute VST2 plug-ins."); | |||
| props.add (new MultiChoicePropertyComponent (pluginCharacteristicsValue, "Plugin Characteristics", | |||
| { "Plugin is a Synth", "Plugin MIDI Input", "Plugin MIDI Output", "MIDI Effect Plugin", "Plugin Editor Requires Keyboard Focus", | |||
| "Disable RTAS Bypass", "Disable AAX Bypass", "Disable RTAS Multi-Mono", "Disable AAX Multi-Mono" }, | |||
| @@ -1081,6 +1083,7 @@ void Project::createAudioPluginPropertyEditors (PropertyListBuilder& props) | |||
| { | |||
| Array<var> vst3CategoryVars; | |||
| for (auto s : getAllVST3CategoryStrings()) | |||
| vst3CategoryVars.add (s); | |||
| @@ -416,6 +416,10 @@ void PIPGenerator::setModuleFlags (ValueTree& jucerTree) | |||
| options.setProperty (name, (value == "1" ? 1 : 0), nullptr); | |||
| } | |||
| if (metadata[Ids::type].toString() == "AudioProcessor" | |||
| && options.getPropertyPointer ("JUCE_VST3_CAN_REPLACE_VST2") == nullptr) | |||
| options.setProperty ("JUCE_VST3_CAN_REPLACE_VST2", 0, nullptr); | |||
| jucerTree.addChild (options, -1, nullptr); | |||
| } | |||
| @@ -104,6 +104,8 @@ struct AudioPluginAppWizard : public NewProjectWizard | |||
| sourceGroup.addFileAtIndex (editorCppFile, -1, true); | |||
| sourceGroup.addFileAtIndex (editorHFile, -1, false); | |||
| project.getConfigFlag ("JUCE_VST3_CAN_REPLACE_VST2") = 0; | |||
| return true; | |||
| } | |||
| @@ -2250,9 +2250,6 @@ | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst\vstpshpack4.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst\vstspeaker.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst\vsttypes.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x\aeffect.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x\aeffectx.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x\vstfxstore.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\public.sdk\source\common\memorystream.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\public.sdk\source\common\pluginview.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\public.sdk\source\vst\hosting\hostclasses.h"/> | |||
| @@ -137,9 +137,6 @@ | |||
| <Filter Include="JUCE Modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst"> | |||
| <UniqueIdentifier>{B90A44F3-B62D-B5C0-81A2-683D2650AEE6}</UniqueIdentifier> | |||
| </Filter> | |||
| <Filter Include="JUCE Modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x"> | |||
| <UniqueIdentifier>{0723C856-9C0F-5AF7-81B2-1986BC1E09E3}</UniqueIdentifier> | |||
| </Filter> | |||
| <Filter Include="JUCE Modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces"> | |||
| <UniqueIdentifier>{DAF30656-5915-0E45-C4E4-54439617D525}</UniqueIdentifier> | |||
| </Filter> | |||
| @@ -3168,15 +3165,6 @@ | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst\vsttypes.h"> | |||
| <Filter>JUCE Modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst</Filter> | |||
| </ClInclude> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x\aeffect.h"> | |||
| <Filter>JUCE Modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x</Filter> | |||
| </ClInclude> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x\aeffectx.h"> | |||
| <Filter>JUCE Modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x</Filter> | |||
| </ClInclude> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x\vstfxstore.h"> | |||
| <Filter>JUCE Modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x</Filter> | |||
| </ClInclude> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\public.sdk\source\common\memorystream.h"> | |||
| <Filter>JUCE Modules\juce_audio_processors\format_types\VST3_SDK\public.sdk\source\common</Filter> | |||
| </ClInclude> | |||
| @@ -2100,9 +2100,6 @@ | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst\vstpshpack4.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst\vstspeaker.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst\vsttypes.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x\aeffect.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x\aeffectx.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x\vstfxstore.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\public.sdk\source\common\memorystream.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\public.sdk\source\common\pluginview.h"/> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\public.sdk\source\vst\hosting\hostclasses.h"/> | |||
| @@ -122,9 +122,6 @@ | |||
| <Filter Include="JUCE Modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst"> | |||
| <UniqueIdentifier>{B90A44F3-B62D-B5C0-81A2-683D2650AEE6}</UniqueIdentifier> | |||
| </Filter> | |||
| <Filter Include="JUCE Modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x"> | |||
| <UniqueIdentifier>{0723C856-9C0F-5AF7-81B2-1986BC1E09E3}</UniqueIdentifier> | |||
| </Filter> | |||
| <Filter Include="JUCE Modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces"> | |||
| <UniqueIdentifier>{DAF30656-5915-0E45-C4E4-54439617D525}</UniqueIdentifier> | |||
| </Filter> | |||
| @@ -2922,15 +2919,6 @@ | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst\vsttypes.h"> | |||
| <Filter>JUCE Modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst</Filter> | |||
| </ClInclude> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x\aeffect.h"> | |||
| <Filter>JUCE Modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x</Filter> | |||
| </ClInclude> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x\aeffectx.h"> | |||
| <Filter>JUCE Modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x</Filter> | |||
| </ClInclude> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x\vstfxstore.h"> | |||
| <Filter>JUCE Modules\juce_audio_processors\format_types\VST3_SDK\pluginterfaces\vst2.x</Filter> | |||
| </ClInclude> | |||
| <ClInclude Include="..\..\..\..\modules\juce_audio_processors\format_types\VST3_SDK\public.sdk\source\common\memorystream.h"> | |||
| <Filter>JUCE Modules\juce_audio_processors\format_types\VST3_SDK\public.sdk\source\common</Filter> | |||
| </ClInclude> | |||
| @@ -86,8 +86,13 @@ | |||
| namespace Vst2 | |||
| { | |||
| #include "../../juce_audio_processors/format_types/VST3_SDK/pluginterfaces/vst2.x/aeffect.h" | |||
| #include "../../juce_audio_processors/format_types/VST3_SDK/pluginterfaces/vst2.x/aeffectx.h" | |||
| // If the following files cannot be found then you are probably trying to build | |||
| // a VST2 plug-in or a VST2-compatible VST3 plug-in. To do this you must have a | |||
| // VST2 SDK in your header search path. The VST2 SDK can be obtained from the | |||
| // vstsdk3610_11_06_2018_build_37 (or older) VST3 SDK or JUCE version 5.3.2. | |||
| // You also need a VST2 license from Steinberg to distribute VST2 plug-ins. | |||
| #include "pluginterfaces/vst2.x/aeffect.h" | |||
| #include "pluginterfaces/vst2.x/aeffectx.h" | |||
| } | |||
| using namespace juce; | |||
| @@ -52,7 +52,7 @@ | |||
| #if JUCE_VST3_CAN_REPLACE_VST2 | |||
| namespace Vst2 | |||
| { | |||
| #include "../../juce_audio_processors/format_types/VST3_SDK/pluginterfaces/vst2.x/vstfxstore.h" | |||
| #include "../../pluginterfaces/vst2.x/vstfxstore.h" | |||
| } | |||
| #endif | |||
| @@ -54,6 +54,17 @@ | |||
| #include <juce_audio_basics/juce_audio_basics.h> | |||
| #include <juce_audio_processors/juce_audio_processors.h> | |||
| /** Config: JUCE_VST3_CAN_REPLACE_VST2 | |||
| Enable this if you want your VST3 plug-in to load and save VST2 compatible | |||
| state. This allows hosts to replace VST2 plug-ins with VST3 plug-ins. If | |||
| you change this option then your VST3 plug-in will be incompatible with | |||
| previous versions. | |||
| */ | |||
| #ifndef JUCE_VST3_CAN_REPLACE_VST2 | |||
| #define JUCE_VST3_CAN_REPLACE_VST2 1 | |||
| #endif | |||
| /** Config: JUCE_FORCE_USE_LEGACY_PARAM_IDS | |||
| Enable this if you want to force JUCE to use a continuous parameter | |||
| @@ -1,392 +0,0 @@ | |||
| //------------------------------------------------------------------------ | |||
| // Project : VST SDK | |||
| // Version : 2.4 | |||
| // | |||
| // Category : VST 2.x Interfaces | |||
| // Filename : pluginterfaces/vst2.x/aeffect.h | |||
| // Created by : Steinberg, 01/2004 | |||
| // Description : Definition of AEffect structure (VST 1.0) | |||
| // | |||
| //----------------------------------------------------------------------------- | |||
| // LICENSE | |||
| // (c) 2018, Steinberg Media Technologies GmbH, All Rights Reserved | |||
| //----------------------------------------------------------------------------- | |||
| // This Software Development Kit may not be distributed in parts or its entirety | |||
| // without prior written agreement by Steinberg Media Technologies GmbH. | |||
| // This SDK must not be used to re-engineer or manipulate any technology used | |||
| // in any Steinberg or Third-party application or software module, | |||
| // unless permitted by law. | |||
| // Neither the name of the Steinberg Media Technologies nor the names of its | |||
| // contributors may be used to endorse or promote products derived from this | |||
| // software without specific prior written permission. | |||
| // | |||
| // THIS SDK IS PROVIDED BY STEINBERG MEDIA TECHNOLOGIES GMBH "AS IS" AND | |||
| // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED | |||
| // WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. | |||
| // IN NO EVENT SHALL STEINBERG MEDIA TECHNOLOGIES GMBH BE LIABLE FOR ANY DIRECT, | |||
| // INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, | |||
| // BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | |||
| // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF | |||
| // LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE | |||
| // OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED | |||
| // OF THE POSSIBILITY OF SUCH DAMAGE. | |||
| //---------------------------------------------------------------------------------- | |||
| #ifndef __aeffect__ | |||
| #define __aeffect__ | |||
| //------------------------------------------------------------------------------------------------------- | |||
| // gcc based compiler, or CodeWarrior on Mac OS X | |||
| #if ((defined(__GNUC__) && (defined(__APPLE_CPP__) || defined(__APPLE_CC__))) || (defined (__MWERKS__) && defined (__MACH__))) | |||
| #ifndef TARGET_API_MAC_CARBON | |||
| #define TARGET_API_MAC_CARBON 1 | |||
| #endif | |||
| #if __ppc__ | |||
| #ifndef VST_FORCE_DEPRECATED | |||
| #define VST_FORCE_DEPRECATED 0 | |||
| #endif | |||
| #endif | |||
| #endif | |||
| #ifdef _WIN32 | |||
| #ifndef WIN32 | |||
| #define WIN32 1 | |||
| #endif | |||
| #endif | |||
| #if TARGET_API_MAC_CARBON | |||
| #ifdef __LP64__ | |||
| #pragma options align=power | |||
| #else | |||
| #pragma options align=mac68k | |||
| #endif | |||
| #define VSTCALLBACK | |||
| #elif defined __BORLANDC__ | |||
| #pragma -a8 | |||
| #pragma options push -a8 | |||
| #elif defined(__GNUC__) | |||
| #pragma pack(push,8) | |||
| #define VSTCALLBACK __cdecl | |||
| #elif defined(WIN32) || defined(__FLAT__) || defined CBUILDER | |||
| #pragma pack(push) | |||
| #pragma pack(8) | |||
| #define VSTCALLBACK __cdecl | |||
| #else | |||
| #define VSTCALLBACK | |||
| #endif | |||
| //------------------------------------------------------------------------------------------------------- | |||
| #include <string.h> // for strncpy | |||
| //------------------------------------------------------------------------------------------------------- | |||
| // VST Version | |||
| //------------------------------------------------------------------------------------------------------- | |||
| /** Define SDK Version (you can generate different versions (from 2.0 to 2.4) of this SDK by setting the unwanted extensions to 0). */ | |||
| #define VST_2_1_EXTENSIONS 1 ///< Version 2.1 extensions (08-06-2000) | |||
| #define VST_2_2_EXTENSIONS 1 ///< Version 2.2 extensions (08-06-2001) | |||
| #define VST_2_3_EXTENSIONS 1 ///< Version 2.3 extensions (20-05-2003) | |||
| #ifndef VST_2_4_EXTENSIONS | |||
| #define VST_2_4_EXTENSIONS 1 ///< Version 2.4 extensions (01-01-2006) | |||
| #endif | |||
| /** Current VST Version */ | |||
| #if VST_2_4_EXTENSIONS | |||
| #define kVstVersion 2400 | |||
| #elif VST_2_3_EXTENSIONS | |||
| #define kVstVersion 2300 | |||
| #elif VST_2_2_EXTENSIONS | |||
| #define kVstVersion 2200 | |||
| #elif VST_2_1_EXTENSIONS | |||
| #define kVstVersion 2100 | |||
| #else | |||
| #define kVstVersion 2 | |||
| #endif | |||
| /** Disable for Hosts to serve Plug-ins below VST 2.4 */ | |||
| #ifndef VST_FORCE_DEPRECATED | |||
| #define VST_FORCE_DEPRECATED VST_2_4_EXTENSIONS | |||
| #endif | |||
| /** Declares identifier as deprecated. */ | |||
| #if VST_FORCE_DEPRECATED | |||
| #define DECLARE_VST_DEPRECATED(identifier) __##identifier##Deprecated | |||
| #else | |||
| #define DECLARE_VST_DEPRECATED(identifier) identifier | |||
| #endif | |||
| /** Define for 64 Bit Platform. */ | |||
| #ifndef VST_64BIT_PLATFORM | |||
| #define VST_64BIT_PLATFORM _WIN64 || __LP64__ | |||
| #endif | |||
| //------------------------------------------------------------------------------------------------------- | |||
| // Integral Types | |||
| //------------------------------------------------------------------------------------------------------- | |||
| typedef char VstInt8; ///< 8 bit integer type | |||
| #ifdef WIN32 | |||
| typedef short VstInt16; ///< 16 bit integer type | |||
| typedef int VstInt32; ///< 32 bit integer type | |||
| typedef __int64 VstInt64; ///< 64 bit integer type | |||
| #else | |||
| #include <stdint.h> | |||
| typedef int16_t VstInt16; ///< 16 bit integer type | |||
| typedef int32_t VstInt32; ///< 32 bit integer type | |||
| typedef int64_t VstInt64; ///< 64 bit integer type | |||
| #endif | |||
| //------------------------------------------------------------------------------------------------------- | |||
| // Generic Types | |||
| //------------------------------------------------------------------------------------------------------- | |||
| #if VST_64BIT_PLATFORM | |||
| typedef VstInt64 VstIntPtr; ///< platform-dependent integer type, same size as pointer | |||
| #else | |||
| typedef VstInt32 VstIntPtr; ///< platform-dependent integer type, same size as pointer | |||
| #endif | |||
| //------------------------------------------------------------------------------------------------------- | |||
| // Misc. Definition | |||
| //------------------------------------------------------------------------------------------------------- | |||
| #undef CCONST | |||
| typedef struct AEffect AEffect; | |||
| //------------------------------------------------------------------------------------------------------- | |||
| /// @cond ignore | |||
| typedef VstIntPtr (VSTCALLBACK *audioMasterCallback) (AEffect* effect, VstInt32 opcode, VstInt32 index, VstIntPtr value, void* ptr, float opt); | |||
| typedef VstIntPtr (VSTCALLBACK *AEffectDispatcherProc) (AEffect* effect, VstInt32 opcode, VstInt32 index, VstIntPtr value, void* ptr, float opt); | |||
| typedef void (VSTCALLBACK *AEffectProcessProc) (AEffect* effect, float** inputs, float** outputs, VstInt32 sampleFrames); | |||
| typedef void (VSTCALLBACK *AEffectProcessDoubleProc) (AEffect* effect, double** inputs, double** outputs, VstInt32 sampleFrames); | |||
| typedef void (VSTCALLBACK *AEffectSetParameterProc) (AEffect* effect, VstInt32 index, float parameter); | |||
| typedef float (VSTCALLBACK *AEffectGetParameterProc) (AEffect* effect, VstInt32 index); | |||
| /// @endcond | |||
| /** Four Character Constant (for AEffect->uniqueID) */ | |||
| #define CCONST(a, b, c, d) \ | |||
| ((((VstInt32)a) << 24) | (((VstInt32)b) << 16) | (((VstInt32)c) << 8) | (((VstInt32)d) << 0)) | |||
| /** AEffect magic number */ | |||
| #define kEffectMagic CCONST ('V', 's', 't', 'P') | |||
| //------------------------------------------------------------------------------------------------------- | |||
| /** Basic VST Effect "C" Interface. */ | |||
| //------------------------------------------------------------------------------------------------------- | |||
| struct AEffect | |||
| { | |||
| //------------------------------------------------------------------------------------------------------- | |||
| VstInt32 magic; ///< must be #kEffectMagic ('VstP') | |||
| /** Host to Plug-in dispatcher @see AudioEffect::dispatcher */ | |||
| AEffectDispatcherProc dispatcher; | |||
| /** \deprecated Accumulating process mode is deprecated in VST 2.4! Use AEffect::processReplacing instead! */ | |||
| AEffectProcessProc DECLARE_VST_DEPRECATED (process); | |||
| /** Set new value of automatable parameter @see AudioEffect::setParameter */ | |||
| AEffectSetParameterProc setParameter; | |||
| /** Returns current value of automatable parameter @see AudioEffect::getParameter*/ | |||
| AEffectGetParameterProc getParameter; | |||
| VstInt32 numPrograms; ///< number of programs | |||
| VstInt32 numParams; ///< all programs are assumed to have numParams parameters | |||
| VstInt32 numInputs; ///< number of audio inputs | |||
| VstInt32 numOutputs; ///< number of audio outputs | |||
| VstInt32 flags; ///< @see VstAEffectFlags | |||
| VstIntPtr resvd1; ///< reserved for Host, must be 0 | |||
| VstIntPtr resvd2; ///< reserved for Host, must be 0 | |||
| VstInt32 initialDelay; ///< for algorithms which need input in the first place (Group delay or latency in Samples). This value should be initialized in a resume state. | |||
| VstInt32 DECLARE_VST_DEPRECATED (realQualities); ///< \deprecated unused member | |||
| VstInt32 DECLARE_VST_DEPRECATED (offQualities); ///< \deprecated unused member | |||
| float DECLARE_VST_DEPRECATED (ioRatio); ///< \deprecated unused member | |||
| void* object; ///< #AudioEffect class pointer | |||
| void* user; ///< user-defined pointer | |||
| VstInt32 uniqueID; ///< registered unique identifier (register it at Steinberg 3rd party support Web). This is used to identify a plug-in during save+load of preset and project. | |||
| VstInt32 version; ///< plug-in version (example 1100 for version 1.1.0.0) | |||
| /** Process audio samples in replacing mode @see AudioEffect::processReplacing */ | |||
| AEffectProcessProc processReplacing; | |||
| #if VST_2_4_EXTENSIONS | |||
| /** Process double-precision audio samples in replacing mode @see AudioEffect::processDoubleReplacing */ | |||
| AEffectProcessDoubleProc processDoubleReplacing; | |||
| char future[56]; ///< reserved for future use (please zero) | |||
| #else | |||
| char future[60]; ///< reserved for future use (please zero) | |||
| #endif // VST_2_4_EXTENSIONS | |||
| //------------------------------------------------------------------------------------------------------- | |||
| }; | |||
| //------------------------------------------------------------------------------------------------------- | |||
| /** AEffect flags */ | |||
| //------------------------------------------------------------------------------------------------------- | |||
| enum VstAEffectFlags | |||
| { | |||
| //------------------------------------------------------------------------------------------------------- | |||
| effFlagsHasEditor = 1 << 0, ///< set if the plug-in provides a custom editor | |||
| effFlagsCanReplacing = 1 << 4, ///< supports replacing process mode (which should the default mode in VST 2.4) | |||
| effFlagsProgramChunks = 1 << 5, ///< program data is handled in formatless chunks | |||
| effFlagsIsSynth = 1 << 8, ///< plug-in is a synth (VSTi), Host may assign mixer channels for its outputs | |||
| effFlagsNoSoundInStop = 1 << 9, ///< plug-in does not produce sound when input is all silence | |||
| #if VST_2_4_EXTENSIONS | |||
| effFlagsCanDoubleReplacing = 1 << 12, ///< plug-in supports double precision processing | |||
| #endif | |||
| DECLARE_VST_DEPRECATED (effFlagsHasClip) = 1 << 1, ///< \deprecated deprecated in VST 2.4 | |||
| DECLARE_VST_DEPRECATED (effFlagsHasVu) = 1 << 2, ///< \deprecated deprecated in VST 2.4 | |||
| DECLARE_VST_DEPRECATED (effFlagsCanMono) = 1 << 3, ///< \deprecated deprecated in VST 2.4 | |||
| DECLARE_VST_DEPRECATED (effFlagsExtIsAsync) = 1 << 10, ///< \deprecated deprecated in VST 2.4 | |||
| DECLARE_VST_DEPRECATED (effFlagsExtHasBuffer) = 1 << 11 ///< \deprecated deprecated in VST 2.4 | |||
| //------------------------------------------------------------------------------------------------------- | |||
| }; | |||
| //------------------------------------------------------------------------------------------------------- | |||
| /** Basic dispatcher Opcodes (Host to Plug-in) */ | |||
| //------------------------------------------------------------------------------------------------------- | |||
| enum AEffectOpcodes | |||
| { | |||
| effOpen = 0, ///< no arguments @see AudioEffect::open | |||
| effClose, ///< no arguments @see AudioEffect::close | |||
| effSetProgram, ///< [value]: new program number @see AudioEffect::setProgram | |||
| effGetProgram, ///< [return value]: current program number @see AudioEffect::getProgram | |||
| effSetProgramName, ///< [ptr]: char* with new program name, limited to #kVstMaxProgNameLen @see AudioEffect::setProgramName | |||
| effGetProgramName, ///< [ptr]: char buffer for current program name, limited to #kVstMaxProgNameLen @see AudioEffect::getProgramName | |||
| effGetParamLabel, ///< [ptr]: char buffer for parameter label, limited to #kVstMaxParamStrLen @see AudioEffect::getParameterLabel | |||
| effGetParamDisplay, ///< [ptr]: char buffer for parameter display, limited to #kVstMaxParamStrLen @see AudioEffect::getParameterDisplay | |||
| effGetParamName, ///< [ptr]: char buffer for parameter name, limited to #kVstMaxParamStrLen @see AudioEffect::getParameterName | |||
| DECLARE_VST_DEPRECATED (effGetVu), ///< \deprecated deprecated in VST 2.4 | |||
| effSetSampleRate, ///< [opt]: new sample rate for audio processing @see AudioEffect::setSampleRate | |||
| effSetBlockSize, ///< [value]: new maximum block size for audio processing @see AudioEffect::setBlockSize | |||
| effMainsChanged, ///< [value]: 0 means "turn off", 1 means "turn on" @see AudioEffect::suspend @see AudioEffect::resume | |||
| effEditGetRect, ///< [ptr]: #ERect** receiving pointer to editor size @see ERect @see AEffEditor::getRect | |||
| effEditOpen, ///< [ptr]: system dependent Window pointer, e.g. HWND on Windows @see AEffEditor::open | |||
| effEditClose, ///< no arguments @see AEffEditor::close | |||
| DECLARE_VST_DEPRECATED (effEditDraw), ///< \deprecated deprecated in VST 2.4 | |||
| DECLARE_VST_DEPRECATED (effEditMouse), ///< \deprecated deprecated in VST 2.4 | |||
| DECLARE_VST_DEPRECATED (effEditKey), ///< \deprecated deprecated in VST 2.4 | |||
| effEditIdle, ///< no arguments @see AEffEditor::idle | |||
| DECLARE_VST_DEPRECATED (effEditTop), ///< \deprecated deprecated in VST 2.4 | |||
| DECLARE_VST_DEPRECATED (effEditSleep), ///< \deprecated deprecated in VST 2.4 | |||
| DECLARE_VST_DEPRECATED (effIdentify), ///< \deprecated deprecated in VST 2.4 | |||
| effGetChunk, ///< [ptr]: void** for chunk data address [index]: 0 for bank, 1 for program @see AudioEffect::getChunk | |||
| effSetChunk, ///< [ptr]: chunk data [value]: byte size [index]: 0 for bank, 1 for program @see AudioEffect::setChunk | |||
| effNumOpcodes | |||
| }; | |||
| //------------------------------------------------------------------------------------------------------- | |||
| /** Basic dispatcher Opcodes (Plug-in to Host) */ | |||
| //------------------------------------------------------------------------------------------------------- | |||
| enum AudioMasterOpcodes | |||
| { | |||
| //------------------------------------------------------------------------------------------------------- | |||
| audioMasterAutomate = 0, ///< [index]: parameter index [opt]: parameter value @see AudioEffect::setParameterAutomated | |||
| audioMasterVersion, ///< [return value]: Host VST version (for example 2400 for VST 2.4) @see AudioEffect::getMasterVersion | |||
| audioMasterCurrentId, ///< [return value]: current unique identifier on shell plug-in @see AudioEffect::getCurrentUniqueId | |||
| audioMasterIdle, ///< no arguments @see AudioEffect::masterIdle | |||
| DECLARE_VST_DEPRECATED (audioMasterPinConnected) ///< \deprecated deprecated in VST 2.4 r2 | |||
| //------------------------------------------------------------------------------------------------------- | |||
| }; | |||
| //------------------------------------------------------------------------------------------------------- | |||
| /** String length limits (in characters excl. 0 byte) */ | |||
| //------------------------------------------------------------------------------------------------------- | |||
| enum VstStringConstants | |||
| { | |||
| //------------------------------------------------------------------------------------------------------- | |||
| kVstMaxProgNameLen = 24, ///< used for #effGetProgramName, #effSetProgramName, #effGetProgramNameIndexed | |||
| kVstMaxParamStrLen = 8, ///< used for #effGetParamLabel, #effGetParamDisplay, #effGetParamName | |||
| kVstMaxVendorStrLen = 64, ///< used for #effGetVendorString, #audioMasterGetVendorString | |||
| kVstMaxProductStrLen = 64, ///< used for #effGetProductString, #audioMasterGetProductString | |||
| kVstMaxEffectNameLen = 32 ///< used for #effGetEffectName | |||
| //------------------------------------------------------------------------------------------------------- | |||
| }; | |||
| #ifdef __cplusplus | |||
| #define VST_INLINE inline | |||
| #else | |||
| #define VST_INLINE | |||
| #endif | |||
| //------------------------------------------------------------------------------------------------------- | |||
| /** String copy taking care of null terminator. */ | |||
| //------------------------------------------------------------------------------------------------------- | |||
| VST_INLINE char* vst_strncpy (char* dst, const char* src, size_t maxLen) | |||
| { | |||
| char* result = strncpy (dst, src, maxLen); | |||
| dst[maxLen] = 0; | |||
| return result; | |||
| } | |||
| //------------------------------------------------------------------------------------------------------- | |||
| /** String concatenation taking care of null terminator. */ | |||
| //------------------------------------------------------------------------------------------------------- | |||
| VST_INLINE char* vst_strncat (char* dst, const char* src, size_t maxLen) | |||
| { | |||
| char* result = strncat (dst, src, maxLen); | |||
| dst[maxLen] = 0; | |||
| return result; | |||
| } | |||
| #ifdef __cplusplus | |||
| //------------------------------------------------------------------------------------------------------- | |||
| /** Cast #VstIntPtr to pointer. */ | |||
| //------------------------------------------------------------------------------------------------------- | |||
| template <class T> inline T* FromVstPtr (VstIntPtr& arg) | |||
| { | |||
| T** address = (T**)&arg; | |||
| return *address; | |||
| } | |||
| //------------------------------------------------------------------------------------------------------- | |||
| /** Cast pointer to #VstIntPtr. */ | |||
| //------------------------------------------------------------------------------------------------------- | |||
| template <class T> inline VstIntPtr ToVstPtr (T* ptr) | |||
| { | |||
| VstIntPtr* address = (VstIntPtr*)&ptr; | |||
| return *address; | |||
| } | |||
| #endif // __cplusplus | |||
| //------------------------------------------------------------------------------------------------------- | |||
| /** Structure used for #effEditGetRect. */ | |||
| //------------------------------------------------------------------------------------------------------- | |||
| struct ERect | |||
| { | |||
| //------------------------------------------------------------------------------------------------------- | |||
| VstInt16 top; ///< top coordinate | |||
| VstInt16 left; ///< left coordinate | |||
| VstInt16 bottom; ///< bottom coordinate | |||
| VstInt16 right; ///< right coordinate | |||
| //------------------------------------------------------------------------------------------------------- | |||
| }; | |||
| //------------------------------------------------------------------------------------------------------- | |||
| #if TARGET_API_MAC_CARBON | |||
| #pragma options align=reset | |||
| #elif defined(WIN32) || defined(__FLAT__) || defined(__GNUC__) | |||
| #pragma pack(pop) | |||
| #elif defined __BORLANDC__ | |||
| #pragma -a- | |||
| #endif | |||
| #endif // __aeffect__ | |||
| @@ -1,128 +0,0 @@ | |||
| //------------------------------------------------------------------------ | |||
| // Project : VST SDK | |||
| // Version : 2.4 | |||
| // | |||
| // Category : VST 2.x Interfaces | |||
| // Filename : pluginterfaces/vst2.x/vstfxstore.h | |||
| // Created by : Steinberg, 01/2004 | |||
| // Description : Definition of Program (fxp) and Bank (fxb) structures | |||
| // | |||
| //----------------------------------------------------------------------------- | |||
| // LICENSE | |||
| // (c) 2018, Steinberg Media Technologies GmbH, All Rights Reserved | |||
| //----------------------------------------------------------------------------- | |||
| // This Software Development Kit may not be distributed in parts or its entirety | |||
| // without prior written agreement by Steinberg Media Technologies GmbH. | |||
| // This SDK must not be used to re-engineer or manipulate any technology used | |||
| // in any Steinberg or Third-party application or software module, | |||
| // unless permitted by law. | |||
| // Neither the name of the Steinberg Media Technologies nor the names of its | |||
| // contributors may be used to endorse or promote products derived from this | |||
| // software without specific prior written permission. | |||
| // | |||
| // THIS SDK IS PROVIDED BY STEINBERG MEDIA TECHNOLOGIES GMBH "AS IS" AND | |||
| // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED | |||
| // WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. | |||
| // IN NO EVENT SHALL STEINBERG MEDIA TECHNOLOGIES GMBH BE LIABLE FOR ANY DIRECT, | |||
| // INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, | |||
| // BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | |||
| // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF | |||
| // LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE | |||
| // OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED | |||
| // OF THE POSSIBILITY OF SUCH DAMAGE. | |||
| //---------------------------------------------------------------------------------- | |||
| #ifndef __vstfxstore__ | |||
| #define __vstfxstore__ | |||
| #ifndef __aeffect__ | |||
| #include "aeffect.h" | |||
| #endif | |||
| //------------------------------------------------------------------------------------------------------- | |||
| /** Root chunk identifier for Programs (fxp) and Banks (fxb). */ | |||
| #define cMagic 'CcnK' | |||
| /** Regular Program (fxp) identifier. */ | |||
| #define fMagic 'FxCk' | |||
| /** Regular Bank (fxb) identifier. */ | |||
| #define bankMagic 'FxBk' | |||
| /** Program (fxp) identifier for opaque chunk data. */ | |||
| #define chunkPresetMagic 'FPCh' | |||
| /** Bank (fxb) identifier for opaque chunk data. */ | |||
| #define chunkBankMagic 'FBCh' | |||
| /* | |||
| Note: The C data structures below are for illustration only. You can not read/write them directly. | |||
| The byte order on disk of fxp and fxb files is Big Endian. You have to swap integer | |||
| and floating-point values on Little Endian platforms (Windows, MacIntel)! | |||
| */ | |||
| //------------------------------------------------------------------------------------------------------- | |||
| /** Program (fxp) structure. */ | |||
| //------------------------------------------------------------------------------------------------------- | |||
| typedef struct fxProgram | |||
| { | |||
| //------------------------------------------------------------------------------------------------------- | |||
| VstInt32 chunkMagic; ///< 'CcnK' | |||
| VstInt32 byteSize; ///< size of this chunk, excl. magic + byteSize | |||
| VstInt32 fxMagic; ///< 'FxCk' (regular) or 'FPCh' (opaque chunk) | |||
| VstInt32 version; ///< format version (currently 1) | |||
| VstInt32 fxID; ///< fx unique ID | |||
| VstInt32 fxVersion; ///< fx version | |||
| VstInt32 numParams; ///< number of parameters | |||
| char prgName[28]; ///< program name (null-terminated ASCII string) | |||
| union | |||
| { | |||
| float params[1]; ///< variable sized array with parameter values | |||
| struct | |||
| { | |||
| VstInt32 size; ///< size of program data | |||
| char chunk[1]; ///< variable sized array with opaque program data | |||
| } data; ///< program chunk data | |||
| } content; ///< program content depending on fxMagic | |||
| //------------------------------------------------------------------------------------------------------- | |||
| } fxProgram; | |||
| //------------------------------------------------------------------------------------------------------- | |||
| /** Bank (fxb) structure. */ | |||
| //------------------------------------------------------------------------------------------------------- | |||
| struct fxBank | |||
| { | |||
| //------------------------------------------------------------------------------------------------------- | |||
| VstInt32 chunkMagic; ///< 'CcnK' | |||
| VstInt32 byteSize; ///< size of this chunk, excl. magic + byteSize | |||
| VstInt32 fxMagic; ///< 'FxBk' (regular) or 'FBCh' (opaque chunk) | |||
| VstInt32 version; ///< format version (1 or 2) | |||
| VstInt32 fxID; ///< fx unique ID | |||
| VstInt32 fxVersion; ///< fx version | |||
| VstInt32 numPrograms; ///< number of programs | |||
| #if VST_2_4_EXTENSIONS | |||
| VstInt32 currentProgram; ///< version 2: current program number | |||
| char future[124]; ///< reserved, should be zero | |||
| #else | |||
| char future[128]; ///< reserved, should be zero | |||
| #endif | |||
| union | |||
| { | |||
| fxProgram programs[1]; ///< variable number of programs | |||
| struct | |||
| { | |||
| VstInt32 size; ///< size of bank data | |||
| char chunk[1]; ///< variable sized array with opaque bank data | |||
| } data; ///< bank chunk data | |||
| } content; ///< bank content depending on fxMagic | |||
| //------------------------------------------------------------------------------------------------------- | |||
| }; | |||
| #endif // __vstfxstore__ | |||
| @@ -41,6 +41,10 @@ | |||
| namespace Vst2 | |||
| { | |||
| // If the following files cannot be found then you are probably trying to host | |||
| // VST2 plug-ins. To do this you must have a VST2 SDK in your header search | |||
| // path. The VST2 SDK can be obtained from the vstsdk3610_11_06_2018_build_37 | |||
| // (or older) VST3 SDK or JUCE version 5.3.2. | |||
| #include <pluginterfaces/vst2.x/aeffect.h> | |||
| #include <pluginterfaces/vst2.x/aeffectx.h> | |||
| } | |||
| @@ -58,7 +58,7 @@ | |||
| //============================================================================== | |||
| /** Config: JUCE_PLUGINHOST_VST | |||
| Enables the VST audio plugin hosting classes. | |||
| Enables the VST audio plugin hosting classes. You will need to have the VST2 SDK files in your header search paths. You can obtain the VST2 SDK files from on older version of the VST3 SDK. | |||
| @see VSTPluginFormat, VST3PluginFormat, AudioPluginFormat, AudioPluginFormatManager, JUCE_PLUGINHOST_AU, JUCE_PLUGINHOST_VST3, JUCE_PLUGINHOST_LADSPA | |||
| */ | |||
| @@ -67,8 +67,7 @@ | |||
| #endif | |||
| /** Config: JUCE_PLUGINHOST_VST3 | |||
| Enables the VST3 audio plugin hosting classes. This requires the Steinberg VST3 SDK to be | |||
| installed on your machine. | |||
| Enables the VST3 audio plugin hosting classes. | |||
| @see VSTPluginFormat, VST3PluginFormat, AudioPluginFormat, AudioPluginFormatManager, JUCE_PLUGINHOST_VST, JUCE_PLUGINHOST_AU, JUCE_PLUGINHOST_LADSPA | |||
| */ | |||