1
0
Fork 0
mirror of https://github.com/juce-framework/JUCE.git synced 2026-01-13 00:04:19 +00:00
JUCE/modules/juce_audio_plugin_client
reuk 361f839546
VST3 Client: Avoid calling performEdit from the audio thread
Previously, all VST3 parameter changes were signalled to the host via
performEdit, regardless of the originating thread. This breaks the
contract of the IEditController interface, which requires that all calls
are made from the UI thread.

This change modifies the VST3 wrapper so that it will only call
performEdit when a parameter is set on the message thread. If a
parameter is set on the audio thread instead, then the parameter change
will be signalled to the host using
`ProcessData::outputParameterChanges`.

If your VST3 plugin uses a background thread to update parameters for
some reason, you'll encounter data races. Please don't do that.
2021-04-09 12:19:22 +01:00
..
AAX AAX: Set nonrealtime state appropriately when rendering with AudioSuite 2021-02-24 12:41:37 +00:00
AU Use RAII for CFTypes 2021-03-25 15:48:35 +00:00
RTAS AudioProcessor: Update listener callback with change details 2021-02-18 10:54:29 +00:00
Standalone Added preliminary support for FreeBSD 2021-03-29 14:16:46 +01:00
Unity Tidied up some template statement whitespace 2021-01-29 15:40:12 +00:00
utility VST3: Use shared MessageThread on Linux to run the message loop when host run loop interface isn't available 2021-04-08 11:51:41 +01:00
VST VST2: Prefer unique_ptr to manual delete calls 2021-04-08 13:33:12 +01:00
VST3 VST3 Client: Avoid calling performEdit from the audio thread 2021-04-09 12:19:22 +01:00
AUResources.r Revised multibus API and added support for multibus hosting 2016-09-16 17:06:19 +01:00
juce_audio_plugin_client.h Bump version number to 6.0.8 2021-03-22 09:24:48 +00:00
juce_audio_plugin_client_AAX.cpp Updated all license headers 2020-06-29 08:30:22 +01:00
juce_audio_plugin_client_AAX.mm Updated all license headers 2020-06-29 08:30:22 +01:00
juce_audio_plugin_client_AU.r Updated all license headers 2020-06-29 08:30:22 +01:00
juce_audio_plugin_client_AU_1.mm Updated all license headers 2020-06-29 08:30:22 +01:00
juce_audio_plugin_client_AU_2.mm Fix warnings when building in C++20 mode 2021-01-15 13:33:40 +00:00
juce_audio_plugin_client_AUv3.mm Updated all license headers 2020-06-29 08:30:22 +01:00
juce_audio_plugin_client_RTAS.r Renamed XCode to Xcode in multiple places 2017-10-06 09:54:32 +01:00
juce_audio_plugin_client_RTAS_1.cpp Updated all license headers 2020-06-29 08:30:22 +01:00
juce_audio_plugin_client_RTAS_2.cpp Updated all license headers 2020-06-29 08:30:22 +01:00
juce_audio_plugin_client_RTAS_3.cpp Updated all license headers 2020-06-29 08:30:22 +01:00
juce_audio_plugin_client_RTAS_4.cpp Updated all license headers 2020-06-29 08:30:22 +01:00
juce_audio_plugin_client_RTAS_utils.cpp Updated all license headers 2020-06-29 08:30:22 +01:00
juce_audio_plugin_client_RTAS_utils.mm Updated all license headers 2020-06-29 08:30:22 +01:00
juce_audio_plugin_client_Standalone.cpp AppConfig: Ensure AppConfig is always included in plugin wrappers 2020-10-20 10:16:13 +01:00
juce_audio_plugin_client_Unity.cpp Updated all license headers 2020-06-29 08:30:22 +01:00
juce_audio_plugin_client_utils.cpp Updated all license headers 2020-06-29 08:30:22 +01:00
juce_audio_plugin_client_VST2.cpp Updated all license headers 2020-06-29 08:30:22 +01:00
juce_audio_plugin_client_VST3.cpp Updated all license headers 2020-06-29 08:30:22 +01:00
juce_audio_plugin_client_VST_utils.mm Updated all license headers 2020-06-29 08:30:22 +01:00