Browse Source

AAX: Allow runtime custom search paths for a page table file

v7.0.9
Anthony Nicholls 2 years ago
parent
commit
61b27097b7
42 changed files with 655 additions and 257 deletions
  1. +28
    -2
      BREAKING-CHANGES.txt
  2. +8
    -4
      examples/DemoRunner/Builds/Android/app/CMakeLists.txt
  3. +6
    -2
      examples/DemoRunner/Builds/VisualStudio2017/DemoRunner_App.vcxproj
  4. +9
    -3
      examples/DemoRunner/Builds/VisualStudio2017/DemoRunner_App.vcxproj.filters
  5. +6
    -2
      examples/DemoRunner/Builds/VisualStudio2019/DemoRunner_App.vcxproj
  6. +9
    -3
      examples/DemoRunner/Builds/VisualStudio2019/DemoRunner_App.vcxproj.filters
  7. +6
    -2
      examples/DemoRunner/Builds/VisualStudio2022/DemoRunner_App.vcxproj
  8. +9
    -3
      examples/DemoRunner/Builds/VisualStudio2022/DemoRunner_App.vcxproj.filters
  9. +88
    -60
      examples/Plugins/ReaperEmbeddedViewPluginDemo.h
  10. +8
    -4
      extras/AudioPerformanceTest/Builds/Android/app/CMakeLists.txt
  11. +6
    -2
      extras/AudioPerformanceTest/Builds/VisualStudio2022/AudioPerformanceTest_App.vcxproj
  12. +9
    -3
      extras/AudioPerformanceTest/Builds/VisualStudio2022/AudioPerformanceTest_App.vcxproj.filters
  13. +8
    -4
      extras/AudioPluginHost/Builds/Android/app/CMakeLists.txt
  14. +6
    -2
      extras/AudioPluginHost/Builds/VisualStudio2017/AudioPluginHost_App.vcxproj
  15. +9
    -3
      extras/AudioPluginHost/Builds/VisualStudio2017/AudioPluginHost_App.vcxproj.filters
  16. +6
    -2
      extras/AudioPluginHost/Builds/VisualStudio2019/AudioPluginHost_App.vcxproj
  17. +9
    -3
      extras/AudioPluginHost/Builds/VisualStudio2019/AudioPluginHost_App.vcxproj.filters
  18. +6
    -2
      extras/AudioPluginHost/Builds/VisualStudio2022/AudioPluginHost_App.vcxproj
  19. +9
    -3
      extras/AudioPluginHost/Builds/VisualStudio2022/AudioPluginHost_App.vcxproj.filters
  20. +8
    -4
      extras/NetworkGraphicsDemo/Builds/Android/app/CMakeLists.txt
  21. +6
    -2
      extras/NetworkGraphicsDemo/Builds/VisualStudio2022/NetworkGraphicsDemo_App.vcxproj
  22. +9
    -3
      extras/NetworkGraphicsDemo/Builds/VisualStudio2022/NetworkGraphicsDemo_App.vcxproj.filters
  23. +6
    -2
      extras/UnitTestRunner/Builds/VisualStudio2017/UnitTestRunner_ConsoleApp.vcxproj
  24. +9
    -3
      extras/UnitTestRunner/Builds/VisualStudio2017/UnitTestRunner_ConsoleApp.vcxproj.filters
  25. +6
    -2
      extras/UnitTestRunner/Builds/VisualStudio2019/UnitTestRunner_ConsoleApp.vcxproj
  26. +9
    -3
      extras/UnitTestRunner/Builds/VisualStudio2019/UnitTestRunner_ConsoleApp.vcxproj.filters
  27. +6
    -2
      extras/UnitTestRunner/Builds/VisualStudio2022/UnitTestRunner_ConsoleApp.vcxproj
  28. +9
    -3
      extras/UnitTestRunner/Builds/VisualStudio2022/UnitTestRunner_ConsoleApp.vcxproj.filters
  29. +6
    -2
      extras/WindowsDLL/Builds/VisualStudio2022/WindowsDLL_StaticLibrary.vcxproj
  30. +9
    -3
      extras/WindowsDLL/Builds/VisualStudio2022/WindowsDLL_StaticLibrary.vcxproj.filters
  31. +15
    -11
      modules/juce_audio_plugin_client/juce_audio_plugin_client_AAX.cpp
  32. +3
    -3
      modules/juce_audio_plugin_client/juce_audio_plugin_client_VST2.cpp
  33. +4
    -4
      modules/juce_audio_plugin_client/juce_audio_plugin_client_VST3.cpp
  34. +2
    -1
      modules/juce_audio_processors/juce_audio_processors.cpp
  35. +2
    -1
      modules/juce_audio_processors/juce_audio_processors.h
  36. +57
    -65
      modules/juce_audio_processors/processors/juce_AudioProcessor.cpp
  37. +34
    -11
      modules/juce_audio_processors/processors/juce_AudioProcessor.h
  38. +103
    -0
      modules/juce_audio_processors/utilities/juce_AAXClientExtensions.cpp
  39. +83
    -0
      modules/juce_audio_processors/utilities/juce_AAXClientExtensions.h
  40. +5
    -5
      modules/juce_audio_processors/utilities/juce_VST2ClientExtensions.cpp
  41. +14
    -13
      modules/juce_audio_processors/utilities/juce_VST2ClientExtensions.h
  42. +5
    -5
      modules/juce_audio_processors/utilities/juce_VST3ClientExtensions.h

+ 28
- 2
BREAKING-CHANGES.txt View File

@@ -4,6 +4,31 @@ JUCE breaking changes
develop
=======

Change
------
AudioProcessor::getAAXPluginIDForMainBusConfig() has been deprecated.

Possible Issues
---------------
Any AudioProcessor overriding this method will fail to compile.

Workaround
----------
- Create an object which inherits from AAXClientExtensions.
- In the object override and implement getPluginIDForMainBusConfig().
- In the AudioProcessor override getAAXClientExtensions() and return a pointer
to the object.

Rationale
---------
Additional AAX specific functionality was required in the audio processor.
Rather than continuing to grow and expand the AudioProcessor class with format
specific functionality, separating this concern into a new class allows for
greater expansion for those that need it without burdening those that don't.
Moving this function into this class improves consistency both with the new
functionality and with similar functionality for the VST2 and VST3 formats.


Change
------
Unique device IDs on Windows have been updated to use a more reliable SMBIOS
@@ -24,8 +49,9 @@ to switch to using SystemStats::getMachineIdentifiers() instead.

Rationale
---------
This update ensures the generation of more stable and reliable unique device IDs,
while also maintaining backward compatibility with the previous ID generation methods.
This update ensures the generation of more stable and reliable unique device
IDs, while also maintaining backward compatibility with the previous ID
generation methods.


Change


+ 8
- 4
examples/DemoRunner/Builds/Android/app/CMakeLists.txt View File

@@ -785,6 +785,8 @@ add_library( ${BINARY_NAME}
"../../../../../modules/juce_audio_processors/utilities/ARA/juce_ARAPlugInInstanceRoles.h"
"../../../../../modules/juce_audio_processors/utilities/ARA/juce_AudioProcessor_ARAExtensions.cpp"
"../../../../../modules/juce_audio_processors/utilities/ARA/juce_AudioProcessor_ARAExtensions.h"
"../../../../../modules/juce_audio_processors/utilities/juce_AAXClientExtensions.cpp"
"../../../../../modules/juce_audio_processors/utilities/juce_AAXClientExtensions.h"
"../../../../../modules/juce_audio_processors/utilities/juce_AudioParameterBool.cpp"
"../../../../../modules/juce_audio_processors/utilities/juce_AudioParameterBool.h"
"../../../../../modules/juce_audio_processors/utilities/juce_AudioParameterChoice.cpp"
@@ -807,9 +809,9 @@ add_library( ${BINARY_NAME}
"../../../../../modules/juce_audio_processors/utilities/juce_PluginHostType.h"
"../../../../../modules/juce_audio_processors/utilities/juce_RangedAudioParameter.cpp"
"../../../../../modules/juce_audio_processors/utilities/juce_RangedAudioParameter.h"
"../../../../../modules/juce_audio_processors/utilities/juce_VST2ClientExtensions.cpp"
"../../../../../modules/juce_audio_processors/utilities/juce_VST2ClientExtensions.h"
"../../../../../modules/juce_audio_processors/utilities/juce_VST3ClientExtensions.h"
"../../../../../modules/juce_audio_processors/utilities/juce_VSTCallbackHandler.cpp"
"../../../../../modules/juce_audio_processors/utilities/juce_VSTCallbackHandler.h"
"../../../../../modules/juce_audio_processors/juce_audio_processors.cpp"
"../../../../../modules/juce_audio_processors/juce_audio_processors.mm"
"../../../../../modules/juce_audio_processors/juce_audio_processors_ara.cpp"
@@ -2844,6 +2846,8 @@ set_source_files_properties(
"../../../../../modules/juce_audio_processors/utilities/ARA/juce_ARAPlugInInstanceRoles.h"
"../../../../../modules/juce_audio_processors/utilities/ARA/juce_AudioProcessor_ARAExtensions.cpp"
"../../../../../modules/juce_audio_processors/utilities/ARA/juce_AudioProcessor_ARAExtensions.h"
"../../../../../modules/juce_audio_processors/utilities/juce_AAXClientExtensions.cpp"
"../../../../../modules/juce_audio_processors/utilities/juce_AAXClientExtensions.h"
"../../../../../modules/juce_audio_processors/utilities/juce_AudioParameterBool.cpp"
"../../../../../modules/juce_audio_processors/utilities/juce_AudioParameterBool.h"
"../../../../../modules/juce_audio_processors/utilities/juce_AudioParameterChoice.cpp"
@@ -2866,9 +2870,9 @@ set_source_files_properties(
"../../../../../modules/juce_audio_processors/utilities/juce_PluginHostType.h"
"../../../../../modules/juce_audio_processors/utilities/juce_RangedAudioParameter.cpp"
"../../../../../modules/juce_audio_processors/utilities/juce_RangedAudioParameter.h"
"../../../../../modules/juce_audio_processors/utilities/juce_VST2ClientExtensions.cpp"
"../../../../../modules/juce_audio_processors/utilities/juce_VST2ClientExtensions.h"
"../../../../../modules/juce_audio_processors/utilities/juce_VST3ClientExtensions.h"
"../../../../../modules/juce_audio_processors/utilities/juce_VSTCallbackHandler.cpp"
"../../../../../modules/juce_audio_processors/utilities/juce_VSTCallbackHandler.h"
"../../../../../modules/juce_audio_processors/juce_audio_processors.cpp"
"../../../../../modules/juce_audio_processors/juce_audio_processors.mm"
"../../../../../modules/juce_audio_processors/juce_audio_processors_ara.cpp"


+ 6
- 2
examples/DemoRunner/Builds/VisualStudio2017/DemoRunner_App.vcxproj View File

@@ -992,6 +992,9 @@
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\ARA\juce_AudioProcessor_ARAExtensions.cpp">
<ExcludedFromBuild>true</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AAXClientExtensions.cpp">
<ExcludedFromBuild>true</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AudioParameterBool.cpp">
<ExcludedFromBuild>true</ExcludedFromBuild>
</ClCompile>
@@ -1022,7 +1025,7 @@
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_RangedAudioParameter.cpp">
<ExcludedFromBuild>true</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VSTCallbackHandler.cpp">
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VST2ClientExtensions.cpp">
<ExcludedFromBuild>true</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\juce_audio_processors.cpp">
@@ -3204,6 +3207,7 @@
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\ARA\juce_ARAModelObjects.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\ARA\juce_ARAPlugInInstanceRoles.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\ARA\juce_AudioProcessor_ARAExtensions.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AAXClientExtensions.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AudioParameterBool.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AudioParameterChoice.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AudioParameterFloat.h"/>
@@ -3216,8 +3220,8 @@
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_ParameterAttachments.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_PluginHostType.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_RangedAudioParameter.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VST2ClientExtensions.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VST3ClientExtensions.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VSTCallbackHandler.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\juce_audio_processors.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_utils\audio_cd\juce_AudioCDBurner.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_utils\audio_cd\juce_AudioCDReader.h"/>


+ 9
- 3
examples/DemoRunner/Builds/VisualStudio2017/DemoRunner_App.vcxproj.filters View File

@@ -1588,6 +1588,9 @@
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\ARA\juce_AudioProcessor_ARAExtensions.cpp">
<Filter>JUCE Modules\juce_audio_processors\utilities\ARA</Filter>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AAXClientExtensions.cpp">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AudioParameterBool.cpp">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClCompile>
@@ -1618,7 +1621,7 @@
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_RangedAudioParameter.cpp">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VSTCallbackHandler.cpp">
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VST2ClientExtensions.cpp">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\juce_audio_processors.cpp">
@@ -4836,6 +4839,9 @@
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\ARA\juce_AudioProcessor_ARAExtensions.h">
<Filter>JUCE Modules\juce_audio_processors\utilities\ARA</Filter>
</ClInclude>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AAXClientExtensions.h">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClInclude>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AudioParameterBool.h">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClInclude>
@@ -4872,10 +4878,10 @@
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_RangedAudioParameter.h">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClInclude>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VST3ClientExtensions.h">
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VST2ClientExtensions.h">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClInclude>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VSTCallbackHandler.h">
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VST3ClientExtensions.h">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClInclude>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\juce_audio_processors.h">


+ 6
- 2
examples/DemoRunner/Builds/VisualStudio2019/DemoRunner_App.vcxproj View File

@@ -992,6 +992,9 @@
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\ARA\juce_AudioProcessor_ARAExtensions.cpp">
<ExcludedFromBuild>true</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AAXClientExtensions.cpp">
<ExcludedFromBuild>true</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AudioParameterBool.cpp">
<ExcludedFromBuild>true</ExcludedFromBuild>
</ClCompile>
@@ -1022,7 +1025,7 @@
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_RangedAudioParameter.cpp">
<ExcludedFromBuild>true</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VSTCallbackHandler.cpp">
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VST2ClientExtensions.cpp">
<ExcludedFromBuild>true</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\juce_audio_processors.cpp">
@@ -3204,6 +3207,7 @@
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\ARA\juce_ARAModelObjects.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\ARA\juce_ARAPlugInInstanceRoles.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\ARA\juce_AudioProcessor_ARAExtensions.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AAXClientExtensions.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AudioParameterBool.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AudioParameterChoice.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AudioParameterFloat.h"/>
@@ -3216,8 +3220,8 @@
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_ParameterAttachments.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_PluginHostType.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_RangedAudioParameter.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VST2ClientExtensions.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VST3ClientExtensions.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VSTCallbackHandler.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\juce_audio_processors.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_utils\audio_cd\juce_AudioCDBurner.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_utils\audio_cd\juce_AudioCDReader.h"/>


+ 9
- 3
examples/DemoRunner/Builds/VisualStudio2019/DemoRunner_App.vcxproj.filters View File

@@ -1588,6 +1588,9 @@
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\ARA\juce_AudioProcessor_ARAExtensions.cpp">
<Filter>JUCE Modules\juce_audio_processors\utilities\ARA</Filter>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AAXClientExtensions.cpp">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AudioParameterBool.cpp">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClCompile>
@@ -1618,7 +1621,7 @@
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_RangedAudioParameter.cpp">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VSTCallbackHandler.cpp">
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VST2ClientExtensions.cpp">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\juce_audio_processors.cpp">
@@ -4836,6 +4839,9 @@
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\ARA\juce_AudioProcessor_ARAExtensions.h">
<Filter>JUCE Modules\juce_audio_processors\utilities\ARA</Filter>
</ClInclude>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AAXClientExtensions.h">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClInclude>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AudioParameterBool.h">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClInclude>
@@ -4872,10 +4878,10 @@
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_RangedAudioParameter.h">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClInclude>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VST3ClientExtensions.h">
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VST2ClientExtensions.h">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClInclude>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VSTCallbackHandler.h">
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VST3ClientExtensions.h">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClInclude>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\juce_audio_processors.h">


+ 6
- 2
examples/DemoRunner/Builds/VisualStudio2022/DemoRunner_App.vcxproj View File

@@ -992,6 +992,9 @@
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\ARA\juce_AudioProcessor_ARAExtensions.cpp">
<ExcludedFromBuild>true</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AAXClientExtensions.cpp">
<ExcludedFromBuild>true</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AudioParameterBool.cpp">
<ExcludedFromBuild>true</ExcludedFromBuild>
</ClCompile>
@@ -1022,7 +1025,7 @@
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_RangedAudioParameter.cpp">
<ExcludedFromBuild>true</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VSTCallbackHandler.cpp">
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VST2ClientExtensions.cpp">
<ExcludedFromBuild>true</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\juce_audio_processors.cpp">
@@ -3204,6 +3207,7 @@
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\ARA\juce_ARAModelObjects.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\ARA\juce_ARAPlugInInstanceRoles.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\ARA\juce_AudioProcessor_ARAExtensions.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AAXClientExtensions.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AudioParameterBool.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AudioParameterChoice.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AudioParameterFloat.h"/>
@@ -3216,8 +3220,8 @@
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_ParameterAttachments.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_PluginHostType.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_RangedAudioParameter.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VST2ClientExtensions.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VST3ClientExtensions.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VSTCallbackHandler.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\juce_audio_processors.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_utils\audio_cd\juce_AudioCDBurner.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_utils\audio_cd\juce_AudioCDReader.h"/>


+ 9
- 3
examples/DemoRunner/Builds/VisualStudio2022/DemoRunner_App.vcxproj.filters View File

@@ -1588,6 +1588,9 @@
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\ARA\juce_AudioProcessor_ARAExtensions.cpp">
<Filter>JUCE Modules\juce_audio_processors\utilities\ARA</Filter>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AAXClientExtensions.cpp">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AudioParameterBool.cpp">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClCompile>
@@ -1618,7 +1621,7 @@
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_RangedAudioParameter.cpp">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VSTCallbackHandler.cpp">
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VST2ClientExtensions.cpp">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\juce_audio_processors.cpp">
@@ -4836,6 +4839,9 @@
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\ARA\juce_AudioProcessor_ARAExtensions.h">
<Filter>JUCE Modules\juce_audio_processors\utilities\ARA</Filter>
</ClInclude>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AAXClientExtensions.h">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClInclude>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AudioParameterBool.h">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClInclude>
@@ -4872,10 +4878,10 @@
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_RangedAudioParameter.h">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClInclude>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VST3ClientExtensions.h">
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VST2ClientExtensions.h">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClInclude>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VSTCallbackHandler.h">
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VST3ClientExtensions.h">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClInclude>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\juce_audio_processors.h">


+ 88
- 60
examples/Plugins/ReaperEmbeddedViewPluginDemo.h View File

@@ -104,6 +104,8 @@ struct EmbeddedViewListener
virtual Steinberg::TPtrInt handledEmbeddedUIMessage (int msg,
Steinberg::TPtrInt parm2,
Steinberg::TPtrInt parm3) = 0;
virtual void setGlobalBypassFunction (void (*) (int)) = 0;
};
JUCE_BEGIN_IGNORE_WARNINGS_GCC_LIKE ("-Wnon-virtual-dtor")
@@ -144,6 +146,85 @@ private:
JUCE_END_IGNORE_WARNINGS_GCC_LIKE
class VST2Extensions : public VSTCallbackHandler
{
public:
explicit VST2Extensions (EmbeddedViewListener& l)
: listener (l) {}
pointer_sized_int handleVstPluginCanDo (int32, pointer_sized_int, void* ptr, float) override
{
if (auto* str = static_cast<const char*> (ptr))
{
if (strcmp (str, "hasCockosEmbeddedUI") == 0)
return 0xbeef0000;
if (strcmp (str, "hasCockosExtensions") == 0)
return 0xbeef0000;
}
return 0;
}
pointer_sized_int handleVstManufacturerSpecific (int32 index,
pointer_sized_int value,
void* ptr,
float opt) override
{
// The docstring at the top of reaper_plugin_fx_embed.h specifies
// that the index will always be effEditDraw, which is now deprecated.
if (index != __effEditDrawDeprecated)
return 0;
return (pointer_sized_int) listener.handledEmbeddedUIMessage ((int) opt,
(Steinberg::TPtrInt) value,
(Steinberg::TPtrInt) ptr);
}
void handleVstHostCallbackAvailable (std::function<VstHostCallbackType>&& hostcb) override
{
char functionName[] = "BypassFxAllTracks";
listener.setGlobalBypassFunction (reinterpret_cast<void (*) (int)> (hostcb ((int32_t) 0xdeadbeef, (int32_t) 0xdeadf00d, 0, functionName, 0.0)));
}
private:
EmbeddedViewListener& listener;
};
class VST3Extensions : public VST3ClientExtensions
{
public:
explicit VST3Extensions (EmbeddedViewListener& l)
: listener (l) {}
int32_t queryIEditController (const Steinberg::TUID tuid, void** obj) override
{
if (embeddedUi.queryInterface (tuid, obj) == Steinberg::kResultOk)
return Steinberg::kResultOk;
*obj = nullptr;
return Steinberg::kNoInterface;
}
void setIHostApplication (Steinberg::FUnknown* ptr) override
{
if (ptr == nullptr)
return;
void* objPtr = nullptr;
if (ptr->queryInterface (reaper::IReaperHostApplication::iid, &objPtr) == Steinberg::kResultOk)
{
if (void* fnPtr = static_cast<reaper::IReaperHostApplication*> (objPtr)->getReaperApi ("BypassFxAllTracks"))
listener.setGlobalBypassFunction (reinterpret_cast<void (*) (int)> (fnPtr));
}
}
private:
EmbeddedViewListener& listener;
EmbeddedUI embeddedUi { listener };
};
//==============================================================================
class Editor : public AudioProcessorEditor
{
@@ -182,8 +263,6 @@ private:
//==============================================================================
class ReaperEmbeddedViewDemo : public AudioProcessor,
public VSTCallbackHandler,
public VST3ClientExtensions,
private EmbeddedViewListener,
private Timer
{
@@ -236,63 +315,8 @@ public:
false).readFloat());
}
int32_t queryIEditController (const Steinberg::TUID tuid, void** obj) override
{
if (embeddedUi.queryInterface (tuid, obj) == Steinberg::kResultOk)
return Steinberg::kResultOk;
*obj = nullptr;
return Steinberg::kNoInterface;
}
void setIHostApplication (Steinberg::FUnknown* ptr) override
{
if (ptr == nullptr)
return;
void* objPtr = nullptr;
if (ptr->queryInterface (reaper::IReaperHostApplication::iid, &objPtr) == Steinberg::kResultOk)
{
if (void* fnPtr = static_cast<reaper::IReaperHostApplication*> (objPtr)->getReaperApi ("BypassFxAllTracks"))
globalBypassFn = reinterpret_cast<void (*) (int)> (fnPtr);
}
}
pointer_sized_int handleVstPluginCanDo (int32, pointer_sized_int, void* ptr, float) override
{
if (auto* str = static_cast<const char*> (ptr))
{
if (strcmp (str, "hasCockosEmbeddedUI") == 0)
return 0xbeef0000;
if (strcmp (str, "hasCockosExtensions") == 0)
return 0xbeef0000;
}
return 0;
}
pointer_sized_int handleVstManufacturerSpecific (int32 index,
pointer_sized_int value,
void* ptr,
float opt) override
{
// The docstring at the top of reaper_plugin_fx_embed.h specifies
// that the index will always be effEditDraw, which is now deprecated.
if (index != __effEditDrawDeprecated)
return 0;
return (pointer_sized_int) handledEmbeddedUIMessage ((int) opt,
(Steinberg::TPtrInt) value,
(Steinberg::TPtrInt) ptr);
}
void handleVstHostCallbackAvailable (std::function<VstHostCallbackType>&& hostcb) override
{
char functionName[] = "BypassFxAllTracks";
globalBypassFn = reinterpret_cast<void (*) (int)> (hostcb ((int32_t) 0xdeadbeef, (int32_t) 0xdeadf00d, 0, functionName, 0.0));
}
VST2ClientExtensions* getVST2ClientExtensions() override { return &vst2Extensions; }
VST3ClientExtensions* getVST3ClientExtensions() override { return &vst3Extensions; }
private:
template <typename Float>
@@ -414,10 +438,14 @@ private:
return 0;
}
void setGlobalBypassFunction (void (*fn) (int)) override { globalBypassFn = fn; }
AudioParameterFloat* gain = nullptr;
void (*globalBypassFn) (int) = nullptr;
EmbeddedUI embeddedUi { *this };
std::atomic<float> storedLevel { 0.0f };
float levelToDraw = 0.0f;
VST2Extensions vst2Extensions { *this };
VST3Extensions vst3Extensions { *this };
};

+ 8
- 4
extras/AudioPerformanceTest/Builds/Android/app/CMakeLists.txt View File

@@ -757,6 +757,8 @@ add_library( ${BINARY_NAME}
"../../../../../modules/juce_audio_processors/utilities/ARA/juce_ARAPlugInInstanceRoles.h"
"../../../../../modules/juce_audio_processors/utilities/ARA/juce_AudioProcessor_ARAExtensions.cpp"
"../../../../../modules/juce_audio_processors/utilities/ARA/juce_AudioProcessor_ARAExtensions.h"
"../../../../../modules/juce_audio_processors/utilities/juce_AAXClientExtensions.cpp"
"../../../../../modules/juce_audio_processors/utilities/juce_AAXClientExtensions.h"
"../../../../../modules/juce_audio_processors/utilities/juce_AudioParameterBool.cpp"
"../../../../../modules/juce_audio_processors/utilities/juce_AudioParameterBool.h"
"../../../../../modules/juce_audio_processors/utilities/juce_AudioParameterChoice.cpp"
@@ -779,9 +781,9 @@ add_library( ${BINARY_NAME}
"../../../../../modules/juce_audio_processors/utilities/juce_PluginHostType.h"
"../../../../../modules/juce_audio_processors/utilities/juce_RangedAudioParameter.cpp"
"../../../../../modules/juce_audio_processors/utilities/juce_RangedAudioParameter.h"
"../../../../../modules/juce_audio_processors/utilities/juce_VST2ClientExtensions.cpp"
"../../../../../modules/juce_audio_processors/utilities/juce_VST2ClientExtensions.h"
"../../../../../modules/juce_audio_processors/utilities/juce_VST3ClientExtensions.h"
"../../../../../modules/juce_audio_processors/utilities/juce_VSTCallbackHandler.cpp"
"../../../../../modules/juce_audio_processors/utilities/juce_VSTCallbackHandler.h"
"../../../../../modules/juce_audio_processors/juce_audio_processors.cpp"
"../../../../../modules/juce_audio_processors/juce_audio_processors.mm"
"../../../../../modules/juce_audio_processors/juce_audio_processors_ara.cpp"
@@ -2514,6 +2516,8 @@ set_source_files_properties(
"../../../../../modules/juce_audio_processors/utilities/ARA/juce_ARAPlugInInstanceRoles.h"
"../../../../../modules/juce_audio_processors/utilities/ARA/juce_AudioProcessor_ARAExtensions.cpp"
"../../../../../modules/juce_audio_processors/utilities/ARA/juce_AudioProcessor_ARAExtensions.h"
"../../../../../modules/juce_audio_processors/utilities/juce_AAXClientExtensions.cpp"
"../../../../../modules/juce_audio_processors/utilities/juce_AAXClientExtensions.h"
"../../../../../modules/juce_audio_processors/utilities/juce_AudioParameterBool.cpp"
"../../../../../modules/juce_audio_processors/utilities/juce_AudioParameterBool.h"
"../../../../../modules/juce_audio_processors/utilities/juce_AudioParameterChoice.cpp"
@@ -2536,9 +2540,9 @@ set_source_files_properties(
"../../../../../modules/juce_audio_processors/utilities/juce_PluginHostType.h"
"../../../../../modules/juce_audio_processors/utilities/juce_RangedAudioParameter.cpp"
"../../../../../modules/juce_audio_processors/utilities/juce_RangedAudioParameter.h"
"../../../../../modules/juce_audio_processors/utilities/juce_VST2ClientExtensions.cpp"
"../../../../../modules/juce_audio_processors/utilities/juce_VST2ClientExtensions.h"
"../../../../../modules/juce_audio_processors/utilities/juce_VST3ClientExtensions.h"
"../../../../../modules/juce_audio_processors/utilities/juce_VSTCallbackHandler.cpp"
"../../../../../modules/juce_audio_processors/utilities/juce_VSTCallbackHandler.h"
"../../../../../modules/juce_audio_processors/juce_audio_processors.cpp"
"../../../../../modules/juce_audio_processors/juce_audio_processors.mm"
"../../../../../modules/juce_audio_processors/juce_audio_processors_ara.cpp"


+ 6
- 2
extras/AudioPerformanceTest/Builds/VisualStudio2022/AudioPerformanceTest_App.vcxproj View File

@@ -973,6 +973,9 @@
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\ARA\juce_AudioProcessor_ARAExtensions.cpp">
<ExcludedFromBuild>true</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AAXClientExtensions.cpp">
<ExcludedFromBuild>true</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AudioParameterBool.cpp">
<ExcludedFromBuild>true</ExcludedFromBuild>
</ClCompile>
@@ -1003,7 +1006,7 @@
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_RangedAudioParameter.cpp">
<ExcludedFromBuild>true</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VSTCallbackHandler.cpp">
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VST2ClientExtensions.cpp">
<ExcludedFromBuild>true</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\juce_audio_processors.cpp">
@@ -2805,6 +2808,7 @@
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\ARA\juce_ARAModelObjects.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\ARA\juce_ARAPlugInInstanceRoles.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\ARA\juce_AudioProcessor_ARAExtensions.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AAXClientExtensions.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AudioParameterBool.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AudioParameterChoice.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AudioParameterFloat.h"/>
@@ -2817,8 +2821,8 @@
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_ParameterAttachments.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_PluginHostType.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_RangedAudioParameter.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VST2ClientExtensions.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VST3ClientExtensions.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VSTCallbackHandler.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\juce_audio_processors.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_utils\audio_cd\juce_AudioCDBurner.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_utils\audio_cd\juce_AudioCDReader.h"/>


+ 9
- 3
extras/AudioPerformanceTest/Builds/VisualStudio2022/AudioPerformanceTest_App.vcxproj.filters View File

@@ -1438,6 +1438,9 @@
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\ARA\juce_AudioProcessor_ARAExtensions.cpp">
<Filter>JUCE Modules\juce_audio_processors\utilities\ARA</Filter>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AAXClientExtensions.cpp">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AudioParameterBool.cpp">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClCompile>
@@ -1468,7 +1471,7 @@
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_RangedAudioParameter.cpp">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VSTCallbackHandler.cpp">
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VST2ClientExtensions.cpp">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\juce_audio_processors.cpp">
@@ -4257,6 +4260,9 @@
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\ARA\juce_AudioProcessor_ARAExtensions.h">
<Filter>JUCE Modules\juce_audio_processors\utilities\ARA</Filter>
</ClInclude>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AAXClientExtensions.h">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClInclude>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AudioParameterBool.h">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClInclude>
@@ -4293,10 +4299,10 @@
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_RangedAudioParameter.h">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClInclude>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VST3ClientExtensions.h">
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VST2ClientExtensions.h">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClInclude>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VSTCallbackHandler.h">
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VST3ClientExtensions.h">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClInclude>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\juce_audio_processors.h">


+ 8
- 4
extras/AudioPluginHost/Builds/Android/app/CMakeLists.txt View File

@@ -790,6 +790,8 @@ add_library( ${BINARY_NAME}
"../../../../../modules/juce_audio_processors/utilities/ARA/juce_ARAPlugInInstanceRoles.h"
"../../../../../modules/juce_audio_processors/utilities/ARA/juce_AudioProcessor_ARAExtensions.cpp"
"../../../../../modules/juce_audio_processors/utilities/ARA/juce_AudioProcessor_ARAExtensions.h"
"../../../../../modules/juce_audio_processors/utilities/juce_AAXClientExtensions.cpp"
"../../../../../modules/juce_audio_processors/utilities/juce_AAXClientExtensions.h"
"../../../../../modules/juce_audio_processors/utilities/juce_AudioParameterBool.cpp"
"../../../../../modules/juce_audio_processors/utilities/juce_AudioParameterBool.h"
"../../../../../modules/juce_audio_processors/utilities/juce_AudioParameterChoice.cpp"
@@ -812,9 +814,9 @@ add_library( ${BINARY_NAME}
"../../../../../modules/juce_audio_processors/utilities/juce_PluginHostType.h"
"../../../../../modules/juce_audio_processors/utilities/juce_RangedAudioParameter.cpp"
"../../../../../modules/juce_audio_processors/utilities/juce_RangedAudioParameter.h"
"../../../../../modules/juce_audio_processors/utilities/juce_VST2ClientExtensions.cpp"
"../../../../../modules/juce_audio_processors/utilities/juce_VST2ClientExtensions.h"
"../../../../../modules/juce_audio_processors/utilities/juce_VST3ClientExtensions.h"
"../../../../../modules/juce_audio_processors/utilities/juce_VSTCallbackHandler.cpp"
"../../../../../modules/juce_audio_processors/utilities/juce_VSTCallbackHandler.h"
"../../../../../modules/juce_audio_processors/juce_audio_processors.cpp"
"../../../../../modules/juce_audio_processors/juce_audio_processors.mm"
"../../../../../modules/juce_audio_processors/juce_audio_processors_ara.cpp"
@@ -2702,6 +2704,8 @@ set_source_files_properties(
"../../../../../modules/juce_audio_processors/utilities/ARA/juce_ARAPlugInInstanceRoles.h"
"../../../../../modules/juce_audio_processors/utilities/ARA/juce_AudioProcessor_ARAExtensions.cpp"
"../../../../../modules/juce_audio_processors/utilities/ARA/juce_AudioProcessor_ARAExtensions.h"
"../../../../../modules/juce_audio_processors/utilities/juce_AAXClientExtensions.cpp"
"../../../../../modules/juce_audio_processors/utilities/juce_AAXClientExtensions.h"
"../../../../../modules/juce_audio_processors/utilities/juce_AudioParameterBool.cpp"
"../../../../../modules/juce_audio_processors/utilities/juce_AudioParameterBool.h"
"../../../../../modules/juce_audio_processors/utilities/juce_AudioParameterChoice.cpp"
@@ -2724,9 +2728,9 @@ set_source_files_properties(
"../../../../../modules/juce_audio_processors/utilities/juce_PluginHostType.h"
"../../../../../modules/juce_audio_processors/utilities/juce_RangedAudioParameter.cpp"
"../../../../../modules/juce_audio_processors/utilities/juce_RangedAudioParameter.h"
"../../../../../modules/juce_audio_processors/utilities/juce_VST2ClientExtensions.cpp"
"../../../../../modules/juce_audio_processors/utilities/juce_VST2ClientExtensions.h"
"../../../../../modules/juce_audio_processors/utilities/juce_VST3ClientExtensions.h"
"../../../../../modules/juce_audio_processors/utilities/juce_VSTCallbackHandler.cpp"
"../../../../../modules/juce_audio_processors/utilities/juce_VSTCallbackHandler.h"
"../../../../../modules/juce_audio_processors/juce_audio_processors.cpp"
"../../../../../modules/juce_audio_processors/juce_audio_processors.mm"
"../../../../../modules/juce_audio_processors/juce_audio_processors_ara.cpp"


+ 6
- 2
extras/AudioPluginHost/Builds/VisualStudio2017/AudioPluginHost_App.vcxproj View File

@@ -981,6 +981,9 @@
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\ARA\juce_AudioProcessor_ARAExtensions.cpp">
<ExcludedFromBuild>true</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AAXClientExtensions.cpp">
<ExcludedFromBuild>true</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AudioParameterBool.cpp">
<ExcludedFromBuild>true</ExcludedFromBuild>
</ClCompile>
@@ -1011,7 +1014,7 @@
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_RangedAudioParameter.cpp">
<ExcludedFromBuild>true</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VSTCallbackHandler.cpp">
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VST2ClientExtensions.cpp">
<ExcludedFromBuild>true</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\juce_audio_processors.cpp">
@@ -2988,6 +2991,7 @@
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\ARA\juce_ARAModelObjects.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\ARA\juce_ARAPlugInInstanceRoles.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\ARA\juce_AudioProcessor_ARAExtensions.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AAXClientExtensions.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AudioParameterBool.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AudioParameterChoice.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AudioParameterFloat.h"/>
@@ -3000,8 +3004,8 @@
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_ParameterAttachments.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_PluginHostType.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_RangedAudioParameter.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VST2ClientExtensions.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VST3ClientExtensions.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VSTCallbackHandler.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\juce_audio_processors.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_utils\audio_cd\juce_AudioCDBurner.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_utils\audio_cd\juce_AudioCDReader.h"/>


+ 9
- 3
extras/AudioPluginHost/Builds/VisualStudio2017/AudioPluginHost_App.vcxproj.filters View File

@@ -1513,6 +1513,9 @@
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\ARA\juce_AudioProcessor_ARAExtensions.cpp">
<Filter>JUCE Modules\juce_audio_processors\utilities\ARA</Filter>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AAXClientExtensions.cpp">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AudioParameterBool.cpp">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClCompile>
@@ -1543,7 +1546,7 @@
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_RangedAudioParameter.cpp">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VSTCallbackHandler.cpp">
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VST2ClientExtensions.cpp">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\juce_audio_processors.cpp">
@@ -4536,6 +4539,9 @@
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\ARA\juce_AudioProcessor_ARAExtensions.h">
<Filter>JUCE Modules\juce_audio_processors\utilities\ARA</Filter>
</ClInclude>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AAXClientExtensions.h">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClInclude>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AudioParameterBool.h">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClInclude>
@@ -4572,10 +4578,10 @@
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_RangedAudioParameter.h">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClInclude>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VST3ClientExtensions.h">
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VST2ClientExtensions.h">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClInclude>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VSTCallbackHandler.h">
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VST3ClientExtensions.h">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClInclude>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\juce_audio_processors.h">


+ 6
- 2
extras/AudioPluginHost/Builds/VisualStudio2019/AudioPluginHost_App.vcxproj View File

@@ -981,6 +981,9 @@
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\ARA\juce_AudioProcessor_ARAExtensions.cpp">
<ExcludedFromBuild>true</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AAXClientExtensions.cpp">
<ExcludedFromBuild>true</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AudioParameterBool.cpp">
<ExcludedFromBuild>true</ExcludedFromBuild>
</ClCompile>
@@ -1011,7 +1014,7 @@
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_RangedAudioParameter.cpp">
<ExcludedFromBuild>true</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VSTCallbackHandler.cpp">
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VST2ClientExtensions.cpp">
<ExcludedFromBuild>true</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\juce_audio_processors.cpp">
@@ -2988,6 +2991,7 @@
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\ARA\juce_ARAModelObjects.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\ARA\juce_ARAPlugInInstanceRoles.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\ARA\juce_AudioProcessor_ARAExtensions.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AAXClientExtensions.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AudioParameterBool.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AudioParameterChoice.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AudioParameterFloat.h"/>
@@ -3000,8 +3004,8 @@
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_ParameterAttachments.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_PluginHostType.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_RangedAudioParameter.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VST2ClientExtensions.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VST3ClientExtensions.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VSTCallbackHandler.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\juce_audio_processors.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_utils\audio_cd\juce_AudioCDBurner.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_utils\audio_cd\juce_AudioCDReader.h"/>


+ 9
- 3
extras/AudioPluginHost/Builds/VisualStudio2019/AudioPluginHost_App.vcxproj.filters View File

@@ -1513,6 +1513,9 @@
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\ARA\juce_AudioProcessor_ARAExtensions.cpp">
<Filter>JUCE Modules\juce_audio_processors\utilities\ARA</Filter>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AAXClientExtensions.cpp">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AudioParameterBool.cpp">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClCompile>
@@ -1543,7 +1546,7 @@
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_RangedAudioParameter.cpp">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VSTCallbackHandler.cpp">
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VST2ClientExtensions.cpp">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\juce_audio_processors.cpp">
@@ -4536,6 +4539,9 @@
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\ARA\juce_AudioProcessor_ARAExtensions.h">
<Filter>JUCE Modules\juce_audio_processors\utilities\ARA</Filter>
</ClInclude>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AAXClientExtensions.h">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClInclude>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AudioParameterBool.h">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClInclude>
@@ -4572,10 +4578,10 @@
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_RangedAudioParameter.h">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClInclude>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VST3ClientExtensions.h">
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VST2ClientExtensions.h">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClInclude>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VSTCallbackHandler.h">
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VST3ClientExtensions.h">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClInclude>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\juce_audio_processors.h">


+ 6
- 2
extras/AudioPluginHost/Builds/VisualStudio2022/AudioPluginHost_App.vcxproj View File

@@ -981,6 +981,9 @@
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\ARA\juce_AudioProcessor_ARAExtensions.cpp">
<ExcludedFromBuild>true</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AAXClientExtensions.cpp">
<ExcludedFromBuild>true</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AudioParameterBool.cpp">
<ExcludedFromBuild>true</ExcludedFromBuild>
</ClCompile>
@@ -1011,7 +1014,7 @@
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_RangedAudioParameter.cpp">
<ExcludedFromBuild>true</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VSTCallbackHandler.cpp">
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VST2ClientExtensions.cpp">
<ExcludedFromBuild>true</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\juce_audio_processors.cpp">
@@ -2988,6 +2991,7 @@
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\ARA\juce_ARAModelObjects.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\ARA\juce_ARAPlugInInstanceRoles.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\ARA\juce_AudioProcessor_ARAExtensions.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AAXClientExtensions.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AudioParameterBool.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AudioParameterChoice.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AudioParameterFloat.h"/>
@@ -3000,8 +3004,8 @@
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_ParameterAttachments.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_PluginHostType.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_RangedAudioParameter.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VST2ClientExtensions.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VST3ClientExtensions.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VSTCallbackHandler.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\juce_audio_processors.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_utils\audio_cd\juce_AudioCDBurner.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_utils\audio_cd\juce_AudioCDReader.h"/>


+ 9
- 3
extras/AudioPluginHost/Builds/VisualStudio2022/AudioPluginHost_App.vcxproj.filters View File

@@ -1513,6 +1513,9 @@
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\ARA\juce_AudioProcessor_ARAExtensions.cpp">
<Filter>JUCE Modules\juce_audio_processors\utilities\ARA</Filter>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AAXClientExtensions.cpp">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AudioParameterBool.cpp">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClCompile>
@@ -1543,7 +1546,7 @@
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_RangedAudioParameter.cpp">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VSTCallbackHandler.cpp">
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VST2ClientExtensions.cpp">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\juce_audio_processors.cpp">
@@ -4536,6 +4539,9 @@
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\ARA\juce_AudioProcessor_ARAExtensions.h">
<Filter>JUCE Modules\juce_audio_processors\utilities\ARA</Filter>
</ClInclude>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AAXClientExtensions.h">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClInclude>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AudioParameterBool.h">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClInclude>
@@ -4572,10 +4578,10 @@
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_RangedAudioParameter.h">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClInclude>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VST3ClientExtensions.h">
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VST2ClientExtensions.h">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClInclude>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VSTCallbackHandler.h">
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VST3ClientExtensions.h">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClInclude>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\juce_audio_processors.h">


+ 8
- 4
extras/NetworkGraphicsDemo/Builds/Android/app/CMakeLists.txt View File

@@ -761,6 +761,8 @@ add_library( ${BINARY_NAME}
"../../../../../modules/juce_audio_processors/utilities/ARA/juce_ARAPlugInInstanceRoles.h"
"../../../../../modules/juce_audio_processors/utilities/ARA/juce_AudioProcessor_ARAExtensions.cpp"
"../../../../../modules/juce_audio_processors/utilities/ARA/juce_AudioProcessor_ARAExtensions.h"
"../../../../../modules/juce_audio_processors/utilities/juce_AAXClientExtensions.cpp"
"../../../../../modules/juce_audio_processors/utilities/juce_AAXClientExtensions.h"
"../../../../../modules/juce_audio_processors/utilities/juce_AudioParameterBool.cpp"
"../../../../../modules/juce_audio_processors/utilities/juce_AudioParameterBool.h"
"../../../../../modules/juce_audio_processors/utilities/juce_AudioParameterChoice.cpp"
@@ -783,9 +785,9 @@ add_library( ${BINARY_NAME}
"../../../../../modules/juce_audio_processors/utilities/juce_PluginHostType.h"
"../../../../../modules/juce_audio_processors/utilities/juce_RangedAudioParameter.cpp"
"../../../../../modules/juce_audio_processors/utilities/juce_RangedAudioParameter.h"
"../../../../../modules/juce_audio_processors/utilities/juce_VST2ClientExtensions.cpp"
"../../../../../modules/juce_audio_processors/utilities/juce_VST2ClientExtensions.h"
"../../../../../modules/juce_audio_processors/utilities/juce_VST3ClientExtensions.h"
"../../../../../modules/juce_audio_processors/utilities/juce_VSTCallbackHandler.cpp"
"../../../../../modules/juce_audio_processors/utilities/juce_VSTCallbackHandler.h"
"../../../../../modules/juce_audio_processors/juce_audio_processors.cpp"
"../../../../../modules/juce_audio_processors/juce_audio_processors.mm"
"../../../../../modules/juce_audio_processors/juce_audio_processors_ara.cpp"
@@ -2598,6 +2600,8 @@ set_source_files_properties(
"../../../../../modules/juce_audio_processors/utilities/ARA/juce_ARAPlugInInstanceRoles.h"
"../../../../../modules/juce_audio_processors/utilities/ARA/juce_AudioProcessor_ARAExtensions.cpp"
"../../../../../modules/juce_audio_processors/utilities/ARA/juce_AudioProcessor_ARAExtensions.h"
"../../../../../modules/juce_audio_processors/utilities/juce_AAXClientExtensions.cpp"
"../../../../../modules/juce_audio_processors/utilities/juce_AAXClientExtensions.h"
"../../../../../modules/juce_audio_processors/utilities/juce_AudioParameterBool.cpp"
"../../../../../modules/juce_audio_processors/utilities/juce_AudioParameterBool.h"
"../../../../../modules/juce_audio_processors/utilities/juce_AudioParameterChoice.cpp"
@@ -2620,9 +2624,9 @@ set_source_files_properties(
"../../../../../modules/juce_audio_processors/utilities/juce_PluginHostType.h"
"../../../../../modules/juce_audio_processors/utilities/juce_RangedAudioParameter.cpp"
"../../../../../modules/juce_audio_processors/utilities/juce_RangedAudioParameter.h"
"../../../../../modules/juce_audio_processors/utilities/juce_VST2ClientExtensions.cpp"
"../../../../../modules/juce_audio_processors/utilities/juce_VST2ClientExtensions.h"
"../../../../../modules/juce_audio_processors/utilities/juce_VST3ClientExtensions.h"
"../../../../../modules/juce_audio_processors/utilities/juce_VSTCallbackHandler.cpp"
"../../../../../modules/juce_audio_processors/utilities/juce_VSTCallbackHandler.h"
"../../../../../modules/juce_audio_processors/juce_audio_processors.cpp"
"../../../../../modules/juce_audio_processors/juce_audio_processors.mm"
"../../../../../modules/juce_audio_processors/juce_audio_processors_ara.cpp"


+ 6
- 2
extras/NetworkGraphicsDemo/Builds/VisualStudio2022/NetworkGraphicsDemo_App.vcxproj View File

@@ -973,6 +973,9 @@
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\ARA\juce_AudioProcessor_ARAExtensions.cpp">
<ExcludedFromBuild>true</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AAXClientExtensions.cpp">
<ExcludedFromBuild>true</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AudioParameterBool.cpp">
<ExcludedFromBuild>true</ExcludedFromBuild>
</ClCompile>
@@ -1003,7 +1006,7 @@
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_RangedAudioParameter.cpp">
<ExcludedFromBuild>true</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VSTCallbackHandler.cpp">
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VST2ClientExtensions.cpp">
<ExcludedFromBuild>true</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\juce_audio_processors.cpp">
@@ -2896,6 +2899,7 @@
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\ARA\juce_ARAModelObjects.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\ARA\juce_ARAPlugInInstanceRoles.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\ARA\juce_AudioProcessor_ARAExtensions.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AAXClientExtensions.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AudioParameterBool.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AudioParameterChoice.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AudioParameterFloat.h"/>
@@ -2908,8 +2912,8 @@
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_ParameterAttachments.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_PluginHostType.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_RangedAudioParameter.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VST2ClientExtensions.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VST3ClientExtensions.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VSTCallbackHandler.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\juce_audio_processors.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_utils\audio_cd\juce_AudioCDBurner.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_utils\audio_cd\juce_AudioCDReader.h"/>


+ 9
- 3
extras/NetworkGraphicsDemo/Builds/VisualStudio2022/NetworkGraphicsDemo_App.vcxproj.filters View File

@@ -1468,6 +1468,9 @@
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\ARA\juce_AudioProcessor_ARAExtensions.cpp">
<Filter>JUCE Modules\juce_audio_processors\utilities\ARA</Filter>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AAXClientExtensions.cpp">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AudioParameterBool.cpp">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClCompile>
@@ -1498,7 +1501,7 @@
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_RangedAudioParameter.cpp">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VSTCallbackHandler.cpp">
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VST2ClientExtensions.cpp">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\juce_audio_processors.cpp">
@@ -4398,6 +4401,9 @@
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\ARA\juce_AudioProcessor_ARAExtensions.h">
<Filter>JUCE Modules\juce_audio_processors\utilities\ARA</Filter>
</ClInclude>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AAXClientExtensions.h">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClInclude>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AudioParameterBool.h">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClInclude>
@@ -4434,10 +4440,10 @@
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_RangedAudioParameter.h">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClInclude>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VST3ClientExtensions.h">
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VST2ClientExtensions.h">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClInclude>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VSTCallbackHandler.h">
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VST3ClientExtensions.h">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClInclude>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\juce_audio_processors.h">


+ 6
- 2
extras/UnitTestRunner/Builds/VisualStudio2017/UnitTestRunner_ConsoleApp.vcxproj View File

@@ -989,6 +989,9 @@
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\ARA\juce_AudioProcessor_ARAExtensions.cpp">
<ExcludedFromBuild>true</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AAXClientExtensions.cpp">
<ExcludedFromBuild>true</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AudioParameterBool.cpp">
<ExcludedFromBuild>true</ExcludedFromBuild>
</ClCompile>
@@ -1019,7 +1022,7 @@
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_RangedAudioParameter.cpp">
<ExcludedFromBuild>true</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VSTCallbackHandler.cpp">
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VST2ClientExtensions.cpp">
<ExcludedFromBuild>true</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\juce_audio_processors.cpp">
@@ -3054,6 +3057,7 @@
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\ARA\juce_ARAModelObjects.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\ARA\juce_ARAPlugInInstanceRoles.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\ARA\juce_AudioProcessor_ARAExtensions.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AAXClientExtensions.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AudioParameterBool.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AudioParameterChoice.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AudioParameterFloat.h"/>
@@ -3066,8 +3070,8 @@
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_ParameterAttachments.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_PluginHostType.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_RangedAudioParameter.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VST2ClientExtensions.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VST3ClientExtensions.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VSTCallbackHandler.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\juce_audio_processors.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_utils\audio_cd\juce_AudioCDBurner.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_utils\audio_cd\juce_AudioCDReader.h"/>


+ 9
- 3
extras/UnitTestRunner/Builds/VisualStudio2017/UnitTestRunner_ConsoleApp.vcxproj.filters View File

@@ -1537,6 +1537,9 @@
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\ARA\juce_AudioProcessor_ARAExtensions.cpp">
<Filter>JUCE Modules\juce_audio_processors\utilities\ARA</Filter>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AAXClientExtensions.cpp">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AudioParameterBool.cpp">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClCompile>
@@ -1567,7 +1570,7 @@
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_RangedAudioParameter.cpp">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VSTCallbackHandler.cpp">
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VST2ClientExtensions.cpp">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\juce_audio_processors.cpp">
@@ -4626,6 +4629,9 @@
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\ARA\juce_AudioProcessor_ARAExtensions.h">
<Filter>JUCE Modules\juce_audio_processors\utilities\ARA</Filter>
</ClInclude>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AAXClientExtensions.h">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClInclude>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AudioParameterBool.h">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClInclude>
@@ -4662,10 +4668,10 @@
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_RangedAudioParameter.h">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClInclude>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VST3ClientExtensions.h">
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VST2ClientExtensions.h">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClInclude>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VSTCallbackHandler.h">
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VST3ClientExtensions.h">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClInclude>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\juce_audio_processors.h">


+ 6
- 2
extras/UnitTestRunner/Builds/VisualStudio2019/UnitTestRunner_ConsoleApp.vcxproj View File

@@ -989,6 +989,9 @@
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\ARA\juce_AudioProcessor_ARAExtensions.cpp">
<ExcludedFromBuild>true</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AAXClientExtensions.cpp">
<ExcludedFromBuild>true</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AudioParameterBool.cpp">
<ExcludedFromBuild>true</ExcludedFromBuild>
</ClCompile>
@@ -1019,7 +1022,7 @@
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_RangedAudioParameter.cpp">
<ExcludedFromBuild>true</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VSTCallbackHandler.cpp">
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VST2ClientExtensions.cpp">
<ExcludedFromBuild>true</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\juce_audio_processors.cpp">
@@ -3054,6 +3057,7 @@
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\ARA\juce_ARAModelObjects.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\ARA\juce_ARAPlugInInstanceRoles.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\ARA\juce_AudioProcessor_ARAExtensions.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AAXClientExtensions.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AudioParameterBool.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AudioParameterChoice.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AudioParameterFloat.h"/>
@@ -3066,8 +3070,8 @@
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_ParameterAttachments.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_PluginHostType.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_RangedAudioParameter.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VST2ClientExtensions.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VST3ClientExtensions.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VSTCallbackHandler.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\juce_audio_processors.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_utils\audio_cd\juce_AudioCDBurner.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_utils\audio_cd\juce_AudioCDReader.h"/>


+ 9
- 3
extras/UnitTestRunner/Builds/VisualStudio2019/UnitTestRunner_ConsoleApp.vcxproj.filters View File

@@ -1537,6 +1537,9 @@
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\ARA\juce_AudioProcessor_ARAExtensions.cpp">
<Filter>JUCE Modules\juce_audio_processors\utilities\ARA</Filter>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AAXClientExtensions.cpp">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AudioParameterBool.cpp">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClCompile>
@@ -1567,7 +1570,7 @@
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_RangedAudioParameter.cpp">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VSTCallbackHandler.cpp">
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VST2ClientExtensions.cpp">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\juce_audio_processors.cpp">
@@ -4626,6 +4629,9 @@
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\ARA\juce_AudioProcessor_ARAExtensions.h">
<Filter>JUCE Modules\juce_audio_processors\utilities\ARA</Filter>
</ClInclude>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AAXClientExtensions.h">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClInclude>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AudioParameterBool.h">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClInclude>
@@ -4662,10 +4668,10 @@
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_RangedAudioParameter.h">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClInclude>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VST3ClientExtensions.h">
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VST2ClientExtensions.h">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClInclude>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VSTCallbackHandler.h">
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VST3ClientExtensions.h">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClInclude>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\juce_audio_processors.h">


+ 6
- 2
extras/UnitTestRunner/Builds/VisualStudio2022/UnitTestRunner_ConsoleApp.vcxproj View File

@@ -989,6 +989,9 @@
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\ARA\juce_AudioProcessor_ARAExtensions.cpp">
<ExcludedFromBuild>true</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AAXClientExtensions.cpp">
<ExcludedFromBuild>true</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AudioParameterBool.cpp">
<ExcludedFromBuild>true</ExcludedFromBuild>
</ClCompile>
@@ -1019,7 +1022,7 @@
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_RangedAudioParameter.cpp">
<ExcludedFromBuild>true</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VSTCallbackHandler.cpp">
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VST2ClientExtensions.cpp">
<ExcludedFromBuild>true</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\juce_audio_processors.cpp">
@@ -3054,6 +3057,7 @@
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\ARA\juce_ARAModelObjects.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\ARA\juce_ARAPlugInInstanceRoles.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\ARA\juce_AudioProcessor_ARAExtensions.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AAXClientExtensions.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AudioParameterBool.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AudioParameterChoice.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AudioParameterFloat.h"/>
@@ -3066,8 +3070,8 @@
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_ParameterAttachments.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_PluginHostType.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_RangedAudioParameter.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VST2ClientExtensions.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VST3ClientExtensions.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VSTCallbackHandler.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\juce_audio_processors.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_utils\audio_cd\juce_AudioCDBurner.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_utils\audio_cd\juce_AudioCDReader.h"/>


+ 9
- 3
extras/UnitTestRunner/Builds/VisualStudio2022/UnitTestRunner_ConsoleApp.vcxproj.filters View File

@@ -1537,6 +1537,9 @@
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\ARA\juce_AudioProcessor_ARAExtensions.cpp">
<Filter>JUCE Modules\juce_audio_processors\utilities\ARA</Filter>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AAXClientExtensions.cpp">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AudioParameterBool.cpp">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClCompile>
@@ -1567,7 +1570,7 @@
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_RangedAudioParameter.cpp">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VSTCallbackHandler.cpp">
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VST2ClientExtensions.cpp">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\juce_audio_processors.cpp">
@@ -4626,6 +4629,9 @@
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\ARA\juce_AudioProcessor_ARAExtensions.h">
<Filter>JUCE Modules\juce_audio_processors\utilities\ARA</Filter>
</ClInclude>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AAXClientExtensions.h">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClInclude>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AudioParameterBool.h">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClInclude>
@@ -4662,10 +4668,10 @@
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_RangedAudioParameter.h">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClInclude>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VST3ClientExtensions.h">
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VST2ClientExtensions.h">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClInclude>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VSTCallbackHandler.h">
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VST3ClientExtensions.h">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClInclude>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\juce_audio_processors.h">


+ 6
- 2
extras/WindowsDLL/Builds/VisualStudio2022/WindowsDLL_StaticLibrary.vcxproj View File

@@ -972,6 +972,9 @@
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\ARA\juce_AudioProcessor_ARAExtensions.cpp">
<ExcludedFromBuild>true</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AAXClientExtensions.cpp">
<ExcludedFromBuild>true</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AudioParameterBool.cpp">
<ExcludedFromBuild>true</ExcludedFromBuild>
</ClCompile>
@@ -1002,7 +1005,7 @@
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_RangedAudioParameter.cpp">
<ExcludedFromBuild>true</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VSTCallbackHandler.cpp">
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VST2ClientExtensions.cpp">
<ExcludedFromBuild>true</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\juce_audio_processors.cpp">
@@ -2872,6 +2875,7 @@
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\ARA\juce_ARAModelObjects.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\ARA\juce_ARAPlugInInstanceRoles.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\ARA\juce_AudioProcessor_ARAExtensions.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AAXClientExtensions.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AudioParameterBool.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AudioParameterChoice.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AudioParameterFloat.h"/>
@@ -2884,8 +2888,8 @@
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_ParameterAttachments.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_PluginHostType.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_RangedAudioParameter.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VST2ClientExtensions.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VST3ClientExtensions.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VSTCallbackHandler.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\juce_audio_processors.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_utils\audio_cd\juce_AudioCDBurner.h"/>
<ClInclude Include="..\..\..\..\modules\juce_audio_utils\audio_cd\juce_AudioCDReader.h"/>


+ 9
- 3
extras/WindowsDLL/Builds/VisualStudio2022/WindowsDLL_StaticLibrary.vcxproj.filters View File

@@ -1465,6 +1465,9 @@
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\ARA\juce_AudioProcessor_ARAExtensions.cpp">
<Filter>JUCE Modules\juce_audio_processors\utilities\ARA</Filter>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AAXClientExtensions.cpp">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AudioParameterBool.cpp">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClCompile>
@@ -1495,7 +1498,7 @@
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_RangedAudioParameter.cpp">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VSTCallbackHandler.cpp">
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VST2ClientExtensions.cpp">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClCompile>
<ClCompile Include="..\..\..\..\modules\juce_audio_processors\juce_audio_processors.cpp">
@@ -4365,6 +4368,9 @@
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\ARA\juce_AudioProcessor_ARAExtensions.h">
<Filter>JUCE Modules\juce_audio_processors\utilities\ARA</Filter>
</ClInclude>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AAXClientExtensions.h">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClInclude>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_AudioParameterBool.h">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClInclude>
@@ -4401,10 +4407,10 @@
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_RangedAudioParameter.h">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClInclude>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VST3ClientExtensions.h">
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VST2ClientExtensions.h">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClInclude>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VSTCallbackHandler.h">
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\utilities\juce_VST3ClientExtensions.h">
<Filter>JUCE Modules\juce_audio_processors\utilities</Filter>
</ClInclude>
<ClInclude Include="..\..\..\..\modules\juce_audio_processors\juce_audio_processors.h">


+ 15
- 11
modules/juce_audio_plugin_client/juce_audio_plugin_client_AAX.cpp View File

@@ -2480,11 +2480,13 @@ namespace AAXClasses
properties->AddProperty (AAX_eProperty_InputStemFormat, static_cast<AAX_CPropertyValue> (aaxInputFormat));
properties->AddProperty (AAX_eProperty_OutputStemFormat, static_cast<AAX_CPropertyValue> (aaxOutputFormat));
const auto& extensions = processor.getAAXClientExtensions();
// This value needs to match the RTAS wrapper's Type ID, so that
// the host knows that the RTAS/AAX plugins are equivalent.
const int32 pluginID = processor.getAAXPluginIDForMainBusConfig (fullLayout.getMainInputChannelSet(),
fullLayout.getMainOutputChannelSet(),
false);
const auto pluginID = extensions.getPluginIDForMainBusConfig (fullLayout.getMainInputChannelSet(),
fullLayout.getMainOutputChannelSet(),
false);
// The plugin id generated from your AudioProcessor's getAAXPluginIDForMainBusConfig callback
// it not unique. Please fix your implementation!
@@ -2495,9 +2497,9 @@ namespace AAXClasses
#if ! JucePlugin_AAXDisableAudioSuite
properties->AddProperty (AAX_eProperty_PlugInID_AudioSuite,
processor.getAAXPluginIDForMainBusConfig (fullLayout.getMainInputChannelSet(),
fullLayout.getMainOutputChannelSet(),
true));
extensions.getPluginIDForMainBusConfig (fullLayout.getMainInputChannelSet(),
fullLayout.getMainOutputChannelSet(),
true));
#endif
#if JucePlugin_AAXDisableMultiMono
@@ -2601,11 +2603,13 @@ namespace AAXClasses
const int numMeters = addAAXMeters (*plugin, descriptor);
#ifdef JucePlugin_AAXPageTableFile
// optional page table setting - define this macro in your project if you want
// to set this value - see Avid documentation for details about its format.
descriptor.AddResourceInfo (AAX_eResourceType_PageTable, JucePlugin_AAXPageTableFile);
#endif
const auto& extensions = plugin->getAAXClientExtensions();
if (const auto searchPath = extensions.getPageFileSearchPath().getFullPathName(); searchPath.isNotEmpty())
descriptor.AddResourceInfo (AAX_eResourceType_PageTableDir, searchPath.toRawUTF8());
if (const auto filename = extensions.getPageFileName(); filename.isNotEmpty())
descriptor.AddResourceInfo (AAX_eResourceType_PageTable, filename.toRawUTF8());
check (descriptor.AddProcPtr ((void*) JuceAAX_GUI::Create, kAAX_ProcPtrID_Create_EffectGUI));
check (descriptor.AddProcPtr ((void*) JuceAAX_Processor::Create, kAAX_ProcPtrID_Create_EffectParameters));


+ 3
- 3
modules/juce_audio_plugin_client/juce_audio_plugin_client_VST2.cpp View File

@@ -1823,7 +1823,7 @@ private:
if (args.index == Vst2::effGetParamDisplay)
return handleCockosGetParameterText (args.value, args.ptr, args.opt);
if (auto callbackHandler = dynamic_cast<VSTCallbackHandler*> (processor.get()))
if (auto callbackHandler = processor->getVST2ClientExtensions())
return callbackHandler->handleVstManufacturerSpecific (args.index, args.value, args.ptr, args.opt);
return 0;
@@ -1882,7 +1882,7 @@ private:
if (matches ("hasCockosExtensions"))
return (int32) 0xbeef0000;
if (auto callbackHandler = dynamic_cast<VSTCallbackHandler*> (processor.get()))
if (auto callbackHandler = processor->getVST2ClientExtensions())
return callbackHandler->handleVstPluginCanDo (args.index, args.value, args.ptr, args.opt);
return 0;
@@ -2115,7 +2115,7 @@ namespace
auto* wrapper = new JuceVSTWrapper (audioMaster, std::move (processor));
auto* aEffect = wrapper->getAEffect();
if (auto* callbackHandler = dynamic_cast<VSTCallbackHandler*> (processorPtr))
if (auto* callbackHandler = processorPtr->getVST2ClientExtensions())
{
callbackHandler->handleVstHostCallbackAvailable ([audioMaster, aEffect] (int32 opcode, int32 index, pointer_sized_int value, void* ptr, float opt)
{


+ 4
- 4
modules/juce_audio_plugin_client/juce_audio_plugin_client_VST3.cpp View File

@@ -371,7 +371,7 @@ static QueryInterfaceResult queryAdditionalInterfaces (AudioProcessor* processor
void* obj = nullptr;
if (auto* extensions = dynamic_cast<VST3ClientExtensions*> (processor))
if (auto* extensions = processor->getVST3ClientExtensions())
{
const auto result = (extensions->*member) (targetIID, &obj);
return { result, obj };
@@ -1523,7 +1523,7 @@ private:
{
audioProcessor = newAudioProcessor;
if (auto* extensions = dynamic_cast<VST3ClientExtensions*> (audioProcessor->get()))
if (auto* extensions = audioProcessor->get()->getVST3ClientExtensions())
{
extensions->setIComponentHandler (componentHandler);
extensions->setIHostApplication (hostContext.get());
@@ -3082,7 +3082,7 @@ public:
{
if (isFirstBus)
{
if (auto* extensions = dynamic_cast<VST3ClientExtensions*> (pluginInstance))
if (auto* extensions = pluginInstance->getVST3ClientExtensions())
return extensions->getPluginHasMainInput() ? Vst::kMain : Vst::kAux;
return Vst::kMain;
@@ -3957,7 +3957,7 @@ public:
const ScopedJuceInitialiser_GUI libraryInitialiser;
auto filter = createPluginFilterOfType (AudioProcessor::WrapperType::wrapperType_VST3);
auto* extensions = dynamic_cast<const VST3ClientExtensions*> (filter.get());
auto* extensions = filter->getVST3ClientExtensions();
if (extensions == nullptr || extensions->getCompatibleClasses().empty())
return kResultFalse;


+ 2
- 1
modules/juce_audio_processors/juce_audio_processors.cpp View File

@@ -222,7 +222,8 @@ private:
#include "utilities/juce_AudioProcessorValueTreeState.cpp"
#include "utilities/juce_PluginHostType.cpp"
#include "utilities/juce_NativeScaleFactorNotifier.cpp"
#include "utilities/juce_VSTCallbackHandler.cpp"
#include "utilities/juce_AAXClientExtensions.cpp"
#include "utilities/juce_VST2ClientExtensions.cpp"
#include "utilities/ARA/juce_ARA_utils.cpp"
#include "format_types/juce_LV2PluginFormat.cpp"


+ 2
- 1
modules/juce_audio_processors/juce_audio_processors.h View File

@@ -130,7 +130,8 @@
#endif
//==============================================================================
#include "utilities/juce_VSTCallbackHandler.h"
#include "utilities/juce_AAXClientExtensions.h"
#include "utilities/juce_VST2ClientExtensions.h"
#include "utilities/juce_VST3ClientExtensions.h"
#include "utilities/juce_NativeScaleFactorNotifier.h"
#include "format_types/juce_ARACommon.h"


+ 57
- 65
modules/juce_audio_processors/processors/juce_AudioProcessor.cpp View File

@@ -1183,71 +1183,6 @@ AudioProcessor::BusesProperties AudioProcessor::BusesProperties::withOutput (con
return retval;
}
//==============================================================================
int32 AudioProcessor::getAAXPluginIDForMainBusConfig (const AudioChannelSet& mainInputLayout,
const AudioChannelSet& mainOutputLayout,
const bool idForAudioSuite) const
{
int uniqueFormatId = 0;
for (int dir = 0; dir < 2; ++dir)
{
const bool isInput = (dir == 0);
auto& set = (isInput ? mainInputLayout : mainOutputLayout);
int aaxFormatIndex = 0;
const AudioChannelSet sets[]
{
AudioChannelSet::disabled(),
AudioChannelSet::mono(),
AudioChannelSet::stereo(),
AudioChannelSet::createLCR(),
AudioChannelSet::createLCRS(),
AudioChannelSet::quadraphonic(),
AudioChannelSet::create5point0(),
AudioChannelSet::create5point1(),
AudioChannelSet::create6point0(),
AudioChannelSet::create6point1(),
AudioChannelSet::create7point0(),
AudioChannelSet::create7point1(),
AudioChannelSet::create7point0SDDS(),
AudioChannelSet::create7point1SDDS(),
AudioChannelSet::create7point0point2(),
AudioChannelSet::create7point1point2(),
AudioChannelSet::ambisonic (1),
AudioChannelSet::ambisonic (2),
AudioChannelSet::ambisonic (3),
AudioChannelSet::create5point0point2(),
AudioChannelSet::create5point1point2(),
AudioChannelSet::create5point0point4(),
AudioChannelSet::create5point1point4(),
AudioChannelSet::create7point0point4(),
AudioChannelSet::create7point1point4(),
AudioChannelSet::create7point0point6(),
AudioChannelSet::create7point1point6(),
AudioChannelSet::create9point0point4(),
AudioChannelSet::create9point1point4(),
AudioChannelSet::create9point0point6(),
AudioChannelSet::create9point1point6(),
AudioChannelSet::ambisonic (4),
AudioChannelSet::ambisonic (5),
AudioChannelSet::ambisonic (6),
AudioChannelSet::ambisonic (7)
};
const auto index = (int) std::distance (std::begin (sets), std::find (std::begin (sets), std::end (sets), set));
if (index != numElementsInArray (sets))
aaxFormatIndex = index;
else
jassertfalse;
uniqueFormatId = (uniqueFormatId << 8) | aaxFormatIndex;
}
return (idForAudioSuite ? 0x6a796161 /* 'jyaa' */ : 0x6a636161 /* 'jcaa' */) + uniqueFormatId;
}
//==============================================================================
const char* AudioProcessor::getWrapperTypeDescription (AudioProcessor::WrapperType type) noexcept
{
@@ -1266,6 +1201,63 @@ const char* AudioProcessor::getWrapperTypeDescription (AudioProcessor::WrapperTy
}
}
//==============================================================================
VST2ClientExtensions* AudioProcessor::getVST2ClientExtensions()
{
if (auto* extensions = dynamic_cast<VST2ClientExtensions*> (this))
{
// To silence this jassert there are two options:
//
// 1. - Override AudioProcessor::getVST2ClientExtensions() and
// return the "this" pointer.
//
// - This option has the advantage of being quick and easy,
// and avoids the above dynamic_cast.
//
// 2. - Create a new object that inherits from VST2ClientExtensions.
//
// - Port your existing functionality from the AudioProcessor
// to the new object.
//
// - Return a pointer to the object in AudioProcessor::getVST2ClientExtensions().
//
// - This option has the advantage of allowing you to break
// up your AudioProcessor into smaller composable objects.
jassertfalse;
return extensions;
}
return nullptr;
}
VST3ClientExtensions* AudioProcessor::getVST3ClientExtensions()
{
if (auto* extensions = dynamic_cast<VST3ClientExtensions*> (this))
{
// To silence this jassert there are two options:
//
// 1. - Override AudioProcessor::getVST3ClientExtensions() and
// return the "this" pointer.
//
// - This option has the advantage of being quick and easy,
// and avoids the above dynamic_cast.
//
// 2. - Create a new object that inherits from VST3ClientExtensions.
//
// - Port your existing functionality from the AudioProcessor
// to the new object.
//
// - Return a pointer to the object in AudioProcessor::getVST3ClientExtensions().
//
// - This option has the advantage of allowing you to break
// up your AudioProcessor into smaller composable objects.
jassertfalse;
return extensions;
}
return nullptr;
}
//==============================================================================
JUCE_BEGIN_IGNORE_WARNINGS_GCC_LIKE ("-Wdeprecated-declarations")
JUCE_BEGIN_IGNORE_WARNINGS_MSVC (4996)


+ 34
- 11
modules/juce_audio_processors/processors/juce_AudioProcessor.h View File

@@ -40,9 +40,11 @@ namespace juce
plugin, you should implement a global function called createPluginFilter() which
creates and returns a new instance of your subclass.
@see AAXClientExtensions, VST2ClientExtensions, VST3ClientExtensions
@tags{Audio}
*/
class JUCE_API AudioProcessor
class JUCE_API AudioProcessor : private AAXClientExtensions
{
protected:
struct BusesProperties;
@@ -1176,18 +1178,30 @@ public:
void setRateAndBufferSizeDetails (double sampleRate, int blockSize) noexcept;
//==============================================================================
/** AAX plug-ins need to report a unique "plug-in id" for every audio layout
configuration that your AudioProcessor supports on the main bus. Override this
function if you want your AudioProcessor to use a custom "plug-in id" (for example
to stay backward compatible with older versions of JUCE).
/** Returns a reference to an object that implements AAX specific information regarding
this AudioProcessor.
*/
virtual AAXClientExtensions& getAAXClientExtensions() { return *this; }
/** Returns a non-owning pointer to an object that implements VST2 specific information
regarding this AudioProcessor.
By default, for backwards compatibility, this will attempt to dynamic-cast this
AudioProcessor to VST2ClientExtensions.
It is recommended to override this function to return a pointer directly to an object
of the correct type in order to avoid this dynamic cast.
*/
virtual VST2ClientExtensions* getVST2ClientExtensions();
/** Returns a non-owning pointer to an object that implements VST3 specific information
regarding this AudioProcessor.
The default implementation will compute a unique integer from the input and output
layout and add this value to the 4 character code 'jcaa' (for native AAX) or 'jyaa'
(for AudioSuite plug-ins).
By default, for backwards compatibility, this will attempt to dynamic-cast this
AudioProcessor to VST3ClientExtensions.
It is recommended to override this function to return a pointer directly to an object
of the correct type in order to avoid this dynamic cast.
*/
virtual int32 getAAXPluginIDForMainBusConfig (const AudioChannelSet& mainInputLayout,
const AudioChannelSet& mainOutputLayout,
bool idForAudioSuite) const;
virtual VST3ClientExtensions* getVST3ClientExtensions();
//==============================================================================
/** Some plug-ins support sharing response curve data with the host so that it can
@@ -1444,6 +1458,15 @@ public:
#endif
private:
/** This is deprecated. Instead, create an AAXClientExtensions object,
implement getPluginIDForMainBusConfig() and return the object from
getAAXClientExtensions().
*/
[[deprecated ("Override AAXClientExtensions::getPluginIDForMainBusConfig() instead")]]
virtual int32 getAAXPluginIDForMainBusConfig (const AudioChannelSet&,
const AudioChannelSet&,
const bool) const { return {}; }
//==============================================================================
struct InOutChannelPair
{


+ 103
- 0
modules/juce_audio_processors/utilities/juce_AAXClientExtensions.cpp View File

@@ -0,0 +1,103 @@
/*
==============================================================================
This file is part of the JUCE library.
Copyright (c) 2022 - Raw Material Software Limited
JUCE is an open source library subject to commercial or open-source
licensing.
By using JUCE, you agree to the terms of both the JUCE 7 End-User License
Agreement and JUCE Privacy Policy.
End User License Agreement: www.juce.com/juce-7-licence
Privacy Policy: www.juce.com/juce-privacy-policy
Or: You may also use this code under the terms of the GPL v3 (see
www.gnu.org/licenses).
JUCE IS PROVIDED "AS IS" WITHOUT ANY WARRANTY, AND ALL WARRANTIES, WHETHER
EXPRESSED OR IMPLIED, INCLUDING MERCHANTABILITY AND FITNESS FOR PURPOSE, ARE
DISCLAIMED.
==============================================================================
*/
namespace juce
{
int32 AAXClientExtensions::getPluginIDForMainBusConfig (const AudioChannelSet& mainInputLayout,
const AudioChannelSet& mainOutputLayout,
bool idForAudioSuite) const
{
int uniqueFormatId = 0;
for (int dir = 0; dir < 2; ++dir)
{
const bool isInput = (dir == 0);
auto& set = (isInput ? mainInputLayout : mainOutputLayout);
int aaxFormatIndex = 0;
const AudioChannelSet sets[]
{
AudioChannelSet::disabled(),
AudioChannelSet::mono(),
AudioChannelSet::stereo(),
AudioChannelSet::createLCR(),
AudioChannelSet::createLCRS(),
AudioChannelSet::quadraphonic(),
AudioChannelSet::create5point0(),
AudioChannelSet::create5point1(),
AudioChannelSet::create6point0(),
AudioChannelSet::create6point1(),
AudioChannelSet::create7point0(),
AudioChannelSet::create7point1(),
AudioChannelSet::create7point0SDDS(),
AudioChannelSet::create7point1SDDS(),
AudioChannelSet::create7point0point2(),
AudioChannelSet::create7point1point2(),
AudioChannelSet::ambisonic (1),
AudioChannelSet::ambisonic (2),
AudioChannelSet::ambisonic (3),
AudioChannelSet::create5point0point2(),
AudioChannelSet::create5point1point2(),
AudioChannelSet::create5point0point4(),
AudioChannelSet::create5point1point4(),
AudioChannelSet::create7point0point4(),
AudioChannelSet::create7point1point4(),
AudioChannelSet::create7point0point6(),
AudioChannelSet::create7point1point6(),
AudioChannelSet::create9point0point4(),
AudioChannelSet::create9point1point4(),
AudioChannelSet::create9point0point6(),
AudioChannelSet::create9point1point6(),
AudioChannelSet::ambisonic (4),
AudioChannelSet::ambisonic (5),
AudioChannelSet::ambisonic (6),
AudioChannelSet::ambisonic (7)
};
const auto index = (int) std::distance (std::begin (sets), std::find (std::begin (sets), std::end (sets), set));
if (index != numElementsInArray (sets))
aaxFormatIndex = index;
else
jassertfalse;
uniqueFormatId = (uniqueFormatId << 8) | aaxFormatIndex;
}
return (idForAudioSuite ? 0x6a796161 /* 'jyaa' */ : 0x6a636161 /* 'jcaa' */) + uniqueFormatId;
}
String AAXClientExtensions::getPageFileName() const
{
#ifdef JucePlugin_AAXPageTableFile
#warning "JucePlugin_AAXPageTableFile is deprecated, instead implement AAXClientExtensions::getPageFileName()"
return JucePlugin_AAXPageTableFile;
#else
return {};
#endif
}
} // namespace juce

+ 83
- 0
modules/juce_audio_processors/utilities/juce_AAXClientExtensions.h View File

@@ -0,0 +1,83 @@
/*
==============================================================================
This file is part of the JUCE library.
Copyright (c) 2022 - Raw Material Software Limited
JUCE is an open source library subject to commercial or open-source
licensing.
By using JUCE, you agree to the terms of both the JUCE 7 End-User License
Agreement and JUCE Privacy Policy.
End User License Agreement: www.juce.com/juce-7-licence
Privacy Policy: www.juce.com/juce-privacy-policy
Or: You may also use this code under the terms of the GPL v3 (see
www.gnu.org/licenses).
JUCE IS PROVIDED "AS IS" WITHOUT ANY WARRANTY, AND ALL WARRANTIES, WHETHER
EXPRESSED OR IMPLIED, INCLUDING MERCHANTABILITY AND FITNESS FOR PURPOSE, ARE
DISCLAIMED.
==============================================================================
*/
namespace juce
{
/**
An interface to allow an AudioProcessor to implement extended AAX-specific functionality.
To use this class, create an object that inherits from it, implement the methods, then return
a pointer to the object in your AudioProcessor `getAAXClientExtensions()` method.
@see AudioProcessor, VST2ClientExtensions, VST3ClientExtensions
@tags{Audio}
*/
struct AAXClientExtensions
{
virtual ~AAXClientExtensions() = default;
/** AAX plug-ins need to report a unique "plug-in id" for every audio layout
configuration that your AudioProcessor supports on the main bus. Override this
function if you want your AudioProcessor to use a custom "plug-in id" (for example
to stay backward compatible with older versions of JUCE).
The default implementation will compute a unique integer from the input and output
layout and add this value to the 4 character code 'jcaa' (for native AAX) or 'jyaa'
(for AudioSuite plug-ins).
*/
virtual int32 getPluginIDForMainBusConfig (const AudioChannelSet& mainInputLayout,
const AudioChannelSet& mainOutputLayout,
bool idForAudioSuite) const;
/** Returns an optional filename (including extension) for a page file to be used.
A page file allows an AAX plugin to specify how its parameters are displayed on
various control surfaces. For more information read the Page Table Guide in the
AAX SDK documentation.
By default this file will be searched for in `*.aaxplugin/Contents/Resources`.
@see getPageFileSearchPath
*/
virtual String getPageFileName() const;
/** Optionally returns a search path for finding a page table file.
This can be useful for specifying a location outside the plugin bundle so users can
make changes to a page table file without breaking any code signatures.
If this function returns a default-constructed File, then a default location will be used.
The AAX SDK states this location will be `*.aaxplugin/Contents/Resources`.
@note The returned path should be an absolute path to a directory.
@see getPageFileName
*/
virtual File getPageFileSearchPath() const { return {}; }
};
} // namespace juce

modules/juce_audio_processors/utilities/juce_VSTCallbackHandler.cpp → modules/juce_audio_processors/utilities/juce_VST2ClientExtensions.cpp View File

@@ -26,14 +26,14 @@
namespace juce
{
pointer_sized_int VSTCallbackHandler::handleVstPluginCanDo ([[maybe_unused]] int32 index,
[[maybe_unused]] pointer_sized_int value,
[[maybe_unused]] void* ptr,
[[maybe_unused]] float opt)
pointer_sized_int VST2ClientExtensions::handleVstPluginCanDo ([[maybe_unused]] int32 index,
[[maybe_unused]] pointer_sized_int value,
[[maybe_unused]] void* ptr,
[[maybe_unused]] float opt)
{
return 0;
}
void VSTCallbackHandler::handleVstHostCallbackAvailable ([[maybe_unused]] std::function<VstHostCallbackType>&& callback) {}
void VST2ClientExtensions::handleVstHostCallbackAvailable ([[maybe_unused]] std::function<VstHostCallbackType>&& callback) {}
} // namespace juce

modules/juce_audio_processors/utilities/juce_VSTCallbackHandler.h → modules/juce_audio_processors/utilities/juce_VST2ClientExtensions.h View File

@@ -26,19 +26,19 @@
namespace juce
{
/** An interface to allow an AudioProcessor to send and receive VST specific calls from
the host.
/**
An interface to allow an AudioProcessor to implement extended VST2-specific functionality.
To use this class, ensure that your AudioProcessor publicly inherits
from VSTCallbackHandler.
To use this class, create an object that inherits from it, implement the methods, then return
a pointer to the object in your AudioProcessor::getVST2ClientExtensions() method.
@see VST3ClientExtensions
@see AudioProcessor, AAXClientExtensions, VST3ClientExtensions
@tags{Audio}
*/
struct VSTCallbackHandler
struct VST2ClientExtensions
{
virtual ~VSTCallbackHandler() = default;
virtual ~VST2ClientExtensions() = default;
/** This is called by the VST plug-in wrapper when it receives unhandled
plug-in "can do" calls from the host.
@@ -56,13 +56,12 @@ struct VSTCallbackHandler
void* ptr,
float opt) = 0;
// Note: VS2013 prevents a "using" declaration here
/** The host callback function type. */
typedef pointer_sized_int (VstHostCallbackType) (int32 opcode,
int32 index,
pointer_sized_int value,
void* ptr,
float opt);
using VstHostCallbackType = pointer_sized_int (int32 opcode,
int32 index,
pointer_sized_int value,
void* ptr,
float opt);
/** This is called once by the VST plug-in wrapper after its constructor.
You can use the supplied function to query the VST host.
@@ -70,4 +69,6 @@ struct VSTCallbackHandler
virtual void handleVstHostCallbackAvailable (std::function<VstHostCallbackType>&& callback);
};
using VSTCallbackHandler [[deprecated ("replace with VST2ClientExtensions")]] = VST2ClientExtensions;
} // namespace juce

+ 5
- 5
modules/juce_audio_processors/utilities/juce_VST3ClientExtensions.h View File

@@ -37,13 +37,13 @@ namespace Steinberg
namespace juce
{
/** An interface to allow an AudioProcessor to implement extended VST3-specific
functionality.
/**
An interface to allow an AudioProcessor to implement extended VST3-specific functionality.
To use this class, ensure that your AudioProcessor publicly inherits
from VST3ClientExtensions.
To use this class, create an object that inherits from it, implement the methods, then return
a pointer to the object in your AudioProcessor::getVST3ClientExtensions() method.
@see VSTCallbackHandler
@see AudioProcessor, AAXClientExtensions, VST2ClientExtensions
@tags{Audio}
*/


Loading…
Cancel
Save