Browse Source

Replaced some uses of the now-deprecated AudioProcessor::getTotalNumInputChannels()

tags/2021-05-28
jules 10 years ago
parent
commit
baab7546f4
8 changed files with 54 additions and 51 deletions
  1. +9
    -6
      extras/Introjucer/JuceLibraryCode/BinaryData.cpp
  2. +1
    -1
      extras/Introjucer/JuceLibraryCode/BinaryData.h
  3. +8
    -5
      extras/Introjucer/Source/BinaryData/jucer_AudioPluginFilterTemplate.cpp
  4. +5
    -5
      modules/juce_audio_plugin_client/RTAS/juce_RTAS_Wrapper.cpp
  5. +7
    -7
      modules/juce_audio_processors/format_types/juce_AudioUnitPluginFormat.mm
  6. +7
    -7
      modules/juce_audio_processors/format_types/juce_LADSPAPluginFormat.cpp
  7. +7
    -11
      modules/juce_audio_processors/format_types/juce_VST3PluginFormat.cpp
  8. +10
    -9
      modules/juce_audio_processors/format_types/juce_VSTPluginFormat.cpp

+ 9
- 6
extras/Introjucer/JuceLibraryCode/BinaryData.cpp View File

@@ -374,18 +374,21 @@ static const unsigned char temp_binary_data_4[] =
"\r\n"
"void FILTERCLASSNAME::processBlock (AudioSampleBuffer& buffer, MidiBuffer& midiMessages)\r\n"
"{\r\n"
" const int totalNumInputChannels = getTotalNumInputChannels();\r\n"
" const int totalNumOutputChannels = getTotalNumOutputChannels();\r\n"
"\r\n"
" // In case we have more outputs than inputs, this code clears any output\r\n"
" // channels that didn't contain input data, (because these aren't\r\n"
" // guaranteed to be empty - they may contain garbage).\r\n"
" // I've added this to avoid people getting screaming feedback\r\n"
" // when they first compile the plugin, but obviously you don't need to\r\n"
" // this code if your algorithm already fills all the output channels.\r\n"
" for (int i = getNumInputChannels(); i < getNumOutputChannels(); ++i)\r\n"
" // This is here to avoid people getting screaming feedback\r\n"
" // when they first compile a plugin, but obviously you don't need to keep\r\n"
" // this code if your algorithm always overwrites all the output channels.\r\n"
" for (int i = totalNumInputChannels; i < totalNumOutputChannels; ++i)\r\n"
" buffer.clear (i, 0, buffer.getNumSamples());\r\n"
"\r\n"
" // This is the place where you'd normally do the guts of your plugin's\r\n"
" // audio processing...\r\n"
" for (int channel = 0; channel < getNumInputChannels(); ++channel)\r\n"
" for (int channel = 0; channel < totalNumInputChannels; ++channel)\r\n"
" {\r\n"
" float* channelData = buffer.getWritePointer (channel);\r\n"
"\r\n"
@@ -3813,7 +3816,7 @@ const char* getNamedResource (const char* resourceNameUTF8, int& numBytes) throw
case 0xafccbd3f: numBytes = 3189; return jucer_AudioComponentTemplate_cpp;
case 0x27c5a93a: numBytes = 1180; return jucer_AudioPluginEditorTemplate_cpp;
case 0x4d0721bf: numBytes = 1012; return jucer_AudioPluginEditorTemplate_h;
case 0x51b49ac5: numBytes = 4216; return jucer_AudioPluginFilterTemplate_cpp;
case 0x51b49ac5: numBytes = 4359; return jucer_AudioPluginFilterTemplate_cpp;
case 0x488afa0a: numBytes = 2188; return jucer_AudioPluginFilterTemplate_h;
case 0xabad7041: numBytes = 2161; return jucer_ComponentTemplate_cpp;
case 0xfc72fe86: numBytes = 2141; return jucer_ComponentTemplate_h;


+ 1
- 1
extras/Introjucer/JuceLibraryCode/BinaryData.h View File

@@ -22,7 +22,7 @@ namespace BinaryData
const int jucer_AudioPluginEditorTemplate_hSize = 1012;
extern const char* jucer_AudioPluginFilterTemplate_cpp;
const int jucer_AudioPluginFilterTemplate_cppSize = 4216;
const int jucer_AudioPluginFilterTemplate_cppSize = 4359;
extern const char* jucer_AudioPluginFilterTemplate_h;
const int jucer_AudioPluginFilterTemplate_hSize = 2188;


+ 8
- 5
extras/Introjucer/Source/BinaryData/jucer_AudioPluginFilterTemplate.cpp View File

@@ -93,18 +93,21 @@ void FILTERCLASSNAME::releaseResources()
void FILTERCLASSNAME::processBlock (AudioSampleBuffer& buffer, MidiBuffer& midiMessages)
{
const int totalNumInputChannels = getTotalNumInputChannels();
const int totalNumOutputChannels = getTotalNumOutputChannels();
// In case we have more outputs than inputs, this code clears any output
// channels that didn't contain input data, (because these aren't
// guaranteed to be empty - they may contain garbage).
// I've added this to avoid people getting screaming feedback
// when they first compile the plugin, but obviously you don't need to
// this code if your algorithm already fills all the output channels.
for (int i = getNumInputChannels(); i < getNumOutputChannels(); ++i)
// This is here to avoid people getting screaming feedback
// when they first compile a plugin, but obviously you don't need to keep
// this code if your algorithm always overwrites all the output channels.
for (int i = totalNumInputChannels; i < totalNumOutputChannels; ++i)
buffer.clear (i, 0, buffer.getNumSamples());
// This is the place where you'd normally do the guts of your plugin's
// audio processing...
for (int channel = 0; channel < getNumInputChannels(); ++channel)
for (int channel = 0; channel < totalNumInputChannels; ++channel)
{
float* channelData = buffer.getWritePointer (channel);


+ 5
- 5
modules/juce_audio_plugin_client/RTAS/juce_RTAS_Wrapper.cpp View File

@@ -498,8 +498,8 @@ public:
midiTransport = new CEffectMIDITransport (&mMIDIWorld);
midiEvents.ensureSize (2048);
channels.calloc (jmax (juceFilter->getNumInputChannels(),
juceFilter->getNumOutputChannels()));
channels.calloc (jmax (juceFilter->getTotalNumInputChannels(),
juceFilter->getTotalNumOutputChannels()));
juceFilter->setPlayHead (this);
juceFilter->addListener (this);
@@ -539,14 +539,14 @@ public:
#if JUCE_DEBUG || JUCE_LOG_ASSERTIONS
const int numMidiEventsComingIn = midiEvents.getNumEvents();
(void) numMidiEventsComingIn;
ignoreUnused (numMidiEventsComingIn);
#endif
{
const ScopedLock sl (juceFilter->getCallbackLock());
const int numIn = juceFilter->getNumInputChannels();
const int numOut = juceFilter->getNumOutputChannels();
const int numIn = juceFilter->getTotalNumInputChannels();
const int numOut = juceFilter->getTotalNumOutputChannels();
const int totalChans = jmax (numIn, numOut);
if (juceFilter->isSuspended())


+ 7
- 7
modules/juce_audio_processors/format_types/juce_AudioUnitPluginFormat.mm View File

@@ -379,8 +379,8 @@ public:
desc.category = AudioUnitFormatHelpers::getCategory (componentDesc.componentType);
desc.manufacturerName = manufacturer;
desc.version = version;
desc.numInputChannels = getNumInputChannels();
desc.numOutputChannels = getNumOutputChannels();
desc.numInputChannels = getTotalNumInputChannels();
desc.numOutputChannels = getTotalNumOutputChannels();
desc.isInstrument = (componentDesc.componentType == kAudioUnitType_MusicDevice);
}
@@ -578,7 +578,7 @@ public:
else
{
// Plugin not working correctly, so just bypass..
for (int i = 0; i < getNumOutputChannels(); ++i)
for (int i = getTotalNumOutputChannels(); --i >= 0;)
buffer.clear (i, 0, buffer.getNumSamples());
}
@@ -597,7 +597,7 @@ public:
//==============================================================================
const String getInputChannelName (int index) const override
{
if (isPositiveAndBelow (index, getNumInputChannels()))
if (isPositiveAndBelow (index, getTotalNumInputChannels()))
return "Input " + String (index + 1);
return String();
@@ -605,14 +605,14 @@ public:
const String getOutputChannelName (int index) const override
{
if (isPositiveAndBelow (index, getNumOutputChannels()))
if (isPositiveAndBelow (index, getTotalNumOutputChannels()))
return "Output " + String (index + 1);
return String();
}
bool isInputChannelStereoPair (int index) const override { return isPositiveAndBelow (index, getNumInputChannels()); }
bool isOutputChannelStereoPair (int index) const override { return isPositiveAndBelow (index, getNumOutputChannels()); }
bool isInputChannelStereoPair (int index) const override { return isPositiveAndBelow (index, getTotalNumInputChannels()); }
bool isOutputChannelStereoPair (int index) const override { return isPositiveAndBelow (index, getTotalNumOutputChannels()); }
//==============================================================================
int getNumParameters() override { return parameters.size(); }


+ 7
- 7
modules/juce_audio_processors/format_types/juce_LADSPAPluginFormat.cpp View File

@@ -225,8 +225,8 @@ public:
desc.category = getCategory();
desc.manufacturerName = plugin != nullptr ? String (plugin->Maker) : String();
desc.version = getVersion();
desc.numInputChannels = getNumInputChannels();
desc.numOutputChannels = getNumOutputChannels();
desc.numInputChannels = getTotalNumInputChannels();
desc.numOutputChannels = getTotalNumOutputChannels();
desc.isInstrument = false;
}
@@ -327,16 +327,16 @@ public:
jassertfalse; // no callback to use?
}
for (int i = getNumInputChannels(); i < getNumOutputChannels(); ++i)
for (int i = getTotalNumInputChannels(), e = getTotalNumOutputChannels(); i < e; ++i)
buffer.clear (i, 0, numSamples);
}
bool isInputChannelStereoPair (int index) const { return isPositiveAndBelow (index, getNumInputChannels()); }
bool isOutputChannelStereoPair (int index) const { return isPositiveAndBelow (index, getNumInputChannels()); }
bool isInputChannelStereoPair (int index) const { return isPositiveAndBelow (index, getTotalNumInputChannels()); }
bool isOutputChannelStereoPair (int index) const { return isPositiveAndBelow (index, getTotalNumOutputChannels()); }
const String getInputChannelName (const int index) const
{
if (isPositiveAndBelow (index, getNumInputChannels()))
if (isPositiveAndBelow (index, getTotalNumInputChannels()))
return String (plugin->PortNames [inputs [index]]).trim();
return String();
@@ -344,7 +344,7 @@ public:
const String getOutputChannelName (const int index) const
{
if (isPositiveAndBelow (index, getNumInputChannels()))
if (isPositiveAndBelow (index, getTotalNumInputChannels()))
return String (plugin->PortNames [outputs [index]]).trim();
return String();


+ 7
- 11
modules/juce_audio_processors/format_types/juce_VST3PluginFormat.cpp View File

@@ -1665,8 +1665,8 @@ public:
createPluginDescription (description, module->file,
company, module->name,
*info, info2, infoW,
getNumInputChannels(),
getNumOutputChannels());
getTotalNumInputChannels(),
getTotalNumOutputChannels());
}
void* getPlatformSpecificData() override { return component; }
@@ -1808,7 +1808,7 @@ public:
updateTimingInformation (data, getSampleRate());
for (int i = getNumInputChannels(); i < buffer.getNumChannels(); ++i)
for (int i = getTotalNumInputChannels(); i < buffer.getNumChannels(); ++i)
buffer.clear (i, 0, numSamples);
associateTo (data, buffer);
@@ -1845,18 +1845,14 @@ public:
bool isInputChannelStereoPair (int channelIndex) const override
{
if (channelIndex < 0 || channelIndex >= getNumInputChannels())
return false;
return getBusInfo (true, true).channelCount == 2;
return isPositiveAndBelow (channelIndex, getTotalNumInputChannels())
&& getBusInfo (true, true).channelCount == 2;
}
bool isOutputChannelStereoPair (int channelIndex) const override
{
if (channelIndex < 0 || channelIndex >= getNumOutputChannels())
return false;
return getBusInfo (false, true).channelCount == 2;
return isPositiveAndBelow (channelIndex, getTotalNumOutputChannels())
&& getBusInfo (false, true).channelCount == 2;
}
bool acceptsMidi() const override { return getBusInfo (true, false).channelCount > 0; }


+ 10
- 9
modules/juce_audio_processors/format_types/juce_VSTPluginFormat.cpp View File

@@ -815,8 +815,8 @@ public:
}
desc.version = getVersion();
desc.numInputChannels = getNumInputChannels();
desc.numOutputChannels = getNumOutputChannels();
desc.numInputChannels = getTotalNumInputChannels();
desc.numOutputChannels = getTotalNumOutputChannels();
desc.isInstrument = (effect != nullptr && (effect->flags & effFlagsIsSynth) != 0);
}
@@ -1017,7 +1017,7 @@ public:
//==============================================================================
const String getInputChannelName (int index) const override
{
if (index >= 0 && index < getNumInputChannels())
if (isValidChannel (index, true))
{
VstPinProperties pinProps;
if (dispatch (effGetInputProperties, index, 0, &pinProps, 0.0f) != 0)
@@ -1029,7 +1029,7 @@ public:
bool isInputChannelStereoPair (int index) const override
{
if (index < 0 || index >= getNumInputChannels())
if (! isValidChannel (index, true))
return false;
VstPinProperties pinProps;
@@ -1041,7 +1041,7 @@ public:
const String getOutputChannelName (int index) const override
{
if (index >= 0 && index < getNumOutputChannels())
if (isValidChannel (index, false))
{
VstPinProperties pinProps;
if (dispatch (effGetOutputProperties, index, 0, &pinProps, 0.0f) != 0)
@@ -1053,7 +1053,7 @@ public:
bool isOutputChannelStereoPair (int index) const override
{
if (index < 0 || index >= getNumOutputChannels())
if (! isValidChannel (index, false))
return false;
VstPinProperties pinProps;
@@ -1063,9 +1063,10 @@ public:
return true;
}
bool isValidChannel (int index, bool isInput) const
bool isValidChannel (int index, bool isInput) const noexcept
{
return isPositiveAndBelow (index, isInput ? getNumInputChannels() : getNumOutputChannels());
return isPositiveAndBelow (index, isInput ? getTotalNumInputChannels()
: getTotalNumOutputChannels());
}
//==============================================================================
@@ -1686,7 +1687,7 @@ private:
else
{
// Not initialised, so just bypass..
for (int i = 0; i < getNumOutputChannels(); ++i)
for (int i = getTotalNumOutputChannels(); --i >= 0;)
buffer.clear (i, 0, buffer.getNumSamples());
}


Loading…
Cancel
Save