1
0
Fork 0
mirror of https://github.com/juce-framework/JUCE.git synced 2026-01-14 00:14:18 +00:00
Commit graph

1126 commits

Author SHA1 Message Date
reuk
47dcc31e77
VST3 Client: Allow setting latency from inside prepareToPlay 2021-10-07 14:31:26 +01:00
reuk
e797c993a8
AAX Client: Add dirty state reporting via updateHostDisplay 2021-10-06 16:59:08 +01:00
reuk
294caba2b5
VST3: Add dirty-state set/get
Adds a mechanism to notify the host that the plugin state needs saving,
using updateHostDisplay.

Also allows JUCE hosts to detect when a plugin needs its state saving
via the AudioProcessorListener.
2021-10-06 16:59:07 +01:00
ed
b9542ccc4c Update code to use C++14 [[deprecated]] attribute
This commit removes the various compiler-specific JUCE_DEPRECATED macros and replaces them with C++14's deprecated attribute. It also removes the JUCE_CATCH_DEPRECATED_CODE_MISUSE flag as we can rely on the override specifier catching usage of these old virtual methods, and tidies up the DOXYGEN preprocessor checks as they were inconsistent across the codebase.
2021-09-29 16:14:00 +01:00
ed
d39d0f4885 Docs: Fix some Doxygen warnings 2021-09-29 16:11:30 +01:00
reuk
fd24769019
PluginUtilities: Fix security (4996) warnings on Windows 2021-09-28 14:04:11 +01:00
reuk
afa6465098
UB Sanitizer: Avoid warnings in third party code, with clang 2021-09-28 11:31:50 +01:00
reuk
d0615041f0
Plugin clients: Avoid notifying listeners when parameters have not changed 2021-09-28 11:31:49 +01:00
reuk
ea250b3655
VST3 Client: Change VST3 native menu so that its position is specified in logical pixels 2021-09-28 11:31:48 +01:00
reuk
cfec0b5356
GenericAudioProcessorEditor: Add support for grouped parameters 2021-09-27 15:44:48 +01:00
reuk
f989182f32
Linux windowing: Display utf-8 native window titles correctly 2021-09-21 11:01:31 +01:00
Tom Poole
bc75010116 Bump version number to 6.1.2 2021-09-20 12:15:47 +01:00
Tom Poole
5109e30c6f Bump version number to 6.1.1 2021-09-09 12:51:15 +01:00
reuk
b2a51eb253
VST3 Client: Avoid segfaults when updating program and bypass parameters
Previously, updating the program or bypass parameter could cause an
out-of-bounds access into the parameter value cache. This is because
AudioProcessorParameter::getParameterIndex() was used to index into the
cache, but the parameter index could be negative for parameters that
had not been added to the AudioProcessor.

We now use the appropriate index in the cache for parameters that
have not been added to the AudioProcessor.
2021-09-07 11:30:19 +01:00
Tom Poole
46fe3789fc Bump version number to 6.1.0 2021-08-23 09:55:56 +01:00
reuk
cef6974c7c StandaloneFilterWindow: Fix window resizing bug on Linux
On some Linux distros, the audio settings dialog was opening with the
wrong size and position. The culprit seems to be the call to setSize()
which was called inside resized(). We now try to avoid calling setSize()
if we would do so inside a resized() call.
2021-08-10 16:48:27 +01:00
reuk
d51354d704
AAX: Avoid adding plugin description as an alternative name 2021-08-04 15:56:53 +01:00
reuk
334bd2a926 AUv3 Client: Notify host when updating current program 2021-08-03 18:27:23 +01:00
reuk
f46d4a0401
VST Client: Remove unused variable 2021-07-30 09:18:46 +01:00
reuk
8f29b2cb83
VST3: Allow plugins to designate the first input bus as Aux rather than Main
To use this feature, derive your AudioProcessor from
VST3ClientExtensions and override getPluginHasMainInput() to return
false. The main input bus will then be designated as an Aux bus, rather
than a Main bus.

This is mainly useful for synth plugins like vocoders, which may need a
sidechain audio input, but which should replace all audio on the channel
with the output of the synth, rather than mixing with the audio input.
2021-07-27 15:10:53 +01:00
ed
6d53ed3fec AUv3: Handle AURenderEventMIDIEventList 2021-07-27 12:32:28 +01:00
ed
bdc2334c98 AUv3: Fix unhandled enumeration warning when building against the 12.0 SDK 2021-07-26 10:21:51 +01:00
ed
d52fb9ca26 AUv3: Suppress undeclared selector warning for supportsMPE when building against the 10.11 SDK 2021-07-26 10:21:51 +01:00
reuk
3c68581567
Use jassertquiet where possible 2021-07-23 10:58:44 +01:00
ed
4fd0401752 VST3: Fix editor creation in Adobe Premiere Pro
See commit message of a1337a38 for more details
2021-07-22 16:33:42 +01:00
attila
7c68dd3709 VST3 Client: Avoid allocation in processParameterChanges() 2021-07-22 12:18:11 +02:00
ed
e467473157 Standalone: Fixed a crash due to a dangling input muted value listener 2021-07-15 14:32:42 +01:00
reuk
85226c33d4
Mac MainMenu: Allow commands without modifiers to be passed to peer
Ideally, we want to pass shortcut keys to the component to handle, and
only fall back to invoking a menu item if the component was unable to
handle the keyboard event, or if the action was triggered by
clicking/selecting an item in the menu itself. The old implementation
tried to work out whether the action was triggered by a shortcut by
checking the event's characters and modifiers. This method was
inaccurate, because some shortcuts (such as arrow keys) may add
unexpected numpad/function modifier flags.

We now try handling shortcut keys directly in the peer, and pass events
up to the superclass (which will forward them to the main menu) if the
event could not be handled.

This commit also adjusts some Objective-C method signatures to use the
correct string encoding for the BOOL type.
2021-07-14 14:49:05 +01:00
Tom Poole
fe4ba9071b Set the default value of JUCE_MODAL_LOOPS_PERMITTED to 0
See BREAKING-CHANGES.txt for more details.
2021-06-30 13:01:14 +01:00
ed
f1768843fb StandaloneFilterWindow: Check that stored previous window position is onscreen 2021-06-30 11:01:29 +01:00
ed
88ec2759cb AAX: Support unicode track names for TrackProperties 2021-06-29 16:14:54 +01:00
attila
56cf81d32b AU Client: Fix allocation on audio thread in JuceAU::audioProcessorChanged() 2021-06-25 15:05:19 +00:00
attila
570e173583 VST3 Client: Fix allocation on audio thread caused by PluginHostType ctor 2021-06-25 15:05:19 +00:00
reuk
423d46c9ba
AU Client: Avoid potential out-of-bounds read when adding buses 2021-06-25 12:38:18 +01:00
reuk
bc2ad3d7c5
Build: Improve support for AU resource files on ARM Macs 2021-06-25 11:12:37 +01:00
Tom Poole
78be43888e Update the minimum C++ standard to C++14 2021-06-24 16:09:48 +01:00
reuk
63284e783d
AAX Client: Fix potential out-of-bounds array access 2021-06-21 19:05:40 +01:00
reuk
c3ab3eb77f
VST3 Client: Implement IProcessContextRequirements
This function is required by the Steinberg VST3 validator from VST 3.7
onwards.
2021-06-21 19:05:40 +01:00
reuk
bfb521b610
AudioProcessorEditor: Allow showing a host-provided parameter menu in VST3 plugins 2021-06-11 11:12:35 +01:00
reuk
63a40188d9
AudioProcessor: Add extensions API for VST3 clients 2021-06-11 10:53:26 +01:00
reuk
75922cac38
VST3 Client: Ensure main buses are enabled by default when using PreferredChannelConfigurations 2021-06-04 17:44:02 +01:00
reuk
712b14a272
VST3 Client: Normalise and denormalise program parameter correctly 2021-06-04 17:44:02 +01:00
reuk
77ad8b23bb
VST3 Client: Enable support for more FrameRateTypes, and set editOriginTime correctly 2021-06-04 13:04:44 +01:00
reuk
3399c34d0d
Windows: Fix more warnings emitted by clang with GNU-like command-line 2021-06-04 12:09:05 +01:00
ed
17d967551c AAX: Added JucePlugin_AAXDisableDefaultSettingsChunks flag to set the AAX_eProperty_Constraint_DoNotApplyDefaultSettings property 2021-06-02 15:06:43 +01:00
reuk
31a7c62baf
Windows: Fix and suppress some analysis warnings
This fixes warnings that are emitted when building with the `-analyze`
flag enabled.
2021-05-26 15:34:26 +01:00
reuk
6db900926b
VST3 Client: Fix issue where host failed to receive latency change notifications
In cases where a VST3 plugin set a non-zero latency in its
prepareToPlay, and then set its latency to 0 later on, the host was not
notified about the latency change.
2021-05-21 16:30:18 +01:00
reuk
2f04d6a846
VST3 Client: Fix leak caused by unnecessary manual refcounting
In older versions of the VST3SDK, hostContext is a raw pointer,
in newer versions it's a smart pointer. If we do manual
refcounting with the smart pointer, we may cause leaks.
2021-05-21 16:29:48 +01:00
Tom Poole
bfdda737a2 Projucer: Removed the live build 2021-05-14 12:54:07 +01:00
reuk
900282ccf3
MinGW: Fix warnings and errors emitted when building VST3 plugins 2021-05-13 12:10:06 +01:00