upgrade to JUCE 5.4.3. Remove (probably) unused JUCE modules. Remove VST2 target (it's been end-of-life'd by Steinberg and by JUCE)

This commit is contained in:
Alex Birch
2019-06-22 20:41:38 +01:00
parent d22c2cd4fa
commit 9ee566b251
1140 changed files with 67534 additions and 105952 deletions

View File

@ -88,6 +88,15 @@ void AudioProcessorPlayer::setDoublePrecisionProcessing (bool doublePrecision)
}
}
void AudioProcessorPlayer::setMidiOutput (MidiOutput* midiOutputToUse)
{
if (midiOutput != midiOutputToUse)
{
const ScopedLock sl (lock);
midiOutput = midiOutputToUse;
}
}
//==============================================================================
void AudioProcessorPlayer::audioDeviceIOCallback (const float** const inputChannelData,
const int numInputChannels,
@ -163,6 +172,9 @@ void AudioProcessorPlayer::audioDeviceIOCallback (const float** const inputChann
processor->processBlock (buffer, incomingMidi);
}
if (midiOutput != nullptr)
midiOutput->sendBlockOfMessagesNow (incomingMidi);
return;
}
}

View File

@ -35,7 +35,8 @@ namespace juce
give it a processor to use by calling setProcessor().
It's also a MidiInputCallback, so you can connect it to both an audio and midi
input to send both streams through the processor.
input to send both streams through the processor. To set a MidiOutput for the processor,
use the setMidiOutput() method.
@see AudioProcessor, AudioProcessorGraph
@ -49,7 +50,7 @@ public:
AudioProcessorPlayer (bool doDoublePrecisionProcessing = false);
/** Destructor. */
virtual ~AudioProcessorPlayer();
~AudioProcessorPlayer() override;
//==============================================================================
/** Sets the processor that should be played.
@ -68,18 +69,26 @@ public:
*/
MidiMessageCollector& getMidiMessageCollector() noexcept { return messageCollector; }
/** Sets the MIDI output that should be used, if required.
The MIDI output will not be deleted or owned by this object. If the MIDI output is
deleted, pass a nullptr to this method.
*/
void setMidiOutput (MidiOutput* midiOutputToUse);
/** Switch between double and single floating point precisions processing.
The audio IO callbacks will still operate in single floating point
precision, however, all internal processing including the
AudioProcessor will be processed in double floating point precision if
the AudioProcessor supports it (see
AudioProcessor::supportsDoublePrecisionProcessing()).
Otherwise, the processing will remain single precision irrespective of
the parameter doublePrecision. */
The audio IO callbacks will still operate in single floating point precision,
however, all internal processing including the AudioProcessor will be processed in
double floating point precision if the AudioProcessor supports it (see
AudioProcessor::supportsDoublePrecisionProcessing()). Otherwise, the processing will
remain single precision irrespective of the parameter doublePrecision.
*/
void setDoublePrecisionProcessing (bool doublePrecision);
/** Returns true if this player processes internally processes the samples with
double floating point precision. */
double floating point precision.
*/
inline bool getDoublePrecisionProcessing() { return isDoublePrecision; }
//==============================================================================
@ -107,6 +116,7 @@ private:
MidiBuffer incomingMidi;
MidiMessageCollector messageCollector;
MidiOutput* midiOutput = nullptr;
JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (AudioProcessorPlayer)
};

View File

@ -30,9 +30,9 @@ namespace juce
// This is an AudioTransportSource which will own it's assigned source
struct AudioSourceOwningTransportSource : public AudioTransportSource
{
AudioSourceOwningTransportSource (PositionableAudioSource* s, double sampleRate) : source (s)
AudioSourceOwningTransportSource (PositionableAudioSource* s, double sr) : source (s)
{
AudioTransportSource::setSource (s, 0, nullptr, sampleRate);
AudioTransportSource::setSource (s, 0, nullptr, sr);
}
~AudioSourceOwningTransportSource()
@ -67,7 +67,7 @@ struct AutoRemovingTransportSource : public AudioTransportSource,
startTimerHz (10);
}
~AutoRemovingTransportSource()
~AutoRemovingTransportSource() override
{
setSource (nullptr);
}

View File

@ -36,14 +36,14 @@ namespace juce
@tags{Audio}
*/
class JUCE_API SoundPlayer : public AudioIODeviceCallback
class JUCE_API SoundPlayer : public AudioIODeviceCallback
{
public:
//==============================================================================
SoundPlayer();
/** Destructor. */
virtual ~SoundPlayer();
~SoundPlayer() override;
//==============================================================================
/** Plays a sound from a file. */