mirror of
https://github.com/airwindows/airwindows.git
synced 2026-05-15 14:16:00 -06:00
kCathedral5
This commit is contained in:
parent
957e637edf
commit
05cb274c27
161 changed files with 42843 additions and 2 deletions
|
|
@ -377,6 +377,8 @@ add_airwindows_plugin(SlewOnly)
|
|||
add_airwindows_plugin(SlewSonic)
|
||||
add_airwindows_plugin(Smooth)
|
||||
add_airwindows_plugin(SmoothEQ)
|
||||
add_airwindows_plugin(SmoothEQ2)
|
||||
add_airwindows_plugin(SmoothEQ3)
|
||||
add_airwindows_plugin(SoftClock)
|
||||
add_airwindows_plugin(SoftGate)
|
||||
add_airwindows_plugin(SpatializeDither)
|
||||
|
|
|
|||
194
plugins/LinuxVST/src/SmoothEQ2/SmoothEQ2.cpp
Executable file
194
plugins/LinuxVST/src/SmoothEQ2/SmoothEQ2.cpp
Executable file
|
|
@ -0,0 +1,194 @@
|
|||
/* ========================================
|
||||
* SmoothEQ2 - SmoothEQ2.h
|
||||
* Copyright (c) airwindows, Airwindows uses the MIT license
|
||||
* ======================================== */
|
||||
|
||||
#ifndef __SmoothEQ2_H
|
||||
#include "SmoothEQ2.h"
|
||||
#endif
|
||||
|
||||
AudioEffect* createEffectInstance(audioMasterCallback audioMaster) {return new SmoothEQ2(audioMaster);}
|
||||
|
||||
SmoothEQ2::SmoothEQ2(audioMasterCallback audioMaster) :
|
||||
AudioEffectX(audioMaster, kNumPrograms, kNumParameters)
|
||||
{
|
||||
A = 0.5;
|
||||
B = 0.5;
|
||||
C = 0.5;
|
||||
D = 0.5;
|
||||
E = 0.5;
|
||||
F = 0.5;
|
||||
G = 0.5;
|
||||
H = 0.5;
|
||||
|
||||
for (int x = 0; x < biq_total; x++) {
|
||||
highA[x] = 0.0;
|
||||
highB[x] = 0.0;
|
||||
highC[x] = 0.0;
|
||||
midA[x] = 0.0;
|
||||
midB[x] = 0.0;
|
||||
midC[x] = 0.0;
|
||||
lowA[x] = 0.0;
|
||||
lowB[x] = 0.0;
|
||||
lowC[x] = 0.0;
|
||||
}
|
||||
highLIIR = 0.0;
|
||||
highRIIR = 0.0;
|
||||
midLIIR = 0.0;
|
||||
midRIIR = 0.0;
|
||||
lowLIIR = 0.0;
|
||||
lowRIIR = 0.0;
|
||||
|
||||
fpdL = 1.0; while (fpdL < 16386) fpdL = rand()*UINT32_MAX;
|
||||
fpdR = 1.0; while (fpdR < 16386) fpdR = rand()*UINT32_MAX;
|
||||
//this is reset: values being initialized only once. Startup values, whatever they are.
|
||||
|
||||
_canDo.insert("plugAsChannelInsert"); // plug-in can be used as a channel insert effect.
|
||||
_canDo.insert("plugAsSend"); // plug-in can be used as a send effect.
|
||||
_canDo.insert("x2in2out");
|
||||
setNumInputs(kNumInputs);
|
||||
setNumOutputs(kNumOutputs);
|
||||
setUniqueID(kUniqueId);
|
||||
canProcessReplacing(); // supports output replacing
|
||||
canDoubleReplacing(); // supports double precision processing
|
||||
programsAreChunks(true);
|
||||
vst_strncpy (_programName, "Default", kVstMaxProgNameLen); // default program name
|
||||
}
|
||||
|
||||
SmoothEQ2::~SmoothEQ2() {}
|
||||
VstInt32 SmoothEQ2::getVendorVersion () {return 1000;}
|
||||
void SmoothEQ2::setProgramName(char *name) {vst_strncpy (_programName, name, kVstMaxProgNameLen);}
|
||||
void SmoothEQ2::getProgramName(char *name) {vst_strncpy (name, _programName, kVstMaxProgNameLen);}
|
||||
//airwindows likes to ignore this stuff. Make your own programs, and make a different plugin rather than
|
||||
//trying to do versioning and preventing people from using older versions. Maybe they like the old one!
|
||||
|
||||
static float pinParameter(float data)
|
||||
{
|
||||
if (data < 0.0f) return 0.0f;
|
||||
if (data > 1.0f) return 1.0f;
|
||||
return data;
|
||||
}
|
||||
|
||||
VstInt32 SmoothEQ2::getChunk (void** data, bool isPreset)
|
||||
{
|
||||
float *chunkData = (float *)calloc(kNumParameters, sizeof(float));
|
||||
chunkData[0] = A;
|
||||
chunkData[1] = B;
|
||||
chunkData[2] = C;
|
||||
chunkData[3] = D;
|
||||
chunkData[4] = E;
|
||||
chunkData[5] = F;
|
||||
chunkData[6] = G;
|
||||
chunkData[7] = H;
|
||||
/* Note: The way this is set up, it will break if you manage to save settings on an Intel
|
||||
machine and load them on a PPC Mac. However, it's fine if you stick to the machine you
|
||||
started with. */
|
||||
|
||||
*data = chunkData;
|
||||
return kNumParameters * sizeof(float);
|
||||
}
|
||||
|
||||
VstInt32 SmoothEQ2::setChunk (void* data, VstInt32 byteSize, bool isPreset)
|
||||
{
|
||||
float *chunkData = (float *)data;
|
||||
A = pinParameter(chunkData[0]);
|
||||
B = pinParameter(chunkData[1]);
|
||||
C = pinParameter(chunkData[2]);
|
||||
D = pinParameter(chunkData[3]);
|
||||
E = pinParameter(chunkData[4]);
|
||||
F = pinParameter(chunkData[5]);
|
||||
G = pinParameter(chunkData[6]);
|
||||
H = pinParameter(chunkData[7]);
|
||||
/* We're ignoring byteSize as we found it to be a filthy liar */
|
||||
|
||||
/* calculate any other fields you need here - you could copy in
|
||||
code from setParameter() here. */
|
||||
return 0;
|
||||
}
|
||||
|
||||
void SmoothEQ2::setParameter(VstInt32 index, float value) {
|
||||
switch (index) {
|
||||
case kParamA: A = value; break;
|
||||
case kParamB: B = value; break;
|
||||
case kParamC: C = value; break;
|
||||
case kParamD: D = value; break;
|
||||
case kParamE: E = value; break;
|
||||
case kParamF: F = value; break;
|
||||
case kParamG: G = value; break;
|
||||
case kParamH: H = value; break;
|
||||
default: throw; // unknown parameter, shouldn't happen!
|
||||
}
|
||||
}
|
||||
|
||||
float SmoothEQ2::getParameter(VstInt32 index) {
|
||||
switch (index) {
|
||||
case kParamA: return A; break;
|
||||
case kParamB: return B; break;
|
||||
case kParamC: return C; break;
|
||||
case kParamD: return D; break;
|
||||
case kParamE: return E; break;
|
||||
case kParamF: return F; break;
|
||||
case kParamG: return G; break;
|
||||
case kParamH: return H; break;
|
||||
default: break; // unknown parameter, shouldn't happen!
|
||||
} return 0.0; //we only need to update the relevant name, this is simple to manage
|
||||
}
|
||||
|
||||
void SmoothEQ2::getParameterName(VstInt32 index, char *text) {
|
||||
switch (index) {
|
||||
case kParamA: vst_strncpy (text, "High", kVstMaxParamStrLen); break;
|
||||
case kParamB: vst_strncpy (text, "HMid", kVstMaxParamStrLen); break;
|
||||
case kParamC: vst_strncpy (text, "LMid", kVstMaxParamStrLen); break;
|
||||
case kParamD: vst_strncpy (text, "Bass", kVstMaxParamStrLen); break;
|
||||
case kParamE: vst_strncpy (text, "HighF", kVstMaxParamStrLen); break;
|
||||
case kParamF: vst_strncpy (text, "HMidF", kVstMaxParamStrLen); break;
|
||||
case kParamG: vst_strncpy (text, "LMidF", kVstMaxParamStrLen); break;
|
||||
case kParamH: vst_strncpy (text, "BassF", kVstMaxParamStrLen); break;
|
||||
default: break; // unknown parameter, shouldn't happen!
|
||||
} //this is our labels for displaying in the VST host
|
||||
}
|
||||
|
||||
void SmoothEQ2::getParameterDisplay(VstInt32 index, char *text) {
|
||||
switch (index) {
|
||||
case kParamA: float2string (A, text, kVstMaxParamStrLen); break;
|
||||
case kParamB: float2string (B, text, kVstMaxParamStrLen); break;
|
||||
case kParamC: float2string (C, text, kVstMaxParamStrLen); break;
|
||||
case kParamD: float2string (D, text, kVstMaxParamStrLen); break;
|
||||
case kParamE: float2string (E, text, kVstMaxParamStrLen); break;
|
||||
case kParamF: float2string (F, text, kVstMaxParamStrLen); break;
|
||||
case kParamG: float2string (G, text, kVstMaxParamStrLen); break;
|
||||
case kParamH: float2string (H, text, kVstMaxParamStrLen); break;
|
||||
default: break; // unknown parameter, shouldn't happen!
|
||||
} //this displays the values and handles 'popups' where it's discrete choices
|
||||
}
|
||||
|
||||
void SmoothEQ2::getParameterLabel(VstInt32 index, char *text) {
|
||||
switch (index) {
|
||||
case kParamA: vst_strncpy (text, "", kVstMaxParamStrLen); break;
|
||||
case kParamB: vst_strncpy (text, "", kVstMaxParamStrLen); break;
|
||||
case kParamC: vst_strncpy (text, "", kVstMaxParamStrLen); break;
|
||||
case kParamD: vst_strncpy (text, "", kVstMaxParamStrLen); break;
|
||||
case kParamE: vst_strncpy (text, "", kVstMaxParamStrLen); break;
|
||||
case kParamF: vst_strncpy (text, "", kVstMaxParamStrLen); break;
|
||||
case kParamG: vst_strncpy (text, "", kVstMaxParamStrLen); break;
|
||||
case kParamH: vst_strncpy (text, "", kVstMaxParamStrLen); break;
|
||||
default: break; // unknown parameter, shouldn't happen!
|
||||
}
|
||||
}
|
||||
|
||||
VstInt32 SmoothEQ2::canDo(char *text)
|
||||
{ return (_canDo.find(text) == _canDo.end()) ? -1: 1; } // 1 = yes, -1 = no, 0 = don't know
|
||||
|
||||
bool SmoothEQ2::getEffectName(char* name) {
|
||||
vst_strncpy(name, "SmoothEQ2", kVstMaxProductStrLen); return true;
|
||||
}
|
||||
|
||||
VstPlugCategory SmoothEQ2::getPlugCategory() {return kPlugCategEffect;}
|
||||
|
||||
bool SmoothEQ2::getProductString(char* text) {
|
||||
vst_strncpy (text, "airwindows SmoothEQ2", kVstMaxProductStrLen); return true;
|
||||
}
|
||||
|
||||
bool SmoothEQ2::getVendorString(char* text) {
|
||||
vst_strncpy (text, "airwindows", kVstMaxVendorStrLen); return true;
|
||||
}
|
||||
108
plugins/LinuxVST/src/SmoothEQ2/SmoothEQ2.h
Executable file
108
plugins/LinuxVST/src/SmoothEQ2/SmoothEQ2.h
Executable file
|
|
@ -0,0 +1,108 @@
|
|||
/* ========================================
|
||||
* SmoothEQ2 - SmoothEQ2.h
|
||||
* Created 8/12/11 by SPIAdmin
|
||||
* Copyright (c) Airwindows, Airwindows uses the MIT license
|
||||
* ======================================== */
|
||||
|
||||
#ifndef __SmoothEQ2_H
|
||||
#define __SmoothEQ2_H
|
||||
|
||||
#ifndef __audioeffect__
|
||||
#include "audioeffectx.h"
|
||||
#endif
|
||||
|
||||
#include <set>
|
||||
#include <string>
|
||||
#include <math.h>
|
||||
|
||||
enum {
|
||||
kParamA =0,
|
||||
kParamB =1,
|
||||
kParamC =2,
|
||||
kParamD =3,
|
||||
kParamE =4,
|
||||
kParamF =5,
|
||||
kParamG =6,
|
||||
kParamH =7,
|
||||
kNumParameters = 8
|
||||
}; //
|
||||
|
||||
const int kNumPrograms = 0;
|
||||
const int kNumInputs = 2;
|
||||
const int kNumOutputs = 2;
|
||||
const unsigned long kUniqueId = 'sme2'; //Change this to what the AU identity is!
|
||||
|
||||
class SmoothEQ2 :
|
||||
public AudioEffectX
|
||||
{
|
||||
public:
|
||||
SmoothEQ2(audioMasterCallback audioMaster);
|
||||
~SmoothEQ2();
|
||||
virtual bool getEffectName(char* name); // The plug-in name
|
||||
virtual VstPlugCategory getPlugCategory(); // The general category for the plug-in
|
||||
virtual bool getProductString(char* text); // This is a unique plug-in string provided by Steinberg
|
||||
virtual bool getVendorString(char* text); // Vendor info
|
||||
virtual VstInt32 getVendorVersion(); // Version number
|
||||
virtual void processReplacing (float** inputs, float** outputs, VstInt32 sampleFrames);
|
||||
virtual void processDoubleReplacing (double** inputs, double** outputs, VstInt32 sampleFrames);
|
||||
virtual void getProgramName(char *name); // read the name from the host
|
||||
virtual void setProgramName(char *name); // changes the name of the preset displayed in the host
|
||||
virtual VstInt32 getChunk (void** data, bool isPreset);
|
||||
virtual VstInt32 setChunk (void* data, VstInt32 byteSize, bool isPreset);
|
||||
virtual float getParameter(VstInt32 index); // get the parameter value at the specified index
|
||||
virtual void setParameter(VstInt32 index, float value); // set the parameter at index to value
|
||||
virtual void getParameterLabel(VstInt32 index, char *text); // label for the parameter (eg dB)
|
||||
virtual void getParameterName(VstInt32 index, char *text); // name of the parameter
|
||||
virtual void getParameterDisplay(VstInt32 index, char *text); // text description of the current value
|
||||
virtual VstInt32 canDo(char *text);
|
||||
private:
|
||||
char _programName[kVstMaxProgNameLen + 1];
|
||||
std::set< std::string > _canDo;
|
||||
|
||||
float A;
|
||||
float B;
|
||||
float C;
|
||||
float D;
|
||||
float E;
|
||||
float F;
|
||||
float G;
|
||||
float H;
|
||||
|
||||
enum {
|
||||
biq_freq,
|
||||
biq_reso,
|
||||
biq_a0,
|
||||
biq_a1,
|
||||
biq_a2,
|
||||
biq_b1,
|
||||
biq_b2,
|
||||
biq_sL1,
|
||||
biq_sL2,
|
||||
biq_sR1,
|
||||
biq_sR2,
|
||||
biq_total
|
||||
}; //coefficient interpolating bessel filter, stereo
|
||||
double highA[biq_total];
|
||||
double highB[biq_total];
|
||||
double highC[biq_total];
|
||||
double highLIIR;
|
||||
double highRIIR;
|
||||
|
||||
double midA[biq_total];
|
||||
double midB[biq_total];
|
||||
double midC[biq_total];
|
||||
double midLIIR;
|
||||
double midRIIR;
|
||||
|
||||
double lowA[biq_total];
|
||||
double lowB[biq_total];
|
||||
double lowC[biq_total];
|
||||
double lowLIIR;
|
||||
double lowRIIR;
|
||||
|
||||
uint32_t fpdL;
|
||||
uint32_t fpdR;
|
||||
//default stuff
|
||||
};
|
||||
|
||||
#endif
|
||||
578
plugins/LinuxVST/src/SmoothEQ2/SmoothEQ2Proc.cpp
Executable file
578
plugins/LinuxVST/src/SmoothEQ2/SmoothEQ2Proc.cpp
Executable file
|
|
@ -0,0 +1,578 @@
|
|||
/* ========================================
|
||||
* SmoothEQ2 - SmoothEQ2.h
|
||||
* Copyright (c) airwindows, Airwindows uses the MIT license
|
||||
* ======================================== */
|
||||
|
||||
#ifndef __SmoothEQ2_H
|
||||
#include "SmoothEQ2.h"
|
||||
#endif
|
||||
|
||||
void SmoothEQ2::processReplacing(float **inputs, float **outputs, VstInt32 sampleFrames)
|
||||
{
|
||||
float* in1 = inputs[0];
|
||||
float* in2 = inputs[1];
|
||||
float* out1 = outputs[0];
|
||||
float* out2 = outputs[1];
|
||||
|
||||
double trebleGain = (A-0.5)*2.0;
|
||||
trebleGain = 1.0+(trebleGain*fabs(trebleGain)*fabs(trebleGain));
|
||||
double highmidGain = (B-0.5)*2.0;
|
||||
highmidGain = 1.0+(highmidGain*fabs(highmidGain)*fabs(highmidGain));
|
||||
double lowmidGain = (C-0.5)*2.0;
|
||||
lowmidGain = 1.0+(lowmidGain*fabs(lowmidGain)*fabs(lowmidGain));
|
||||
double bassGain = (D-0.5)*2.0;
|
||||
bassGain = 1.0+(bassGain*fabs(bassGain)*fabs(bassGain));
|
||||
|
||||
double trebleRef = E-0.5;
|
||||
double highmidRef = F-0.5;
|
||||
double lowmidRef = G-0.5;
|
||||
double bassRef = H-0.5;
|
||||
double highF = 0.75 + ((trebleRef+trebleRef+trebleRef+highmidRef)*0.125);
|
||||
double bassF = 0.25 + ((lowmidRef+bassRef+bassRef+bassRef)*0.125);
|
||||
double midF = (highF*0.5) + (bassF*0.5) + ((highmidRef+lowmidRef)*0.125);
|
||||
|
||||
double highQ = fmax(fmin(1.0+(highmidRef-trebleRef),4.0),0.125);
|
||||
double midQ = fmax(fmin(1.0+(lowmidRef-highmidRef),4.0),0.125);
|
||||
double lowQ = fmax(fmin(1.0+(bassRef-lowmidRef),4.0),0.125);
|
||||
|
||||
highA[biq_freq] = ((pow(highF,3)*20000.0)/getSampleRate());
|
||||
highC[biq_freq] = highB[biq_freq] = highA[biq_freq] = fmax(fmin(highA[biq_freq],0.4999),0.00025);
|
||||
double highFreq = pow(highF,3)*20000.0;
|
||||
double omega = 2.0*M_PI*(highFreq/getSampleRate());
|
||||
double K = 2.0-cos(omega);
|
||||
double highCoef = -sqrt((K*K)-1.0)+K;
|
||||
highA[biq_reso] = 2.24697960 * highQ;
|
||||
highB[biq_reso] = 0.80193774 * highQ;
|
||||
highC[biq_reso] = 0.55495813 * highQ;
|
||||
|
||||
midA[biq_freq] = ((pow(midF,3)*20000.0)/getSampleRate());
|
||||
midC[biq_freq] = midB[biq_freq] = midA[biq_freq] = fmax(fmin(midA[biq_freq],0.4999),0.00025);
|
||||
double midFreq = pow(midF,3)*20000.0;
|
||||
omega = 2.0*M_PI*(midFreq/getSampleRate());
|
||||
K = 2.0-cos(omega);
|
||||
double midCoef = -sqrt((K*K)-1.0)+K;
|
||||
midA[biq_reso] = 2.24697960 * midQ;
|
||||
midB[biq_reso] = 0.80193774 * midQ;
|
||||
midC[biq_reso] = 0.55495813 * midQ;
|
||||
|
||||
lowA[biq_freq] = ((pow(bassF,3)*20000.0)/getSampleRate());
|
||||
lowC[biq_freq] = lowB[biq_freq] = lowA[biq_freq] = fmax(fmin(lowA[biq_freq],0.4999),0.00025);
|
||||
double lowFreq = pow(bassF,3)*20000.0;
|
||||
omega = 2.0*M_PI*(lowFreq/getSampleRate());
|
||||
K = 2.0-cos(omega);
|
||||
double lowCoef = -sqrt((K*K)-1.0)+K;
|
||||
lowA[biq_reso] = 2.24697960 * lowQ;
|
||||
lowB[biq_reso] = 0.80193774 * lowQ;
|
||||
lowC[biq_reso] = 0.55495813 * lowQ;
|
||||
|
||||
K = tan(M_PI * highA[biq_freq]);
|
||||
double norm = 1.0 / (1.0 + K / highA[biq_reso] + K * K);
|
||||
highA[biq_a0] = K * K * norm;
|
||||
highA[biq_a1] = 2.0 * highA[biq_a0];
|
||||
highA[biq_a2] = highA[biq_a0];
|
||||
highA[biq_b1] = 2.0 * (K * K - 1.0) * norm;
|
||||
highA[biq_b2] = (1.0 - K / highA[biq_reso] + K * K) * norm;
|
||||
K = tan(M_PI * highB[biq_freq]);
|
||||
norm = 1.0 / (1.0 + K / highB[biq_reso] + K * K);
|
||||
highB[biq_a0] = K * K * norm;
|
||||
highB[biq_a1] = 2.0 * highB[biq_a0];
|
||||
highB[biq_a2] = highB[biq_a0];
|
||||
highB[biq_b1] = 2.0 * (K * K - 1.0) * norm;
|
||||
highB[biq_b2] = (1.0 - K / highB[biq_reso] + K * K) * norm;
|
||||
K = tan(M_PI * highC[biq_freq]);
|
||||
norm = 1.0 / (1.0 + K / highC[biq_reso] + K * K);
|
||||
highC[biq_a0] = K * K * norm;
|
||||
highC[biq_a1] = 2.0 * highC[biq_a0];
|
||||
highC[biq_a2] = highC[biq_a0];
|
||||
highC[biq_b1] = 2.0 * (K * K - 1.0) * norm;
|
||||
highC[biq_b2] = (1.0 - K / highC[biq_reso] + K * K) * norm;
|
||||
|
||||
K = tan(M_PI * midA[biq_freq]);
|
||||
norm = 1.0 / (1.0 + K / midA[biq_reso] + K * K);
|
||||
midA[biq_a0] = K * K * norm;
|
||||
midA[biq_a1] = 2.0 * midA[biq_a0];
|
||||
midA[biq_a2] = midA[biq_a0];
|
||||
midA[biq_b1] = 2.0 * (K * K - 1.0) * norm;
|
||||
midA[biq_b2] = (1.0 - K / midA[biq_reso] + K * K) * norm;
|
||||
K = tan(M_PI * midB[biq_freq]);
|
||||
norm = 1.0 / (1.0 + K / midB[biq_reso] + K * K);
|
||||
midB[biq_a0] = K * K * norm;
|
||||
midB[biq_a1] = 2.0 * midB[biq_a0];
|
||||
midB[biq_a2] = midB[biq_a0];
|
||||
midB[biq_b1] = 2.0 * (K * K - 1.0) * norm;
|
||||
midB[biq_b2] = (1.0 - K / midB[biq_reso] + K * K) * norm;
|
||||
K = tan(M_PI * midC[biq_freq]);
|
||||
norm = 1.0 / (1.0 + K / midC[biq_reso] + K * K);
|
||||
midC[biq_a0] = K * K * norm;
|
||||
midC[biq_a1] = 2.0 * midC[biq_a0];
|
||||
midC[biq_a2] = midC[biq_a0];
|
||||
midC[biq_b1] = 2.0 * (K * K - 1.0) * norm;
|
||||
midC[biq_b2] = (1.0 - K / midC[biq_reso] + K * K) * norm;
|
||||
|
||||
K = tan(M_PI * lowA[biq_freq]);
|
||||
norm = 1.0 / (1.0 + K / lowA[biq_reso] + K * K);
|
||||
lowA[biq_a0] = K * K * norm;
|
||||
lowA[biq_a1] = 2.0 * lowA[biq_a0];
|
||||
lowA[biq_a2] = lowA[biq_a0];
|
||||
lowA[biq_b1] = 2.0 * (K * K - 1.0) * norm;
|
||||
lowA[biq_b2] = (1.0 - K / lowA[biq_reso] + K * K) * norm;
|
||||
K = tan(M_PI * lowB[biq_freq]);
|
||||
norm = 1.0 / (1.0 + K / lowB[biq_reso] + K * K);
|
||||
lowB[biq_a0] = K * K * norm;
|
||||
lowB[biq_a1] = 2.0 * lowB[biq_a0];
|
||||
lowB[biq_a2] = lowB[biq_a0];
|
||||
lowB[biq_b1] = 2.0 * (K * K - 1.0) * norm;
|
||||
lowB[biq_b2] = (1.0 - K / lowB[biq_reso] + K * K) * norm;
|
||||
K = tan(M_PI * lowC[biq_freq]);
|
||||
norm = 1.0 / (1.0 + K / lowC[biq_reso] + K * K);
|
||||
lowC[biq_a0] = K * K * norm;
|
||||
lowC[biq_a1] = 2.0 * lowC[biq_a0];
|
||||
lowC[biq_a2] = lowC[biq_a0];
|
||||
lowC[biq_b1] = 2.0 * (K * K - 1.0) * norm;
|
||||
lowC[biq_b2] = (1.0 - K / lowC[biq_reso] + K * K) * norm;
|
||||
|
||||
while (--sampleFrames >= 0)
|
||||
{
|
||||
double inputSampleL = *in1;
|
||||
double inputSampleR = *in2;
|
||||
if (fabs(inputSampleL)<1.18e-23) inputSampleL = fpdL * 1.18e-17;
|
||||
if (fabs(inputSampleR)<1.18e-23) inputSampleR = fpdR * 1.18e-17;
|
||||
|
||||
double trebleL = inputSampleL;
|
||||
double outSample = (trebleL * highA[biq_a0]) + highA[biq_sL1];
|
||||
highA[biq_sL1] = (trebleL * highA[biq_a1]) - (outSample * highA[biq_b1]) + highA[biq_sL2];
|
||||
highA[biq_sL2] = (trebleL * highA[biq_a2]) - (outSample * highA[biq_b2]);
|
||||
double highmidL = outSample; trebleL -= highmidL;
|
||||
|
||||
outSample = (highmidL * midA[biq_a0]) + midA[biq_sL1];
|
||||
midA[biq_sL1] = (highmidL * midA[biq_a1]) - (outSample * midA[biq_b1]) + midA[biq_sL2];
|
||||
midA[biq_sL2] = (highmidL * midA[biq_a2]) - (outSample * midA[biq_b2]);
|
||||
double lowmidL = outSample; highmidL -= lowmidL;
|
||||
|
||||
outSample = (lowmidL * lowA[biq_a0]) + lowA[biq_sL1];
|
||||
lowA[biq_sL1] = (lowmidL * lowA[biq_a1]) - (outSample * lowA[biq_b1]) + lowA[biq_sL2];
|
||||
lowA[biq_sL2] = (lowmidL * lowA[biq_a2]) - (outSample * lowA[biq_b2]);
|
||||
double bassL = outSample; lowmidL -= bassL;
|
||||
|
||||
trebleL = (bassL*bassGain) + (lowmidL*lowmidGain) + (highmidL*highmidGain) + (trebleL*trebleGain);
|
||||
//first stage of three crossovers
|
||||
|
||||
outSample = (trebleL * highB[biq_a0]) + highB[biq_sL1];
|
||||
highB[biq_sL1] = (trebleL * highB[biq_a1]) - (outSample * highB[biq_b1]) + highB[biq_sL2];
|
||||
highB[biq_sL2] = (trebleL * highB[biq_a2]) - (outSample * highB[biq_b2]);
|
||||
highmidL = outSample; trebleL -= highmidL;
|
||||
|
||||
outSample = (highmidL * midB[biq_a0]) + midB[biq_sL1];
|
||||
midB[biq_sL1] = (highmidL * midB[biq_a1]) - (outSample * midB[biq_b1]) + midB[biq_sL2];
|
||||
midB[biq_sL2] = (highmidL * midB[biq_a2]) - (outSample * midB[biq_b2]);
|
||||
lowmidL = outSample; highmidL -= lowmidL;
|
||||
|
||||
outSample = (lowmidL * lowB[biq_a0]) + lowB[biq_sL1];
|
||||
lowB[biq_sL1] = (lowmidL * lowB[biq_a1]) - (outSample * lowB[biq_b1]) + lowB[biq_sL2];
|
||||
lowB[biq_sL2] = (lowmidL * lowB[biq_a2]) - (outSample * lowB[biq_b2]);
|
||||
bassL = outSample; lowmidL -= bassL;
|
||||
|
||||
trebleL = (bassL*bassGain) + (lowmidL*lowmidGain) + (highmidL*highmidGain) + (trebleL*trebleGain);
|
||||
//second stage of three crossovers
|
||||
|
||||
outSample = (trebleL * highC[biq_a0]) + highC[biq_sL1];
|
||||
highC[biq_sL1] = (trebleL * highC[biq_a1]) - (outSample * highC[biq_b1]) + highC[biq_sL2];
|
||||
highC[biq_sL2] = (trebleL * highC[biq_a2]) - (outSample * highC[biq_b2]);
|
||||
highmidL = outSample; trebleL -= highmidL;
|
||||
|
||||
outSample = (highmidL * midC[biq_a0]) + midC[biq_sL1];
|
||||
midC[biq_sL1] = (highmidL * midC[biq_a1]) - (outSample * midC[biq_b1]) + midC[biq_sL2];
|
||||
midC[biq_sL2] = (highmidL * midC[biq_a2]) - (outSample * midC[biq_b2]);
|
||||
lowmidL = outSample; highmidL -= lowmidL;
|
||||
|
||||
outSample = (lowmidL * lowC[biq_a0]) + lowC[biq_sL1];
|
||||
lowC[biq_sL1] = (lowmidL * lowC[biq_a1]) - (outSample * lowC[biq_b1]) + lowC[biq_sL2];
|
||||
lowC[biq_sL2] = (lowmidL * lowC[biq_a2]) - (outSample * lowC[biq_b2]);
|
||||
bassL = outSample; lowmidL -= bassL;
|
||||
|
||||
trebleL = (bassL*bassGain) + (lowmidL*lowmidGain) + (highmidL*highmidGain) + (trebleL*trebleGain);
|
||||
//third stage of three crossovers
|
||||
|
||||
highLIIR = (highLIIR*highCoef) + (trebleL*(1.0-highCoef));
|
||||
highmidL = highLIIR; trebleL -= highmidL;
|
||||
|
||||
midLIIR = (midLIIR*midCoef) + (highmidL*(1.0-midCoef));
|
||||
lowmidL = midLIIR; highmidL -= lowmidL;
|
||||
|
||||
lowLIIR = (lowLIIR*lowCoef) + (lowmidL*(1.0-lowCoef));
|
||||
bassL = lowLIIR; lowmidL -= bassL;
|
||||
|
||||
inputSampleL = (bassL*bassGain) + (lowmidL*lowmidGain) + (highmidL*highmidGain) + (trebleL*trebleGain);
|
||||
//fourth stage of three crossovers is the exponential filters
|
||||
|
||||
|
||||
double trebleR = inputSampleR;
|
||||
outSample = (trebleR * highA[biq_a0]) + highA[biq_sR1];
|
||||
highA[biq_sR1] = (trebleR * highA[biq_a1]) - (outSample * highA[biq_b1]) + highA[biq_sR2];
|
||||
highA[biq_sR2] = (trebleR * highA[biq_a2]) - (outSample * highA[biq_b2]);
|
||||
double highmidR = outSample; trebleR -= highmidR;
|
||||
|
||||
outSample = (highmidR * midA[biq_a0]) + midA[biq_sR1];
|
||||
midA[biq_sR1] = (highmidR * midA[biq_a1]) - (outSample * midA[biq_b1]) + midA[biq_sR2];
|
||||
midA[biq_sR2] = (highmidR * midA[biq_a2]) - (outSample * midA[biq_b2]);
|
||||
double lowmidR = outSample; highmidR -= lowmidR;
|
||||
|
||||
outSample = (lowmidR * lowA[biq_a0]) + lowA[biq_sR1];
|
||||
lowA[biq_sR1] = (lowmidR * lowA[biq_a1]) - (outSample * lowA[biq_b1]) + lowA[biq_sR2];
|
||||
lowA[biq_sR2] = (lowmidR * lowA[biq_a2]) - (outSample * lowA[biq_b2]);
|
||||
double bassR = outSample; lowmidR -= bassR;
|
||||
|
||||
trebleR = (bassR*bassGain) + (lowmidR*lowmidGain) + (highmidR*highmidGain) + (trebleR*trebleGain);
|
||||
//first stage of three crossovers
|
||||
|
||||
outSample = (trebleR * highB[biq_a0]) + highB[biq_sR1];
|
||||
highB[biq_sR1] = (trebleR * highB[biq_a1]) - (outSample * highB[biq_b1]) + highB[biq_sR2];
|
||||
highB[biq_sR2] = (trebleR * highB[biq_a2]) - (outSample * highB[biq_b2]);
|
||||
highmidR = outSample; trebleR -= highmidR;
|
||||
|
||||
outSample = (highmidR * midB[biq_a0]) + midB[biq_sR1];
|
||||
midB[biq_sR1] = (highmidR * midB[biq_a1]) - (outSample * midB[biq_b1]) + midB[biq_sR2];
|
||||
midB[biq_sR2] = (highmidR * midB[biq_a2]) - (outSample * midB[biq_b2]);
|
||||
lowmidR = outSample; highmidR -= lowmidR;
|
||||
|
||||
outSample = (lowmidR * lowB[biq_a0]) + lowB[biq_sR1];
|
||||
lowB[biq_sR1] = (lowmidR * lowB[biq_a1]) - (outSample * lowB[biq_b1]) + lowB[biq_sR2];
|
||||
lowB[biq_sR2] = (lowmidR * lowB[biq_a2]) - (outSample * lowB[biq_b2]);
|
||||
bassR = outSample; lowmidR -= bassR;
|
||||
|
||||
trebleR = (bassR*bassGain) + (lowmidR*lowmidGain) + (highmidR*highmidGain) + (trebleR*trebleGain);
|
||||
//second stage of three crossovers
|
||||
|
||||
outSample = (trebleR * highC[biq_a0]) + highC[biq_sR1];
|
||||
highC[biq_sR1] = (trebleR * highC[biq_a1]) - (outSample * highC[biq_b1]) + highC[biq_sR2];
|
||||
highC[biq_sR2] = (trebleR * highC[biq_a2]) - (outSample * highC[biq_b2]);
|
||||
highmidR = outSample; trebleR -= highmidR;
|
||||
|
||||
outSample = (highmidR * midC[biq_a0]) + midC[biq_sR1];
|
||||
midC[biq_sR1] = (highmidR * midC[biq_a1]) - (outSample * midC[biq_b1]) + midC[biq_sR2];
|
||||
midC[biq_sR2] = (highmidR * midC[biq_a2]) - (outSample * midC[biq_b2]);
|
||||
lowmidR = outSample; highmidR -= lowmidR;
|
||||
|
||||
outSample = (lowmidR * lowC[biq_a0]) + lowC[biq_sR1];
|
||||
lowC[biq_sR1] = (lowmidR * lowC[biq_a1]) - (outSample * lowC[biq_b1]) + lowC[biq_sR2];
|
||||
lowC[biq_sR2] = (lowmidR * lowC[biq_a2]) - (outSample * lowC[biq_b2]);
|
||||
bassR = outSample; lowmidR -= bassR;
|
||||
|
||||
trebleR = (bassR*bassGain) + (lowmidR*lowmidGain) + (highmidR*highmidGain) + (trebleR*trebleGain);
|
||||
//third stage of three crossovers
|
||||
|
||||
highRIIR = (highRIIR*highCoef) + (trebleR*(1.0-highCoef));
|
||||
highmidR = highRIIR; trebleR -= highmidR;
|
||||
|
||||
midRIIR = (midRIIR*midCoef) + (highmidR*(1.0-midCoef));
|
||||
lowmidR = midRIIR; highmidR -= lowmidR;
|
||||
|
||||
lowRIIR = (lowRIIR*lowCoef) + (lowmidR*(1.0-lowCoef));
|
||||
bassR = lowRIIR; lowmidR -= bassR;
|
||||
|
||||
inputSampleR = (bassR*bassGain) + (lowmidR*lowmidGain) + (highmidR*highmidGain) + (trebleR*trebleGain);
|
||||
//fourth stage of three crossovers is the exponential filters
|
||||
|
||||
//begin 32 bit stereo floating point dither
|
||||
int expon; frexpf((float)inputSampleL, &expon);
|
||||
fpdL ^= fpdL << 13; fpdL ^= fpdL >> 17; fpdL ^= fpdL << 5;
|
||||
inputSampleL += ((double(fpdL)-uint32_t(0x7fffffff)) * 5.5e-36l * pow(2,expon+62));
|
||||
frexpf((float)inputSampleR, &expon);
|
||||
fpdR ^= fpdR << 13; fpdR ^= fpdR >> 17; fpdR ^= fpdR << 5;
|
||||
inputSampleR += ((double(fpdR)-uint32_t(0x7fffffff)) * 5.5e-36l * pow(2,expon+62));
|
||||
//end 32 bit stereo floating point dither
|
||||
|
||||
*out1 = inputSampleL;
|
||||
*out2 = inputSampleR;
|
||||
|
||||
in1++;
|
||||
in2++;
|
||||
out1++;
|
||||
out2++;
|
||||
}
|
||||
}
|
||||
|
||||
void SmoothEQ2::processDoubleReplacing(double **inputs, double **outputs, VstInt32 sampleFrames)
|
||||
{
|
||||
double* in1 = inputs[0];
|
||||
double* in2 = inputs[1];
|
||||
double* out1 = outputs[0];
|
||||
double* out2 = outputs[1];
|
||||
|
||||
double trebleGain = (A-0.5)*2.0;
|
||||
trebleGain = 1.0+(trebleGain*fabs(trebleGain)*fabs(trebleGain));
|
||||
double highmidGain = (B-0.5)*2.0;
|
||||
highmidGain = 1.0+(highmidGain*fabs(highmidGain)*fabs(highmidGain));
|
||||
double lowmidGain = (C-0.5)*2.0;
|
||||
lowmidGain = 1.0+(lowmidGain*fabs(lowmidGain)*fabs(lowmidGain));
|
||||
double bassGain = (D-0.5)*2.0;
|
||||
bassGain = 1.0+(bassGain*fabs(bassGain)*fabs(bassGain));
|
||||
|
||||
double trebleRef = E-0.5;
|
||||
double highmidRef = F-0.5;
|
||||
double lowmidRef = G-0.5;
|
||||
double bassRef = H-0.5;
|
||||
double highF = 0.75 + ((trebleRef+trebleRef+trebleRef+highmidRef)*0.125);
|
||||
double bassF = 0.25 + ((lowmidRef+bassRef+bassRef+bassRef)*0.125);
|
||||
double midF = (highF*0.5) + (bassF*0.5) + ((highmidRef+lowmidRef)*0.125);
|
||||
|
||||
double highQ = fmax(fmin(1.0+(highmidRef-trebleRef),4.0),0.125);
|
||||
double midQ = fmax(fmin(1.0+(lowmidRef-highmidRef),4.0),0.125);
|
||||
double lowQ = fmax(fmin(1.0+(bassRef-lowmidRef),4.0),0.125);
|
||||
|
||||
highA[biq_freq] = ((pow(highF,3)*20000.0)/getSampleRate());
|
||||
highC[biq_freq] = highB[biq_freq] = highA[biq_freq] = fmax(fmin(highA[biq_freq],0.4999),0.00025);
|
||||
double highFreq = pow(highF,3)*20000.0;
|
||||
double omega = 2.0*M_PI*(highFreq/getSampleRate());
|
||||
double K = 2.0-cos(omega);
|
||||
double highCoef = -sqrt((K*K)-1.0)+K;
|
||||
highA[biq_reso] = 2.24697960 * highQ;
|
||||
highB[biq_reso] = 0.80193774 * highQ;
|
||||
highC[biq_reso] = 0.55495813 * highQ;
|
||||
|
||||
midA[biq_freq] = ((pow(midF,3)*20000.0)/getSampleRate());
|
||||
midC[biq_freq] = midB[biq_freq] = midA[biq_freq] = fmax(fmin(midA[biq_freq],0.4999),0.00025);
|
||||
double midFreq = pow(midF,3)*20000.0;
|
||||
omega = 2.0*M_PI*(midFreq/getSampleRate());
|
||||
K = 2.0-cos(omega);
|
||||
double midCoef = -sqrt((K*K)-1.0)+K;
|
||||
midA[biq_reso] = 2.24697960 * midQ;
|
||||
midB[biq_reso] = 0.80193774 * midQ;
|
||||
midC[biq_reso] = 0.55495813 * midQ;
|
||||
|
||||
lowA[biq_freq] = ((pow(bassF,3)*20000.0)/getSampleRate());
|
||||
lowC[biq_freq] = lowB[biq_freq] = lowA[biq_freq] = fmax(fmin(lowA[biq_freq],0.4999),0.00025);
|
||||
double lowFreq = pow(bassF,3)*20000.0;
|
||||
omega = 2.0*M_PI*(lowFreq/getSampleRate());
|
||||
K = 2.0-cos(omega);
|
||||
double lowCoef = -sqrt((K*K)-1.0)+K;
|
||||
lowA[biq_reso] = 2.24697960 * lowQ;
|
||||
lowB[biq_reso] = 0.80193774 * lowQ;
|
||||
lowC[biq_reso] = 0.55495813 * lowQ;
|
||||
|
||||
K = tan(M_PI * highA[biq_freq]);
|
||||
double norm = 1.0 / (1.0 + K / highA[biq_reso] + K * K);
|
||||
highA[biq_a0] = K * K * norm;
|
||||
highA[biq_a1] = 2.0 * highA[biq_a0];
|
||||
highA[biq_a2] = highA[biq_a0];
|
||||
highA[biq_b1] = 2.0 * (K * K - 1.0) * norm;
|
||||
highA[biq_b2] = (1.0 - K / highA[biq_reso] + K * K) * norm;
|
||||
K = tan(M_PI * highB[biq_freq]);
|
||||
norm = 1.0 / (1.0 + K / highB[biq_reso] + K * K);
|
||||
highB[biq_a0] = K * K * norm;
|
||||
highB[biq_a1] = 2.0 * highB[biq_a0];
|
||||
highB[biq_a2] = highB[biq_a0];
|
||||
highB[biq_b1] = 2.0 * (K * K - 1.0) * norm;
|
||||
highB[biq_b2] = (1.0 - K / highB[biq_reso] + K * K) * norm;
|
||||
K = tan(M_PI * highC[biq_freq]);
|
||||
norm = 1.0 / (1.0 + K / highC[biq_reso] + K * K);
|
||||
highC[biq_a0] = K * K * norm;
|
||||
highC[biq_a1] = 2.0 * highC[biq_a0];
|
||||
highC[biq_a2] = highC[biq_a0];
|
||||
highC[biq_b1] = 2.0 * (K * K - 1.0) * norm;
|
||||
highC[biq_b2] = (1.0 - K / highC[biq_reso] + K * K) * norm;
|
||||
|
||||
K = tan(M_PI * midA[biq_freq]);
|
||||
norm = 1.0 / (1.0 + K / midA[biq_reso] + K * K);
|
||||
midA[biq_a0] = K * K * norm;
|
||||
midA[biq_a1] = 2.0 * midA[biq_a0];
|
||||
midA[biq_a2] = midA[biq_a0];
|
||||
midA[biq_b1] = 2.0 * (K * K - 1.0) * norm;
|
||||
midA[biq_b2] = (1.0 - K / midA[biq_reso] + K * K) * norm;
|
||||
K = tan(M_PI * midB[biq_freq]);
|
||||
norm = 1.0 / (1.0 + K / midB[biq_reso] + K * K);
|
||||
midB[biq_a0] = K * K * norm;
|
||||
midB[biq_a1] = 2.0 * midB[biq_a0];
|
||||
midB[biq_a2] = midB[biq_a0];
|
||||
midB[biq_b1] = 2.0 * (K * K - 1.0) * norm;
|
||||
midB[biq_b2] = (1.0 - K / midB[biq_reso] + K * K) * norm;
|
||||
K = tan(M_PI * midC[biq_freq]);
|
||||
norm = 1.0 / (1.0 + K / midC[biq_reso] + K * K);
|
||||
midC[biq_a0] = K * K * norm;
|
||||
midC[biq_a1] = 2.0 * midC[biq_a0];
|
||||
midC[biq_a2] = midC[biq_a0];
|
||||
midC[biq_b1] = 2.0 * (K * K - 1.0) * norm;
|
||||
midC[biq_b2] = (1.0 - K / midC[biq_reso] + K * K) * norm;
|
||||
|
||||
K = tan(M_PI * lowA[biq_freq]);
|
||||
norm = 1.0 / (1.0 + K / lowA[biq_reso] + K * K);
|
||||
lowA[biq_a0] = K * K * norm;
|
||||
lowA[biq_a1] = 2.0 * lowA[biq_a0];
|
||||
lowA[biq_a2] = lowA[biq_a0];
|
||||
lowA[biq_b1] = 2.0 * (K * K - 1.0) * norm;
|
||||
lowA[biq_b2] = (1.0 - K / lowA[biq_reso] + K * K) * norm;
|
||||
K = tan(M_PI * lowB[biq_freq]);
|
||||
norm = 1.0 / (1.0 + K / lowB[biq_reso] + K * K);
|
||||
lowB[biq_a0] = K * K * norm;
|
||||
lowB[biq_a1] = 2.0 * lowB[biq_a0];
|
||||
lowB[biq_a2] = lowB[biq_a0];
|
||||
lowB[biq_b1] = 2.0 * (K * K - 1.0) * norm;
|
||||
lowB[biq_b2] = (1.0 - K / lowB[biq_reso] + K * K) * norm;
|
||||
K = tan(M_PI * lowC[biq_freq]);
|
||||
norm = 1.0 / (1.0 + K / lowC[biq_reso] + K * K);
|
||||
lowC[biq_a0] = K * K * norm;
|
||||
lowC[biq_a1] = 2.0 * lowC[biq_a0];
|
||||
lowC[biq_a2] = lowC[biq_a0];
|
||||
lowC[biq_b1] = 2.0 * (K * K - 1.0) * norm;
|
||||
lowC[biq_b2] = (1.0 - K / lowC[biq_reso] + K * K) * norm;
|
||||
|
||||
while (--sampleFrames >= 0)
|
||||
{
|
||||
double inputSampleL = *in1;
|
||||
double inputSampleR = *in2;
|
||||
if (fabs(inputSampleL)<1.18e-23) inputSampleL = fpdL * 1.18e-17;
|
||||
if (fabs(inputSampleR)<1.18e-23) inputSampleR = fpdR * 1.18e-17;
|
||||
|
||||
double trebleL = inputSampleL;
|
||||
double outSample = (trebleL * highA[biq_a0]) + highA[biq_sL1];
|
||||
highA[biq_sL1] = (trebleL * highA[biq_a1]) - (outSample * highA[biq_b1]) + highA[biq_sL2];
|
||||
highA[biq_sL2] = (trebleL * highA[biq_a2]) - (outSample * highA[biq_b2]);
|
||||
double highmidL = outSample; trebleL -= highmidL;
|
||||
|
||||
outSample = (highmidL * midA[biq_a0]) + midA[biq_sL1];
|
||||
midA[biq_sL1] = (highmidL * midA[biq_a1]) - (outSample * midA[biq_b1]) + midA[biq_sL2];
|
||||
midA[biq_sL2] = (highmidL * midA[biq_a2]) - (outSample * midA[biq_b2]);
|
||||
double lowmidL = outSample; highmidL -= lowmidL;
|
||||
|
||||
outSample = (lowmidL * lowA[biq_a0]) + lowA[biq_sL1];
|
||||
lowA[biq_sL1] = (lowmidL * lowA[biq_a1]) - (outSample * lowA[biq_b1]) + lowA[biq_sL2];
|
||||
lowA[biq_sL2] = (lowmidL * lowA[biq_a2]) - (outSample * lowA[biq_b2]);
|
||||
double bassL = outSample; lowmidL -= bassL;
|
||||
|
||||
trebleL = (bassL*bassGain) + (lowmidL*lowmidGain) + (highmidL*highmidGain) + (trebleL*trebleGain);
|
||||
//first stage of three crossovers
|
||||
|
||||
outSample = (trebleL * highB[biq_a0]) + highB[biq_sL1];
|
||||
highB[biq_sL1] = (trebleL * highB[biq_a1]) - (outSample * highB[biq_b1]) + highB[biq_sL2];
|
||||
highB[biq_sL2] = (trebleL * highB[biq_a2]) - (outSample * highB[biq_b2]);
|
||||
highmidL = outSample; trebleL -= highmidL;
|
||||
|
||||
outSample = (highmidL * midB[biq_a0]) + midB[biq_sL1];
|
||||
midB[biq_sL1] = (highmidL * midB[biq_a1]) - (outSample * midB[biq_b1]) + midB[biq_sL2];
|
||||
midB[biq_sL2] = (highmidL * midB[biq_a2]) - (outSample * midB[biq_b2]);
|
||||
lowmidL = outSample; highmidL -= lowmidL;
|
||||
|
||||
outSample = (lowmidL * lowB[biq_a0]) + lowB[biq_sL1];
|
||||
lowB[biq_sL1] = (lowmidL * lowB[biq_a1]) - (outSample * lowB[biq_b1]) + lowB[biq_sL2];
|
||||
lowB[biq_sL2] = (lowmidL * lowB[biq_a2]) - (outSample * lowB[biq_b2]);
|
||||
bassL = outSample; lowmidL -= bassL;
|
||||
|
||||
trebleL = (bassL*bassGain) + (lowmidL*lowmidGain) + (highmidL*highmidGain) + (trebleL*trebleGain);
|
||||
//second stage of three crossovers
|
||||
|
||||
outSample = (trebleL * highC[biq_a0]) + highC[biq_sL1];
|
||||
highC[biq_sL1] = (trebleL * highC[biq_a1]) - (outSample * highC[biq_b1]) + highC[biq_sL2];
|
||||
highC[biq_sL2] = (trebleL * highC[biq_a2]) - (outSample * highC[biq_b2]);
|
||||
highmidL = outSample; trebleL -= highmidL;
|
||||
|
||||
outSample = (highmidL * midC[biq_a0]) + midC[biq_sL1];
|
||||
midC[biq_sL1] = (highmidL * midC[biq_a1]) - (outSample * midC[biq_b1]) + midC[biq_sL2];
|
||||
midC[biq_sL2] = (highmidL * midC[biq_a2]) - (outSample * midC[biq_b2]);
|
||||
lowmidL = outSample; highmidL -= lowmidL;
|
||||
|
||||
outSample = (lowmidL * lowC[biq_a0]) + lowC[biq_sL1];
|
||||
lowC[biq_sL1] = (lowmidL * lowC[biq_a1]) - (outSample * lowC[biq_b1]) + lowC[biq_sL2];
|
||||
lowC[biq_sL2] = (lowmidL * lowC[biq_a2]) - (outSample * lowC[biq_b2]);
|
||||
bassL = outSample; lowmidL -= bassL;
|
||||
|
||||
trebleL = (bassL*bassGain) + (lowmidL*lowmidGain) + (highmidL*highmidGain) + (trebleL*trebleGain);
|
||||
//third stage of three crossovers
|
||||
|
||||
highLIIR = (highLIIR*highCoef) + (trebleL*(1.0-highCoef));
|
||||
highmidL = highLIIR; trebleL -= highmidL;
|
||||
|
||||
midLIIR = (midLIIR*midCoef) + (highmidL*(1.0-midCoef));
|
||||
lowmidL = midLIIR; highmidL -= lowmidL;
|
||||
|
||||
lowLIIR = (lowLIIR*lowCoef) + (lowmidL*(1.0-lowCoef));
|
||||
bassL = lowLIIR; lowmidL -= bassL;
|
||||
|
||||
inputSampleL = (bassL*bassGain) + (lowmidL*lowmidGain) + (highmidL*highmidGain) + (trebleL*trebleGain);
|
||||
//fourth stage of three crossovers is the exponential filters
|
||||
|
||||
|
||||
double trebleR = inputSampleR;
|
||||
outSample = (trebleR * highA[biq_a0]) + highA[biq_sR1];
|
||||
highA[biq_sR1] = (trebleR * highA[biq_a1]) - (outSample * highA[biq_b1]) + highA[biq_sR2];
|
||||
highA[biq_sR2] = (trebleR * highA[biq_a2]) - (outSample * highA[biq_b2]);
|
||||
double highmidR = outSample; trebleR -= highmidR;
|
||||
|
||||
outSample = (highmidR * midA[biq_a0]) + midA[biq_sR1];
|
||||
midA[biq_sR1] = (highmidR * midA[biq_a1]) - (outSample * midA[biq_b1]) + midA[biq_sR2];
|
||||
midA[biq_sR2] = (highmidR * midA[biq_a2]) - (outSample * midA[biq_b2]);
|
||||
double lowmidR = outSample; highmidR -= lowmidR;
|
||||
|
||||
outSample = (lowmidR * lowA[biq_a0]) + lowA[biq_sR1];
|
||||
lowA[biq_sR1] = (lowmidR * lowA[biq_a1]) - (outSample * lowA[biq_b1]) + lowA[biq_sR2];
|
||||
lowA[biq_sR2] = (lowmidR * lowA[biq_a2]) - (outSample * lowA[biq_b2]);
|
||||
double bassR = outSample; lowmidR -= bassR;
|
||||
|
||||
trebleR = (bassR*bassGain) + (lowmidR*lowmidGain) + (highmidR*highmidGain) + (trebleR*trebleGain);
|
||||
//first stage of three crossovers
|
||||
|
||||
outSample = (trebleR * highB[biq_a0]) + highB[biq_sR1];
|
||||
highB[biq_sR1] = (trebleR * highB[biq_a1]) - (outSample * highB[biq_b1]) + highB[biq_sR2];
|
||||
highB[biq_sR2] = (trebleR * highB[biq_a2]) - (outSample * highB[biq_b2]);
|
||||
highmidR = outSample; trebleR -= highmidR;
|
||||
|
||||
outSample = (highmidR * midB[biq_a0]) + midB[biq_sR1];
|
||||
midB[biq_sR1] = (highmidR * midB[biq_a1]) - (outSample * midB[biq_b1]) + midB[biq_sR2];
|
||||
midB[biq_sR2] = (highmidR * midB[biq_a2]) - (outSample * midB[biq_b2]);
|
||||
lowmidR = outSample; highmidR -= lowmidR;
|
||||
|
||||
outSample = (lowmidR * lowB[biq_a0]) + lowB[biq_sR1];
|
||||
lowB[biq_sR1] = (lowmidR * lowB[biq_a1]) - (outSample * lowB[biq_b1]) + lowB[biq_sR2];
|
||||
lowB[biq_sR2] = (lowmidR * lowB[biq_a2]) - (outSample * lowB[biq_b2]);
|
||||
bassR = outSample; lowmidR -= bassR;
|
||||
|
||||
trebleR = (bassR*bassGain) + (lowmidR*lowmidGain) + (highmidR*highmidGain) + (trebleR*trebleGain);
|
||||
//second stage of three crossovers
|
||||
|
||||
outSample = (trebleR * highC[biq_a0]) + highC[biq_sR1];
|
||||
highC[biq_sR1] = (trebleR * highC[biq_a1]) - (outSample * highC[biq_b1]) + highC[biq_sR2];
|
||||
highC[biq_sR2] = (trebleR * highC[biq_a2]) - (outSample * highC[biq_b2]);
|
||||
highmidR = outSample; trebleR -= highmidR;
|
||||
|
||||
outSample = (highmidR * midC[biq_a0]) + midC[biq_sR1];
|
||||
midC[biq_sR1] = (highmidR * midC[biq_a1]) - (outSample * midC[biq_b1]) + midC[biq_sR2];
|
||||
midC[biq_sR2] = (highmidR * midC[biq_a2]) - (outSample * midC[biq_b2]);
|
||||
lowmidR = outSample; highmidR -= lowmidR;
|
||||
|
||||
outSample = (lowmidR * lowC[biq_a0]) + lowC[biq_sR1];
|
||||
lowC[biq_sR1] = (lowmidR * lowC[biq_a1]) - (outSample * lowC[biq_b1]) + lowC[biq_sR2];
|
||||
lowC[biq_sR2] = (lowmidR * lowC[biq_a2]) - (outSample * lowC[biq_b2]);
|
||||
bassR = outSample; lowmidR -= bassR;
|
||||
|
||||
trebleR = (bassR*bassGain) + (lowmidR*lowmidGain) + (highmidR*highmidGain) + (trebleR*trebleGain);
|
||||
//third stage of three crossovers
|
||||
|
||||
highRIIR = (highRIIR*highCoef) + (trebleR*(1.0-highCoef));
|
||||
highmidR = highRIIR; trebleR -= highmidR;
|
||||
|
||||
midRIIR = (midRIIR*midCoef) + (highmidR*(1.0-midCoef));
|
||||
lowmidR = midRIIR; highmidR -= lowmidR;
|
||||
|
||||
lowRIIR = (lowRIIR*lowCoef) + (lowmidR*(1.0-lowCoef));
|
||||
bassR = lowRIIR; lowmidR -= bassR;
|
||||
|
||||
inputSampleR = (bassR*bassGain) + (lowmidR*lowmidGain) + (highmidR*highmidGain) + (trebleR*trebleGain);
|
||||
//fourth stage of three crossovers is the exponential filters
|
||||
|
||||
//begin 64 bit stereo floating point dither
|
||||
//int expon; frexp((double)inputSampleL, &expon);
|
||||
fpdL ^= fpdL << 13; fpdL ^= fpdL >> 17; fpdL ^= fpdL << 5;
|
||||
//inputSampleL += ((double(fpdL)-uint32_t(0x7fffffff)) * 1.1e-44l * pow(2,expon+62));
|
||||
//frexp((double)inputSampleR, &expon);
|
||||
fpdR ^= fpdR << 13; fpdR ^= fpdR >> 17; fpdR ^= fpdR << 5;
|
||||
//inputSampleR += ((double(fpdR)-uint32_t(0x7fffffff)) * 1.1e-44l * pow(2,expon+62));
|
||||
//end 64 bit stereo floating point dither
|
||||
|
||||
*out1 = inputSampleL;
|
||||
*out2 = inputSampleR;
|
||||
|
||||
in1++;
|
||||
in2++;
|
||||
out1++;
|
||||
out2++;
|
||||
}
|
||||
}
|
||||
145
plugins/LinuxVST/src/SmoothEQ3/SmoothEQ3.cpp
Executable file
145
plugins/LinuxVST/src/SmoothEQ3/SmoothEQ3.cpp
Executable file
|
|
@ -0,0 +1,145 @@
|
|||
/* ========================================
|
||||
* SmoothEQ3 - SmoothEQ3.h
|
||||
* Copyright (c) airwindows, Airwindows uses the MIT license
|
||||
* ======================================== */
|
||||
|
||||
#ifndef __SmoothEQ3_H
|
||||
#include "SmoothEQ3.h"
|
||||
#endif
|
||||
|
||||
AudioEffect* createEffectInstance(audioMasterCallback audioMaster) {return new SmoothEQ3(audioMaster);}
|
||||
|
||||
SmoothEQ3::SmoothEQ3(audioMasterCallback audioMaster) :
|
||||
AudioEffectX(audioMaster, kNumPrograms, kNumParameters)
|
||||
{
|
||||
A = 0.5;
|
||||
B = 0.5;
|
||||
C = 0.5;
|
||||
|
||||
for (int x = 0; x < biq_total; x++) {
|
||||
highFast[x] = 0.0;
|
||||
lowFast[x] = 0.0;
|
||||
}
|
||||
highFastLIIR = 0.0;
|
||||
highFastRIIR = 0.0;
|
||||
lowFastLIIR = 0.0;
|
||||
lowFastRIIR = 0.0;
|
||||
|
||||
fpdL = 1.0; while (fpdL < 16386) fpdL = rand()*UINT32_MAX;
|
||||
fpdR = 1.0; while (fpdR < 16386) fpdR = rand()*UINT32_MAX;
|
||||
//this is reset: values being initialized only once. Startup values, whatever they are.
|
||||
|
||||
_canDo.insert("plugAsChannelInsert"); // plug-in can be used as a channel insert effect.
|
||||
_canDo.insert("plugAsSend"); // plug-in can be used as a send effect.
|
||||
_canDo.insert("x2in2out");
|
||||
setNumInputs(kNumInputs);
|
||||
setNumOutputs(kNumOutputs);
|
||||
setUniqueID(kUniqueId);
|
||||
canProcessReplacing(); // supports output replacing
|
||||
canDoubleReplacing(); // supports double precision processing
|
||||
programsAreChunks(true);
|
||||
vst_strncpy (_programName, "Default", kVstMaxProgNameLen); // default program name
|
||||
}
|
||||
|
||||
SmoothEQ3::~SmoothEQ3() {}
|
||||
VstInt32 SmoothEQ3::getVendorVersion () {return 1000;}
|
||||
void SmoothEQ3::setProgramName(char *name) {vst_strncpy (_programName, name, kVstMaxProgNameLen);}
|
||||
void SmoothEQ3::getProgramName(char *name) {vst_strncpy (name, _programName, kVstMaxProgNameLen);}
|
||||
//airwindows likes to ignore this stuff. Make your own programs, and make a different plugin rather than
|
||||
//trying to do versioning and preventing people from using older versions. Maybe they like the old one!
|
||||
|
||||
static float pinParameter(float data)
|
||||
{
|
||||
if (data < 0.0f) return 0.0f;
|
||||
if (data > 1.0f) return 1.0f;
|
||||
return data;
|
||||
}
|
||||
|
||||
VstInt32 SmoothEQ3::getChunk (void** data, bool isPreset)
|
||||
{
|
||||
float *chunkData = (float *)calloc(kNumParameters, sizeof(float));
|
||||
chunkData[0] = A;
|
||||
chunkData[1] = B;
|
||||
chunkData[2] = C;
|
||||
/* Note: The way this is set up, it will break if you manage to save settings on an Intel
|
||||
machine and load them on a PPC Mac. However, it's fine if you stick to the machine you
|
||||
started with. */
|
||||
|
||||
*data = chunkData;
|
||||
return kNumParameters * sizeof(float);
|
||||
}
|
||||
|
||||
VstInt32 SmoothEQ3::setChunk (void* data, VstInt32 byteSize, bool isPreset)
|
||||
{
|
||||
float *chunkData = (float *)data;
|
||||
A = pinParameter(chunkData[0]);
|
||||
B = pinParameter(chunkData[1]);
|
||||
C = pinParameter(chunkData[2]);
|
||||
/* We're ignoring byteSize as we found it to be a filthy liar */
|
||||
|
||||
/* calculate any other fields you need here - you could copy in
|
||||
code from setParameter() here. */
|
||||
return 0;
|
||||
}
|
||||
|
||||
void SmoothEQ3::setParameter(VstInt32 index, float value) {
|
||||
switch (index) {
|
||||
case kParamA: A = value; break;
|
||||
case kParamB: B = value; break;
|
||||
case kParamC: C = value; break;
|
||||
default: throw; // unknown parameter, shouldn't happen!
|
||||
}
|
||||
}
|
||||
|
||||
float SmoothEQ3::getParameter(VstInt32 index) {
|
||||
switch (index) {
|
||||
case kParamA: return A; break;
|
||||
case kParamB: return B; break;
|
||||
case kParamC: return C; break;
|
||||
default: break; // unknown parameter, shouldn't happen!
|
||||
} return 0.0; //we only need to update the relevant name, this is simple to manage
|
||||
}
|
||||
|
||||
void SmoothEQ3::getParameterName(VstInt32 index, char *text) {
|
||||
switch (index) {
|
||||
case kParamA: vst_strncpy (text, "High", kVstMaxParamStrLen); break;
|
||||
case kParamB: vst_strncpy (text, "Mid", kVstMaxParamStrLen); break;
|
||||
case kParamC: vst_strncpy (text, "Bass", kVstMaxParamStrLen); break;
|
||||
default: break; // unknown parameter, shouldn't happen!
|
||||
} //this is our labels for displaying in the VST host
|
||||
}
|
||||
|
||||
void SmoothEQ3::getParameterDisplay(VstInt32 index, char *text) {
|
||||
switch (index) {
|
||||
case kParamA: float2string (A, text, kVstMaxParamStrLen); break;
|
||||
case kParamB: float2string (B, text, kVstMaxParamStrLen); break;
|
||||
case kParamC: float2string (C, text, kVstMaxParamStrLen); break;
|
||||
default: break; // unknown parameter, shouldn't happen!
|
||||
} //this displays the values and handles 'popups' where it's discrete choices
|
||||
}
|
||||
|
||||
void SmoothEQ3::getParameterLabel(VstInt32 index, char *text) {
|
||||
switch (index) {
|
||||
case kParamA: vst_strncpy (text, "", kVstMaxParamStrLen); break;
|
||||
case kParamB: vst_strncpy (text, "", kVstMaxParamStrLen); break;
|
||||
case kParamC: vst_strncpy (text, "", kVstMaxParamStrLen); break;
|
||||
default: break; // unknown parameter, shouldn't happen!
|
||||
}
|
||||
}
|
||||
|
||||
VstInt32 SmoothEQ3::canDo(char *text)
|
||||
{ return (_canDo.find(text) == _canDo.end()) ? -1: 1; } // 1 = yes, -1 = no, 0 = don't know
|
||||
|
||||
bool SmoothEQ3::getEffectName(char* name) {
|
||||
vst_strncpy(name, "SmoothEQ3", kVstMaxProductStrLen); return true;
|
||||
}
|
||||
|
||||
VstPlugCategory SmoothEQ3::getPlugCategory() {return kPlugCategEffect;}
|
||||
|
||||
bool SmoothEQ3::getProductString(char* text) {
|
||||
vst_strncpy (text, "airwindows SmoothEQ3", kVstMaxProductStrLen); return true;
|
||||
}
|
||||
|
||||
bool SmoothEQ3::getVendorString(char* text) {
|
||||
vst_strncpy (text, "airwindows", kVstMaxVendorStrLen); return true;
|
||||
}
|
||||
87
plugins/LinuxVST/src/SmoothEQ3/SmoothEQ3.h
Executable file
87
plugins/LinuxVST/src/SmoothEQ3/SmoothEQ3.h
Executable file
|
|
@ -0,0 +1,87 @@
|
|||
/* ========================================
|
||||
* SmoothEQ3 - SmoothEQ3.h
|
||||
* Created 8/12/11 by SPIAdmin
|
||||
* Copyright (c) Airwindows, Airwindows uses the MIT license
|
||||
* ======================================== */
|
||||
|
||||
#ifndef __SmoothEQ3_H
|
||||
#define __SmoothEQ3_H
|
||||
|
||||
#ifndef __audioeffect__
|
||||
#include "audioeffectx.h"
|
||||
#endif
|
||||
|
||||
#include <set>
|
||||
#include <string>
|
||||
#include <math.h>
|
||||
|
||||
enum {
|
||||
kParamA =0,
|
||||
kParamB =1,
|
||||
kParamC =2,
|
||||
kNumParameters = 3
|
||||
}; //
|
||||
|
||||
const int kNumPrograms = 0;
|
||||
const int kNumInputs = 2;
|
||||
const int kNumOutputs = 2;
|
||||
const unsigned long kUniqueId = 'sme3'; //Change this to what the AU identity is!
|
||||
|
||||
class SmoothEQ3 :
|
||||
public AudioEffectX
|
||||
{
|
||||
public:
|
||||
SmoothEQ3(audioMasterCallback audioMaster);
|
||||
~SmoothEQ3();
|
||||
virtual bool getEffectName(char* name); // The plug-in name
|
||||
virtual VstPlugCategory getPlugCategory(); // The general category for the plug-in
|
||||
virtual bool getProductString(char* text); // This is a unique plug-in string provided by Steinberg
|
||||
virtual bool getVendorString(char* text); // Vendor info
|
||||
virtual VstInt32 getVendorVersion(); // Version number
|
||||
virtual void processReplacing (float** inputs, float** outputs, VstInt32 sampleFrames);
|
||||
virtual void processDoubleReplacing (double** inputs, double** outputs, VstInt32 sampleFrames);
|
||||
virtual void getProgramName(char *name); // read the name from the host
|
||||
virtual void setProgramName(char *name); // changes the name of the preset displayed in the host
|
||||
virtual VstInt32 getChunk (void** data, bool isPreset);
|
||||
virtual VstInt32 setChunk (void* data, VstInt32 byteSize, bool isPreset);
|
||||
virtual float getParameter(VstInt32 index); // get the parameter value at the specified index
|
||||
virtual void setParameter(VstInt32 index, float value); // set the parameter at index to value
|
||||
virtual void getParameterLabel(VstInt32 index, char *text); // label for the parameter (eg dB)
|
||||
virtual void getParameterName(VstInt32 index, char *text); // name of the parameter
|
||||
virtual void getParameterDisplay(VstInt32 index, char *text); // text description of the current value
|
||||
virtual VstInt32 canDo(char *text);
|
||||
private:
|
||||
char _programName[kVstMaxProgNameLen + 1];
|
||||
std::set< std::string > _canDo;
|
||||
|
||||
float A;
|
||||
float B;
|
||||
float C;
|
||||
|
||||
enum {
|
||||
biq_freq,
|
||||
biq_reso,
|
||||
biq_a0,
|
||||
biq_a1,
|
||||
biq_a2,
|
||||
biq_b1,
|
||||
biq_b2,
|
||||
biq_sL1,
|
||||
biq_sL2,
|
||||
biq_sR1,
|
||||
biq_sR2,
|
||||
biq_total
|
||||
}; //coefficient interpolating bessel filter, stereo
|
||||
double highFast[biq_total];
|
||||
double lowFast[biq_total];
|
||||
double highFastLIIR;
|
||||
double highFastRIIR;
|
||||
double lowFastLIIR;
|
||||
double lowFastRIIR;
|
||||
|
||||
uint32_t fpdL;
|
||||
uint32_t fpdR;
|
||||
//default stuff
|
||||
};
|
||||
|
||||
#endif
|
||||
224
plugins/LinuxVST/src/SmoothEQ3/SmoothEQ3Proc.cpp
Executable file
224
plugins/LinuxVST/src/SmoothEQ3/SmoothEQ3Proc.cpp
Executable file
|
|
@ -0,0 +1,224 @@
|
|||
/* ========================================
|
||||
* SmoothEQ3 - SmoothEQ3.h
|
||||
* Copyright (c) airwindows, Airwindows uses the MIT license
|
||||
* ======================================== */
|
||||
|
||||
#ifndef __SmoothEQ3_H
|
||||
#include "SmoothEQ3.h"
|
||||
#endif
|
||||
|
||||
void SmoothEQ3::processReplacing(float **inputs, float **outputs, VstInt32 sampleFrames)
|
||||
{
|
||||
float* in1 = inputs[0];
|
||||
float* in2 = inputs[1];
|
||||
float* out1 = outputs[0];
|
||||
float* out2 = outputs[1];
|
||||
|
||||
double trebleGain = (A-0.5)*2.0;
|
||||
trebleGain = 1.0+(trebleGain*fabs(trebleGain)*fabs(trebleGain));
|
||||
double midGain = (B-0.5)*2.0;
|
||||
midGain = 1.0+(midGain*fabs(midGain)*fabs(midGain));
|
||||
double bassGain = (C-0.5)*2.0;
|
||||
bassGain = 1.0+(bassGain*fabs(bassGain)*fabs(bassGain));
|
||||
//separate from filtering stage, this is amplitude, centered on 1.0 unity gain
|
||||
|
||||
//SmoothEQ3 is how to get 3rd order steepness at very low CPU.
|
||||
//because sample rate varies, you could also vary the crossovers
|
||||
//you can't vary Q because math is simplified to take advantage of
|
||||
//how the accurate Q value for this filter is always exactly 1.0.
|
||||
highFast[biq_freq] = (4000.0/getSampleRate());
|
||||
double omega = 2.0*M_PI*(4000.0/getSampleRate()); //mid-high crossover freq
|
||||
double K = 2.0 - cos(omega);
|
||||
double highCoef = -sqrt(K*K - 1.0) + K;
|
||||
lowFast[biq_freq] = (200.0/getSampleRate());
|
||||
omega = 2.0*M_PI*(200.0/getSampleRate()); //low-mid crossover freq
|
||||
K = 2.0 - cos(omega);
|
||||
double lowCoef = -sqrt(K*K - 1.0) + K;
|
||||
//exponential IIR filter as part of an accurate 3rd order Butterworth filter
|
||||
K = tan(M_PI * highFast[biq_freq]);
|
||||
double norm = 1.0 / (1.0 + K + K*K);
|
||||
highFast[biq_a0] = K * K * norm;
|
||||
highFast[biq_a1] = 2.0 * highFast[biq_a0];
|
||||
highFast[biq_a2] = highFast[biq_a0];
|
||||
highFast[biq_b1] = 2.0 * (K*K - 1.0) * norm;
|
||||
highFast[biq_b2] = (1.0 - K + K*K) * norm;
|
||||
K = tan(M_PI * lowFast[biq_freq]);
|
||||
norm = 1.0 / (1.0 + K + K*K);
|
||||
lowFast[biq_a0] = K * K * norm;
|
||||
lowFast[biq_a1] = 2.0 * lowFast[biq_a0];
|
||||
lowFast[biq_a2] = lowFast[biq_a0];
|
||||
lowFast[biq_b1] = 2.0 * (K*K - 1.0) * norm;
|
||||
lowFast[biq_b2] = (1.0 - K + K*K) * norm;
|
||||
//custom biquad setup with Q = 1.0 gets to omit some divides
|
||||
|
||||
while (--sampleFrames >= 0)
|
||||
{
|
||||
double inputSampleL = *in1;
|
||||
double inputSampleR = *in2;
|
||||
if (fabs(inputSampleL)<1.18e-23) inputSampleL = fpdL * 1.18e-17;
|
||||
if (fabs(inputSampleR)<1.18e-23) inputSampleR = fpdR * 1.18e-17;
|
||||
|
||||
double trebleFastL = inputSampleL;
|
||||
double outSample = (trebleFastL * highFast[biq_a0]) + highFast[biq_sL1];
|
||||
highFast[biq_sL1] = (trebleFastL * highFast[biq_a1]) - (outSample * highFast[biq_b1]) + highFast[biq_sL2];
|
||||
highFast[biq_sL2] = (trebleFastL * highFast[biq_a2]) - (outSample * highFast[biq_b2]);
|
||||
double midFastL = outSample; trebleFastL -= midFastL;
|
||||
outSample = (midFastL * lowFast[biq_a0]) + lowFast[biq_sL1];
|
||||
lowFast[biq_sL1] = (midFastL * lowFast[biq_a1]) - (outSample * lowFast[biq_b1]) + lowFast[biq_sL2];
|
||||
lowFast[biq_sL2] = (midFastL * lowFast[biq_a2]) - (outSample * lowFast[biq_b2]);
|
||||
double bassFastL = outSample; midFastL -= bassFastL;
|
||||
trebleFastL = (bassFastL*bassGain) + (midFastL*midGain) + (trebleFastL*trebleGain);
|
||||
//first stage of two crossovers is biquad of exactly 1.0 Q
|
||||
highFastLIIR = (highFastLIIR*highCoef) + (trebleFastL*(1.0-highCoef));
|
||||
midFastL = highFastLIIR; trebleFastL -= midFastL;
|
||||
lowFastLIIR = (lowFastLIIR*lowCoef) + (midFastL*(1.0-lowCoef));
|
||||
bassFastL = lowFastLIIR; midFastL -= bassFastL;
|
||||
inputSampleL = (bassFastL*bassGain) + (midFastL*midGain) + (trebleFastL*trebleGain);
|
||||
//second stage of two crossovers is the exponential filters
|
||||
//this produces a slightly steeper Butterworth filter very cheaply
|
||||
|
||||
double trebleFastR = inputSampleR;
|
||||
outSample = (trebleFastR * highFast[biq_a0]) + highFast[biq_sR1];
|
||||
highFast[biq_sR1] = (trebleFastR * highFast[biq_a1]) - (outSample * highFast[biq_b1]) + highFast[biq_sR2];
|
||||
highFast[biq_sR2] = (trebleFastR * highFast[biq_a2]) - (outSample * highFast[biq_b2]);
|
||||
double midFastR = outSample; trebleFastR -= midFastR;
|
||||
outSample = (midFastR * lowFast[biq_a0]) + lowFast[biq_sR1];
|
||||
lowFast[biq_sR1] = (midFastR * lowFast[biq_a1]) - (outSample * lowFast[biq_b1]) + lowFast[biq_sR2];
|
||||
lowFast[biq_sR2] = (midFastR * lowFast[biq_a2]) - (outSample * lowFast[biq_b2]);
|
||||
double bassFastR = outSample; midFastR -= bassFastR;
|
||||
trebleFastR = (bassFastR*bassGain) + (midFastR*midGain) + (trebleFastR*trebleGain);
|
||||
//first stage of two crossovers is biquad of exactly 1.0 Q
|
||||
highFastRIIR = (highFastRIIR*highCoef) + (trebleFastR*(1.0-highCoef));
|
||||
midFastR = highFastRIIR; trebleFastR -= midFastR;
|
||||
lowFastRIIR = (lowFastRIIR*lowCoef) + (midFastR*(1.0-lowCoef));
|
||||
bassFastR = lowFastRIIR; midFastR -= bassFastR;
|
||||
inputSampleR = (bassFastR*bassGain) + (midFastR*midGain) + (trebleFastR*trebleGain);
|
||||
//second stage of two crossovers is the exponential filters
|
||||
//this produces a slightly steeper Butterworth filter very cheaply
|
||||
|
||||
//begin 32 bit stereo floating point dither
|
||||
int expon; frexpf((float)inputSampleL, &expon);
|
||||
fpdL ^= fpdL << 13; fpdL ^= fpdL >> 17; fpdL ^= fpdL << 5;
|
||||
inputSampleL += ((double(fpdL)-uint32_t(0x7fffffff)) * 5.5e-36l * pow(2,expon+62));
|
||||
frexpf((float)inputSampleR, &expon);
|
||||
fpdR ^= fpdR << 13; fpdR ^= fpdR >> 17; fpdR ^= fpdR << 5;
|
||||
inputSampleR += ((double(fpdR)-uint32_t(0x7fffffff)) * 5.5e-36l * pow(2,expon+62));
|
||||
//end 32 bit stereo floating point dither
|
||||
|
||||
*out1 = inputSampleL;
|
||||
*out2 = inputSampleR;
|
||||
|
||||
in1++;
|
||||
in2++;
|
||||
out1++;
|
||||
out2++;
|
||||
}
|
||||
}
|
||||
|
||||
void SmoothEQ3::processDoubleReplacing(double **inputs, double **outputs, VstInt32 sampleFrames)
|
||||
{
|
||||
double* in1 = inputs[0];
|
||||
double* in2 = inputs[1];
|
||||
double* out1 = outputs[0];
|
||||
double* out2 = outputs[1];
|
||||
|
||||
double trebleGain = (A-0.5)*2.0;
|
||||
trebleGain = 1.0+(trebleGain*fabs(trebleGain)*fabs(trebleGain));
|
||||
double midGain = (B-0.5)*2.0;
|
||||
midGain = 1.0+(midGain*fabs(midGain)*fabs(midGain));
|
||||
double bassGain = (C-0.5)*2.0;
|
||||
bassGain = 1.0+(bassGain*fabs(bassGain)*fabs(bassGain));
|
||||
//separate from filtering stage, this is amplitude, centered on 1.0 unity gain
|
||||
|
||||
//SmoothEQ3 is how to get 3rd order steepness at very low CPU.
|
||||
//because sample rate varies, you could also vary the crossovers
|
||||
//you can't vary Q because math is simplified to take advantage of
|
||||
//how the accurate Q value for this filter is always exactly 1.0.
|
||||
highFast[biq_freq] = (4000.0/getSampleRate());
|
||||
double omega = 2.0*M_PI*(4000.0/getSampleRate()); //mid-high crossover freq
|
||||
double K = 2.0 - cos(omega);
|
||||
double highCoef = -sqrt(K*K - 1.0) + K;
|
||||
lowFast[biq_freq] = (200.0/getSampleRate());
|
||||
omega = 2.0*M_PI*(200.0/getSampleRate()); //low-mid crossover freq
|
||||
K = 2.0 - cos(omega);
|
||||
double lowCoef = -sqrt(K*K - 1.0) + K;
|
||||
//exponential IIR filter as part of an accurate 3rd order Butterworth filter
|
||||
K = tan(M_PI * highFast[biq_freq]);
|
||||
double norm = 1.0 / (1.0 + K + K*K);
|
||||
highFast[biq_a0] = K * K * norm;
|
||||
highFast[biq_a1] = 2.0 * highFast[biq_a0];
|
||||
highFast[biq_a2] = highFast[biq_a0];
|
||||
highFast[biq_b1] = 2.0 * (K*K - 1.0) * norm;
|
||||
highFast[biq_b2] = (1.0 - K + K*K) * norm;
|
||||
K = tan(M_PI * lowFast[biq_freq]);
|
||||
norm = 1.0 / (1.0 + K + K*K);
|
||||
lowFast[biq_a0] = K * K * norm;
|
||||
lowFast[biq_a1] = 2.0 * lowFast[biq_a0];
|
||||
lowFast[biq_a2] = lowFast[biq_a0];
|
||||
lowFast[biq_b1] = 2.0 * (K*K - 1.0) * norm;
|
||||
lowFast[biq_b2] = (1.0 - K + K*K) * norm;
|
||||
//custom biquad setup with Q = 1.0 gets to omit some divides
|
||||
|
||||
while (--sampleFrames >= 0)
|
||||
{
|
||||
double inputSampleL = *in1;
|
||||
double inputSampleR = *in2;
|
||||
if (fabs(inputSampleL)<1.18e-23) inputSampleL = fpdL * 1.18e-17;
|
||||
if (fabs(inputSampleR)<1.18e-23) inputSampleR = fpdR * 1.18e-17;
|
||||
|
||||
double trebleFastL = inputSampleL;
|
||||
double outSample = (trebleFastL * highFast[biq_a0]) + highFast[biq_sL1];
|
||||
highFast[biq_sL1] = (trebleFastL * highFast[biq_a1]) - (outSample * highFast[biq_b1]) + highFast[biq_sL2];
|
||||
highFast[biq_sL2] = (trebleFastL * highFast[biq_a2]) - (outSample * highFast[biq_b2]);
|
||||
double midFastL = outSample; trebleFastL -= midFastL;
|
||||
outSample = (midFastL * lowFast[biq_a0]) + lowFast[biq_sL1];
|
||||
lowFast[biq_sL1] = (midFastL * lowFast[biq_a1]) - (outSample * lowFast[biq_b1]) + lowFast[biq_sL2];
|
||||
lowFast[biq_sL2] = (midFastL * lowFast[biq_a2]) - (outSample * lowFast[biq_b2]);
|
||||
double bassFastL = outSample; midFastL -= bassFastL;
|
||||
trebleFastL = (bassFastL*bassGain) + (midFastL*midGain) + (trebleFastL*trebleGain);
|
||||
//first stage of two crossovers is biquad of exactly 1.0 Q
|
||||
highFastLIIR = (highFastLIIR*highCoef) + (trebleFastL*(1.0-highCoef));
|
||||
midFastL = highFastLIIR; trebleFastL -= midFastL;
|
||||
lowFastLIIR = (lowFastLIIR*lowCoef) + (midFastL*(1.0-lowCoef));
|
||||
bassFastL = lowFastLIIR; midFastL -= bassFastL;
|
||||
inputSampleL = (bassFastL*bassGain) + (midFastL*midGain) + (trebleFastL*trebleGain);
|
||||
//second stage of two crossovers is the exponential filters
|
||||
//this produces a slightly steeper Butterworth filter very cheaply
|
||||
|
||||
double trebleFastR = inputSampleR;
|
||||
outSample = (trebleFastR * highFast[biq_a0]) + highFast[biq_sR1];
|
||||
highFast[biq_sR1] = (trebleFastR * highFast[biq_a1]) - (outSample * highFast[biq_b1]) + highFast[biq_sR2];
|
||||
highFast[biq_sR2] = (trebleFastR * highFast[biq_a2]) - (outSample * highFast[biq_b2]);
|
||||
double midFastR = outSample; trebleFastR -= midFastR;
|
||||
outSample = (midFastR * lowFast[biq_a0]) + lowFast[biq_sR1];
|
||||
lowFast[biq_sR1] = (midFastR * lowFast[biq_a1]) - (outSample * lowFast[biq_b1]) + lowFast[biq_sR2];
|
||||
lowFast[biq_sR2] = (midFastR * lowFast[biq_a2]) - (outSample * lowFast[biq_b2]);
|
||||
double bassFastR = outSample; midFastR -= bassFastR;
|
||||
trebleFastR = (bassFastR*bassGain) + (midFastR*midGain) + (trebleFastR*trebleGain);
|
||||
//first stage of two crossovers is biquad of exactly 1.0 Q
|
||||
highFastRIIR = (highFastRIIR*highCoef) + (trebleFastR*(1.0-highCoef));
|
||||
midFastR = highFastRIIR; trebleFastR -= midFastR;
|
||||
lowFastRIIR = (lowFastRIIR*lowCoef) + (midFastR*(1.0-lowCoef));
|
||||
bassFastR = lowFastRIIR; midFastR -= bassFastR;
|
||||
inputSampleR = (bassFastR*bassGain) + (midFastR*midGain) + (trebleFastR*trebleGain);
|
||||
//second stage of two crossovers is the exponential filters
|
||||
//this produces a slightly steeper Butterworth filter very cheaply
|
||||
|
||||
//begin 64 bit stereo floating point dither
|
||||
//int expon; frexp((double)inputSampleL, &expon);
|
||||
fpdL ^= fpdL << 13; fpdL ^= fpdL >> 17; fpdL ^= fpdL << 5;
|
||||
//inputSampleL += ((double(fpdL)-uint32_t(0x7fffffff)) * 1.1e-44l * pow(2,expon+62));
|
||||
//frexp((double)inputSampleR, &expon);
|
||||
fpdR ^= fpdR << 13; fpdR ^= fpdR >> 17; fpdR ^= fpdR << 5;
|
||||
//inputSampleR += ((double(fpdR)-uint32_t(0x7fffffff)) * 1.1e-44l * pow(2,expon+62));
|
||||
//end 64 bit stereo floating point dither
|
||||
|
||||
*out1 = inputSampleL;
|
||||
*out2 = inputSampleR;
|
||||
|
||||
in1++;
|
||||
in2++;
|
||||
out1++;
|
||||
out2++;
|
||||
}
|
||||
}
|
||||
BIN
plugins/MacAU/SmoothEQ2/English.lproj/InfoPlist.strings
Executable file
BIN
plugins/MacAU/SmoothEQ2/English.lproj/InfoPlist.strings
Executable file
Binary file not shown.
28
plugins/MacAU/SmoothEQ2/Info.plist
Executable file
28
plugins/MacAU/SmoothEQ2/Info.plist
Executable file
|
|
@ -0,0 +1,28 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>CFBundleDevelopmentRegion</key>
|
||||
<string>English</string>
|
||||
<key>CFBundleExecutable</key>
|
||||
<string>${EXECUTABLE_NAME}</string>
|
||||
<key>CFBundleIconFile</key>
|
||||
<string></string>
|
||||
<key>CFBundleIdentifier</key>
|
||||
<string>com.airwindows.audiounit.${PRODUCT_NAME:identifier}</string>
|
||||
<key>CFBundleName</key>
|
||||
<string>${PROJECTNAMEASIDENTIFIER}</string>
|
||||
<key>CFBundleInfoDictionaryVersion</key>
|
||||
<string>6.0</string>
|
||||
<key>CFBundlePackageType</key>
|
||||
<string>BNDL</string>
|
||||
<key>CFBundleShortVersionString</key>
|
||||
<string>1.0</string>
|
||||
<key>CFBundleSignature</key>
|
||||
<string>DthX</string>
|
||||
<key>CFBundleVersion</key>
|
||||
<string>1.0</string>
|
||||
<key>CSResourcesFileMapped</key>
|
||||
<true/>
|
||||
</dict>
|
||||
</plist>
|
||||
446
plugins/MacAU/SmoothEQ2/SmoothEQ2.cpp
Executable file
446
plugins/MacAU/SmoothEQ2/SmoothEQ2.cpp
Executable file
|
|
@ -0,0 +1,446 @@
|
|||
/*
|
||||
* File: SmoothEQ2.cpp
|
||||
*
|
||||
* Version: 1.0
|
||||
*
|
||||
* Created: 8/14/25
|
||||
*
|
||||
* Copyright: Copyright © 2025 Airwindows, Airwindows uses the MIT license
|
||||
*
|
||||
* Disclaimer: IMPORTANT: This Apple software is supplied to you by Apple Computer, Inc. ("Apple") in
|
||||
* consideration of your agreement to the following terms, and your use, installation, modification
|
||||
* or redistribution of this Apple software constitutes acceptance of these terms. If you do
|
||||
* not agree with these terms, please do not use, install, modify or redistribute this Apple
|
||||
* software.
|
||||
*
|
||||
* In consideration of your agreement to abide by the following terms, and subject to these terms,
|
||||
* Apple grants you a personal, non-exclusive license, under Apple's copyrights in this
|
||||
* original Apple software (the "Apple Software"), to use, reproduce, modify and redistribute the
|
||||
* Apple Software, with or without modifications, in source and/or binary forms; provided that if you
|
||||
* redistribute the Apple Software in its entirety and without modifications, you must retain this
|
||||
* notice and the following text and disclaimers in all such redistributions of the Apple Software.
|
||||
* Neither the name, trademarks, service marks or logos of Apple Computer, Inc. may be used to
|
||||
* endorse or promote products derived from the Apple Software without specific prior written
|
||||
* permission from Apple. Except as expressly stated in this notice, no other rights or
|
||||
* licenses, express or implied, are granted by Apple herein, including but not limited to any
|
||||
* patent rights that may be infringed by your derivative works or by other works in which the
|
||||
* Apple Software may be incorporated.
|
||||
*
|
||||
* The Apple Software is provided by Apple on an "AS IS" basis. APPLE MAKES NO WARRANTIES, EXPRESS OR
|
||||
* IMPLIED, INCLUDING WITHOUT LIMITATION THE IMPLIED WARRANTIES OF NON-INFRINGEMENT, MERCHANTABILITY
|
||||
* AND FITNESS FOR A PARTICULAR PURPOSE, REGARDING THE APPLE SOFTWARE OR ITS USE AND OPERATION ALONE
|
||||
* OR IN COMBINATION WITH YOUR PRODUCTS.
|
||||
*
|
||||
* IN NO EVENT SHALL APPLE BE LIABLE FOR ANY SPECIAL, INDIRECT, INCIDENTAL OR CONSEQUENTIAL
|
||||
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
|
||||
* OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) ARISING IN ANY WAY OUT OF THE USE,
|
||||
* REPRODUCTION, MODIFICATION AND/OR DISTRIBUTION OF THE APPLE SOFTWARE, HOWEVER CAUSED AND WHETHER
|
||||
* UNDER THEORY OF CONTRACT, TORT (INCLUDING NEGLIGENCE), STRICT LIABILITY OR OTHERWISE, EVEN
|
||||
* IF APPLE HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
*/
|
||||
/*=============================================================================
|
||||
SmoothEQ2.cpp
|
||||
|
||||
=============================================================================*/
|
||||
#include "SmoothEQ2.h"
|
||||
|
||||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
COMPONENT_ENTRY(SmoothEQ2)
|
||||
|
||||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
// SmoothEQ2::SmoothEQ2
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
SmoothEQ2::SmoothEQ2(AudioUnit component)
|
||||
: AUEffectBase(component)
|
||||
{
|
||||
CreateElements();
|
||||
Globals()->UseIndexedParameters(kNumberOfParameters);
|
||||
SetParameter(kParam_A, kDefaultValue_ParamA );
|
||||
SetParameter(kParam_B, kDefaultValue_ParamB );
|
||||
SetParameter(kParam_C, kDefaultValue_ParamC );
|
||||
SetParameter(kParam_D, kDefaultValue_ParamD );
|
||||
SetParameter(kParam_E, kDefaultValue_ParamE );
|
||||
SetParameter(kParam_F, kDefaultValue_ParamF );
|
||||
SetParameter(kParam_G, kDefaultValue_ParamG );
|
||||
SetParameter(kParam_H, kDefaultValue_ParamH );
|
||||
|
||||
#if AU_DEBUG_DISPATCHER
|
||||
mDebugDispatcher = new AUDebugDispatcher (this);
|
||||
#endif
|
||||
|
||||
}
|
||||
|
||||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
// SmoothEQ2::GetParameterValueStrings
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
ComponentResult SmoothEQ2::GetParameterValueStrings(AudioUnitScope inScope,
|
||||
AudioUnitParameterID inParameterID,
|
||||
CFArrayRef * outStrings)
|
||||
{
|
||||
|
||||
return kAudioUnitErr_InvalidProperty;
|
||||
}
|
||||
|
||||
|
||||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
// SmoothEQ2::GetParameterInfo
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
ComponentResult SmoothEQ2::GetParameterInfo(AudioUnitScope inScope,
|
||||
AudioUnitParameterID inParameterID,
|
||||
AudioUnitParameterInfo &outParameterInfo )
|
||||
{
|
||||
ComponentResult result = noErr;
|
||||
|
||||
outParameterInfo.flags = kAudioUnitParameterFlag_IsWritable
|
||||
| kAudioUnitParameterFlag_IsReadable;
|
||||
|
||||
if (inScope == kAudioUnitScope_Global) {
|
||||
switch(inParameterID)
|
||||
{
|
||||
case kParam_A:
|
||||
AUBase::FillInParameterName (outParameterInfo, kParameterAName, false);
|
||||
outParameterInfo.unit = kAudioUnitParameterUnit_Generic;
|
||||
outParameterInfo.minValue = 0.0;
|
||||
outParameterInfo.maxValue = 1.0;
|
||||
outParameterInfo.defaultValue = kDefaultValue_ParamA;
|
||||
break;
|
||||
case kParam_B:
|
||||
AUBase::FillInParameterName (outParameterInfo, kParameterBName, false);
|
||||
outParameterInfo.unit = kAudioUnitParameterUnit_Generic;
|
||||
outParameterInfo.minValue = 0.0;
|
||||
outParameterInfo.maxValue = 1.0;
|
||||
outParameterInfo.defaultValue = kDefaultValue_ParamB;
|
||||
break;
|
||||
case kParam_C:
|
||||
AUBase::FillInParameterName (outParameterInfo, kParameterCName, false);
|
||||
outParameterInfo.unit = kAudioUnitParameterUnit_Generic;
|
||||
outParameterInfo.minValue = 0.0;
|
||||
outParameterInfo.maxValue = 1.0;
|
||||
outParameterInfo.defaultValue = kDefaultValue_ParamC;
|
||||
break;
|
||||
case kParam_D:
|
||||
AUBase::FillInParameterName (outParameterInfo, kParameterDName, false);
|
||||
outParameterInfo.unit = kAudioUnitParameterUnit_Generic;
|
||||
outParameterInfo.minValue = 0.0;
|
||||
outParameterInfo.maxValue = 1.0;
|
||||
outParameterInfo.defaultValue = kDefaultValue_ParamD;
|
||||
break;
|
||||
case kParam_E:
|
||||
AUBase::FillInParameterName (outParameterInfo, kParameterEName, false);
|
||||
outParameterInfo.unit = kAudioUnitParameterUnit_Generic;
|
||||
outParameterInfo.minValue = 0.0;
|
||||
outParameterInfo.maxValue = 1.0;
|
||||
outParameterInfo.defaultValue = kDefaultValue_ParamE;
|
||||
break;
|
||||
case kParam_F:
|
||||
AUBase::FillInParameterName (outParameterInfo, kParameterFName, false);
|
||||
outParameterInfo.unit = kAudioUnitParameterUnit_Generic;
|
||||
outParameterInfo.minValue = 0.0;
|
||||
outParameterInfo.maxValue = 1.0;
|
||||
outParameterInfo.defaultValue = kDefaultValue_ParamF;
|
||||
break;
|
||||
case kParam_G:
|
||||
AUBase::FillInParameterName (outParameterInfo, kParameterGName, false);
|
||||
outParameterInfo.unit = kAudioUnitParameterUnit_Generic;
|
||||
outParameterInfo.minValue = 0.0;
|
||||
outParameterInfo.maxValue = 1.0;
|
||||
outParameterInfo.defaultValue = kDefaultValue_ParamG;
|
||||
break;
|
||||
case kParam_H:
|
||||
AUBase::FillInParameterName (outParameterInfo, kParameterHName, false);
|
||||
outParameterInfo.unit = kAudioUnitParameterUnit_Generic;
|
||||
outParameterInfo.minValue = 0.0;
|
||||
outParameterInfo.maxValue = 1.0;
|
||||
outParameterInfo.defaultValue = kDefaultValue_ParamH;
|
||||
break;
|
||||
default:
|
||||
result = kAudioUnitErr_InvalidParameter;
|
||||
break;
|
||||
}
|
||||
} else {
|
||||
result = kAudioUnitErr_InvalidParameter;
|
||||
}
|
||||
|
||||
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
// SmoothEQ2::GetPropertyInfo
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
ComponentResult SmoothEQ2::GetPropertyInfo (AudioUnitPropertyID inID,
|
||||
AudioUnitScope inScope,
|
||||
AudioUnitElement inElement,
|
||||
UInt32 & outDataSize,
|
||||
Boolean & outWritable)
|
||||
{
|
||||
return AUEffectBase::GetPropertyInfo (inID, inScope, inElement, outDataSize, outWritable);
|
||||
}
|
||||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
// SmoothEQ2::GetProperty
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
ComponentResult SmoothEQ2::GetProperty( AudioUnitPropertyID inID,
|
||||
AudioUnitScope inScope,
|
||||
AudioUnitElement inElement,
|
||||
void * outData )
|
||||
{
|
||||
return AUEffectBase::GetProperty (inID, inScope, inElement, outData);
|
||||
}
|
||||
|
||||
// SmoothEQ2::Initialize
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
ComponentResult SmoothEQ2::Initialize()
|
||||
{
|
||||
ComponentResult result = AUEffectBase::Initialize();
|
||||
if (result == noErr)
|
||||
Reset(kAudioUnitScope_Global, 0);
|
||||
return result;
|
||||
}
|
||||
|
||||
#pragma mark ____SmoothEQ2EffectKernel
|
||||
|
||||
|
||||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
// SmoothEQ2::SmoothEQ2Kernel::Reset()
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
void SmoothEQ2::SmoothEQ2Kernel::Reset()
|
||||
{
|
||||
for (int x = 0; x < biq_total; x++) {
|
||||
highA[x] = 0.0;
|
||||
highB[x] = 0.0;
|
||||
highC[x] = 0.0;
|
||||
midA[x] = 0.0;
|
||||
midB[x] = 0.0;
|
||||
midC[x] = 0.0;
|
||||
lowA[x] = 0.0;
|
||||
lowB[x] = 0.0;
|
||||
lowC[x] = 0.0;
|
||||
}
|
||||
highIIR = 0.0;
|
||||
midIIR = 0.0;
|
||||
lowIIR = 0.0;
|
||||
fpd = 1.0; while (fpd < 16386) fpd = rand()*UINT32_MAX;
|
||||
}
|
||||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
// SmoothEQ2::SmoothEQ2Kernel::Process
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
void SmoothEQ2::SmoothEQ2Kernel::Process( const Float32 *inSourceP,
|
||||
Float32 *inDestP,
|
||||
UInt32 inFramesToProcess,
|
||||
UInt32 inNumChannels,
|
||||
bool &ioSilence )
|
||||
{
|
||||
UInt32 nSampleFrames = inFramesToProcess;
|
||||
const Float32 *sourceP = inSourceP;
|
||||
Float32 *destP = inDestP;
|
||||
|
||||
double trebleGain = (GetParameter( kParam_A )-0.5)*2.0;
|
||||
trebleGain = 1.0+(trebleGain*fabs(trebleGain)*fabs(trebleGain));
|
||||
double highmidGain = (GetParameter( kParam_B )-0.5)*2.0;
|
||||
highmidGain = 1.0+(highmidGain*fabs(highmidGain)*fabs(highmidGain));
|
||||
double lowmidGain = (GetParameter( kParam_C )-0.5)*2.0;
|
||||
lowmidGain = 1.0+(lowmidGain*fabs(lowmidGain)*fabs(lowmidGain));
|
||||
double bassGain = (GetParameter( kParam_D )-0.5)*2.0;
|
||||
bassGain = 1.0+(bassGain*fabs(bassGain)*fabs(bassGain));
|
||||
|
||||
double trebleRef = GetParameter( kParam_E )-0.5;
|
||||
double highmidRef = GetParameter( kParam_F )-0.5;
|
||||
double lowmidRef = GetParameter( kParam_G )-0.5;
|
||||
double bassRef = GetParameter( kParam_H )-0.5;
|
||||
double highF = 0.75 + ((trebleRef+trebleRef+trebleRef+highmidRef)*0.125);
|
||||
double bassF = 0.25 + ((lowmidRef+bassRef+bassRef+bassRef)*0.125);
|
||||
double midF = (highF*0.5) + (bassF*0.5) + ((highmidRef+lowmidRef)*0.125);
|
||||
|
||||
double highQ = fmax(fmin(1.0+(highmidRef-trebleRef),4.0),0.125);
|
||||
double midQ = fmax(fmin(1.0+(lowmidRef-highmidRef),4.0),0.125);
|
||||
double lowQ = fmax(fmin(1.0+(bassRef-lowmidRef),4.0),0.125);
|
||||
|
||||
highA[biq_freq] = ((pow(highF,3)*20000.0)/GetSampleRate());
|
||||
highC[biq_freq] = highB[biq_freq] = highA[biq_freq] = fmax(fmin(highA[biq_freq],0.4999),0.00025);
|
||||
double highFreq = pow(highF,3)*20000.0;
|
||||
double omega = 2.0*M_PI*(highFreq/GetSampleRate());
|
||||
double K = 2.0-cos(omega);
|
||||
double highCoef = -sqrt((K*K)-1.0)+K;
|
||||
highA[biq_reso] = 2.24697960 * highQ;
|
||||
highB[biq_reso] = 0.80193774 * highQ;
|
||||
highC[biq_reso] = 0.55495813 * highQ;
|
||||
|
||||
midA[biq_freq] = ((pow(midF,3)*20000.0)/GetSampleRate());
|
||||
midC[biq_freq] = midB[biq_freq] = midA[biq_freq] = fmax(fmin(midA[biq_freq],0.4999),0.00025);
|
||||
double midFreq = pow(midF,3)*20000.0;
|
||||
omega = 2.0*M_PI*(midFreq/GetSampleRate());
|
||||
K = 2.0-cos(omega);
|
||||
double midCoef = -sqrt((K*K)-1.0)+K;
|
||||
midA[biq_reso] = 2.24697960 * midQ;
|
||||
midB[biq_reso] = 0.80193774 * midQ;
|
||||
midC[biq_reso] = 0.55495813 * midQ;
|
||||
|
||||
lowA[biq_freq] = ((pow(bassF,3)*20000.0)/GetSampleRate());
|
||||
lowC[biq_freq] = lowB[biq_freq] = lowA[biq_freq] = fmax(fmin(lowA[biq_freq],0.4999),0.00025);
|
||||
double lowFreq = pow(bassF,3)*20000.0;
|
||||
omega = 2.0*M_PI*(lowFreq/GetSampleRate());
|
||||
K = 2.0-cos(omega);
|
||||
double lowCoef = -sqrt((K*K)-1.0)+K;
|
||||
lowA[biq_reso] = 2.24697960 * lowQ;
|
||||
lowB[biq_reso] = 0.80193774 * lowQ;
|
||||
lowC[biq_reso] = 0.55495813 * lowQ;
|
||||
|
||||
K = tan(M_PI * highA[biq_freq]);
|
||||
double norm = 1.0 / (1.0 + K / highA[biq_reso] + K * K);
|
||||
highA[biq_a0] = K * K * norm;
|
||||
highA[biq_a1] = 2.0 * highA[biq_a0];
|
||||
highA[biq_a2] = highA[biq_a0];
|
||||
highA[biq_b1] = 2.0 * (K * K - 1.0) * norm;
|
||||
highA[biq_b2] = (1.0 - K / highA[biq_reso] + K * K) * norm;
|
||||
K = tan(M_PI * highB[biq_freq]);
|
||||
norm = 1.0 / (1.0 + K / highB[biq_reso] + K * K);
|
||||
highB[biq_a0] = K * K * norm;
|
||||
highB[biq_a1] = 2.0 * highB[biq_a0];
|
||||
highB[biq_a2] = highB[biq_a0];
|
||||
highB[biq_b1] = 2.0 * (K * K - 1.0) * norm;
|
||||
highB[biq_b2] = (1.0 - K / highB[biq_reso] + K * K) * norm;
|
||||
K = tan(M_PI * highC[biq_freq]);
|
||||
norm = 1.0 / (1.0 + K / highC[biq_reso] + K * K);
|
||||
highC[biq_a0] = K * K * norm;
|
||||
highC[biq_a1] = 2.0 * highC[biq_a0];
|
||||
highC[biq_a2] = highC[biq_a0];
|
||||
highC[biq_b1] = 2.0 * (K * K - 1.0) * norm;
|
||||
highC[biq_b2] = (1.0 - K / highC[biq_reso] + K * K) * norm;
|
||||
|
||||
K = tan(M_PI * midA[biq_freq]);
|
||||
norm = 1.0 / (1.0 + K / midA[biq_reso] + K * K);
|
||||
midA[biq_a0] = K * K * norm;
|
||||
midA[biq_a1] = 2.0 * midA[biq_a0];
|
||||
midA[biq_a2] = midA[biq_a0];
|
||||
midA[biq_b1] = 2.0 * (K * K - 1.0) * norm;
|
||||
midA[biq_b2] = (1.0 - K / midA[biq_reso] + K * K) * norm;
|
||||
K = tan(M_PI * midB[biq_freq]);
|
||||
norm = 1.0 / (1.0 + K / midB[biq_reso] + K * K);
|
||||
midB[biq_a0] = K * K * norm;
|
||||
midB[biq_a1] = 2.0 * midB[biq_a0];
|
||||
midB[biq_a2] = midB[biq_a0];
|
||||
midB[biq_b1] = 2.0 * (K * K - 1.0) * norm;
|
||||
midB[biq_b2] = (1.0 - K / midB[biq_reso] + K * K) * norm;
|
||||
K = tan(M_PI * midC[biq_freq]);
|
||||
norm = 1.0 / (1.0 + K / midC[biq_reso] + K * K);
|
||||
midC[biq_a0] = K * K * norm;
|
||||
midC[biq_a1] = 2.0 * midC[biq_a0];
|
||||
midC[biq_a2] = midC[biq_a0];
|
||||
midC[biq_b1] = 2.0 * (K * K - 1.0) * norm;
|
||||
midC[biq_b2] = (1.0 - K / midC[biq_reso] + K * K) * norm;
|
||||
|
||||
K = tan(M_PI * lowA[biq_freq]);
|
||||
norm = 1.0 / (1.0 + K / lowA[biq_reso] + K * K);
|
||||
lowA[biq_a0] = K * K * norm;
|
||||
lowA[biq_a1] = 2.0 * lowA[biq_a0];
|
||||
lowA[biq_a2] = lowA[biq_a0];
|
||||
lowA[biq_b1] = 2.0 * (K * K - 1.0) * norm;
|
||||
lowA[biq_b2] = (1.0 - K / lowA[biq_reso] + K * K) * norm;
|
||||
K = tan(M_PI * lowB[biq_freq]);
|
||||
norm = 1.0 / (1.0 + K / lowB[biq_reso] + K * K);
|
||||
lowB[biq_a0] = K * K * norm;
|
||||
lowB[biq_a1] = 2.0 * lowB[biq_a0];
|
||||
lowB[biq_a2] = lowB[biq_a0];
|
||||
lowB[biq_b1] = 2.0 * (K * K - 1.0) * norm;
|
||||
lowB[biq_b2] = (1.0 - K / lowB[biq_reso] + K * K) * norm;
|
||||
K = tan(M_PI * lowC[biq_freq]);
|
||||
norm = 1.0 / (1.0 + K / lowC[biq_reso] + K * K);
|
||||
lowC[biq_a0] = K * K * norm;
|
||||
lowC[biq_a1] = 2.0 * lowC[biq_a0];
|
||||
lowC[biq_a2] = lowC[biq_a0];
|
||||
lowC[biq_b1] = 2.0 * (K * K - 1.0) * norm;
|
||||
lowC[biq_b2] = (1.0 - K / lowC[biq_reso] + K * K) * norm;
|
||||
|
||||
while (nSampleFrames-- > 0) {
|
||||
double inputSampleL = *sourceP;
|
||||
if (fabs(inputSampleL)<1.18e-23) inputSampleL = fpd * 1.18e-17;
|
||||
|
||||
double trebleL = inputSampleL;
|
||||
double outSample = (trebleL * highA[biq_a0]) + highA[biq_sL1];
|
||||
highA[biq_sL1] = (trebleL * highA[biq_a1]) - (outSample * highA[biq_b1]) + highA[biq_sL2];
|
||||
highA[biq_sL2] = (trebleL * highA[biq_a2]) - (outSample * highA[biq_b2]);
|
||||
double highmidL = outSample; trebleL -= highmidL;
|
||||
|
||||
outSample = (highmidL * midA[biq_a0]) + midA[biq_sL1];
|
||||
midA[biq_sL1] = (highmidL * midA[biq_a1]) - (outSample * midA[biq_b1]) + midA[biq_sL2];
|
||||
midA[biq_sL2] = (highmidL * midA[biq_a2]) - (outSample * midA[biq_b2]);
|
||||
double lowmidL = outSample; highmidL -= lowmidL;
|
||||
|
||||
outSample = (lowmidL * lowA[biq_a0]) + lowA[biq_sL1];
|
||||
lowA[biq_sL1] = (lowmidL * lowA[biq_a1]) - (outSample * lowA[biq_b1]) + lowA[biq_sL2];
|
||||
lowA[biq_sL2] = (lowmidL * lowA[biq_a2]) - (outSample * lowA[biq_b2]);
|
||||
double bassL = outSample; lowmidL -= bassL;
|
||||
|
||||
trebleL = (bassL*bassGain) + (lowmidL*lowmidGain) + (highmidL*highmidGain) + (trebleL*trebleGain);
|
||||
//first stage of three crossovers
|
||||
|
||||
outSample = (trebleL * highB[biq_a0]) + highB[biq_sL1];
|
||||
highB[biq_sL1] = (trebleL * highB[biq_a1]) - (outSample * highB[biq_b1]) + highB[biq_sL2];
|
||||
highB[biq_sL2] = (trebleL * highB[biq_a2]) - (outSample * highB[biq_b2]);
|
||||
highmidL = outSample; trebleL -= highmidL;
|
||||
|
||||
outSample = (highmidL * midB[biq_a0]) + midB[biq_sL1];
|
||||
midB[biq_sL1] = (highmidL * midB[biq_a1]) - (outSample * midB[biq_b1]) + midB[biq_sL2];
|
||||
midB[biq_sL2] = (highmidL * midB[biq_a2]) - (outSample * midB[biq_b2]);
|
||||
lowmidL = outSample; highmidL -= lowmidL;
|
||||
|
||||
outSample = (lowmidL * lowB[biq_a0]) + lowB[biq_sL1];
|
||||
lowB[biq_sL1] = (lowmidL * lowB[biq_a1]) - (outSample * lowB[biq_b1]) + lowB[biq_sL2];
|
||||
lowB[biq_sL2] = (lowmidL * lowB[biq_a2]) - (outSample * lowB[biq_b2]);
|
||||
bassL = outSample; lowmidL -= bassL;
|
||||
|
||||
trebleL = (bassL*bassGain) + (lowmidL*lowmidGain) + (highmidL*highmidGain) + (trebleL*trebleGain);
|
||||
//second stage of three crossovers
|
||||
|
||||
outSample = (trebleL * highC[biq_a0]) + highC[biq_sL1];
|
||||
highC[biq_sL1] = (trebleL * highC[biq_a1]) - (outSample * highC[biq_b1]) + highC[biq_sL2];
|
||||
highC[biq_sL2] = (trebleL * highC[biq_a2]) - (outSample * highC[biq_b2]);
|
||||
highmidL = outSample; trebleL -= highmidL;
|
||||
|
||||
outSample = (highmidL * midC[biq_a0]) + midC[biq_sL1];
|
||||
midC[biq_sL1] = (highmidL * midC[biq_a1]) - (outSample * midC[biq_b1]) + midC[biq_sL2];
|
||||
midC[biq_sL2] = (highmidL * midC[biq_a2]) - (outSample * midC[biq_b2]);
|
||||
lowmidL = outSample; highmidL -= lowmidL;
|
||||
|
||||
outSample = (lowmidL * lowC[biq_a0]) + lowC[biq_sL1];
|
||||
lowC[biq_sL1] = (lowmidL * lowC[biq_a1]) - (outSample * lowC[biq_b1]) + lowC[biq_sL2];
|
||||
lowC[biq_sL2] = (lowmidL * lowC[biq_a2]) - (outSample * lowC[biq_b2]);
|
||||
bassL = outSample; lowmidL -= bassL;
|
||||
|
||||
trebleL = (bassL*bassGain) + (lowmidL*lowmidGain) + (highmidL*highmidGain) + (trebleL*trebleGain);
|
||||
//third stage of three crossovers
|
||||
|
||||
highIIR = (highIIR*highCoef) + (trebleL*(1.0-highCoef));
|
||||
highmidL = highIIR; trebleL -= highmidL;
|
||||
|
||||
midIIR = (midIIR*midCoef) + (highmidL*(1.0-midCoef));
|
||||
lowmidL = midIIR; highmidL -= lowmidL;
|
||||
|
||||
lowIIR = (lowIIR*lowCoef) + (lowmidL*(1.0-lowCoef));
|
||||
bassL = lowIIR; lowmidL -= bassL;
|
||||
|
||||
inputSampleL = (bassL*bassGain) + (lowmidL*lowmidGain) + (highmidL*highmidGain) + (trebleL*trebleGain);
|
||||
//fourth stage of three crossovers is the exponential filters
|
||||
|
||||
//begin 32 bit floating point dither
|
||||
int expon; frexpf((float)inputSampleL, &expon);
|
||||
fpd ^= fpd << 13; fpd ^= fpd >> 17; fpd ^= fpd << 5;
|
||||
inputSampleL += ((double(fpd)-uint32_t(0x7fffffff)) * 5.5e-36l * pow(2,expon+62));
|
||||
//end 32 bit floating point dither
|
||||
|
||||
*destP = inputSampleL;
|
||||
|
||||
sourceP += inNumChannels; destP += inNumChannels;
|
||||
}
|
||||
}
|
||||
|
||||
1
plugins/MacAU/SmoothEQ2/SmoothEQ2.exp
Executable file
1
plugins/MacAU/SmoothEQ2/SmoothEQ2.exp
Executable file
|
|
@ -0,0 +1 @@
|
|||
_SmoothEQ2Entry
|
||||
184
plugins/MacAU/SmoothEQ2/SmoothEQ2.h
Executable file
184
plugins/MacAU/SmoothEQ2/SmoothEQ2.h
Executable file
|
|
@ -0,0 +1,184 @@
|
|||
/*
|
||||
* File: SmoothEQ2.h
|
||||
*
|
||||
* Version: 1.0
|
||||
*
|
||||
* Created: 8/14/25
|
||||
*
|
||||
* Copyright: Copyright © 2025 Airwindows, Airwindows uses the MIT license
|
||||
*
|
||||
* Disclaimer: IMPORTANT: This Apple software is supplied to you by Apple Computer, Inc. ("Apple") in
|
||||
* consideration of your agreement to the following terms, and your use, installation, modification
|
||||
* or redistribution of this Apple software constitutes acceptance of these terms. If you do
|
||||
* not agree with these terms, please do not use, install, modify or redistribute this Apple
|
||||
* software.
|
||||
*
|
||||
* In consideration of your agreement to abide by the following terms, and subject to these terms,
|
||||
* Apple grants you a personal, non-exclusive license, under Apple's copyrights in this
|
||||
* original Apple software (the "Apple Software"), to use, reproduce, modify and redistribute the
|
||||
* Apple Software, with or without modifications, in source and/or binary forms; provided that if you
|
||||
* redistribute the Apple Software in its entirety and without modifications, you must retain this
|
||||
* notice and the following text and disclaimers in all such redistributions of the Apple Software.
|
||||
* Neither the name, trademarks, service marks or logos of Apple Computer, Inc. may be used to
|
||||
* endorse or promote products derived from the Apple Software without specific prior written
|
||||
* permission from Apple. Except as expressly stated in this notice, no other rights or
|
||||
* licenses, express or implied, are granted by Apple herein, including but not limited to any
|
||||
* patent rights that may be infringed by your derivative works or by other works in which the
|
||||
* Apple Software may be incorporated.
|
||||
*
|
||||
* The Apple Software is provided by Apple on an "AS IS" basis. APPLE MAKES NO WARRANTIES, EXPRESS OR
|
||||
* IMPLIED, INCLUDING WITHOUT LIMITATION THE IMPLIED WARRANTIES OF NON-INFRINGEMENT, MERCHANTABILITY
|
||||
* AND FITNESS FOR A PARTICULAR PURPOSE, REGARDING THE APPLE SOFTWARE OR ITS USE AND OPERATION ALONE
|
||||
* OR IN COMBINATION WITH YOUR PRODUCTS.
|
||||
*
|
||||
* IN NO EVENT SHALL APPLE BE LIABLE FOR ANY SPECIAL, INDIRECT, INCIDENTAL OR CONSEQUENTIAL
|
||||
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
|
||||
* OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) ARISING IN ANY WAY OUT OF THE USE,
|
||||
* REPRODUCTION, MODIFICATION AND/OR DISTRIBUTION OF THE APPLE SOFTWARE, HOWEVER CAUSED AND WHETHER
|
||||
* UNDER THEORY OF CONTRACT, TORT (INCLUDING NEGLIGENCE), STRICT LIABILITY OR OTHERWISE, EVEN
|
||||
* IF APPLE HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
*/
|
||||
#include "AUEffectBase.h"
|
||||
#include "SmoothEQ2Version.h"
|
||||
|
||||
#if AU_DEBUG_DISPATCHER
|
||||
#include "AUDebugDispatcher.h"
|
||||
#endif
|
||||
|
||||
|
||||
#ifndef __SmoothEQ2_h__
|
||||
#define __SmoothEQ2_h__
|
||||
|
||||
|
||||
#pragma mark ____SmoothEQ2 Parameters
|
||||
|
||||
// parameters
|
||||
static const float kDefaultValue_ParamA = 0.5;
|
||||
static const float kDefaultValue_ParamB = 0.5;
|
||||
static const float kDefaultValue_ParamC = 0.5;
|
||||
static const float kDefaultValue_ParamD = 0.5;
|
||||
static const float kDefaultValue_ParamE = 0.5;
|
||||
static const float kDefaultValue_ParamF = 0.5;
|
||||
static const float kDefaultValue_ParamG = 0.5;
|
||||
static const float kDefaultValue_ParamH = 0.5;
|
||||
|
||||
static CFStringRef kParameterAName = CFSTR("High");
|
||||
static CFStringRef kParameterBName = CFSTR("HMid");
|
||||
static CFStringRef kParameterCName = CFSTR("LMid");
|
||||
static CFStringRef kParameterDName = CFSTR("Bass");
|
||||
static CFStringRef kParameterEName = CFSTR("HighF");
|
||||
static CFStringRef kParameterFName = CFSTR("HMidF");
|
||||
static CFStringRef kParameterGName = CFSTR("LMidF");
|
||||
static CFStringRef kParameterHName = CFSTR("BassF");
|
||||
|
||||
enum {
|
||||
kParam_A =0,
|
||||
kParam_B =1,
|
||||
kParam_C =2,
|
||||
kParam_D =3,
|
||||
kParam_E =4,
|
||||
kParam_F =5,
|
||||
kParam_G =6,
|
||||
kParam_H =7,
|
||||
//Add your parameters here...
|
||||
kNumberOfParameters=8
|
||||
};
|
||||
|
||||
#pragma mark ____SmoothEQ2
|
||||
class SmoothEQ2 : public AUEffectBase
|
||||
{
|
||||
public:
|
||||
SmoothEQ2(AudioUnit component);
|
||||
#if AU_DEBUG_DISPATCHER
|
||||
virtual ~SmoothEQ2 () { delete mDebugDispatcher; }
|
||||
#endif
|
||||
|
||||
virtual AUKernelBase * NewKernel() { return new SmoothEQ2Kernel(this); }
|
||||
|
||||
virtual ComponentResult GetParameterValueStrings(AudioUnitScope inScope,
|
||||
AudioUnitParameterID inParameterID,
|
||||
CFArrayRef * outStrings);
|
||||
|
||||
virtual ComponentResult GetParameterInfo(AudioUnitScope inScope,
|
||||
AudioUnitParameterID inParameterID,
|
||||
AudioUnitParameterInfo &outParameterInfo);
|
||||
|
||||
virtual ComponentResult GetPropertyInfo(AudioUnitPropertyID inID,
|
||||
AudioUnitScope inScope,
|
||||
AudioUnitElement inElement,
|
||||
UInt32 & outDataSize,
|
||||
Boolean & outWritable );
|
||||
|
||||
virtual ComponentResult GetProperty(AudioUnitPropertyID inID,
|
||||
AudioUnitScope inScope,
|
||||
AudioUnitElement inElement,
|
||||
void * outData);
|
||||
|
||||
virtual ComponentResult Initialize();
|
||||
virtual bool SupportsTail () { return true; }
|
||||
virtual Float64 GetTailTime() {return (1.0/GetSampleRate())*0.0;} //in SECONDS! gsr * a number = in samples
|
||||
virtual Float64 GetLatency() {return (1.0/GetSampleRate())*0.0;} // in SECONDS! gsr * a number = in samples
|
||||
|
||||
/*! @method Version */
|
||||
virtual ComponentResult Version() { return kSmoothEQ2Version; }
|
||||
|
||||
|
||||
|
||||
protected:
|
||||
class SmoothEQ2Kernel : public AUKernelBase // most of the real work happens here
|
||||
{
|
||||
public:
|
||||
SmoothEQ2Kernel(AUEffectBase *inAudioUnit )
|
||||
: AUKernelBase(inAudioUnit)
|
||||
{
|
||||
}
|
||||
|
||||
// *Required* overides for the process method for this effect
|
||||
// processes one channel of interleaved samples
|
||||
virtual void Process( const Float32 *inSourceP,
|
||||
Float32 *inDestP,
|
||||
UInt32 inFramesToProcess,
|
||||
UInt32 inNumChannels,
|
||||
bool &ioSilence);
|
||||
|
||||
virtual void Reset();
|
||||
|
||||
private:
|
||||
enum {
|
||||
biq_freq,
|
||||
biq_reso,
|
||||
biq_a0,
|
||||
biq_a1,
|
||||
biq_a2,
|
||||
biq_b1,
|
||||
biq_b2,
|
||||
biq_sL1,
|
||||
biq_sL2,
|
||||
biq_sR1,
|
||||
biq_sR2,
|
||||
biq_total
|
||||
}; //coefficient interpolating bessel filter, stereo
|
||||
double highA[biq_total];
|
||||
double highB[biq_total];
|
||||
double highC[biq_total];
|
||||
double highIIR;
|
||||
|
||||
double midA[biq_total];
|
||||
double midB[biq_total];
|
||||
double midC[biq_total];
|
||||
double midIIR;
|
||||
|
||||
double lowA[biq_total];
|
||||
double lowB[biq_total];
|
||||
double lowC[biq_total];
|
||||
double lowIIR;
|
||||
|
||||
uint32_t fpd;
|
||||
};
|
||||
};
|
||||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
|
||||
#endif
|
||||
61
plugins/MacAU/SmoothEQ2/SmoothEQ2.r
Executable file
61
plugins/MacAU/SmoothEQ2/SmoothEQ2.r
Executable file
|
|
@ -0,0 +1,61 @@
|
|||
/*
|
||||
* File: SmoothEQ2.r
|
||||
*
|
||||
* Version: 1.0
|
||||
*
|
||||
* Created: 8/14/25
|
||||
*
|
||||
* Copyright: Copyright © 2025 Airwindows, Airwindows uses the MIT license
|
||||
*
|
||||
* Disclaimer: IMPORTANT: This Apple software is supplied to you by Apple Computer, Inc. ("Apple") in
|
||||
* consideration of your agreement to the following terms, and your use, installation, modification
|
||||
* or redistribution of this Apple software constitutes acceptance of these terms. If you do
|
||||
* not agree with these terms, please do not use, install, modify or redistribute this Apple
|
||||
* software.
|
||||
*
|
||||
* In consideration of your agreement to abide by the following terms, and subject to these terms,
|
||||
* Apple grants you a personal, non-exclusive license, under Apple's copyrights in this
|
||||
* original Apple software (the "Apple Software"), to use, reproduce, modify and redistribute the
|
||||
* Apple Software, with or without modifications, in source and/or binary forms; provided that if you
|
||||
* redistribute the Apple Software in its entirety and without modifications, you must retain this
|
||||
* notice and the following text and disclaimers in all such redistributions of the Apple Software.
|
||||
* Neither the name, trademarks, service marks or logos of Apple Computer, Inc. may be used to
|
||||
* endorse or promote products derived from the Apple Software without specific prior written
|
||||
* permission from Apple. Except as expressly stated in this notice, no other rights or
|
||||
* licenses, express or implied, are granted by Apple herein, including but not limited to any
|
||||
* patent rights that may be infringed by your derivative works or by other works in which the
|
||||
* Apple Software may be incorporated.
|
||||
*
|
||||
* The Apple Software is provided by Apple on an "AS IS" basis. APPLE MAKES NO WARRANTIES, EXPRESS OR
|
||||
* IMPLIED, INCLUDING WITHOUT LIMITATION THE IMPLIED WARRANTIES OF NON-INFRINGEMENT, MERCHANTABILITY
|
||||
* AND FITNESS FOR A PARTICULAR PURPOSE, REGARDING THE APPLE SOFTWARE OR ITS USE AND OPERATION ALONE
|
||||
* OR IN COMBINATION WITH YOUR PRODUCTS.
|
||||
*
|
||||
* IN NO EVENT SHALL APPLE BE LIABLE FOR ANY SPECIAL, INDIRECT, INCIDENTAL OR CONSEQUENTIAL
|
||||
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
|
||||
* OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) ARISING IN ANY WAY OUT OF THE USE,
|
||||
* REPRODUCTION, MODIFICATION AND/OR DISTRIBUTION OF THE APPLE SOFTWARE, HOWEVER CAUSED AND WHETHER
|
||||
* UNDER THEORY OF CONTRACT, TORT (INCLUDING NEGLIGENCE), STRICT LIABILITY OR OTHERWISE, EVEN
|
||||
* IF APPLE HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
*/
|
||||
#include <AudioUnit/AudioUnit.r>
|
||||
|
||||
#include "SmoothEQ2Version.h"
|
||||
|
||||
// Note that resource IDs must be spaced 2 apart for the 'STR ' name and description
|
||||
#define kAudioUnitResID_SmoothEQ2 1000
|
||||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ SmoothEQ2~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
#define RES_ID kAudioUnitResID_SmoothEQ2
|
||||
#define COMP_TYPE kAudioUnitType_Effect
|
||||
#define COMP_SUBTYPE SmoothEQ2_COMP_SUBTYPE
|
||||
#define COMP_MANUF SmoothEQ2_COMP_MANF
|
||||
|
||||
#define VERSION kSmoothEQ2Version
|
||||
#define NAME "Airwindows: SmoothEQ2"
|
||||
#define DESCRIPTION "SmoothEQ2 AU"
|
||||
#define ENTRY_POINT "SmoothEQ2Entry"
|
||||
|
||||
#include "AUResources.r"
|
||||
1358
plugins/MacAU/SmoothEQ2/SmoothEQ2.xcodeproj/christopherjohnson.mode1v3
Executable file
1358
plugins/MacAU/SmoothEQ2/SmoothEQ2.xcodeproj/christopherjohnson.mode1v3
Executable file
File diff suppressed because it is too large
Load diff
166
plugins/MacAU/SmoothEQ2/SmoothEQ2.xcodeproj/christopherjohnson.pbxuser
Executable file
166
plugins/MacAU/SmoothEQ2/SmoothEQ2.xcodeproj/christopherjohnson.pbxuser
Executable file
|
|
@ -0,0 +1,166 @@
|
|||
// !$*UTF8*$!
|
||||
{
|
||||
089C1669FE841209C02AAC07 /* Project object */ = {
|
||||
activeBuildConfigurationName = Release;
|
||||
activeTarget = 8D01CCC60486CAD60068D4B7 /* SmoothEQ2 */;
|
||||
codeSenseManager = 8BD3CCB9148830B20062E48C /* Code sense */;
|
||||
perUserDictionary = {
|
||||
PBXConfiguration.PBXFileTableDataSource3.PBXFileTableDataSource = {
|
||||
PBXFileTableDataSourceColumnSortingDirectionKey = "-1";
|
||||
PBXFileTableDataSourceColumnSortingKey = PBXFileDataSource_Filename_ColumnID;
|
||||
PBXFileTableDataSourceColumnWidthsKey = (
|
||||
20,
|
||||
10,
|
||||
20,
|
||||
48,
|
||||
43,
|
||||
43,
|
||||
20,
|
||||
);
|
||||
PBXFileTableDataSourceColumnsKey = (
|
||||
PBXFileDataSource_FiletypeID,
|
||||
PBXFileDataSource_Filename_ColumnID,
|
||||
PBXFileDataSource_Built_ColumnID,
|
||||
PBXFileDataSource_ObjectSize_ColumnID,
|
||||
PBXFileDataSource_Errors_ColumnID,
|
||||
PBXFileDataSource_Warnings_ColumnID,
|
||||
PBXFileDataSource_Target_ColumnID,
|
||||
);
|
||||
};
|
||||
PBXConfiguration.PBXTargetDataSource.PBXTargetDataSource = {
|
||||
PBXFileTableDataSourceColumnSortingDirectionKey = "-1";
|
||||
PBXFileTableDataSourceColumnSortingKey = PBXFileDataSource_Filename_ColumnID;
|
||||
PBXFileTableDataSourceColumnWidthsKey = (
|
||||
20,
|
||||
252,
|
||||
60,
|
||||
20,
|
||||
48,
|
||||
43,
|
||||
43,
|
||||
);
|
||||
PBXFileTableDataSourceColumnsKey = (
|
||||
PBXFileDataSource_FiletypeID,
|
||||
PBXFileDataSource_Filename_ColumnID,
|
||||
PBXTargetDataSource_PrimaryAttribute,
|
||||
PBXFileDataSource_Built_ColumnID,
|
||||
PBXFileDataSource_ObjectSize_ColumnID,
|
||||
PBXFileDataSource_Errors_ColumnID,
|
||||
PBXFileDataSource_Warnings_ColumnID,
|
||||
);
|
||||
};
|
||||
PBXPerProjectTemplateStateSaveDate = 777106752;
|
||||
PBXWorkspaceStateSaveDate = 777106752;
|
||||
};
|
||||
perUserProjectItems = {
|
||||
8BC8CE942E51B54800FAAE1C /* PBXTextBookmark */ = 8BC8CE942E51B54800FAAE1C /* PBXTextBookmark */;
|
||||
8BC8CE952E51B54800FAAE1C /* PBXTextBookmark */ = 8BC8CE952E51B54800FAAE1C /* PBXTextBookmark */;
|
||||
8BC8CEC42E51BCA900FAAE1C /* PBXTextBookmark */ = 8BC8CEC42E51BCA900FAAE1C /* PBXTextBookmark */;
|
||||
8BEA4A062E4FC78C003D2CCC /* PlistBookmark */ = 8BEA4A062E4FC78C003D2CCC /* PlistBookmark */;
|
||||
8BEA4A072E4FC78C003D2CCC /* PBXTextBookmark */ = 8BEA4A072E4FC78C003D2CCC /* PBXTextBookmark */;
|
||||
};
|
||||
sourceControlManager = 8BD3CCB8148830B20062E48C /* Source Control */;
|
||||
userBuildSettings = {
|
||||
};
|
||||
};
|
||||
8BA05A660720730100365D66 /* SmoothEQ2.cpp */ = {
|
||||
uiCtxt = {
|
||||
sepNavIntBoundsRect = "{{0, 0}, {1101, 8370}}";
|
||||
sepNavSelRange = "{16284, 3370}";
|
||||
sepNavVisRange = "{18464, 1545}";
|
||||
sepNavWindowFrame = "{{624, 38}, {1148, 840}}";
|
||||
};
|
||||
};
|
||||
8BA05A670720730100365D66 /* SmoothEQ2.exp */ = {
|
||||
uiCtxt = {
|
||||
sepNavIntBoundsRect = "{{0, 0}, {272, 432}}";
|
||||
sepNavSelRange = "{0, 0}";
|
||||
sepNavVisRange = "{0, 16}";
|
||||
};
|
||||
};
|
||||
8BA05A690720730100365D66 /* SmoothEQ2Version.h */ = {
|
||||
uiCtxt = {
|
||||
sepNavIntBoundsRect = "{{0, 0}, {1056, 1080}}";
|
||||
sepNavSelRange = "{2906, 0}";
|
||||
sepNavVisRange = "{0, 0}";
|
||||
sepNavWindowFrame = "{{38, 41}, {862, 811}}";
|
||||
};
|
||||
};
|
||||
8BC6025B073B072D006C4272 /* SmoothEQ2.h */ = {
|
||||
uiCtxt = {
|
||||
sepNavIntBoundsRect = "{{0, 0}, {1146, 3402}}";
|
||||
sepNavSelRange = "{5789, 642}";
|
||||
sepNavVisRange = "{5809, 423}";
|
||||
sepNavWindowFrame = "{{690, 81}, {750, 771}}";
|
||||
};
|
||||
};
|
||||
8BC8CE942E51B54800FAAE1C /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 8BA05A670720730100365D66 /* SmoothEQ2.exp */;
|
||||
name = "SmoothEQ2.exp: 1";
|
||||
rLen = 0;
|
||||
rLoc = 0;
|
||||
rType = 0;
|
||||
vrLen = 16;
|
||||
vrLoc = 0;
|
||||
};
|
||||
8BC8CE952E51B54800FAAE1C /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 8BC6025B073B072D006C4272 /* SmoothEQ2.h */;
|
||||
name = "SmoothEQ2.h: 147";
|
||||
rLen = 642;
|
||||
rLoc = 5789;
|
||||
rType = 0;
|
||||
vrLen = 423;
|
||||
vrLoc = 5809;
|
||||
};
|
||||
8BC8CEC42E51BCA900FAAE1C /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 8BC6025B073B072D006C4272 /* SmoothEQ2.h */;
|
||||
name = "SmoothEQ2.h: 147";
|
||||
rLen = 642;
|
||||
rLoc = 5789;
|
||||
rType = 0;
|
||||
vrLen = 423;
|
||||
vrLoc = 5809;
|
||||
};
|
||||
8BD3CCB8148830B20062E48C /* Source Control */ = {
|
||||
isa = PBXSourceControlManager;
|
||||
fallbackIsa = XCSourceControlManager;
|
||||
isSCMEnabled = 0;
|
||||
scmConfiguration = {
|
||||
repositoryNamesForRoots = {
|
||||
"" = "";
|
||||
};
|
||||
};
|
||||
};
|
||||
8BD3CCB9148830B20062E48C /* Code sense */ = {
|
||||
isa = PBXCodeSenseManager;
|
||||
indexTemplatePath = "";
|
||||
};
|
||||
8BEA4A062E4FC78C003D2CCC /* PlistBookmark */ = {
|
||||
isa = PlistBookmark;
|
||||
fRef = 8D01CCD10486CAD60068D4B7 /* Info.plist */;
|
||||
fallbackIsa = PBXBookmark;
|
||||
isK = 0;
|
||||
kPath = (
|
||||
CFBundleName,
|
||||
);
|
||||
name = /Users/christopherjohnson/Desktop/SmoothEQ2/Info.plist;
|
||||
rLen = 0;
|
||||
rLoc = 9223372036854775808;
|
||||
};
|
||||
8BEA4A072E4FC78C003D2CCC /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 8BA05A690720730100365D66 /* SmoothEQ2Version.h */;
|
||||
name = "SmoothEQ2Version.h: 54";
|
||||
rLen = 0;
|
||||
rLoc = 2906;
|
||||
rType = 0;
|
||||
vrLen = 0;
|
||||
vrLoc = 0;
|
||||
};
|
||||
8D01CCC60486CAD60068D4B7 /* SmoothEQ2 */ = {
|
||||
activeExec = 0;
|
||||
};
|
||||
}
|
||||
1596
plugins/MacAU/SmoothEQ2/SmoothEQ2.xcodeproj/christopherjohnson.perspectivev3
Executable file
1596
plugins/MacAU/SmoothEQ2/SmoothEQ2.xcodeproj/christopherjohnson.perspectivev3
Executable file
File diff suppressed because it is too large
Load diff
490
plugins/MacAU/SmoothEQ2/SmoothEQ2.xcodeproj/project.pbxproj
Executable file
490
plugins/MacAU/SmoothEQ2/SmoothEQ2.xcodeproj/project.pbxproj
Executable file
|
|
@ -0,0 +1,490 @@
|
|||
// !$*UTF8*$!
|
||||
{
|
||||
archiveVersion = 1;
|
||||
classes = {
|
||||
};
|
||||
objectVersion = 45;
|
||||
objects = {
|
||||
|
||||
/* Begin PBXBuildFile section */
|
||||
3EEA126E089847F5002C6BFC /* CAVectorUnit.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3EEA126B089847F5002C6BFC /* CAVectorUnit.cpp */; };
|
||||
3EEA126F089847F5002C6BFC /* CAVectorUnit.h in Headers */ = {isa = PBXBuildFile; fileRef = 3EEA126C089847F5002C6BFC /* CAVectorUnit.h */; };
|
||||
3EEA1270089847F5002C6BFC /* CAVectorUnitTypes.h in Headers */ = {isa = PBXBuildFile; fileRef = 3EEA126D089847F5002C6BFC /* CAVectorUnitTypes.h */; };
|
||||
8B4119B70749654200361ABE /* SmoothEQ2.r in Rez */ = {isa = PBXBuildFile; fileRef = 8BA05A680720730100365D66 /* SmoothEQ2.r */; };
|
||||
8BA05A6B0720730100365D66 /* SmoothEQ2.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8BA05A660720730100365D66 /* SmoothEQ2.cpp */; };
|
||||
8BA05A6E0720730100365D66 /* SmoothEQ2Version.h in Headers */ = {isa = PBXBuildFile; fileRef = 8BA05A690720730100365D66 /* SmoothEQ2Version.h */; };
|
||||
8BA05AAE072073D300365D66 /* AUBase.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8BA05A7F072073D200365D66 /* AUBase.cpp */; };
|
||||
8BA05AAF072073D300365D66 /* AUBase.h in Headers */ = {isa = PBXBuildFile; fileRef = 8BA05A80072073D200365D66 /* AUBase.h */; };
|
||||
8BA05AB0072073D300365D66 /* AUDispatch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8BA05A81072073D200365D66 /* AUDispatch.cpp */; };
|
||||
8BA05AB1072073D300365D66 /* AUDispatch.h in Headers */ = {isa = PBXBuildFile; fileRef = 8BA05A82072073D200365D66 /* AUDispatch.h */; };
|
||||
8BA05AB2072073D300365D66 /* AUInputElement.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8BA05A83072073D200365D66 /* AUInputElement.cpp */; };
|
||||
8BA05AB3072073D300365D66 /* AUInputElement.h in Headers */ = {isa = PBXBuildFile; fileRef = 8BA05A84072073D200365D66 /* AUInputElement.h */; };
|
||||
8BA05AB4072073D300365D66 /* AUOutputElement.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8BA05A85072073D200365D66 /* AUOutputElement.cpp */; };
|
||||
8BA05AB5072073D300365D66 /* AUOutputElement.h in Headers */ = {isa = PBXBuildFile; fileRef = 8BA05A86072073D200365D66 /* AUOutputElement.h */; };
|
||||
8BA05AB7072073D300365D66 /* AUScopeElement.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8BA05A88072073D200365D66 /* AUScopeElement.cpp */; };
|
||||
8BA05AB8072073D300365D66 /* AUScopeElement.h in Headers */ = {isa = PBXBuildFile; fileRef = 8BA05A89072073D200365D66 /* AUScopeElement.h */; };
|
||||
8BA05AB9072073D300365D66 /* ComponentBase.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8BA05A8A072073D200365D66 /* ComponentBase.cpp */; };
|
||||
8BA05ABA072073D300365D66 /* ComponentBase.h in Headers */ = {isa = PBXBuildFile; fileRef = 8BA05A8B072073D200365D66 /* ComponentBase.h */; };
|
||||
8BA05AC6072073D300365D66 /* AUEffectBase.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8BA05A9A072073D200365D66 /* AUEffectBase.cpp */; };
|
||||
8BA05AC7072073D300365D66 /* AUEffectBase.h in Headers */ = {isa = PBXBuildFile; fileRef = 8BA05A9B072073D200365D66 /* AUEffectBase.h */; };
|
||||
8BA05AD2072073D300365D66 /* AUBuffer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8BA05AA7072073D200365D66 /* AUBuffer.cpp */; };
|
||||
8BA05AD3072073D300365D66 /* AUBuffer.h in Headers */ = {isa = PBXBuildFile; fileRef = 8BA05AA8072073D200365D66 /* AUBuffer.h */; };
|
||||
8BA05AD4072073D300365D66 /* AUDebugDispatcher.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8BA05AA9072073D200365D66 /* AUDebugDispatcher.cpp */; };
|
||||
8BA05AD5072073D300365D66 /* AUDebugDispatcher.h in Headers */ = {isa = PBXBuildFile; fileRef = 8BA05AAA072073D200365D66 /* AUDebugDispatcher.h */; };
|
||||
8BA05AD6072073D300365D66 /* AUInputFormatConverter.h in Headers */ = {isa = PBXBuildFile; fileRef = 8BA05AAB072073D200365D66 /* AUInputFormatConverter.h */; };
|
||||
8BA05AD7072073D300365D66 /* AUSilentTimeout.h in Headers */ = {isa = PBXBuildFile; fileRef = 8BA05AAC072073D200365D66 /* AUSilentTimeout.h */; };
|
||||
8BA05AD8072073D300365D66 /* AUTimestampGenerator.h in Headers */ = {isa = PBXBuildFile; fileRef = 8BA05AAD072073D200365D66 /* AUTimestampGenerator.h */; };
|
||||
8BA05AE50720742100365D66 /* CAAudioChannelLayout.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8BA05ADF0720742100365D66 /* CAAudioChannelLayout.cpp */; };
|
||||
8BA05AE60720742100365D66 /* CAAudioChannelLayout.h in Headers */ = {isa = PBXBuildFile; fileRef = 8BA05AE00720742100365D66 /* CAAudioChannelLayout.h */; };
|
||||
8BA05AE70720742100365D66 /* CAMutex.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8BA05AE10720742100365D66 /* CAMutex.cpp */; };
|
||||
8BA05AE80720742100365D66 /* CAMutex.h in Headers */ = {isa = PBXBuildFile; fileRef = 8BA05AE20720742100365D66 /* CAMutex.h */; };
|
||||
8BA05AE90720742100365D66 /* CAStreamBasicDescription.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8BA05AE30720742100365D66 /* CAStreamBasicDescription.cpp */; };
|
||||
8BA05AEA0720742100365D66 /* CAStreamBasicDescription.h in Headers */ = {isa = PBXBuildFile; fileRef = 8BA05AE40720742100365D66 /* CAStreamBasicDescription.h */; };
|
||||
8BA05AFC072074E100365D66 /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8BA05AF9072074E100365D66 /* AudioToolbox.framework */; };
|
||||
8BA05AFD072074E100365D66 /* AudioUnit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8BA05AFA072074E100365D66 /* AudioUnit.framework */; };
|
||||
8BA05B02072074F900365D66 /* CoreServices.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8BA05B01072074F900365D66 /* CoreServices.framework */; };
|
||||
8BA05B070720754400365D66 /* CAAUParameter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8BA05B050720754400365D66 /* CAAUParameter.cpp */; };
|
||||
8BA05B080720754400365D66 /* CAAUParameter.h in Headers */ = {isa = PBXBuildFile; fileRef = 8BA05B060720754400365D66 /* CAAUParameter.h */; };
|
||||
8BC6025C073B072D006C4272 /* SmoothEQ2.h in Headers */ = {isa = PBXBuildFile; fileRef = 8BC6025B073B072D006C4272 /* SmoothEQ2.h */; };
|
||||
8D01CCCA0486CAD60068D4B7 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 089C167DFE841241C02AAC07 /* InfoPlist.strings */; };
|
||||
F7C347F00ECE5AF8008ADFB6 /* AUBaseHelper.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F7C347EE0ECE5AF8008ADFB6 /* AUBaseHelper.cpp */; };
|
||||
F7C347F10ECE5AF8008ADFB6 /* AUBaseHelper.h in Headers */ = {isa = PBXBuildFile; fileRef = F7C347EF0ECE5AF8008ADFB6 /* AUBaseHelper.h */; };
|
||||
/* End PBXBuildFile section */
|
||||
|
||||
/* Begin PBXFileReference section */
|
||||
089C167EFE841241C02AAC07 /* English */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; name = English; path = English.lproj/InfoPlist.strings; sourceTree = "<group>"; };
|
||||
3EEA126B089847F5002C6BFC /* CAVectorUnit.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = CAVectorUnit.cpp; sourceTree = "<group>"; };
|
||||
3EEA126C089847F5002C6BFC /* CAVectorUnit.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = CAVectorUnit.h; sourceTree = "<group>"; };
|
||||
3EEA126D089847F5002C6BFC /* CAVectorUnitTypes.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = CAVectorUnitTypes.h; sourceTree = "<group>"; };
|
||||
8B5C7FBF076FB2C200A15F61 /* CoreAudio.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreAudio.framework; path = /System/Library/Frameworks/CoreAudio.framework; sourceTree = "<absolute>"; };
|
||||
8BA05A660720730100365D66 /* SmoothEQ2.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = SmoothEQ2.cpp; sourceTree = "<group>"; };
|
||||
8BA05A670720730100365D66 /* SmoothEQ2.exp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.exports; path = SmoothEQ2.exp; sourceTree = "<group>"; };
|
||||
8BA05A680720730100365D66 /* SmoothEQ2.r */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.rez; path = SmoothEQ2.r; sourceTree = "<group>"; };
|
||||
8BA05A690720730100365D66 /* SmoothEQ2Version.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = SmoothEQ2Version.h; sourceTree = "<group>"; };
|
||||
8BA05A7F072073D200365D66 /* AUBase.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = AUBase.cpp; sourceTree = "<group>"; };
|
||||
8BA05A80072073D200365D66 /* AUBase.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = AUBase.h; sourceTree = "<group>"; };
|
||||
8BA05A81072073D200365D66 /* AUDispatch.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = AUDispatch.cpp; sourceTree = "<group>"; };
|
||||
8BA05A82072073D200365D66 /* AUDispatch.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = AUDispatch.h; sourceTree = "<group>"; };
|
||||
8BA05A83072073D200365D66 /* AUInputElement.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = AUInputElement.cpp; sourceTree = "<group>"; };
|
||||
8BA05A84072073D200365D66 /* AUInputElement.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = AUInputElement.h; sourceTree = "<group>"; };
|
||||
8BA05A85072073D200365D66 /* AUOutputElement.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = AUOutputElement.cpp; sourceTree = "<group>"; };
|
||||
8BA05A86072073D200365D66 /* AUOutputElement.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = AUOutputElement.h; sourceTree = "<group>"; };
|
||||
8BA05A87072073D200365D66 /* AUResources.r */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.rez; path = AUResources.r; sourceTree = "<group>"; };
|
||||
8BA05A88072073D200365D66 /* AUScopeElement.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = AUScopeElement.cpp; sourceTree = "<group>"; };
|
||||
8BA05A89072073D200365D66 /* AUScopeElement.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = AUScopeElement.h; sourceTree = "<group>"; };
|
||||
8BA05A8A072073D200365D66 /* ComponentBase.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = ComponentBase.cpp; sourceTree = "<group>"; };
|
||||
8BA05A8B072073D200365D66 /* ComponentBase.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = ComponentBase.h; sourceTree = "<group>"; };
|
||||
8BA05A9A072073D200365D66 /* AUEffectBase.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = AUEffectBase.cpp; sourceTree = "<group>"; };
|
||||
8BA05A9B072073D200365D66 /* AUEffectBase.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = AUEffectBase.h; sourceTree = "<group>"; };
|
||||
8BA05AA7072073D200365D66 /* AUBuffer.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = AUBuffer.cpp; sourceTree = "<group>"; };
|
||||
8BA05AA8072073D200365D66 /* AUBuffer.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = AUBuffer.h; sourceTree = "<group>"; };
|
||||
8BA05AA9072073D200365D66 /* AUDebugDispatcher.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = AUDebugDispatcher.cpp; sourceTree = "<group>"; };
|
||||
8BA05AAA072073D200365D66 /* AUDebugDispatcher.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = AUDebugDispatcher.h; sourceTree = "<group>"; };
|
||||
8BA05AAB072073D200365D66 /* AUInputFormatConverter.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = AUInputFormatConverter.h; sourceTree = "<group>"; };
|
||||
8BA05AAC072073D200365D66 /* AUSilentTimeout.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = AUSilentTimeout.h; sourceTree = "<group>"; };
|
||||
8BA05AAD072073D200365D66 /* AUTimestampGenerator.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = AUTimestampGenerator.h; sourceTree = "<group>"; };
|
||||
8BA05ADF0720742100365D66 /* CAAudioChannelLayout.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = CAAudioChannelLayout.cpp; sourceTree = "<group>"; };
|
||||
8BA05AE00720742100365D66 /* CAAudioChannelLayout.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = CAAudioChannelLayout.h; sourceTree = "<group>"; };
|
||||
8BA05AE10720742100365D66 /* CAMutex.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = CAMutex.cpp; sourceTree = "<group>"; };
|
||||
8BA05AE20720742100365D66 /* CAMutex.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = CAMutex.h; sourceTree = "<group>"; };
|
||||
8BA05AE30720742100365D66 /* CAStreamBasicDescription.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = CAStreamBasicDescription.cpp; sourceTree = "<group>"; };
|
||||
8BA05AE40720742100365D66 /* CAStreamBasicDescription.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = CAStreamBasicDescription.h; sourceTree = "<group>"; };
|
||||
8BA05AF9072074E100365D66 /* AudioToolbox.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AudioToolbox.framework; path = /System/Library/Frameworks/AudioToolbox.framework; sourceTree = "<absolute>"; };
|
||||
8BA05AFA072074E100365D66 /* AudioUnit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AudioUnit.framework; path = /System/Library/Frameworks/AudioUnit.framework; sourceTree = "<absolute>"; };
|
||||
8BA05B01072074F900365D66 /* CoreServices.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreServices.framework; path = /System/Library/Frameworks/CoreServices.framework; sourceTree = "<absolute>"; };
|
||||
8BA05B050720754400365D66 /* CAAUParameter.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = CAAUParameter.cpp; sourceTree = "<group>"; };
|
||||
8BA05B060720754400365D66 /* CAAUParameter.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = CAAUParameter.h; sourceTree = "<group>"; };
|
||||
8BC6025B073B072D006C4272 /* SmoothEQ2.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = SmoothEQ2.h; sourceTree = "<group>"; };
|
||||
8D01CCD10486CAD60068D4B7 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist; path = Info.plist; sourceTree = "<group>"; };
|
||||
8D01CCD20486CAD60068D4B7 /* SmoothEQ2.component */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = SmoothEQ2.component; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
F7C347EE0ECE5AF8008ADFB6 /* AUBaseHelper.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = AUBaseHelper.cpp; path = Extras/CoreAudio/AudioUnits/AUPublic/Utility/AUBaseHelper.cpp; sourceTree = SYSTEM_DEVELOPER_DIR; };
|
||||
F7C347EF0ECE5AF8008ADFB6 /* AUBaseHelper.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = AUBaseHelper.h; path = Extras/CoreAudio/AudioUnits/AUPublic/Utility/AUBaseHelper.h; sourceTree = SYSTEM_DEVELOPER_DIR; };
|
||||
/* End PBXFileReference section */
|
||||
|
||||
/* Begin PBXFrameworksBuildPhase section */
|
||||
8D01CCCD0486CAD60068D4B7 /* Frameworks */ = {
|
||||
isa = PBXFrameworksBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
8BA05AFC072074E100365D66 /* AudioToolbox.framework in Frameworks */,
|
||||
8BA05AFD072074E100365D66 /* AudioUnit.framework in Frameworks */,
|
||||
8BA05B02072074F900365D66 /* CoreServices.framework in Frameworks */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXFrameworksBuildPhase section */
|
||||
|
||||
/* Begin PBXGroup section */
|
||||
089C166AFE841209C02AAC07 /* SmoothEQ2 */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
08FB77ADFE841716C02AAC07 /* Source */,
|
||||
089C167CFE841241C02AAC07 /* Resources */,
|
||||
089C1671FE841209C02AAC07 /* External Frameworks and Libraries */,
|
||||
19C28FB4FE9D528D11CA2CBB /* Products */,
|
||||
);
|
||||
name = SmoothEQ2;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
089C1671FE841209C02AAC07 /* External Frameworks and Libraries */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8B5C7FBF076FB2C200A15F61 /* CoreAudio.framework */,
|
||||
8BA05B01072074F900365D66 /* CoreServices.framework */,
|
||||
8BA05AF9072074E100365D66 /* AudioToolbox.framework */,
|
||||
8BA05AFA072074E100365D66 /* AudioUnit.framework */,
|
||||
);
|
||||
name = "External Frameworks and Libraries";
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
089C167CFE841241C02AAC07 /* Resources */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8D01CCD10486CAD60068D4B7 /* Info.plist */,
|
||||
089C167DFE841241C02AAC07 /* InfoPlist.strings */,
|
||||
);
|
||||
name = Resources;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
08FB77ADFE841716C02AAC07 /* Source */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8BA05A56072072A900365D66 /* AU Source */,
|
||||
8BA05AEB0720742700365D66 /* PublicUtility */,
|
||||
8BA05A7D072073D200365D66 /* AUPublic */,
|
||||
);
|
||||
name = Source;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
19C28FB4FE9D528D11CA2CBB /* Products */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8D01CCD20486CAD60068D4B7 /* SmoothEQ2.component */,
|
||||
);
|
||||
name = Products;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
8BA05A56072072A900365D66 /* AU Source */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8BC6025B073B072D006C4272 /* SmoothEQ2.h */,
|
||||
8BA05A660720730100365D66 /* SmoothEQ2.cpp */,
|
||||
8BA05A670720730100365D66 /* SmoothEQ2.exp */,
|
||||
8BA05A680720730100365D66 /* SmoothEQ2.r */,
|
||||
8BA05A690720730100365D66 /* SmoothEQ2Version.h */,
|
||||
);
|
||||
name = "AU Source";
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
8BA05A7D072073D200365D66 /* AUPublic */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8BA05A7E072073D200365D66 /* AUBase */,
|
||||
8BA05A99072073D200365D66 /* OtherBases */,
|
||||
8BA05AA6072073D200365D66 /* Utility */,
|
||||
);
|
||||
name = AUPublic;
|
||||
path = Extras/CoreAudio/AudioUnits/AUPublic;
|
||||
sourceTree = SYSTEM_DEVELOPER_DIR;
|
||||
};
|
||||
8BA05A7E072073D200365D66 /* AUBase */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8BA05A7F072073D200365D66 /* AUBase.cpp */,
|
||||
8BA05A80072073D200365D66 /* AUBase.h */,
|
||||
8BA05A81072073D200365D66 /* AUDispatch.cpp */,
|
||||
8BA05A82072073D200365D66 /* AUDispatch.h */,
|
||||
8BA05A83072073D200365D66 /* AUInputElement.cpp */,
|
||||
8BA05A84072073D200365D66 /* AUInputElement.h */,
|
||||
8BA05A85072073D200365D66 /* AUOutputElement.cpp */,
|
||||
8BA05A86072073D200365D66 /* AUOutputElement.h */,
|
||||
8BA05A87072073D200365D66 /* AUResources.r */,
|
||||
8BA05A88072073D200365D66 /* AUScopeElement.cpp */,
|
||||
8BA05A89072073D200365D66 /* AUScopeElement.h */,
|
||||
8BA05A8A072073D200365D66 /* ComponentBase.cpp */,
|
||||
8BA05A8B072073D200365D66 /* ComponentBase.h */,
|
||||
);
|
||||
path = AUBase;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
8BA05A99072073D200365D66 /* OtherBases */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8BA05A9A072073D200365D66 /* AUEffectBase.cpp */,
|
||||
8BA05A9B072073D200365D66 /* AUEffectBase.h */,
|
||||
);
|
||||
path = OtherBases;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
8BA05AA6072073D200365D66 /* Utility */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
F7C347EE0ECE5AF8008ADFB6 /* AUBaseHelper.cpp */,
|
||||
F7C347EF0ECE5AF8008ADFB6 /* AUBaseHelper.h */,
|
||||
8BA05AA7072073D200365D66 /* AUBuffer.cpp */,
|
||||
8BA05AA8072073D200365D66 /* AUBuffer.h */,
|
||||
8BA05AA9072073D200365D66 /* AUDebugDispatcher.cpp */,
|
||||
8BA05AAA072073D200365D66 /* AUDebugDispatcher.h */,
|
||||
8BA05AAB072073D200365D66 /* AUInputFormatConverter.h */,
|
||||
8BA05AAC072073D200365D66 /* AUSilentTimeout.h */,
|
||||
8BA05AAD072073D200365D66 /* AUTimestampGenerator.h */,
|
||||
);
|
||||
path = Utility;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
8BA05AEB0720742700365D66 /* PublicUtility */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8BA05B050720754400365D66 /* CAAUParameter.cpp */,
|
||||
8BA05B060720754400365D66 /* CAAUParameter.h */,
|
||||
8BA05ADF0720742100365D66 /* CAAudioChannelLayout.cpp */,
|
||||
8BA05AE00720742100365D66 /* CAAudioChannelLayout.h */,
|
||||
8BA05AE10720742100365D66 /* CAMutex.cpp */,
|
||||
8BA05AE20720742100365D66 /* CAMutex.h */,
|
||||
8BA05AE30720742100365D66 /* CAStreamBasicDescription.cpp */,
|
||||
8BA05AE40720742100365D66 /* CAStreamBasicDescription.h */,
|
||||
3EEA126D089847F5002C6BFC /* CAVectorUnitTypes.h */,
|
||||
3EEA126B089847F5002C6BFC /* CAVectorUnit.cpp */,
|
||||
3EEA126C089847F5002C6BFC /* CAVectorUnit.h */,
|
||||
);
|
||||
name = PublicUtility;
|
||||
path = Extras/CoreAudio/PublicUtility;
|
||||
sourceTree = SYSTEM_DEVELOPER_DIR;
|
||||
};
|
||||
/* End PBXGroup section */
|
||||
|
||||
/* Begin PBXHeadersBuildPhase section */
|
||||
8D01CCC70486CAD60068D4B7 /* Headers */ = {
|
||||
isa = PBXHeadersBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
8BA05A6E0720730100365D66 /* SmoothEQ2Version.h in Headers */,
|
||||
8BA05AAF072073D300365D66 /* AUBase.h in Headers */,
|
||||
8BA05AB1072073D300365D66 /* AUDispatch.h in Headers */,
|
||||
8BA05AB3072073D300365D66 /* AUInputElement.h in Headers */,
|
||||
8BA05AB5072073D300365D66 /* AUOutputElement.h in Headers */,
|
||||
8BA05AB8072073D300365D66 /* AUScopeElement.h in Headers */,
|
||||
8BA05ABA072073D300365D66 /* ComponentBase.h in Headers */,
|
||||
8BA05AC7072073D300365D66 /* AUEffectBase.h in Headers */,
|
||||
8BA05AD3072073D300365D66 /* AUBuffer.h in Headers */,
|
||||
8BA05AD5072073D300365D66 /* AUDebugDispatcher.h in Headers */,
|
||||
8BA05AD6072073D300365D66 /* AUInputFormatConverter.h in Headers */,
|
||||
8BA05AD7072073D300365D66 /* AUSilentTimeout.h in Headers */,
|
||||
8BA05AD8072073D300365D66 /* AUTimestampGenerator.h in Headers */,
|
||||
8BA05AE60720742100365D66 /* CAAudioChannelLayout.h in Headers */,
|
||||
8BA05AE80720742100365D66 /* CAMutex.h in Headers */,
|
||||
8BA05AEA0720742100365D66 /* CAStreamBasicDescription.h in Headers */,
|
||||
8BA05B080720754400365D66 /* CAAUParameter.h in Headers */,
|
||||
8BC6025C073B072D006C4272 /* SmoothEQ2.h in Headers */,
|
||||
3EEA126F089847F5002C6BFC /* CAVectorUnit.h in Headers */,
|
||||
3EEA1270089847F5002C6BFC /* CAVectorUnitTypes.h in Headers */,
|
||||
F7C347F10ECE5AF8008ADFB6 /* AUBaseHelper.h in Headers */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXHeadersBuildPhase section */
|
||||
|
||||
/* Begin PBXNativeTarget section */
|
||||
8D01CCC60486CAD60068D4B7 /* SmoothEQ2 */ = {
|
||||
isa = PBXNativeTarget;
|
||||
buildConfigurationList = 3E4BA243089833B7007656EC /* Build configuration list for PBXNativeTarget "SmoothEQ2" */;
|
||||
buildPhases = (
|
||||
8D01CCC70486CAD60068D4B7 /* Headers */,
|
||||
8D01CCC90486CAD60068D4B7 /* Resources */,
|
||||
8D01CCCB0486CAD60068D4B7 /* Sources */,
|
||||
8D01CCCD0486CAD60068D4B7 /* Frameworks */,
|
||||
8D01CCCF0486CAD60068D4B7 /* Rez */,
|
||||
);
|
||||
buildRules = (
|
||||
);
|
||||
dependencies = (
|
||||
);
|
||||
name = SmoothEQ2;
|
||||
productInstallPath = "$(HOME)/Library/Bundles";
|
||||
productName = SmoothEQ2;
|
||||
productReference = 8D01CCD20486CAD60068D4B7 /* SmoothEQ2.component */;
|
||||
productType = "com.apple.product-type.bundle";
|
||||
};
|
||||
/* End PBXNativeTarget section */
|
||||
|
||||
/* Begin PBXProject section */
|
||||
089C1669FE841209C02AAC07 /* Project object */ = {
|
||||
isa = PBXProject;
|
||||
buildConfigurationList = 3E4BA247089833B7007656EC /* Build configuration list for PBXProject "SmoothEQ2" */;
|
||||
compatibilityVersion = "Xcode 3.1";
|
||||
developmentRegion = English;
|
||||
hasScannedForEncodings = 1;
|
||||
knownRegions = (
|
||||
English,
|
||||
Japanese,
|
||||
French,
|
||||
German,
|
||||
);
|
||||
mainGroup = 089C166AFE841209C02AAC07 /* SmoothEQ2 */;
|
||||
projectDirPath = "";
|
||||
projectRoot = "";
|
||||
targets = (
|
||||
8D01CCC60486CAD60068D4B7 /* SmoothEQ2 */,
|
||||
);
|
||||
};
|
||||
/* End PBXProject section */
|
||||
|
||||
/* Begin PBXResourcesBuildPhase section */
|
||||
8D01CCC90486CAD60068D4B7 /* Resources */ = {
|
||||
isa = PBXResourcesBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
8D01CCCA0486CAD60068D4B7 /* InfoPlist.strings in Resources */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXResourcesBuildPhase section */
|
||||
|
||||
/* Begin PBXRezBuildPhase section */
|
||||
8D01CCCF0486CAD60068D4B7 /* Rez */ = {
|
||||
isa = PBXRezBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
8B4119B70749654200361ABE /* SmoothEQ2.r in Rez */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXRezBuildPhase section */
|
||||
|
||||
/* Begin PBXSourcesBuildPhase section */
|
||||
8D01CCCB0486CAD60068D4B7 /* Sources */ = {
|
||||
isa = PBXSourcesBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
8BA05A6B0720730100365D66 /* SmoothEQ2.cpp in Sources */,
|
||||
8BA05AAE072073D300365D66 /* AUBase.cpp in Sources */,
|
||||
8BA05AB0072073D300365D66 /* AUDispatch.cpp in Sources */,
|
||||
8BA05AB2072073D300365D66 /* AUInputElement.cpp in Sources */,
|
||||
8BA05AB4072073D300365D66 /* AUOutputElement.cpp in Sources */,
|
||||
8BA05AB7072073D300365D66 /* AUScopeElement.cpp in Sources */,
|
||||
8BA05AB9072073D300365D66 /* ComponentBase.cpp in Sources */,
|
||||
8BA05AC6072073D300365D66 /* AUEffectBase.cpp in Sources */,
|
||||
8BA05AD2072073D300365D66 /* AUBuffer.cpp in Sources */,
|
||||
8BA05AD4072073D300365D66 /* AUDebugDispatcher.cpp in Sources */,
|
||||
8BA05AE50720742100365D66 /* CAAudioChannelLayout.cpp in Sources */,
|
||||
8BA05AE70720742100365D66 /* CAMutex.cpp in Sources */,
|
||||
8BA05AE90720742100365D66 /* CAStreamBasicDescription.cpp in Sources */,
|
||||
8BA05B070720754400365D66 /* CAAUParameter.cpp in Sources */,
|
||||
3EEA126E089847F5002C6BFC /* CAVectorUnit.cpp in Sources */,
|
||||
F7C347F00ECE5AF8008ADFB6 /* AUBaseHelper.cpp in Sources */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXSourcesBuildPhase section */
|
||||
|
||||
/* Begin PBXVariantGroup section */
|
||||
089C167DFE841241C02AAC07 /* InfoPlist.strings */ = {
|
||||
isa = PBXVariantGroup;
|
||||
children = (
|
||||
089C167EFE841241C02AAC07 /* English */,
|
||||
);
|
||||
name = InfoPlist.strings;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
/* End PBXVariantGroup section */
|
||||
|
||||
/* Begin XCBuildConfiguration section */
|
||||
3E4BA244089833B7007656EC /* Debug */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
EXPORTED_SYMBOLS_FILE = SmoothEQ2.exp;
|
||||
GCC_ENABLE_FIX_AND_CONTINUE = YES;
|
||||
GCC_OPTIMIZATION_LEVEL = 0;
|
||||
GENERATE_PKGINFO_FILE = YES;
|
||||
INFOPLIST_FILE = Info.plist;
|
||||
INSTALL_PATH = "$(HOME)/Library/Audio/Plug-Ins/Components/";
|
||||
LIBRARY_STYLE = Bundle;
|
||||
OTHER_LDFLAGS = "-bundle";
|
||||
OTHER_REZFLAGS = "-d ppc_$ppc -d i386_$i386 -d ppc64_$ppc64 -d x86_64_$x86_64 -I /System/Library/Frameworks/CoreServices.framework/Frameworks/CarbonCore.framework/Versions/A/Headers -I \"$(DEVELOPER_DIR)/Examples/CoreAudio/AudioUnits/AUPublic/AUBase\"";
|
||||
PRODUCT_NAME = SmoothEQ2;
|
||||
WRAPPER_EXTENSION = component;
|
||||
};
|
||||
name = Debug;
|
||||
};
|
||||
3E4BA245089833B7007656EC /* Release */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
ARCHS = (
|
||||
ppc,
|
||||
i386,
|
||||
x86_64,
|
||||
);
|
||||
EXPORTED_SYMBOLS_FILE = SmoothEQ2.exp;
|
||||
GCC_ENABLE_FIX_AND_CONTINUE = NO;
|
||||
GCC_GENERATE_DEBUGGING_SYMBOLS = NO;
|
||||
GENERATE_PKGINFO_FILE = YES;
|
||||
INFOPLIST_FILE = Info.plist;
|
||||
INSTALL_PATH = "$(HOME)/Library/Audio/Plug-Ins/Components/";
|
||||
LIBRARY_STYLE = Bundle;
|
||||
MACOSX_DEPLOYMENT_TARGET = 10.4;
|
||||
OTHER_LDFLAGS = "-bundle";
|
||||
OTHER_REZFLAGS = "-d ppc_$ppc -d i386_$i386 -d x86_64_$x86_64 -I /System/Library/Frameworks/CoreServices.framework/Frameworks/CarbonCore.framework/Versions/A/Headers -I \"$(DEVELOPER_DIR)/Examples/CoreAudio/AudioUnits/AUPublic/AUBase\"";
|
||||
PRODUCT_NAME = SmoothEQ2;
|
||||
SDKROOT = macosx10.5;
|
||||
STRIP_INSTALLED_PRODUCT = YES;
|
||||
STRIP_STYLE = all;
|
||||
WRAPPER_EXTENSION = component;
|
||||
};
|
||||
name = Release;
|
||||
};
|
||||
3E4BA248089833B7007656EC /* Debug */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
ARCHS = "$(ARCHS_STANDARD_32_64_BIT)";
|
||||
COPY_PHASE_STRIP = NO;
|
||||
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
|
||||
GCC_C_LANGUAGE_STANDARD = c99;
|
||||
SDKROOT = macosx10.6;
|
||||
WARNING_CFLAGS = (
|
||||
"-Wmost",
|
||||
"-Wno-four-char-constants",
|
||||
"-Wno-unknown-pragmas",
|
||||
);
|
||||
};
|
||||
name = Debug;
|
||||
};
|
||||
3E4BA249089833B7007656EC /* Release */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
ARCHS = "$(ARCHS_STANDARD_32_64_BIT)";
|
||||
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
|
||||
GCC_C_LANGUAGE_STANDARD = c99;
|
||||
SDKROOT = macosx10.6;
|
||||
WARNING_CFLAGS = (
|
||||
"-Wmost",
|
||||
"-Wno-four-char-constants",
|
||||
"-Wno-unknown-pragmas",
|
||||
);
|
||||
};
|
||||
name = Release;
|
||||
};
|
||||
/* End XCBuildConfiguration section */
|
||||
|
||||
/* Begin XCConfigurationList section */
|
||||
3E4BA243089833B7007656EC /* Build configuration list for PBXNativeTarget "SmoothEQ2" */ = {
|
||||
isa = XCConfigurationList;
|
||||
buildConfigurations = (
|
||||
3E4BA244089833B7007656EC /* Debug */,
|
||||
3E4BA245089833B7007656EC /* Release */,
|
||||
);
|
||||
defaultConfigurationIsVisible = 0;
|
||||
defaultConfigurationName = Debug;
|
||||
};
|
||||
3E4BA247089833B7007656EC /* Build configuration list for PBXProject "SmoothEQ2" */ = {
|
||||
isa = XCConfigurationList;
|
||||
buildConfigurations = (
|
||||
3E4BA248089833B7007656EC /* Debug */,
|
||||
3E4BA249089833B7007656EC /* Release */,
|
||||
);
|
||||
defaultConfigurationIsVisible = 0;
|
||||
defaultConfigurationName = Debug;
|
||||
};
|
||||
/* End XCConfigurationList section */
|
||||
};
|
||||
rootObject = 089C1669FE841209C02AAC07 /* Project object */;
|
||||
}
|
||||
58
plugins/MacAU/SmoothEQ2/SmoothEQ2Version.h
Executable file
58
plugins/MacAU/SmoothEQ2/SmoothEQ2Version.h
Executable file
|
|
@ -0,0 +1,58 @@
|
|||
/*
|
||||
* File: SmoothEQ2Version.h
|
||||
*
|
||||
* Version: 1.0
|
||||
*
|
||||
* Created: 8/14/25
|
||||
*
|
||||
* Copyright: Copyright © 2025 Airwindows, Airwindows uses the MIT license
|
||||
*
|
||||
* Disclaimer: IMPORTANT: This Apple software is supplied to you by Apple Computer, Inc. ("Apple") in
|
||||
* consideration of your agreement to the following terms, and your use, installation, modification
|
||||
* or redistribution of this Apple software constitutes acceptance of these terms. If you do
|
||||
* not agree with these terms, please do not use, install, modify or redistribute this Apple
|
||||
* software.
|
||||
*
|
||||
* In consideration of your agreement to abide by the following terms, and subject to these terms,
|
||||
* Apple grants you a personal, non-exclusive license, under Apple's copyrights in this
|
||||
* original Apple software (the "Apple Software"), to use, reproduce, modify and redistribute the
|
||||
* Apple Software, with or without modifications, in source and/or binary forms; provided that if you
|
||||
* redistribute the Apple Software in its entirety and without modifications, you must retain this
|
||||
* notice and the following text and disclaimers in all such redistributions of the Apple Software.
|
||||
* Neither the name, trademarks, service marks or logos of Apple Computer, Inc. may be used to
|
||||
* endorse or promote products derived from the Apple Software without specific prior written
|
||||
* permission from Apple. Except as expressly stated in this notice, no other rights or
|
||||
* licenses, express or implied, are granted by Apple herein, including but not limited to any
|
||||
* patent rights that may be infringed by your derivative works or by other works in which the
|
||||
* Apple Software may be incorporated.
|
||||
*
|
||||
* The Apple Software is provided by Apple on an "AS IS" basis. APPLE MAKES NO WARRANTIES, EXPRESS OR
|
||||
* IMPLIED, INCLUDING WITHOUT LIMITATION THE IMPLIED WARRANTIES OF NON-INFRINGEMENT, MERCHANTABILITY
|
||||
* AND FITNESS FOR A PARTICULAR PURPOSE, REGARDING THE APPLE SOFTWARE OR ITS USE AND OPERATION ALONE
|
||||
* OR IN COMBINATION WITH YOUR PRODUCTS.
|
||||
*
|
||||
* IN NO EVENT SHALL APPLE BE LIABLE FOR ANY SPECIAL, INDIRECT, INCIDENTAL OR CONSEQUENTIAL
|
||||
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
|
||||
* OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) ARISING IN ANY WAY OUT OF THE USE,
|
||||
* REPRODUCTION, MODIFICATION AND/OR DISTRIBUTION OF THE APPLE SOFTWARE, HOWEVER CAUSED AND WHETHER
|
||||
* UNDER THEORY OF CONTRACT, TORT (INCLUDING NEGLIGENCE), STRICT LIABILITY OR OTHERWISE, EVEN
|
||||
* IF APPLE HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
*/
|
||||
#ifndef __SmoothEQ2Version_h__
|
||||
#define __SmoothEQ2Version_h__
|
||||
|
||||
|
||||
#ifdef DEBUG
|
||||
#define kSmoothEQ2Version 0xFFFFFFFF
|
||||
#else
|
||||
#define kSmoothEQ2Version 0x00010000
|
||||
#endif
|
||||
|
||||
//~~~~~~~~~~~~~~ Change!!! ~~~~~~~~~~~~~~~~~~~~~//
|
||||
#define SmoothEQ2_COMP_MANF 'Dthr'
|
||||
#define SmoothEQ2_COMP_SUBTYPE 'sme2'
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~//
|
||||
|
||||
#endif
|
||||
|
||||
16
plugins/MacAU/SmoothEQ2/version.plist
Executable file
16
plugins/MacAU/SmoothEQ2/version.plist
Executable file
|
|
@ -0,0 +1,16 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>BuildVersion</key>
|
||||
<string>3</string>
|
||||
<key>CFBundleShortVersionString</key>
|
||||
<string>1.0</string>
|
||||
<key>CFBundleVersion</key>
|
||||
<string>1.0</string>
|
||||
<key>ProjectName</key>
|
||||
<string>${EXECUTABLE_NAME}</string>
|
||||
<key>SourceVersion</key>
|
||||
<string>590000</string>
|
||||
</dict>
|
||||
</plist>
|
||||
BIN
plugins/MacAU/SmoothEQ3/English.lproj/InfoPlist.strings
Executable file
BIN
plugins/MacAU/SmoothEQ3/English.lproj/InfoPlist.strings
Executable file
Binary file not shown.
28
plugins/MacAU/SmoothEQ3/Info.plist
Executable file
28
plugins/MacAU/SmoothEQ3/Info.plist
Executable file
|
|
@ -0,0 +1,28 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>CFBundleDevelopmentRegion</key>
|
||||
<string>English</string>
|
||||
<key>CFBundleExecutable</key>
|
||||
<string>${EXECUTABLE_NAME}</string>
|
||||
<key>CFBundleIconFile</key>
|
||||
<string></string>
|
||||
<key>CFBundleIdentifier</key>
|
||||
<string>com.airwindows.audiounit.${PRODUCT_NAME:identifier}</string>
|
||||
<key>CFBundleName</key>
|
||||
<string>${PROJECTNAMEASIDENTIFIER}</string>
|
||||
<key>CFBundleInfoDictionaryVersion</key>
|
||||
<string>6.0</string>
|
||||
<key>CFBundlePackageType</key>
|
||||
<string>BNDL</string>
|
||||
<key>CFBundleShortVersionString</key>
|
||||
<string>1.0</string>
|
||||
<key>CFBundleSignature</key>
|
||||
<string>DthX</string>
|
||||
<key>CFBundleVersion</key>
|
||||
<string>1.0</string>
|
||||
<key>CSResourcesFileMapped</key>
|
||||
<true/>
|
||||
</dict>
|
||||
</plist>
|
||||
270
plugins/MacAU/SmoothEQ3/SmoothEQ3.cpp
Executable file
270
plugins/MacAU/SmoothEQ3/SmoothEQ3.cpp
Executable file
|
|
@ -0,0 +1,270 @@
|
|||
/*
|
||||
* File: SmoothEQ3.cpp
|
||||
*
|
||||
* Version: 1.0
|
||||
*
|
||||
* Created: 8/15/25
|
||||
*
|
||||
* Copyright: Copyright © 2025 Airwindows, Airwindows uses the MIT license
|
||||
*
|
||||
* Disclaimer: IMPORTANT: This Apple software is supplied to you by Apple Computer, Inc. ("Apple") in
|
||||
* consideration of your agreement to the following terms, and your use, installation, modification
|
||||
* or redistribution of this Apple software constitutes acceptance of these terms. If you do
|
||||
* not agree with these terms, please do not use, install, modify or redistribute this Apple
|
||||
* software.
|
||||
*
|
||||
* In consideration of your agreement to abide by the following terms, and subject to these terms,
|
||||
* Apple grants you a personal, non-exclusive license, under Apple's copyrights in this
|
||||
* original Apple software (the "Apple Software"), to use, reproduce, modify and redistribute the
|
||||
* Apple Software, with or without modifications, in source and/or binary forms; provided that if you
|
||||
* redistribute the Apple Software in its entirety and without modifications, you must retain this
|
||||
* notice and the following text and disclaimers in all such redistributions of the Apple Software.
|
||||
* Neither the name, trademarks, service marks or logos of Apple Computer, Inc. may be used to
|
||||
* endorse or promote products derived from the Apple Software without specific prior written
|
||||
* permission from Apple. Except as expressly stated in this notice, no other rights or
|
||||
* licenses, express or implied, are granted by Apple herein, including but not limited to any
|
||||
* patent rights that may be infringed by your derivative works or by other works in which the
|
||||
* Apple Software may be incorporated.
|
||||
*
|
||||
* The Apple Software is provided by Apple on an "AS IS" basis. APPLE MAKES NO WARRANTIES, EXPRESS OR
|
||||
* IMPLIED, INCLUDING WITHOUT LIMITATION THE IMPLIED WARRANTIES OF NON-INFRINGEMENT, MERCHANTABILITY
|
||||
* AND FITNESS FOR A PARTICULAR PURPOSE, REGARDING THE APPLE SOFTWARE OR ITS USE AND OPERATION ALONE
|
||||
* OR IN COMBINATION WITH YOUR PRODUCTS.
|
||||
*
|
||||
* IN NO EVENT SHALL APPLE BE LIABLE FOR ANY SPECIAL, INDIRECT, INCIDENTAL OR CONSEQUENTIAL
|
||||
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
|
||||
* OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) ARISING IN ANY WAY OUT OF THE USE,
|
||||
* REPRODUCTION, MODIFICATION AND/OR DISTRIBUTION OF THE APPLE SOFTWARE, HOWEVER CAUSED AND WHETHER
|
||||
* UNDER THEORY OF CONTRACT, TORT (INCLUDING NEGLIGENCE), STRICT LIABILITY OR OTHERWISE, EVEN
|
||||
* IF APPLE HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
*/
|
||||
/*=============================================================================
|
||||
SmoothEQ3.cpp
|
||||
|
||||
=============================================================================*/
|
||||
#include "SmoothEQ3.h"
|
||||
|
||||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
COMPONENT_ENTRY(SmoothEQ3)
|
||||
|
||||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
// SmoothEQ3::SmoothEQ3
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
SmoothEQ3::SmoothEQ3(AudioUnit component)
|
||||
: AUEffectBase(component)
|
||||
{
|
||||
CreateElements();
|
||||
Globals()->UseIndexedParameters(kNumberOfParameters);
|
||||
SetParameter(kParam_A, kDefaultValue_ParamA );
|
||||
SetParameter(kParam_B, kDefaultValue_ParamB );
|
||||
SetParameter(kParam_C, kDefaultValue_ParamC );
|
||||
|
||||
#if AU_DEBUG_DISPATCHER
|
||||
mDebugDispatcher = new AUDebugDispatcher (this);
|
||||
#endif
|
||||
|
||||
}
|
||||
|
||||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
// SmoothEQ3::GetParameterValueStrings
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
ComponentResult SmoothEQ3::GetParameterValueStrings(AudioUnitScope inScope,
|
||||
AudioUnitParameterID inParameterID,
|
||||
CFArrayRef * outStrings)
|
||||
{
|
||||
|
||||
return kAudioUnitErr_InvalidProperty;
|
||||
}
|
||||
|
||||
|
||||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
// SmoothEQ3::GetParameterInfo
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
ComponentResult SmoothEQ3::GetParameterInfo(AudioUnitScope inScope,
|
||||
AudioUnitParameterID inParameterID,
|
||||
AudioUnitParameterInfo &outParameterInfo )
|
||||
{
|
||||
ComponentResult result = noErr;
|
||||
|
||||
outParameterInfo.flags = kAudioUnitParameterFlag_IsWritable
|
||||
| kAudioUnitParameterFlag_IsReadable;
|
||||
|
||||
if (inScope == kAudioUnitScope_Global) {
|
||||
switch(inParameterID)
|
||||
{
|
||||
case kParam_A:
|
||||
AUBase::FillInParameterName (outParameterInfo, kParameterAName, false);
|
||||
outParameterInfo.unit = kAudioUnitParameterUnit_Generic;
|
||||
outParameterInfo.minValue = 0.0;
|
||||
outParameterInfo.maxValue = 1.0;
|
||||
outParameterInfo.defaultValue = kDefaultValue_ParamA;
|
||||
break;
|
||||
case kParam_B:
|
||||
AUBase::FillInParameterName (outParameterInfo, kParameterBName, false);
|
||||
outParameterInfo.unit = kAudioUnitParameterUnit_Generic;
|
||||
outParameterInfo.minValue = 0.0;
|
||||
outParameterInfo.maxValue = 1.0;
|
||||
outParameterInfo.defaultValue = kDefaultValue_ParamB;
|
||||
break;
|
||||
case kParam_C:
|
||||
AUBase::FillInParameterName (outParameterInfo, kParameterCName, false);
|
||||
outParameterInfo.unit = kAudioUnitParameterUnit_Generic;
|
||||
outParameterInfo.minValue = 0.0;
|
||||
outParameterInfo.maxValue = 1.0;
|
||||
outParameterInfo.defaultValue = kDefaultValue_ParamC;
|
||||
break;
|
||||
default:
|
||||
result = kAudioUnitErr_InvalidParameter;
|
||||
break;
|
||||
}
|
||||
} else {
|
||||
result = kAudioUnitErr_InvalidParameter;
|
||||
}
|
||||
|
||||
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
// SmoothEQ3::GetPropertyInfo
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
ComponentResult SmoothEQ3::GetPropertyInfo (AudioUnitPropertyID inID,
|
||||
AudioUnitScope inScope,
|
||||
AudioUnitElement inElement,
|
||||
UInt32 & outDataSize,
|
||||
Boolean & outWritable)
|
||||
{
|
||||
return AUEffectBase::GetPropertyInfo (inID, inScope, inElement, outDataSize, outWritable);
|
||||
}
|
||||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
// SmoothEQ3::GetProperty
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
ComponentResult SmoothEQ3::GetProperty( AudioUnitPropertyID inID,
|
||||
AudioUnitScope inScope,
|
||||
AudioUnitElement inElement,
|
||||
void * outData )
|
||||
{
|
||||
return AUEffectBase::GetProperty (inID, inScope, inElement, outData);
|
||||
}
|
||||
|
||||
// SmoothEQ3::Initialize
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
ComponentResult SmoothEQ3::Initialize()
|
||||
{
|
||||
ComponentResult result = AUEffectBase::Initialize();
|
||||
if (result == noErr)
|
||||
Reset(kAudioUnitScope_Global, 0);
|
||||
return result;
|
||||
}
|
||||
|
||||
#pragma mark ____SmoothEQ3EffectKernel
|
||||
|
||||
|
||||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
// SmoothEQ3::SmoothEQ3Kernel::Reset()
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
void SmoothEQ3::SmoothEQ3Kernel::Reset()
|
||||
{
|
||||
for (int x = 0; x < biq_total; x++) {
|
||||
highFast[x] = 0.0;
|
||||
lowFast[x] = 0.0;
|
||||
}
|
||||
highFastIIR = 0.0;
|
||||
lowFastIIR = 0.0;
|
||||
fpd = 1.0; while (fpd < 16386) fpd = rand()*UINT32_MAX;
|
||||
}
|
||||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
// SmoothEQ3::SmoothEQ3Kernel::Process
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
void SmoothEQ3::SmoothEQ3Kernel::Process( const Float32 *inSourceP,
|
||||
Float32 *inDestP,
|
||||
UInt32 inFramesToProcess,
|
||||
UInt32 inNumChannels,
|
||||
bool &ioSilence )
|
||||
{
|
||||
UInt32 nSampleFrames = inFramesToProcess;
|
||||
const Float32 *sourceP = inSourceP;
|
||||
Float32 *destP = inDestP;
|
||||
|
||||
double trebleGain = (GetParameter( kParam_A )-0.5)*2.0;
|
||||
trebleGain = 1.0+(trebleGain*fabs(trebleGain)*fabs(trebleGain));
|
||||
double midGain = (GetParameter( kParam_B )-0.5)*2.0;
|
||||
midGain = 1.0+(midGain*fabs(midGain)*fabs(midGain));
|
||||
double bassGain = (GetParameter( kParam_C )-0.5)*2.0;
|
||||
bassGain = 1.0+(bassGain*fabs(bassGain)*fabs(bassGain));
|
||||
//separate from filtering stage, this is amplitude, centered on 1.0 unity gain
|
||||
|
||||
//SmoothEQ3 is how to get 3rd order steepness at very low CPU.
|
||||
//because sample rate varies, you could also vary the crossovers
|
||||
//you can't vary Q because math is simplified to take advantage of
|
||||
//how the accurate Q value for this filter is always exactly 1.0.
|
||||
highFast[biq_freq] = (4000.0/GetSampleRate());
|
||||
double omega = 2.0*M_PI*(4000.0/GetSampleRate()); //mid-high crossover freq
|
||||
double K = 2.0 - cos(omega);
|
||||
double highCoef = -sqrt(K*K - 1.0) + K;
|
||||
lowFast[biq_freq] = (200.0/GetSampleRate());
|
||||
omega = 2.0*M_PI*(200.0/GetSampleRate()); //low-mid crossover freq
|
||||
K = 2.0 - cos(omega);
|
||||
double lowCoef = -sqrt(K*K - 1.0) + K;
|
||||
//exponential IIR filter as part of an accurate 3rd order Butterworth filter
|
||||
K = tan(M_PI * highFast[biq_freq]);
|
||||
double norm = 1.0 / (1.0 + K + K*K);
|
||||
highFast[biq_a0] = K * K * norm;
|
||||
highFast[biq_a1] = 2.0 * highFast[biq_a0];
|
||||
highFast[biq_a2] = highFast[biq_a0];
|
||||
highFast[biq_b1] = 2.0 * (K*K - 1.0) * norm;
|
||||
highFast[biq_b2] = (1.0 - K + K*K) * norm;
|
||||
K = tan(M_PI * lowFast[biq_freq]);
|
||||
norm = 1.0 / (1.0 + K + K*K);
|
||||
lowFast[biq_a0] = K * K * norm;
|
||||
lowFast[biq_a1] = 2.0 * lowFast[biq_a0];
|
||||
lowFast[biq_a2] = lowFast[biq_a0];
|
||||
lowFast[biq_b1] = 2.0 * (K*K - 1.0) * norm;
|
||||
lowFast[biq_b2] = (1.0 - K + K*K) * norm;
|
||||
//custom biquad setup with Q = 1.0 gets to omit some divides
|
||||
|
||||
while (nSampleFrames-- > 0) {
|
||||
double inputSampleL = *sourceP;
|
||||
if (fabs(inputSampleL)<1.18e-23) inputSampleL = fpd * 1.18e-17;
|
||||
|
||||
double trebleFastL = inputSampleL;
|
||||
double outSample = (trebleFastL * highFast[biq_a0]) + highFast[biq_sL1];
|
||||
highFast[biq_sL1] = (trebleFastL * highFast[biq_a1]) - (outSample * highFast[biq_b1]) + highFast[biq_sL2];
|
||||
highFast[biq_sL2] = (trebleFastL * highFast[biq_a2]) - (outSample * highFast[biq_b2]);
|
||||
double midFastL = outSample; trebleFastL -= midFastL;
|
||||
outSample = (midFastL * lowFast[biq_a0]) + lowFast[biq_sL1];
|
||||
lowFast[biq_sL1] = (midFastL * lowFast[biq_a1]) - (outSample * lowFast[biq_b1]) + lowFast[biq_sL2];
|
||||
lowFast[biq_sL2] = (midFastL * lowFast[biq_a2]) - (outSample * lowFast[biq_b2]);
|
||||
double bassFastL = outSample; midFastL -= bassFastL;
|
||||
trebleFastL = (bassFastL*bassGain) + (midFastL*midGain) + (trebleFastL*trebleGain);
|
||||
//first stage of two crossovers is biquad of exactly 1.0 Q
|
||||
highFastIIR = (highFastIIR*highCoef) + (trebleFastL*(1.0-highCoef));
|
||||
midFastL = highFastIIR; trebleFastL -= midFastL;
|
||||
lowFastIIR = (lowFastIIR*lowCoef) + (midFastL*(1.0-lowCoef));
|
||||
bassFastL = lowFastIIR; midFastL -= bassFastL;
|
||||
inputSampleL = (bassFastL*bassGain) + (midFastL*midGain) + (trebleFastL*trebleGain);
|
||||
//second stage of two crossovers is the exponential filters
|
||||
//this produces a slightly steeper Butterworth filter very cheaply
|
||||
|
||||
//begin 32 bit floating point dither
|
||||
int expon; frexpf((float)inputSampleL, &expon);
|
||||
fpd ^= fpd << 13; fpd ^= fpd >> 17; fpd ^= fpd << 5;
|
||||
inputSampleL += ((double(fpd)-uint32_t(0x7fffffff)) * 5.5e-36l * pow(2,expon+62));
|
||||
//end 32 bit floating point dither
|
||||
|
||||
*destP = inputSampleL;
|
||||
|
||||
sourceP += inNumChannels; destP += inNumChannels;
|
||||
}
|
||||
}
|
||||
|
||||
1
plugins/MacAU/SmoothEQ3/SmoothEQ3.exp
Executable file
1
plugins/MacAU/SmoothEQ3/SmoothEQ3.exp
Executable file
|
|
@ -0,0 +1 @@
|
|||
_SmoothEQ3Entry
|
||||
159
plugins/MacAU/SmoothEQ3/SmoothEQ3.h
Executable file
159
plugins/MacAU/SmoothEQ3/SmoothEQ3.h
Executable file
|
|
@ -0,0 +1,159 @@
|
|||
/*
|
||||
* File: SmoothEQ3.h
|
||||
*
|
||||
* Version: 1.0
|
||||
*
|
||||
* Created: 8/15/25
|
||||
*
|
||||
* Copyright: Copyright © 2025 Airwindows, Airwindows uses the MIT license
|
||||
*
|
||||
* Disclaimer: IMPORTANT: This Apple software is supplied to you by Apple Computer, Inc. ("Apple") in
|
||||
* consideration of your agreement to the following terms, and your use, installation, modification
|
||||
* or redistribution of this Apple software constitutes acceptance of these terms. If you do
|
||||
* not agree with these terms, please do not use, install, modify or redistribute this Apple
|
||||
* software.
|
||||
*
|
||||
* In consideration of your agreement to abide by the following terms, and subject to these terms,
|
||||
* Apple grants you a personal, non-exclusive license, under Apple's copyrights in this
|
||||
* original Apple software (the "Apple Software"), to use, reproduce, modify and redistribute the
|
||||
* Apple Software, with or without modifications, in source and/or binary forms; provided that if you
|
||||
* redistribute the Apple Software in its entirety and without modifications, you must retain this
|
||||
* notice and the following text and disclaimers in all such redistributions of the Apple Software.
|
||||
* Neither the name, trademarks, service marks or logos of Apple Computer, Inc. may be used to
|
||||
* endorse or promote products derived from the Apple Software without specific prior written
|
||||
* permission from Apple. Except as expressly stated in this notice, no other rights or
|
||||
* licenses, express or implied, are granted by Apple herein, including but not limited to any
|
||||
* patent rights that may be infringed by your derivative works or by other works in which the
|
||||
* Apple Software may be incorporated.
|
||||
*
|
||||
* The Apple Software is provided by Apple on an "AS IS" basis. APPLE MAKES NO WARRANTIES, EXPRESS OR
|
||||
* IMPLIED, INCLUDING WITHOUT LIMITATION THE IMPLIED WARRANTIES OF NON-INFRINGEMENT, MERCHANTABILITY
|
||||
* AND FITNESS FOR A PARTICULAR PURPOSE, REGARDING THE APPLE SOFTWARE OR ITS USE AND OPERATION ALONE
|
||||
* OR IN COMBINATION WITH YOUR PRODUCTS.
|
||||
*
|
||||
* IN NO EVENT SHALL APPLE BE LIABLE FOR ANY SPECIAL, INDIRECT, INCIDENTAL OR CONSEQUENTIAL
|
||||
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
|
||||
* OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) ARISING IN ANY WAY OUT OF THE USE,
|
||||
* REPRODUCTION, MODIFICATION AND/OR DISTRIBUTION OF THE APPLE SOFTWARE, HOWEVER CAUSED AND WHETHER
|
||||
* UNDER THEORY OF CONTRACT, TORT (INCLUDING NEGLIGENCE), STRICT LIABILITY OR OTHERWISE, EVEN
|
||||
* IF APPLE HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
*/
|
||||
#include "AUEffectBase.h"
|
||||
#include "SmoothEQ3Version.h"
|
||||
|
||||
#if AU_DEBUG_DISPATCHER
|
||||
#include "AUDebugDispatcher.h"
|
||||
#endif
|
||||
|
||||
|
||||
#ifndef __SmoothEQ3_h__
|
||||
#define __SmoothEQ3_h__
|
||||
|
||||
|
||||
#pragma mark ____SmoothEQ3 Parameters
|
||||
|
||||
// parameters
|
||||
static const float kDefaultValue_ParamA = 0.5;
|
||||
static const float kDefaultValue_ParamB = 0.5;
|
||||
static const float kDefaultValue_ParamC = 0.5;
|
||||
|
||||
static CFStringRef kParameterAName = CFSTR("High");
|
||||
static CFStringRef kParameterBName = CFSTR("Mid");
|
||||
static CFStringRef kParameterCName = CFSTR("Bass");
|
||||
|
||||
enum {
|
||||
kParam_A =0,
|
||||
kParam_B =1,
|
||||
kParam_C =2,
|
||||
//Add your parameters here...
|
||||
kNumberOfParameters=3
|
||||
};
|
||||
|
||||
#pragma mark ____SmoothEQ3
|
||||
class SmoothEQ3 : public AUEffectBase
|
||||
{
|
||||
public:
|
||||
SmoothEQ3(AudioUnit component);
|
||||
#if AU_DEBUG_DISPATCHER
|
||||
virtual ~SmoothEQ3 () { delete mDebugDispatcher; }
|
||||
#endif
|
||||
|
||||
virtual AUKernelBase * NewKernel() { return new SmoothEQ3Kernel(this); }
|
||||
|
||||
virtual ComponentResult GetParameterValueStrings(AudioUnitScope inScope,
|
||||
AudioUnitParameterID inParameterID,
|
||||
CFArrayRef * outStrings);
|
||||
|
||||
virtual ComponentResult GetParameterInfo(AudioUnitScope inScope,
|
||||
AudioUnitParameterID inParameterID,
|
||||
AudioUnitParameterInfo &outParameterInfo);
|
||||
|
||||
virtual ComponentResult GetPropertyInfo(AudioUnitPropertyID inID,
|
||||
AudioUnitScope inScope,
|
||||
AudioUnitElement inElement,
|
||||
UInt32 & outDataSize,
|
||||
Boolean & outWritable );
|
||||
|
||||
virtual ComponentResult GetProperty(AudioUnitPropertyID inID,
|
||||
AudioUnitScope inScope,
|
||||
AudioUnitElement inElement,
|
||||
void * outData);
|
||||
|
||||
virtual ComponentResult Initialize();
|
||||
virtual bool SupportsTail () { return true; }
|
||||
virtual Float64 GetTailTime() {return (1.0/GetSampleRate())*0.0;} //in SECONDS! gsr * a number = in samples
|
||||
virtual Float64 GetLatency() {return (1.0/GetSampleRate())*0.0;} // in SECONDS! gsr * a number = in samples
|
||||
|
||||
/*! @method Version */
|
||||
virtual ComponentResult Version() { return kSmoothEQ3Version; }
|
||||
|
||||
|
||||
|
||||
protected:
|
||||
class SmoothEQ3Kernel : public AUKernelBase // most of the real work happens here
|
||||
{
|
||||
public:
|
||||
SmoothEQ3Kernel(AUEffectBase *inAudioUnit )
|
||||
: AUKernelBase(inAudioUnit)
|
||||
{
|
||||
}
|
||||
|
||||
// *Required* overides for the process method for this effect
|
||||
// processes one channel of interleaved samples
|
||||
virtual void Process( const Float32 *inSourceP,
|
||||
Float32 *inDestP,
|
||||
UInt32 inFramesToProcess,
|
||||
UInt32 inNumChannels,
|
||||
bool &ioSilence);
|
||||
|
||||
virtual void Reset();
|
||||
|
||||
private:
|
||||
enum {
|
||||
biq_freq,
|
||||
biq_reso,
|
||||
biq_a0,
|
||||
biq_a1,
|
||||
biq_a2,
|
||||
biq_b1,
|
||||
biq_b2,
|
||||
biq_sL1,
|
||||
biq_sL2,
|
||||
biq_sR1,
|
||||
biq_sR2,
|
||||
biq_total
|
||||
};
|
||||
double highFast[biq_total];
|
||||
double lowFast[biq_total];
|
||||
double highFastIIR;
|
||||
double lowFastIIR;
|
||||
|
||||
uint32_t fpd;
|
||||
};
|
||||
};
|
||||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
|
||||
#endif
|
||||
61
plugins/MacAU/SmoothEQ3/SmoothEQ3.r
Executable file
61
plugins/MacAU/SmoothEQ3/SmoothEQ3.r
Executable file
|
|
@ -0,0 +1,61 @@
|
|||
/*
|
||||
* File: SmoothEQ3.r
|
||||
*
|
||||
* Version: 1.0
|
||||
*
|
||||
* Created: 8/15/25
|
||||
*
|
||||
* Copyright: Copyright © 2025 Airwindows, Airwindows uses the MIT license
|
||||
*
|
||||
* Disclaimer: IMPORTANT: This Apple software is supplied to you by Apple Computer, Inc. ("Apple") in
|
||||
* consideration of your agreement to the following terms, and your use, installation, modification
|
||||
* or redistribution of this Apple software constitutes acceptance of these terms. If you do
|
||||
* not agree with these terms, please do not use, install, modify or redistribute this Apple
|
||||
* software.
|
||||
*
|
||||
* In consideration of your agreement to abide by the following terms, and subject to these terms,
|
||||
* Apple grants you a personal, non-exclusive license, under Apple's copyrights in this
|
||||
* original Apple software (the "Apple Software"), to use, reproduce, modify and redistribute the
|
||||
* Apple Software, with or without modifications, in source and/or binary forms; provided that if you
|
||||
* redistribute the Apple Software in its entirety and without modifications, you must retain this
|
||||
* notice and the following text and disclaimers in all such redistributions of the Apple Software.
|
||||
* Neither the name, trademarks, service marks or logos of Apple Computer, Inc. may be used to
|
||||
* endorse or promote products derived from the Apple Software without specific prior written
|
||||
* permission from Apple. Except as expressly stated in this notice, no other rights or
|
||||
* licenses, express or implied, are granted by Apple herein, including but not limited to any
|
||||
* patent rights that may be infringed by your derivative works or by other works in which the
|
||||
* Apple Software may be incorporated.
|
||||
*
|
||||
* The Apple Software is provided by Apple on an "AS IS" basis. APPLE MAKES NO WARRANTIES, EXPRESS OR
|
||||
* IMPLIED, INCLUDING WITHOUT LIMITATION THE IMPLIED WARRANTIES OF NON-INFRINGEMENT, MERCHANTABILITY
|
||||
* AND FITNESS FOR A PARTICULAR PURPOSE, REGARDING THE APPLE SOFTWARE OR ITS USE AND OPERATION ALONE
|
||||
* OR IN COMBINATION WITH YOUR PRODUCTS.
|
||||
*
|
||||
* IN NO EVENT SHALL APPLE BE LIABLE FOR ANY SPECIAL, INDIRECT, INCIDENTAL OR CONSEQUENTIAL
|
||||
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
|
||||
* OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) ARISING IN ANY WAY OUT OF THE USE,
|
||||
* REPRODUCTION, MODIFICATION AND/OR DISTRIBUTION OF THE APPLE SOFTWARE, HOWEVER CAUSED AND WHETHER
|
||||
* UNDER THEORY OF CONTRACT, TORT (INCLUDING NEGLIGENCE), STRICT LIABILITY OR OTHERWISE, EVEN
|
||||
* IF APPLE HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
*/
|
||||
#include <AudioUnit/AudioUnit.r>
|
||||
|
||||
#include "SmoothEQ3Version.h"
|
||||
|
||||
// Note that resource IDs must be spaced 2 apart for the 'STR ' name and description
|
||||
#define kAudioUnitResID_SmoothEQ3 1000
|
||||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ SmoothEQ3~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
#define RES_ID kAudioUnitResID_SmoothEQ3
|
||||
#define COMP_TYPE kAudioUnitType_Effect
|
||||
#define COMP_SUBTYPE SmoothEQ3_COMP_SUBTYPE
|
||||
#define COMP_MANUF SmoothEQ3_COMP_MANF
|
||||
|
||||
#define VERSION kSmoothEQ3Version
|
||||
#define NAME "Airwindows: SmoothEQ3"
|
||||
#define DESCRIPTION "SmoothEQ3 AU"
|
||||
#define ENTRY_POINT "SmoothEQ3Entry"
|
||||
|
||||
#include "AUResources.r"
|
||||
1358
plugins/MacAU/SmoothEQ3/SmoothEQ3.xcodeproj/christopherjohnson.mode1v3
Executable file
1358
plugins/MacAU/SmoothEQ3/SmoothEQ3.xcodeproj/christopherjohnson.mode1v3
Executable file
File diff suppressed because it is too large
Load diff
137
plugins/MacAU/SmoothEQ3/SmoothEQ3.xcodeproj/christopherjohnson.pbxuser
Executable file
137
plugins/MacAU/SmoothEQ3/SmoothEQ3.xcodeproj/christopherjohnson.pbxuser
Executable file
|
|
@ -0,0 +1,137 @@
|
|||
// !$*UTF8*$!
|
||||
{
|
||||
089C1669FE841209C02AAC07 /* Project object */ = {
|
||||
activeBuildConfigurationName = Release;
|
||||
activeTarget = 8D01CCC60486CAD60068D4B7 /* SmoothEQ3 */;
|
||||
codeSenseManager = 8BD3CCB9148830B20062E48C /* Code sense */;
|
||||
perUserDictionary = {
|
||||
PBXConfiguration.PBXFileTableDataSource3.PBXFileTableDataSource = {
|
||||
PBXFileTableDataSourceColumnSortingDirectionKey = "-1";
|
||||
PBXFileTableDataSourceColumnSortingKey = PBXFileDataSource_Filename_ColumnID;
|
||||
PBXFileTableDataSourceColumnWidthsKey = (
|
||||
20,
|
||||
292,
|
||||
20,
|
||||
48,
|
||||
43,
|
||||
43,
|
||||
20,
|
||||
);
|
||||
PBXFileTableDataSourceColumnsKey = (
|
||||
PBXFileDataSource_FiletypeID,
|
||||
PBXFileDataSource_Filename_ColumnID,
|
||||
PBXFileDataSource_Built_ColumnID,
|
||||
PBXFileDataSource_ObjectSize_ColumnID,
|
||||
PBXFileDataSource_Errors_ColumnID,
|
||||
PBXFileDataSource_Warnings_ColumnID,
|
||||
PBXFileDataSource_Target_ColumnID,
|
||||
);
|
||||
};
|
||||
PBXConfiguration.PBXTargetDataSource.PBXTargetDataSource = {
|
||||
PBXFileTableDataSourceColumnSortingDirectionKey = "-1";
|
||||
PBXFileTableDataSourceColumnSortingKey = PBXFileDataSource_Filename_ColumnID;
|
||||
PBXFileTableDataSourceColumnWidthsKey = (
|
||||
20,
|
||||
252,
|
||||
60,
|
||||
20,
|
||||
48,
|
||||
43,
|
||||
43,
|
||||
);
|
||||
PBXFileTableDataSourceColumnsKey = (
|
||||
PBXFileDataSource_FiletypeID,
|
||||
PBXFileDataSource_Filename_ColumnID,
|
||||
PBXTargetDataSource_PrimaryAttribute,
|
||||
PBXFileDataSource_Built_ColumnID,
|
||||
PBXFileDataSource_ObjectSize_ColumnID,
|
||||
PBXFileDataSource_Errors_ColumnID,
|
||||
PBXFileDataSource_Warnings_ColumnID,
|
||||
);
|
||||
};
|
||||
PBXPerProjectTemplateStateSaveDate = 777108901;
|
||||
PBXWorkspaceStateSaveDate = 777108901;
|
||||
};
|
||||
perUserProjectItems = {
|
||||
8BBB4C192E50B242007CFABF /* PlistBookmark */ = 8BBB4C192E50B242007CFABF /* PlistBookmark */;
|
||||
8BC8CE222E50B41C00FAAE1C /* PBXTextBookmark */ = 8BC8CE222E50B41C00FAAE1C /* PBXTextBookmark */;
|
||||
8BC8CEF92E51C0CE00FAAE1C /* PBXTextBookmark */ = 8BC8CEF92E51C0CE00FAAE1C /* PBXTextBookmark */;
|
||||
};
|
||||
sourceControlManager = 8BD3CCB8148830B20062E48C /* Source Control */;
|
||||
userBuildSettings = {
|
||||
};
|
||||
};
|
||||
8BA05A660720730100365D66 /* SmoothEQ3.cpp */ = {
|
||||
uiCtxt = {
|
||||
sepNavIntBoundsRect = "{{0, 0}, {912, 4932}}";
|
||||
sepNavSelRange = "{12468, 0}";
|
||||
sepNavVisRange = "{12342, 126}";
|
||||
sepNavWindowFrame = "{{638, 38}, {802, 840}}";
|
||||
};
|
||||
};
|
||||
8BA05A690720730100365D66 /* SmoothEQ3Version.h */ = {
|
||||
uiCtxt = {
|
||||
sepNavIntBoundsRect = "{{0, 0}, {1101, 1062}}";
|
||||
sepNavSelRange = "{2906, 0}";
|
||||
sepNavVisRange = "{862, 2107}";
|
||||
sepNavWindowFrame = "{{15, 38}, {1148, 840}}";
|
||||
};
|
||||
};
|
||||
8BBB4C192E50B242007CFABF /* PlistBookmark */ = {
|
||||
isa = PlistBookmark;
|
||||
fRef = 8D01CCD10486CAD60068D4B7 /* Info.plist */;
|
||||
fallbackIsa = PBXBookmark;
|
||||
isK = 0;
|
||||
kPath = (
|
||||
CFBundleName,
|
||||
);
|
||||
name = /Users/christopherjohnson/Desktop/SmoothEQ3/Info.plist;
|
||||
rLen = 0;
|
||||
rLoc = 9223372036854775808;
|
||||
};
|
||||
8BC6025B073B072D006C4272 /* SmoothEQ3.h */ = {
|
||||
uiCtxt = {
|
||||
sepNavIntBoundsRect = "{{0, 0}, {1146, 2862}}";
|
||||
sepNavSelRange = "{5385, 102}";
|
||||
sepNavVisRange = "{2005, 1230}";
|
||||
sepNavWindowFrame = "{{292, 38}, {1148, 840}}";
|
||||
};
|
||||
};
|
||||
8BC8CE222E50B41C00FAAE1C /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 8BA05A660720730100365D66 /* SmoothEQ3.cpp */;
|
||||
name = "SmoothEQ3.cpp: 274";
|
||||
rLen = 0;
|
||||
rLoc = 12468;
|
||||
rType = 0;
|
||||
vrLen = 315;
|
||||
vrLoc = 12239;
|
||||
};
|
||||
8BC8CEF92E51C0CE00FAAE1C /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 8BA05A660720730100365D66 /* SmoothEQ3.cpp */;
|
||||
name = "SmoothEQ3.cpp: 271";
|
||||
rLen = 0;
|
||||
rLoc = 12468;
|
||||
rType = 0;
|
||||
vrLen = 126;
|
||||
vrLoc = 12342;
|
||||
};
|
||||
8BD3CCB8148830B20062E48C /* Source Control */ = {
|
||||
isa = PBXSourceControlManager;
|
||||
fallbackIsa = XCSourceControlManager;
|
||||
isSCMEnabled = 0;
|
||||
scmConfiguration = {
|
||||
repositoryNamesForRoots = {
|
||||
"" = "";
|
||||
};
|
||||
};
|
||||
};
|
||||
8BD3CCB9148830B20062E48C /* Code sense */ = {
|
||||
isa = PBXCodeSenseManager;
|
||||
indexTemplatePath = "";
|
||||
};
|
||||
8D01CCC60486CAD60068D4B7 /* SmoothEQ3 */ = {
|
||||
activeExec = 0;
|
||||
};
|
||||
}
|
||||
1506
plugins/MacAU/SmoothEQ3/SmoothEQ3.xcodeproj/christopherjohnson.perspectivev3
Executable file
1506
plugins/MacAU/SmoothEQ3/SmoothEQ3.xcodeproj/christopherjohnson.perspectivev3
Executable file
File diff suppressed because it is too large
Load diff
490
plugins/MacAU/SmoothEQ3/SmoothEQ3.xcodeproj/project.pbxproj
Executable file
490
plugins/MacAU/SmoothEQ3/SmoothEQ3.xcodeproj/project.pbxproj
Executable file
|
|
@ -0,0 +1,490 @@
|
|||
// !$*UTF8*$!
|
||||
{
|
||||
archiveVersion = 1;
|
||||
classes = {
|
||||
};
|
||||
objectVersion = 45;
|
||||
objects = {
|
||||
|
||||
/* Begin PBXBuildFile section */
|
||||
3EEA126E089847F5002C6BFC /* CAVectorUnit.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3EEA126B089847F5002C6BFC /* CAVectorUnit.cpp */; };
|
||||
3EEA126F089847F5002C6BFC /* CAVectorUnit.h in Headers */ = {isa = PBXBuildFile; fileRef = 3EEA126C089847F5002C6BFC /* CAVectorUnit.h */; };
|
||||
3EEA1270089847F5002C6BFC /* CAVectorUnitTypes.h in Headers */ = {isa = PBXBuildFile; fileRef = 3EEA126D089847F5002C6BFC /* CAVectorUnitTypes.h */; };
|
||||
8B4119B70749654200361ABE /* SmoothEQ3.r in Rez */ = {isa = PBXBuildFile; fileRef = 8BA05A680720730100365D66 /* SmoothEQ3.r */; };
|
||||
8BA05A6B0720730100365D66 /* SmoothEQ3.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8BA05A660720730100365D66 /* SmoothEQ3.cpp */; };
|
||||
8BA05A6E0720730100365D66 /* SmoothEQ3Version.h in Headers */ = {isa = PBXBuildFile; fileRef = 8BA05A690720730100365D66 /* SmoothEQ3Version.h */; };
|
||||
8BA05AAE072073D300365D66 /* AUBase.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8BA05A7F072073D200365D66 /* AUBase.cpp */; };
|
||||
8BA05AAF072073D300365D66 /* AUBase.h in Headers */ = {isa = PBXBuildFile; fileRef = 8BA05A80072073D200365D66 /* AUBase.h */; };
|
||||
8BA05AB0072073D300365D66 /* AUDispatch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8BA05A81072073D200365D66 /* AUDispatch.cpp */; };
|
||||
8BA05AB1072073D300365D66 /* AUDispatch.h in Headers */ = {isa = PBXBuildFile; fileRef = 8BA05A82072073D200365D66 /* AUDispatch.h */; };
|
||||
8BA05AB2072073D300365D66 /* AUInputElement.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8BA05A83072073D200365D66 /* AUInputElement.cpp */; };
|
||||
8BA05AB3072073D300365D66 /* AUInputElement.h in Headers */ = {isa = PBXBuildFile; fileRef = 8BA05A84072073D200365D66 /* AUInputElement.h */; };
|
||||
8BA05AB4072073D300365D66 /* AUOutputElement.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8BA05A85072073D200365D66 /* AUOutputElement.cpp */; };
|
||||
8BA05AB5072073D300365D66 /* AUOutputElement.h in Headers */ = {isa = PBXBuildFile; fileRef = 8BA05A86072073D200365D66 /* AUOutputElement.h */; };
|
||||
8BA05AB7072073D300365D66 /* AUScopeElement.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8BA05A88072073D200365D66 /* AUScopeElement.cpp */; };
|
||||
8BA05AB8072073D300365D66 /* AUScopeElement.h in Headers */ = {isa = PBXBuildFile; fileRef = 8BA05A89072073D200365D66 /* AUScopeElement.h */; };
|
||||
8BA05AB9072073D300365D66 /* ComponentBase.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8BA05A8A072073D200365D66 /* ComponentBase.cpp */; };
|
||||
8BA05ABA072073D300365D66 /* ComponentBase.h in Headers */ = {isa = PBXBuildFile; fileRef = 8BA05A8B072073D200365D66 /* ComponentBase.h */; };
|
||||
8BA05AC6072073D300365D66 /* AUEffectBase.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8BA05A9A072073D200365D66 /* AUEffectBase.cpp */; };
|
||||
8BA05AC7072073D300365D66 /* AUEffectBase.h in Headers */ = {isa = PBXBuildFile; fileRef = 8BA05A9B072073D200365D66 /* AUEffectBase.h */; };
|
||||
8BA05AD2072073D300365D66 /* AUBuffer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8BA05AA7072073D200365D66 /* AUBuffer.cpp */; };
|
||||
8BA05AD3072073D300365D66 /* AUBuffer.h in Headers */ = {isa = PBXBuildFile; fileRef = 8BA05AA8072073D200365D66 /* AUBuffer.h */; };
|
||||
8BA05AD4072073D300365D66 /* AUDebugDispatcher.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8BA05AA9072073D200365D66 /* AUDebugDispatcher.cpp */; };
|
||||
8BA05AD5072073D300365D66 /* AUDebugDispatcher.h in Headers */ = {isa = PBXBuildFile; fileRef = 8BA05AAA072073D200365D66 /* AUDebugDispatcher.h */; };
|
||||
8BA05AD6072073D300365D66 /* AUInputFormatConverter.h in Headers */ = {isa = PBXBuildFile; fileRef = 8BA05AAB072073D200365D66 /* AUInputFormatConverter.h */; };
|
||||
8BA05AD7072073D300365D66 /* AUSilentTimeout.h in Headers */ = {isa = PBXBuildFile; fileRef = 8BA05AAC072073D200365D66 /* AUSilentTimeout.h */; };
|
||||
8BA05AD8072073D300365D66 /* AUTimestampGenerator.h in Headers */ = {isa = PBXBuildFile; fileRef = 8BA05AAD072073D200365D66 /* AUTimestampGenerator.h */; };
|
||||
8BA05AE50720742100365D66 /* CAAudioChannelLayout.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8BA05ADF0720742100365D66 /* CAAudioChannelLayout.cpp */; };
|
||||
8BA05AE60720742100365D66 /* CAAudioChannelLayout.h in Headers */ = {isa = PBXBuildFile; fileRef = 8BA05AE00720742100365D66 /* CAAudioChannelLayout.h */; };
|
||||
8BA05AE70720742100365D66 /* CAMutex.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8BA05AE10720742100365D66 /* CAMutex.cpp */; };
|
||||
8BA05AE80720742100365D66 /* CAMutex.h in Headers */ = {isa = PBXBuildFile; fileRef = 8BA05AE20720742100365D66 /* CAMutex.h */; };
|
||||
8BA05AE90720742100365D66 /* CAStreamBasicDescription.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8BA05AE30720742100365D66 /* CAStreamBasicDescription.cpp */; };
|
||||
8BA05AEA0720742100365D66 /* CAStreamBasicDescription.h in Headers */ = {isa = PBXBuildFile; fileRef = 8BA05AE40720742100365D66 /* CAStreamBasicDescription.h */; };
|
||||
8BA05AFC072074E100365D66 /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8BA05AF9072074E100365D66 /* AudioToolbox.framework */; };
|
||||
8BA05AFD072074E100365D66 /* AudioUnit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8BA05AFA072074E100365D66 /* AudioUnit.framework */; };
|
||||
8BA05B02072074F900365D66 /* CoreServices.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8BA05B01072074F900365D66 /* CoreServices.framework */; };
|
||||
8BA05B070720754400365D66 /* CAAUParameter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8BA05B050720754400365D66 /* CAAUParameter.cpp */; };
|
||||
8BA05B080720754400365D66 /* CAAUParameter.h in Headers */ = {isa = PBXBuildFile; fileRef = 8BA05B060720754400365D66 /* CAAUParameter.h */; };
|
||||
8BC6025C073B072D006C4272 /* SmoothEQ3.h in Headers */ = {isa = PBXBuildFile; fileRef = 8BC6025B073B072D006C4272 /* SmoothEQ3.h */; };
|
||||
8D01CCCA0486CAD60068D4B7 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 089C167DFE841241C02AAC07 /* InfoPlist.strings */; };
|
||||
F7C347F00ECE5AF8008ADFB6 /* AUBaseHelper.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F7C347EE0ECE5AF8008ADFB6 /* AUBaseHelper.cpp */; };
|
||||
F7C347F10ECE5AF8008ADFB6 /* AUBaseHelper.h in Headers */ = {isa = PBXBuildFile; fileRef = F7C347EF0ECE5AF8008ADFB6 /* AUBaseHelper.h */; };
|
||||
/* End PBXBuildFile section */
|
||||
|
||||
/* Begin PBXFileReference section */
|
||||
089C167EFE841241C02AAC07 /* English */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; name = English; path = English.lproj/InfoPlist.strings; sourceTree = "<group>"; };
|
||||
3EEA126B089847F5002C6BFC /* CAVectorUnit.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = CAVectorUnit.cpp; sourceTree = "<group>"; };
|
||||
3EEA126C089847F5002C6BFC /* CAVectorUnit.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = CAVectorUnit.h; sourceTree = "<group>"; };
|
||||
3EEA126D089847F5002C6BFC /* CAVectorUnitTypes.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = CAVectorUnitTypes.h; sourceTree = "<group>"; };
|
||||
8B5C7FBF076FB2C200A15F61 /* CoreAudio.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreAudio.framework; path = /System/Library/Frameworks/CoreAudio.framework; sourceTree = "<absolute>"; };
|
||||
8BA05A660720730100365D66 /* SmoothEQ3.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = SmoothEQ3.cpp; sourceTree = "<group>"; };
|
||||
8BA05A670720730100365D66 /* SmoothEQ3.exp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.exports; path = SmoothEQ3.exp; sourceTree = "<group>"; };
|
||||
8BA05A680720730100365D66 /* SmoothEQ3.r */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.rez; path = SmoothEQ3.r; sourceTree = "<group>"; };
|
||||
8BA05A690720730100365D66 /* SmoothEQ3Version.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = SmoothEQ3Version.h; sourceTree = "<group>"; };
|
||||
8BA05A7F072073D200365D66 /* AUBase.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = AUBase.cpp; sourceTree = "<group>"; };
|
||||
8BA05A80072073D200365D66 /* AUBase.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = AUBase.h; sourceTree = "<group>"; };
|
||||
8BA05A81072073D200365D66 /* AUDispatch.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = AUDispatch.cpp; sourceTree = "<group>"; };
|
||||
8BA05A82072073D200365D66 /* AUDispatch.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = AUDispatch.h; sourceTree = "<group>"; };
|
||||
8BA05A83072073D200365D66 /* AUInputElement.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = AUInputElement.cpp; sourceTree = "<group>"; };
|
||||
8BA05A84072073D200365D66 /* AUInputElement.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = AUInputElement.h; sourceTree = "<group>"; };
|
||||
8BA05A85072073D200365D66 /* AUOutputElement.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = AUOutputElement.cpp; sourceTree = "<group>"; };
|
||||
8BA05A86072073D200365D66 /* AUOutputElement.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = AUOutputElement.h; sourceTree = "<group>"; };
|
||||
8BA05A87072073D200365D66 /* AUResources.r */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.rez; path = AUResources.r; sourceTree = "<group>"; };
|
||||
8BA05A88072073D200365D66 /* AUScopeElement.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = AUScopeElement.cpp; sourceTree = "<group>"; };
|
||||
8BA05A89072073D200365D66 /* AUScopeElement.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = AUScopeElement.h; sourceTree = "<group>"; };
|
||||
8BA05A8A072073D200365D66 /* ComponentBase.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = ComponentBase.cpp; sourceTree = "<group>"; };
|
||||
8BA05A8B072073D200365D66 /* ComponentBase.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = ComponentBase.h; sourceTree = "<group>"; };
|
||||
8BA05A9A072073D200365D66 /* AUEffectBase.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = AUEffectBase.cpp; sourceTree = "<group>"; };
|
||||
8BA05A9B072073D200365D66 /* AUEffectBase.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = AUEffectBase.h; sourceTree = "<group>"; };
|
||||
8BA05AA7072073D200365D66 /* AUBuffer.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = AUBuffer.cpp; sourceTree = "<group>"; };
|
||||
8BA05AA8072073D200365D66 /* AUBuffer.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = AUBuffer.h; sourceTree = "<group>"; };
|
||||
8BA05AA9072073D200365D66 /* AUDebugDispatcher.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = AUDebugDispatcher.cpp; sourceTree = "<group>"; };
|
||||
8BA05AAA072073D200365D66 /* AUDebugDispatcher.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = AUDebugDispatcher.h; sourceTree = "<group>"; };
|
||||
8BA05AAB072073D200365D66 /* AUInputFormatConverter.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = AUInputFormatConverter.h; sourceTree = "<group>"; };
|
||||
8BA05AAC072073D200365D66 /* AUSilentTimeout.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = AUSilentTimeout.h; sourceTree = "<group>"; };
|
||||
8BA05AAD072073D200365D66 /* AUTimestampGenerator.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = AUTimestampGenerator.h; sourceTree = "<group>"; };
|
||||
8BA05ADF0720742100365D66 /* CAAudioChannelLayout.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = CAAudioChannelLayout.cpp; sourceTree = "<group>"; };
|
||||
8BA05AE00720742100365D66 /* CAAudioChannelLayout.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = CAAudioChannelLayout.h; sourceTree = "<group>"; };
|
||||
8BA05AE10720742100365D66 /* CAMutex.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = CAMutex.cpp; sourceTree = "<group>"; };
|
||||
8BA05AE20720742100365D66 /* CAMutex.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = CAMutex.h; sourceTree = "<group>"; };
|
||||
8BA05AE30720742100365D66 /* CAStreamBasicDescription.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = CAStreamBasicDescription.cpp; sourceTree = "<group>"; };
|
||||
8BA05AE40720742100365D66 /* CAStreamBasicDescription.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = CAStreamBasicDescription.h; sourceTree = "<group>"; };
|
||||
8BA05AF9072074E100365D66 /* AudioToolbox.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AudioToolbox.framework; path = /System/Library/Frameworks/AudioToolbox.framework; sourceTree = "<absolute>"; };
|
||||
8BA05AFA072074E100365D66 /* AudioUnit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AudioUnit.framework; path = /System/Library/Frameworks/AudioUnit.framework; sourceTree = "<absolute>"; };
|
||||
8BA05B01072074F900365D66 /* CoreServices.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreServices.framework; path = /System/Library/Frameworks/CoreServices.framework; sourceTree = "<absolute>"; };
|
||||
8BA05B050720754400365D66 /* CAAUParameter.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = CAAUParameter.cpp; sourceTree = "<group>"; };
|
||||
8BA05B060720754400365D66 /* CAAUParameter.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = CAAUParameter.h; sourceTree = "<group>"; };
|
||||
8BC6025B073B072D006C4272 /* SmoothEQ3.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = SmoothEQ3.h; sourceTree = "<group>"; };
|
||||
8D01CCD10486CAD60068D4B7 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist; path = Info.plist; sourceTree = "<group>"; };
|
||||
8D01CCD20486CAD60068D4B7 /* SmoothEQ3.component */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = SmoothEQ3.component; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
F7C347EE0ECE5AF8008ADFB6 /* AUBaseHelper.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = AUBaseHelper.cpp; path = Extras/CoreAudio/AudioUnits/AUPublic/Utility/AUBaseHelper.cpp; sourceTree = SYSTEM_DEVELOPER_DIR; };
|
||||
F7C347EF0ECE5AF8008ADFB6 /* AUBaseHelper.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = AUBaseHelper.h; path = Extras/CoreAudio/AudioUnits/AUPublic/Utility/AUBaseHelper.h; sourceTree = SYSTEM_DEVELOPER_DIR; };
|
||||
/* End PBXFileReference section */
|
||||
|
||||
/* Begin PBXFrameworksBuildPhase section */
|
||||
8D01CCCD0486CAD60068D4B7 /* Frameworks */ = {
|
||||
isa = PBXFrameworksBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
8BA05AFC072074E100365D66 /* AudioToolbox.framework in Frameworks */,
|
||||
8BA05AFD072074E100365D66 /* AudioUnit.framework in Frameworks */,
|
||||
8BA05B02072074F900365D66 /* CoreServices.framework in Frameworks */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXFrameworksBuildPhase section */
|
||||
|
||||
/* Begin PBXGroup section */
|
||||
089C166AFE841209C02AAC07 /* SmoothEQ3 */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
08FB77ADFE841716C02AAC07 /* Source */,
|
||||
089C167CFE841241C02AAC07 /* Resources */,
|
||||
089C1671FE841209C02AAC07 /* External Frameworks and Libraries */,
|
||||
19C28FB4FE9D528D11CA2CBB /* Products */,
|
||||
);
|
||||
name = SmoothEQ3;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
089C1671FE841209C02AAC07 /* External Frameworks and Libraries */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8B5C7FBF076FB2C200A15F61 /* CoreAudio.framework */,
|
||||
8BA05B01072074F900365D66 /* CoreServices.framework */,
|
||||
8BA05AF9072074E100365D66 /* AudioToolbox.framework */,
|
||||
8BA05AFA072074E100365D66 /* AudioUnit.framework */,
|
||||
);
|
||||
name = "External Frameworks and Libraries";
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
089C167CFE841241C02AAC07 /* Resources */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8D01CCD10486CAD60068D4B7 /* Info.plist */,
|
||||
089C167DFE841241C02AAC07 /* InfoPlist.strings */,
|
||||
);
|
||||
name = Resources;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
08FB77ADFE841716C02AAC07 /* Source */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8BA05A56072072A900365D66 /* AU Source */,
|
||||
8BA05AEB0720742700365D66 /* PublicUtility */,
|
||||
8BA05A7D072073D200365D66 /* AUPublic */,
|
||||
);
|
||||
name = Source;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
19C28FB4FE9D528D11CA2CBB /* Products */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8D01CCD20486CAD60068D4B7 /* SmoothEQ3.component */,
|
||||
);
|
||||
name = Products;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
8BA05A56072072A900365D66 /* AU Source */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8BC6025B073B072D006C4272 /* SmoothEQ3.h */,
|
||||
8BA05A660720730100365D66 /* SmoothEQ3.cpp */,
|
||||
8BA05A670720730100365D66 /* SmoothEQ3.exp */,
|
||||
8BA05A680720730100365D66 /* SmoothEQ3.r */,
|
||||
8BA05A690720730100365D66 /* SmoothEQ3Version.h */,
|
||||
);
|
||||
name = "AU Source";
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
8BA05A7D072073D200365D66 /* AUPublic */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8BA05A7E072073D200365D66 /* AUBase */,
|
||||
8BA05A99072073D200365D66 /* OtherBases */,
|
||||
8BA05AA6072073D200365D66 /* Utility */,
|
||||
);
|
||||
name = AUPublic;
|
||||
path = Extras/CoreAudio/AudioUnits/AUPublic;
|
||||
sourceTree = SYSTEM_DEVELOPER_DIR;
|
||||
};
|
||||
8BA05A7E072073D200365D66 /* AUBase */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8BA05A7F072073D200365D66 /* AUBase.cpp */,
|
||||
8BA05A80072073D200365D66 /* AUBase.h */,
|
||||
8BA05A81072073D200365D66 /* AUDispatch.cpp */,
|
||||
8BA05A82072073D200365D66 /* AUDispatch.h */,
|
||||
8BA05A83072073D200365D66 /* AUInputElement.cpp */,
|
||||
8BA05A84072073D200365D66 /* AUInputElement.h */,
|
||||
8BA05A85072073D200365D66 /* AUOutputElement.cpp */,
|
||||
8BA05A86072073D200365D66 /* AUOutputElement.h */,
|
||||
8BA05A87072073D200365D66 /* AUResources.r */,
|
||||
8BA05A88072073D200365D66 /* AUScopeElement.cpp */,
|
||||
8BA05A89072073D200365D66 /* AUScopeElement.h */,
|
||||
8BA05A8A072073D200365D66 /* ComponentBase.cpp */,
|
||||
8BA05A8B072073D200365D66 /* ComponentBase.h */,
|
||||
);
|
||||
path = AUBase;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
8BA05A99072073D200365D66 /* OtherBases */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8BA05A9A072073D200365D66 /* AUEffectBase.cpp */,
|
||||
8BA05A9B072073D200365D66 /* AUEffectBase.h */,
|
||||
);
|
||||
path = OtherBases;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
8BA05AA6072073D200365D66 /* Utility */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
F7C347EE0ECE5AF8008ADFB6 /* AUBaseHelper.cpp */,
|
||||
F7C347EF0ECE5AF8008ADFB6 /* AUBaseHelper.h */,
|
||||
8BA05AA7072073D200365D66 /* AUBuffer.cpp */,
|
||||
8BA05AA8072073D200365D66 /* AUBuffer.h */,
|
||||
8BA05AA9072073D200365D66 /* AUDebugDispatcher.cpp */,
|
||||
8BA05AAA072073D200365D66 /* AUDebugDispatcher.h */,
|
||||
8BA05AAB072073D200365D66 /* AUInputFormatConverter.h */,
|
||||
8BA05AAC072073D200365D66 /* AUSilentTimeout.h */,
|
||||
8BA05AAD072073D200365D66 /* AUTimestampGenerator.h */,
|
||||
);
|
||||
path = Utility;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
8BA05AEB0720742700365D66 /* PublicUtility */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8BA05B050720754400365D66 /* CAAUParameter.cpp */,
|
||||
8BA05B060720754400365D66 /* CAAUParameter.h */,
|
||||
8BA05ADF0720742100365D66 /* CAAudioChannelLayout.cpp */,
|
||||
8BA05AE00720742100365D66 /* CAAudioChannelLayout.h */,
|
||||
8BA05AE10720742100365D66 /* CAMutex.cpp */,
|
||||
8BA05AE20720742100365D66 /* CAMutex.h */,
|
||||
8BA05AE30720742100365D66 /* CAStreamBasicDescription.cpp */,
|
||||
8BA05AE40720742100365D66 /* CAStreamBasicDescription.h */,
|
||||
3EEA126D089847F5002C6BFC /* CAVectorUnitTypes.h */,
|
||||
3EEA126B089847F5002C6BFC /* CAVectorUnit.cpp */,
|
||||
3EEA126C089847F5002C6BFC /* CAVectorUnit.h */,
|
||||
);
|
||||
name = PublicUtility;
|
||||
path = Extras/CoreAudio/PublicUtility;
|
||||
sourceTree = SYSTEM_DEVELOPER_DIR;
|
||||
};
|
||||
/* End PBXGroup section */
|
||||
|
||||
/* Begin PBXHeadersBuildPhase section */
|
||||
8D01CCC70486CAD60068D4B7 /* Headers */ = {
|
||||
isa = PBXHeadersBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
8BA05A6E0720730100365D66 /* SmoothEQ3Version.h in Headers */,
|
||||
8BA05AAF072073D300365D66 /* AUBase.h in Headers */,
|
||||
8BA05AB1072073D300365D66 /* AUDispatch.h in Headers */,
|
||||
8BA05AB3072073D300365D66 /* AUInputElement.h in Headers */,
|
||||
8BA05AB5072073D300365D66 /* AUOutputElement.h in Headers */,
|
||||
8BA05AB8072073D300365D66 /* AUScopeElement.h in Headers */,
|
||||
8BA05ABA072073D300365D66 /* ComponentBase.h in Headers */,
|
||||
8BA05AC7072073D300365D66 /* AUEffectBase.h in Headers */,
|
||||
8BA05AD3072073D300365D66 /* AUBuffer.h in Headers */,
|
||||
8BA05AD5072073D300365D66 /* AUDebugDispatcher.h in Headers */,
|
||||
8BA05AD6072073D300365D66 /* AUInputFormatConverter.h in Headers */,
|
||||
8BA05AD7072073D300365D66 /* AUSilentTimeout.h in Headers */,
|
||||
8BA05AD8072073D300365D66 /* AUTimestampGenerator.h in Headers */,
|
||||
8BA05AE60720742100365D66 /* CAAudioChannelLayout.h in Headers */,
|
||||
8BA05AE80720742100365D66 /* CAMutex.h in Headers */,
|
||||
8BA05AEA0720742100365D66 /* CAStreamBasicDescription.h in Headers */,
|
||||
8BA05B080720754400365D66 /* CAAUParameter.h in Headers */,
|
||||
8BC6025C073B072D006C4272 /* SmoothEQ3.h in Headers */,
|
||||
3EEA126F089847F5002C6BFC /* CAVectorUnit.h in Headers */,
|
||||
3EEA1270089847F5002C6BFC /* CAVectorUnitTypes.h in Headers */,
|
||||
F7C347F10ECE5AF8008ADFB6 /* AUBaseHelper.h in Headers */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXHeadersBuildPhase section */
|
||||
|
||||
/* Begin PBXNativeTarget section */
|
||||
8D01CCC60486CAD60068D4B7 /* SmoothEQ3 */ = {
|
||||
isa = PBXNativeTarget;
|
||||
buildConfigurationList = 3E4BA243089833B7007656EC /* Build configuration list for PBXNativeTarget "SmoothEQ3" */;
|
||||
buildPhases = (
|
||||
8D01CCC70486CAD60068D4B7 /* Headers */,
|
||||
8D01CCC90486CAD60068D4B7 /* Resources */,
|
||||
8D01CCCB0486CAD60068D4B7 /* Sources */,
|
||||
8D01CCCD0486CAD60068D4B7 /* Frameworks */,
|
||||
8D01CCCF0486CAD60068D4B7 /* Rez */,
|
||||
);
|
||||
buildRules = (
|
||||
);
|
||||
dependencies = (
|
||||
);
|
||||
name = SmoothEQ3;
|
||||
productInstallPath = "$(HOME)/Library/Bundles";
|
||||
productName = SmoothEQ3;
|
||||
productReference = 8D01CCD20486CAD60068D4B7 /* SmoothEQ3.component */;
|
||||
productType = "com.apple.product-type.bundle";
|
||||
};
|
||||
/* End PBXNativeTarget section */
|
||||
|
||||
/* Begin PBXProject section */
|
||||
089C1669FE841209C02AAC07 /* Project object */ = {
|
||||
isa = PBXProject;
|
||||
buildConfigurationList = 3E4BA247089833B7007656EC /* Build configuration list for PBXProject "SmoothEQ3" */;
|
||||
compatibilityVersion = "Xcode 3.1";
|
||||
developmentRegion = English;
|
||||
hasScannedForEncodings = 1;
|
||||
knownRegions = (
|
||||
English,
|
||||
Japanese,
|
||||
French,
|
||||
German,
|
||||
);
|
||||
mainGroup = 089C166AFE841209C02AAC07 /* SmoothEQ3 */;
|
||||
projectDirPath = "";
|
||||
projectRoot = "";
|
||||
targets = (
|
||||
8D01CCC60486CAD60068D4B7 /* SmoothEQ3 */,
|
||||
);
|
||||
};
|
||||
/* End PBXProject section */
|
||||
|
||||
/* Begin PBXResourcesBuildPhase section */
|
||||
8D01CCC90486CAD60068D4B7 /* Resources */ = {
|
||||
isa = PBXResourcesBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
8D01CCCA0486CAD60068D4B7 /* InfoPlist.strings in Resources */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXResourcesBuildPhase section */
|
||||
|
||||
/* Begin PBXRezBuildPhase section */
|
||||
8D01CCCF0486CAD60068D4B7 /* Rez */ = {
|
||||
isa = PBXRezBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
8B4119B70749654200361ABE /* SmoothEQ3.r in Rez */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXRezBuildPhase section */
|
||||
|
||||
/* Begin PBXSourcesBuildPhase section */
|
||||
8D01CCCB0486CAD60068D4B7 /* Sources */ = {
|
||||
isa = PBXSourcesBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
8BA05A6B0720730100365D66 /* SmoothEQ3.cpp in Sources */,
|
||||
8BA05AAE072073D300365D66 /* AUBase.cpp in Sources */,
|
||||
8BA05AB0072073D300365D66 /* AUDispatch.cpp in Sources */,
|
||||
8BA05AB2072073D300365D66 /* AUInputElement.cpp in Sources */,
|
||||
8BA05AB4072073D300365D66 /* AUOutputElement.cpp in Sources */,
|
||||
8BA05AB7072073D300365D66 /* AUScopeElement.cpp in Sources */,
|
||||
8BA05AB9072073D300365D66 /* ComponentBase.cpp in Sources */,
|
||||
8BA05AC6072073D300365D66 /* AUEffectBase.cpp in Sources */,
|
||||
8BA05AD2072073D300365D66 /* AUBuffer.cpp in Sources */,
|
||||
8BA05AD4072073D300365D66 /* AUDebugDispatcher.cpp in Sources */,
|
||||
8BA05AE50720742100365D66 /* CAAudioChannelLayout.cpp in Sources */,
|
||||
8BA05AE70720742100365D66 /* CAMutex.cpp in Sources */,
|
||||
8BA05AE90720742100365D66 /* CAStreamBasicDescription.cpp in Sources */,
|
||||
8BA05B070720754400365D66 /* CAAUParameter.cpp in Sources */,
|
||||
3EEA126E089847F5002C6BFC /* CAVectorUnit.cpp in Sources */,
|
||||
F7C347F00ECE5AF8008ADFB6 /* AUBaseHelper.cpp in Sources */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXSourcesBuildPhase section */
|
||||
|
||||
/* Begin PBXVariantGroup section */
|
||||
089C167DFE841241C02AAC07 /* InfoPlist.strings */ = {
|
||||
isa = PBXVariantGroup;
|
||||
children = (
|
||||
089C167EFE841241C02AAC07 /* English */,
|
||||
);
|
||||
name = InfoPlist.strings;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
/* End PBXVariantGroup section */
|
||||
|
||||
/* Begin XCBuildConfiguration section */
|
||||
3E4BA244089833B7007656EC /* Debug */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
EXPORTED_SYMBOLS_FILE = SmoothEQ3.exp;
|
||||
GCC_ENABLE_FIX_AND_CONTINUE = YES;
|
||||
GCC_OPTIMIZATION_LEVEL = 0;
|
||||
GENERATE_PKGINFO_FILE = YES;
|
||||
INFOPLIST_FILE = Info.plist;
|
||||
INSTALL_PATH = "$(HOME)/Library/Audio/Plug-Ins/Components/";
|
||||
LIBRARY_STYLE = Bundle;
|
||||
OTHER_LDFLAGS = "-bundle";
|
||||
OTHER_REZFLAGS = "-d ppc_$ppc -d i386_$i386 -d ppc64_$ppc64 -d x86_64_$x86_64 -I /System/Library/Frameworks/CoreServices.framework/Frameworks/CarbonCore.framework/Versions/A/Headers -I \"$(DEVELOPER_DIR)/Examples/CoreAudio/AudioUnits/AUPublic/AUBase\"";
|
||||
PRODUCT_NAME = SmoothEQ3;
|
||||
WRAPPER_EXTENSION = component;
|
||||
};
|
||||
name = Debug;
|
||||
};
|
||||
3E4BA245089833B7007656EC /* Release */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
ARCHS = (
|
||||
ppc,
|
||||
i386,
|
||||
x86_64,
|
||||
);
|
||||
EXPORTED_SYMBOLS_FILE = SmoothEQ3.exp;
|
||||
GCC_ENABLE_FIX_AND_CONTINUE = NO;
|
||||
GCC_GENERATE_DEBUGGING_SYMBOLS = NO;
|
||||
GENERATE_PKGINFO_FILE = YES;
|
||||
INFOPLIST_FILE = Info.plist;
|
||||
INSTALL_PATH = "$(HOME)/Library/Audio/Plug-Ins/Components/";
|
||||
LIBRARY_STYLE = Bundle;
|
||||
MACOSX_DEPLOYMENT_TARGET = 10.4;
|
||||
OTHER_LDFLAGS = "-bundle";
|
||||
OTHER_REZFLAGS = "-d ppc_$ppc -d i386_$i386 -d x86_64_$x86_64 -I /System/Library/Frameworks/CoreServices.framework/Frameworks/CarbonCore.framework/Versions/A/Headers -I \"$(DEVELOPER_DIR)/Examples/CoreAudio/AudioUnits/AUPublic/AUBase\"";
|
||||
PRODUCT_NAME = SmoothEQ3;
|
||||
SDKROOT = macosx10.5;
|
||||
STRIP_INSTALLED_PRODUCT = YES;
|
||||
STRIP_STYLE = all;
|
||||
WRAPPER_EXTENSION = component;
|
||||
};
|
||||
name = Release;
|
||||
};
|
||||
3E4BA248089833B7007656EC /* Debug */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
ARCHS = "$(ARCHS_STANDARD_32_64_BIT)";
|
||||
COPY_PHASE_STRIP = NO;
|
||||
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
|
||||
GCC_C_LANGUAGE_STANDARD = c99;
|
||||
SDKROOT = macosx10.6;
|
||||
WARNING_CFLAGS = (
|
||||
"-Wmost",
|
||||
"-Wno-four-char-constants",
|
||||
"-Wno-unknown-pragmas",
|
||||
);
|
||||
};
|
||||
name = Debug;
|
||||
};
|
||||
3E4BA249089833B7007656EC /* Release */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
ARCHS = "$(ARCHS_STANDARD_32_64_BIT)";
|
||||
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
|
||||
GCC_C_LANGUAGE_STANDARD = c99;
|
||||
SDKROOT = macosx10.6;
|
||||
WARNING_CFLAGS = (
|
||||
"-Wmost",
|
||||
"-Wno-four-char-constants",
|
||||
"-Wno-unknown-pragmas",
|
||||
);
|
||||
};
|
||||
name = Release;
|
||||
};
|
||||
/* End XCBuildConfiguration section */
|
||||
|
||||
/* Begin XCConfigurationList section */
|
||||
3E4BA243089833B7007656EC /* Build configuration list for PBXNativeTarget "SmoothEQ3" */ = {
|
||||
isa = XCConfigurationList;
|
||||
buildConfigurations = (
|
||||
3E4BA244089833B7007656EC /* Debug */,
|
||||
3E4BA245089833B7007656EC /* Release */,
|
||||
);
|
||||
defaultConfigurationIsVisible = 0;
|
||||
defaultConfigurationName = Debug;
|
||||
};
|
||||
3E4BA247089833B7007656EC /* Build configuration list for PBXProject "SmoothEQ3" */ = {
|
||||
isa = XCConfigurationList;
|
||||
buildConfigurations = (
|
||||
3E4BA248089833B7007656EC /* Debug */,
|
||||
3E4BA249089833B7007656EC /* Release */,
|
||||
);
|
||||
defaultConfigurationIsVisible = 0;
|
||||
defaultConfigurationName = Debug;
|
||||
};
|
||||
/* End XCConfigurationList section */
|
||||
};
|
||||
rootObject = 089C1669FE841209C02AAC07 /* Project object */;
|
||||
}
|
||||
58
plugins/MacAU/SmoothEQ3/SmoothEQ3Version.h
Executable file
58
plugins/MacAU/SmoothEQ3/SmoothEQ3Version.h
Executable file
|
|
@ -0,0 +1,58 @@
|
|||
/*
|
||||
* File: SmoothEQ3Version.h
|
||||
*
|
||||
* Version: 1.0
|
||||
*
|
||||
* Created: 8/15/25
|
||||
*
|
||||
* Copyright: Copyright © 2025 Airwindows, Airwindows uses the MIT license
|
||||
*
|
||||
* Disclaimer: IMPORTANT: This Apple software is supplied to you by Apple Computer, Inc. ("Apple") in
|
||||
* consideration of your agreement to the following terms, and your use, installation, modification
|
||||
* or redistribution of this Apple software constitutes acceptance of these terms. If you do
|
||||
* not agree with these terms, please do not use, install, modify or redistribute this Apple
|
||||
* software.
|
||||
*
|
||||
* In consideration of your agreement to abide by the following terms, and subject to these terms,
|
||||
* Apple grants you a personal, non-exclusive license, under Apple's copyrights in this
|
||||
* original Apple software (the "Apple Software"), to use, reproduce, modify and redistribute the
|
||||
* Apple Software, with or without modifications, in source and/or binary forms; provided that if you
|
||||
* redistribute the Apple Software in its entirety and without modifications, you must retain this
|
||||
* notice and the following text and disclaimers in all such redistributions of the Apple Software.
|
||||
* Neither the name, trademarks, service marks or logos of Apple Computer, Inc. may be used to
|
||||
* endorse or promote products derived from the Apple Software without specific prior written
|
||||
* permission from Apple. Except as expressly stated in this notice, no other rights or
|
||||
* licenses, express or implied, are granted by Apple herein, including but not limited to any
|
||||
* patent rights that may be infringed by your derivative works or by other works in which the
|
||||
* Apple Software may be incorporated.
|
||||
*
|
||||
* The Apple Software is provided by Apple on an "AS IS" basis. APPLE MAKES NO WARRANTIES, EXPRESS OR
|
||||
* IMPLIED, INCLUDING WITHOUT LIMITATION THE IMPLIED WARRANTIES OF NON-INFRINGEMENT, MERCHANTABILITY
|
||||
* AND FITNESS FOR A PARTICULAR PURPOSE, REGARDING THE APPLE SOFTWARE OR ITS USE AND OPERATION ALONE
|
||||
* OR IN COMBINATION WITH YOUR PRODUCTS.
|
||||
*
|
||||
* IN NO EVENT SHALL APPLE BE LIABLE FOR ANY SPECIAL, INDIRECT, INCIDENTAL OR CONSEQUENTIAL
|
||||
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
|
||||
* OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) ARISING IN ANY WAY OUT OF THE USE,
|
||||
* REPRODUCTION, MODIFICATION AND/OR DISTRIBUTION OF THE APPLE SOFTWARE, HOWEVER CAUSED AND WHETHER
|
||||
* UNDER THEORY OF CONTRACT, TORT (INCLUDING NEGLIGENCE), STRICT LIABILITY OR OTHERWISE, EVEN
|
||||
* IF APPLE HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
*/
|
||||
#ifndef __SmoothEQ3Version_h__
|
||||
#define __SmoothEQ3Version_h__
|
||||
|
||||
|
||||
#ifdef DEBUG
|
||||
#define kSmoothEQ3Version 0xFFFFFFFF
|
||||
#else
|
||||
#define kSmoothEQ3Version 0x00010000
|
||||
#endif
|
||||
|
||||
//~~~~~~~~~~~~~~ Change!!! ~~~~~~~~~~~~~~~~~~~~~//
|
||||
#define SmoothEQ3_COMP_MANF 'Dthr'
|
||||
#define SmoothEQ3_COMP_SUBTYPE 'sme3'
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~//
|
||||
|
||||
#endif
|
||||
|
||||
16
plugins/MacAU/SmoothEQ3/version.plist
Executable file
16
plugins/MacAU/SmoothEQ3/version.plist
Executable file
|
|
@ -0,0 +1,16 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>BuildVersion</key>
|
||||
<string>3</string>
|
||||
<key>CFBundleShortVersionString</key>
|
||||
<string>1.0</string>
|
||||
<key>CFBundleVersion</key>
|
||||
<string>1.0</string>
|
||||
<key>ProjectName</key>
|
||||
<string>${EXECUTABLE_NAME}</string>
|
||||
<key>SourceVersion</key>
|
||||
<string>590000</string>
|
||||
</dict>
|
||||
</plist>
|
||||
47
plugins/MacSignedAU/SmoothEQ2/Info.plist
Executable file
47
plugins/MacSignedAU/SmoothEQ2/Info.plist
Executable file
|
|
@ -0,0 +1,47 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>AudioComponents</key>
|
||||
<array>
|
||||
<dict>
|
||||
<key>description</key>
|
||||
<string>${PRODUCT_NAME:identifier} AU</string>
|
||||
<key>factoryFunction</key>
|
||||
<string>${PRODUCT_NAME:identifier}Factory</string>
|
||||
<key>manufacturer</key>
|
||||
<string>Dthr</string>
|
||||
<key>name</key>
|
||||
<string>Airwindows: ${PRODUCT_NAME:identifier}</string>
|
||||
<key>subtype</key>
|
||||
<string>sme2</string>
|
||||
<key>type</key>
|
||||
<string>aufx</string>
|
||||
<key>version</key>
|
||||
<integer>65536</integer>
|
||||
</dict>
|
||||
</array>
|
||||
<key>CFBundleDevelopmentRegion</key>
|
||||
<string>English</string>
|
||||
<key>CFBundleExecutable</key>
|
||||
<string>${EXECUTABLE_NAME}</string>
|
||||
<key>CFBundleIconFile</key>
|
||||
<string></string>
|
||||
<key>CFBundleIdentifier</key>
|
||||
<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
|
||||
<key>CFBundleInfoDictionaryVersion</key>
|
||||
<string>6.0</string>
|
||||
<key>CFBundleName</key>
|
||||
<string>${PROJECTNAMEASIDENTIFIER}</string>
|
||||
<key>CFBundlePackageType</key>
|
||||
<string>BNDL</string>
|
||||
<key>CFBundleShortVersionString</key>
|
||||
<string>1.0</string>
|
||||
<key>CFBundleSignature</key>
|
||||
<string>DthX</string>
|
||||
<key>CFBundleVersion</key>
|
||||
<string>1.0</string>
|
||||
<key>CSResourcesFileMapped</key>
|
||||
<true/>
|
||||
</dict>
|
||||
</plist>
|
||||
446
plugins/MacSignedAU/SmoothEQ2/SmoothEQ2.cpp
Executable file
446
plugins/MacSignedAU/SmoothEQ2/SmoothEQ2.cpp
Executable file
|
|
@ -0,0 +1,446 @@
|
|||
/*
|
||||
* File: SmoothEQ2.cpp
|
||||
*
|
||||
* Version: 1.0
|
||||
*
|
||||
* Created: 8/14/25
|
||||
*
|
||||
* Copyright: Copyright © 2025 Airwindows, Airwindows uses the MIT license
|
||||
*
|
||||
* Disclaimer: IMPORTANT: This Apple software is supplied to you by Apple Computer, Inc. ("Apple") in
|
||||
* consideration of your agreement to the following terms, and your use, installation, modification
|
||||
* or redistribution of this Apple software constitutes acceptance of these terms. If you do
|
||||
* not agree with these terms, please do not use, install, modify or redistribute this Apple
|
||||
* software.
|
||||
*
|
||||
* In consideration of your agreement to abide by the following terms, and subject to these terms,
|
||||
* Apple grants you a personal, non-exclusive license, under Apple's copyrights in this
|
||||
* original Apple software (the "Apple Software"), to use, reproduce, modify and redistribute the
|
||||
* Apple Software, with or without modifications, in source and/or binary forms; provided that if you
|
||||
* redistribute the Apple Software in its entirety and without modifications, you must retain this
|
||||
* notice and the following text and disclaimers in all such redistributions of the Apple Software.
|
||||
* Neither the name, trademarks, service marks or logos of Apple Computer, Inc. may be used to
|
||||
* endorse or promote products derived from the Apple Software without specific prior written
|
||||
* permission from Apple. Except as expressly stated in this notice, no other rights or
|
||||
* licenses, express or implied, are granted by Apple herein, including but not limited to any
|
||||
* patent rights that may be infringed by your derivative works or by other works in which the
|
||||
* Apple Software may be incorporated.
|
||||
*
|
||||
* The Apple Software is provided by Apple on an "AS IS" basis. APPLE MAKES NO WARRANTIES, EXPRESS OR
|
||||
* IMPLIED, INCLUDING WITHOUT LIMITATION THE IMPLIED WARRANTIES OF NON-INFRINGEMENT, MERCHANTABILITY
|
||||
* AND FITNESS FOR A PARTICULAR PURPOSE, REGARDING THE APPLE SOFTWARE OR ITS USE AND OPERATION ALONE
|
||||
* OR IN COMBINATION WITH YOUR PRODUCTS.
|
||||
*
|
||||
* IN NO EVENT SHALL APPLE BE LIABLE FOR ANY SPECIAL, INDIRECT, INCIDENTAL OR CONSEQUENTIAL
|
||||
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
|
||||
* OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) ARISING IN ANY WAY OUT OF THE USE,
|
||||
* REPRODUCTION, MODIFICATION AND/OR DISTRIBUTION OF THE APPLE SOFTWARE, HOWEVER CAUSED AND WHETHER
|
||||
* UNDER THEORY OF CONTRACT, TORT (INCLUDING NEGLIGENCE), STRICT LIABILITY OR OTHERWISE, EVEN
|
||||
* IF APPLE HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
*/
|
||||
/*=============================================================================
|
||||
SmoothEQ2.cpp
|
||||
|
||||
=============================================================================*/
|
||||
#include "SmoothEQ2.h"
|
||||
|
||||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
AUDIOCOMPONENT_ENTRY(AUBaseFactory, SmoothEQ2)
|
||||
|
||||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
// SmoothEQ2::SmoothEQ2
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
SmoothEQ2::SmoothEQ2(AudioUnit component)
|
||||
: AUEffectBase(component)
|
||||
{
|
||||
CreateElements();
|
||||
Globals()->UseIndexedParameters(kNumberOfParameters);
|
||||
SetParameter(kParam_A, kDefaultValue_ParamA );
|
||||
SetParameter(kParam_B, kDefaultValue_ParamB );
|
||||
SetParameter(kParam_C, kDefaultValue_ParamC );
|
||||
SetParameter(kParam_D, kDefaultValue_ParamD );
|
||||
SetParameter(kParam_E, kDefaultValue_ParamE );
|
||||
SetParameter(kParam_F, kDefaultValue_ParamF );
|
||||
SetParameter(kParam_G, kDefaultValue_ParamG );
|
||||
SetParameter(kParam_H, kDefaultValue_ParamH );
|
||||
|
||||
#if AU_DEBUG_DISPATCHER
|
||||
mDebugDispatcher = new AUDebugDispatcher (this);
|
||||
#endif
|
||||
|
||||
}
|
||||
|
||||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
// SmoothEQ2::GetParameterValueStrings
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
ComponentResult SmoothEQ2::GetParameterValueStrings(AudioUnitScope inScope,
|
||||
AudioUnitParameterID inParameterID,
|
||||
CFArrayRef * outStrings)
|
||||
{
|
||||
|
||||
return kAudioUnitErr_InvalidProperty;
|
||||
}
|
||||
|
||||
|
||||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
// SmoothEQ2::GetParameterInfo
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
ComponentResult SmoothEQ2::GetParameterInfo(AudioUnitScope inScope,
|
||||
AudioUnitParameterID inParameterID,
|
||||
AudioUnitParameterInfo &outParameterInfo )
|
||||
{
|
||||
ComponentResult result = noErr;
|
||||
|
||||
outParameterInfo.flags = kAudioUnitParameterFlag_IsWritable
|
||||
| kAudioUnitParameterFlag_IsReadable;
|
||||
|
||||
if (inScope == kAudioUnitScope_Global) {
|
||||
switch(inParameterID)
|
||||
{
|
||||
case kParam_A:
|
||||
AUBase::FillInParameterName (outParameterInfo, kParameterAName, false);
|
||||
outParameterInfo.unit = kAudioUnitParameterUnit_Generic;
|
||||
outParameterInfo.minValue = 0.0;
|
||||
outParameterInfo.maxValue = 1.0;
|
||||
outParameterInfo.defaultValue = kDefaultValue_ParamA;
|
||||
break;
|
||||
case kParam_B:
|
||||
AUBase::FillInParameterName (outParameterInfo, kParameterBName, false);
|
||||
outParameterInfo.unit = kAudioUnitParameterUnit_Generic;
|
||||
outParameterInfo.minValue = 0.0;
|
||||
outParameterInfo.maxValue = 1.0;
|
||||
outParameterInfo.defaultValue = kDefaultValue_ParamB;
|
||||
break;
|
||||
case kParam_C:
|
||||
AUBase::FillInParameterName (outParameterInfo, kParameterCName, false);
|
||||
outParameterInfo.unit = kAudioUnitParameterUnit_Generic;
|
||||
outParameterInfo.minValue = 0.0;
|
||||
outParameterInfo.maxValue = 1.0;
|
||||
outParameterInfo.defaultValue = kDefaultValue_ParamC;
|
||||
break;
|
||||
case kParam_D:
|
||||
AUBase::FillInParameterName (outParameterInfo, kParameterDName, false);
|
||||
outParameterInfo.unit = kAudioUnitParameterUnit_Generic;
|
||||
outParameterInfo.minValue = 0.0;
|
||||
outParameterInfo.maxValue = 1.0;
|
||||
outParameterInfo.defaultValue = kDefaultValue_ParamD;
|
||||
break;
|
||||
case kParam_E:
|
||||
AUBase::FillInParameterName (outParameterInfo, kParameterEName, false);
|
||||
outParameterInfo.unit = kAudioUnitParameterUnit_Generic;
|
||||
outParameterInfo.minValue = 0.0;
|
||||
outParameterInfo.maxValue = 1.0;
|
||||
outParameterInfo.defaultValue = kDefaultValue_ParamE;
|
||||
break;
|
||||
case kParam_F:
|
||||
AUBase::FillInParameterName (outParameterInfo, kParameterFName, false);
|
||||
outParameterInfo.unit = kAudioUnitParameterUnit_Generic;
|
||||
outParameterInfo.minValue = 0.0;
|
||||
outParameterInfo.maxValue = 1.0;
|
||||
outParameterInfo.defaultValue = kDefaultValue_ParamF;
|
||||
break;
|
||||
case kParam_G:
|
||||
AUBase::FillInParameterName (outParameterInfo, kParameterGName, false);
|
||||
outParameterInfo.unit = kAudioUnitParameterUnit_Generic;
|
||||
outParameterInfo.minValue = 0.0;
|
||||
outParameterInfo.maxValue = 1.0;
|
||||
outParameterInfo.defaultValue = kDefaultValue_ParamG;
|
||||
break;
|
||||
case kParam_H:
|
||||
AUBase::FillInParameterName (outParameterInfo, kParameterHName, false);
|
||||
outParameterInfo.unit = kAudioUnitParameterUnit_Generic;
|
||||
outParameterInfo.minValue = 0.0;
|
||||
outParameterInfo.maxValue = 1.0;
|
||||
outParameterInfo.defaultValue = kDefaultValue_ParamH;
|
||||
break;
|
||||
default:
|
||||
result = kAudioUnitErr_InvalidParameter;
|
||||
break;
|
||||
}
|
||||
} else {
|
||||
result = kAudioUnitErr_InvalidParameter;
|
||||
}
|
||||
|
||||
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
// SmoothEQ2::GetPropertyInfo
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
ComponentResult SmoothEQ2::GetPropertyInfo (AudioUnitPropertyID inID,
|
||||
AudioUnitScope inScope,
|
||||
AudioUnitElement inElement,
|
||||
UInt32 & outDataSize,
|
||||
Boolean & outWritable)
|
||||
{
|
||||
return AUEffectBase::GetPropertyInfo (inID, inScope, inElement, outDataSize, outWritable);
|
||||
}
|
||||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
// SmoothEQ2::GetProperty
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
ComponentResult SmoothEQ2::GetProperty( AudioUnitPropertyID inID,
|
||||
AudioUnitScope inScope,
|
||||
AudioUnitElement inElement,
|
||||
void * outData )
|
||||
{
|
||||
return AUEffectBase::GetProperty (inID, inScope, inElement, outData);
|
||||
}
|
||||
|
||||
// SmoothEQ2::Initialize
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
ComponentResult SmoothEQ2::Initialize()
|
||||
{
|
||||
ComponentResult result = AUEffectBase::Initialize();
|
||||
if (result == noErr)
|
||||
Reset(kAudioUnitScope_Global, 0);
|
||||
return result;
|
||||
}
|
||||
|
||||
#pragma mark ____SmoothEQ2EffectKernel
|
||||
|
||||
|
||||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
// SmoothEQ2::SmoothEQ2Kernel::Reset()
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
void SmoothEQ2::SmoothEQ2Kernel::Reset()
|
||||
{
|
||||
for (int x = 0; x < biq_total; x++) {
|
||||
highA[x] = 0.0;
|
||||
highB[x] = 0.0;
|
||||
highC[x] = 0.0;
|
||||
midA[x] = 0.0;
|
||||
midB[x] = 0.0;
|
||||
midC[x] = 0.0;
|
||||
lowA[x] = 0.0;
|
||||
lowB[x] = 0.0;
|
||||
lowC[x] = 0.0;
|
||||
}
|
||||
highIIR = 0.0;
|
||||
midIIR = 0.0;
|
||||
lowIIR = 0.0;
|
||||
fpd = 1.0; while (fpd < 16386) fpd = rand()*UINT32_MAX;
|
||||
}
|
||||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
// SmoothEQ2::SmoothEQ2Kernel::Process
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
void SmoothEQ2::SmoothEQ2Kernel::Process( const Float32 *inSourceP,
|
||||
Float32 *inDestP,
|
||||
UInt32 inFramesToProcess,
|
||||
UInt32 inNumChannels,
|
||||
bool &ioSilence )
|
||||
{
|
||||
UInt32 nSampleFrames = inFramesToProcess;
|
||||
const Float32 *sourceP = inSourceP;
|
||||
Float32 *destP = inDestP;
|
||||
|
||||
double trebleGain = (GetParameter( kParam_A )-0.5)*2.0;
|
||||
trebleGain = 1.0+(trebleGain*fabs(trebleGain)*fabs(trebleGain));
|
||||
double highmidGain = (GetParameter( kParam_B )-0.5)*2.0;
|
||||
highmidGain = 1.0+(highmidGain*fabs(highmidGain)*fabs(highmidGain));
|
||||
double lowmidGain = (GetParameter( kParam_C )-0.5)*2.0;
|
||||
lowmidGain = 1.0+(lowmidGain*fabs(lowmidGain)*fabs(lowmidGain));
|
||||
double bassGain = (GetParameter( kParam_D )-0.5)*2.0;
|
||||
bassGain = 1.0+(bassGain*fabs(bassGain)*fabs(bassGain));
|
||||
|
||||
double trebleRef = GetParameter( kParam_E )-0.5;
|
||||
double highmidRef = GetParameter( kParam_F )-0.5;
|
||||
double lowmidRef = GetParameter( kParam_G )-0.5;
|
||||
double bassRef = GetParameter( kParam_H )-0.5;
|
||||
double highF = 0.75 + ((trebleRef+trebleRef+trebleRef+highmidRef)*0.125);
|
||||
double bassF = 0.25 + ((lowmidRef+bassRef+bassRef+bassRef)*0.125);
|
||||
double midF = (highF*0.5) + (bassF*0.5) + ((highmidRef+lowmidRef)*0.125);
|
||||
|
||||
double highQ = fmax(fmin(1.0+(highmidRef-trebleRef),4.0),0.125);
|
||||
double midQ = fmax(fmin(1.0+(lowmidRef-highmidRef),4.0),0.125);
|
||||
double lowQ = fmax(fmin(1.0+(bassRef-lowmidRef),4.0),0.125);
|
||||
|
||||
highA[biq_freq] = ((pow(highF,3)*20000.0)/GetSampleRate());
|
||||
highC[biq_freq] = highB[biq_freq] = highA[biq_freq] = fmax(fmin(highA[biq_freq],0.4999),0.00025);
|
||||
double highFreq = pow(highF,3)*20000.0;
|
||||
double omega = 2.0*M_PI*(highFreq/GetSampleRate());
|
||||
double K = 2.0-cos(omega);
|
||||
double highCoef = -sqrt((K*K)-1.0)+K;
|
||||
highA[biq_reso] = 2.24697960 * highQ;
|
||||
highB[biq_reso] = 0.80193774 * highQ;
|
||||
highC[biq_reso] = 0.55495813 * highQ;
|
||||
|
||||
midA[biq_freq] = ((pow(midF,3)*20000.0)/GetSampleRate());
|
||||
midC[biq_freq] = midB[biq_freq] = midA[biq_freq] = fmax(fmin(midA[biq_freq],0.4999),0.00025);
|
||||
double midFreq = pow(midF,3)*20000.0;
|
||||
omega = 2.0*M_PI*(midFreq/GetSampleRate());
|
||||
K = 2.0-cos(omega);
|
||||
double midCoef = -sqrt((K*K)-1.0)+K;
|
||||
midA[biq_reso] = 2.24697960 * midQ;
|
||||
midB[biq_reso] = 0.80193774 * midQ;
|
||||
midC[biq_reso] = 0.55495813 * midQ;
|
||||
|
||||
lowA[biq_freq] = ((pow(bassF,3)*20000.0)/GetSampleRate());
|
||||
lowC[biq_freq] = lowB[biq_freq] = lowA[biq_freq] = fmax(fmin(lowA[biq_freq],0.4999),0.00025);
|
||||
double lowFreq = pow(bassF,3)*20000.0;
|
||||
omega = 2.0*M_PI*(lowFreq/GetSampleRate());
|
||||
K = 2.0-cos(omega);
|
||||
double lowCoef = -sqrt((K*K)-1.0)+K;
|
||||
lowA[biq_reso] = 2.24697960 * lowQ;
|
||||
lowB[biq_reso] = 0.80193774 * lowQ;
|
||||
lowC[biq_reso] = 0.55495813 * lowQ;
|
||||
|
||||
K = tan(M_PI * highA[biq_freq]);
|
||||
double norm = 1.0 / (1.0 + K / highA[biq_reso] + K * K);
|
||||
highA[biq_a0] = K * K * norm;
|
||||
highA[biq_a1] = 2.0 * highA[biq_a0];
|
||||
highA[biq_a2] = highA[biq_a0];
|
||||
highA[biq_b1] = 2.0 * (K * K - 1.0) * norm;
|
||||
highA[biq_b2] = (1.0 - K / highA[biq_reso] + K * K) * norm;
|
||||
K = tan(M_PI * highB[biq_freq]);
|
||||
norm = 1.0 / (1.0 + K / highB[biq_reso] + K * K);
|
||||
highB[biq_a0] = K * K * norm;
|
||||
highB[biq_a1] = 2.0 * highB[biq_a0];
|
||||
highB[biq_a2] = highB[biq_a0];
|
||||
highB[biq_b1] = 2.0 * (K * K - 1.0) * norm;
|
||||
highB[biq_b2] = (1.0 - K / highB[biq_reso] + K * K) * norm;
|
||||
K = tan(M_PI * highC[biq_freq]);
|
||||
norm = 1.0 / (1.0 + K / highC[biq_reso] + K * K);
|
||||
highC[biq_a0] = K * K * norm;
|
||||
highC[biq_a1] = 2.0 * highC[biq_a0];
|
||||
highC[biq_a2] = highC[biq_a0];
|
||||
highC[biq_b1] = 2.0 * (K * K - 1.0) * norm;
|
||||
highC[biq_b2] = (1.0 - K / highC[biq_reso] + K * K) * norm;
|
||||
|
||||
K = tan(M_PI * midA[biq_freq]);
|
||||
norm = 1.0 / (1.0 + K / midA[biq_reso] + K * K);
|
||||
midA[biq_a0] = K * K * norm;
|
||||
midA[biq_a1] = 2.0 * midA[biq_a0];
|
||||
midA[biq_a2] = midA[biq_a0];
|
||||
midA[biq_b1] = 2.0 * (K * K - 1.0) * norm;
|
||||
midA[biq_b2] = (1.0 - K / midA[biq_reso] + K * K) * norm;
|
||||
K = tan(M_PI * midB[biq_freq]);
|
||||
norm = 1.0 / (1.0 + K / midB[biq_reso] + K * K);
|
||||
midB[biq_a0] = K * K * norm;
|
||||
midB[biq_a1] = 2.0 * midB[biq_a0];
|
||||
midB[biq_a2] = midB[biq_a0];
|
||||
midB[biq_b1] = 2.0 * (K * K - 1.0) * norm;
|
||||
midB[biq_b2] = (1.0 - K / midB[biq_reso] + K * K) * norm;
|
||||
K = tan(M_PI * midC[biq_freq]);
|
||||
norm = 1.0 / (1.0 + K / midC[biq_reso] + K * K);
|
||||
midC[biq_a0] = K * K * norm;
|
||||
midC[biq_a1] = 2.0 * midC[biq_a0];
|
||||
midC[biq_a2] = midC[biq_a0];
|
||||
midC[biq_b1] = 2.0 * (K * K - 1.0) * norm;
|
||||
midC[biq_b2] = (1.0 - K / midC[biq_reso] + K * K) * norm;
|
||||
|
||||
K = tan(M_PI * lowA[biq_freq]);
|
||||
norm = 1.0 / (1.0 + K / lowA[biq_reso] + K * K);
|
||||
lowA[biq_a0] = K * K * norm;
|
||||
lowA[biq_a1] = 2.0 * lowA[biq_a0];
|
||||
lowA[biq_a2] = lowA[biq_a0];
|
||||
lowA[biq_b1] = 2.0 * (K * K - 1.0) * norm;
|
||||
lowA[biq_b2] = (1.0 - K / lowA[biq_reso] + K * K) * norm;
|
||||
K = tan(M_PI * lowB[biq_freq]);
|
||||
norm = 1.0 / (1.0 + K / lowB[biq_reso] + K * K);
|
||||
lowB[biq_a0] = K * K * norm;
|
||||
lowB[biq_a1] = 2.0 * lowB[biq_a0];
|
||||
lowB[biq_a2] = lowB[biq_a0];
|
||||
lowB[biq_b1] = 2.0 * (K * K - 1.0) * norm;
|
||||
lowB[biq_b2] = (1.0 - K / lowB[biq_reso] + K * K) * norm;
|
||||
K = tan(M_PI * lowC[biq_freq]);
|
||||
norm = 1.0 / (1.0 + K / lowC[biq_reso] + K * K);
|
||||
lowC[biq_a0] = K * K * norm;
|
||||
lowC[biq_a1] = 2.0 * lowC[biq_a0];
|
||||
lowC[biq_a2] = lowC[biq_a0];
|
||||
lowC[biq_b1] = 2.0 * (K * K - 1.0) * norm;
|
||||
lowC[biq_b2] = (1.0 - K / lowC[biq_reso] + K * K) * norm;
|
||||
|
||||
while (nSampleFrames-- > 0) {
|
||||
double inputSampleL = *sourceP;
|
||||
if (fabs(inputSampleL)<1.18e-23) inputSampleL = fpd * 1.18e-17;
|
||||
|
||||
double trebleL = inputSampleL;
|
||||
double outSample = (trebleL * highA[biq_a0]) + highA[biq_sL1];
|
||||
highA[biq_sL1] = (trebleL * highA[biq_a1]) - (outSample * highA[biq_b1]) + highA[biq_sL2];
|
||||
highA[biq_sL2] = (trebleL * highA[biq_a2]) - (outSample * highA[biq_b2]);
|
||||
double highmidL = outSample; trebleL -= highmidL;
|
||||
|
||||
outSample = (highmidL * midA[biq_a0]) + midA[biq_sL1];
|
||||
midA[biq_sL1] = (highmidL * midA[biq_a1]) - (outSample * midA[biq_b1]) + midA[biq_sL2];
|
||||
midA[biq_sL2] = (highmidL * midA[biq_a2]) - (outSample * midA[biq_b2]);
|
||||
double lowmidL = outSample; highmidL -= lowmidL;
|
||||
|
||||
outSample = (lowmidL * lowA[biq_a0]) + lowA[biq_sL1];
|
||||
lowA[biq_sL1] = (lowmidL * lowA[biq_a1]) - (outSample * lowA[biq_b1]) + lowA[biq_sL2];
|
||||
lowA[biq_sL2] = (lowmidL * lowA[biq_a2]) - (outSample * lowA[biq_b2]);
|
||||
double bassL = outSample; lowmidL -= bassL;
|
||||
|
||||
trebleL = (bassL*bassGain) + (lowmidL*lowmidGain) + (highmidL*highmidGain) + (trebleL*trebleGain);
|
||||
//first stage of three crossovers
|
||||
|
||||
outSample = (trebleL * highB[biq_a0]) + highB[biq_sL1];
|
||||
highB[biq_sL1] = (trebleL * highB[biq_a1]) - (outSample * highB[biq_b1]) + highB[biq_sL2];
|
||||
highB[biq_sL2] = (trebleL * highB[biq_a2]) - (outSample * highB[biq_b2]);
|
||||
highmidL = outSample; trebleL -= highmidL;
|
||||
|
||||
outSample = (highmidL * midB[biq_a0]) + midB[biq_sL1];
|
||||
midB[biq_sL1] = (highmidL * midB[biq_a1]) - (outSample * midB[biq_b1]) + midB[biq_sL2];
|
||||
midB[biq_sL2] = (highmidL * midB[biq_a2]) - (outSample * midB[biq_b2]);
|
||||
lowmidL = outSample; highmidL -= lowmidL;
|
||||
|
||||
outSample = (lowmidL * lowB[biq_a0]) + lowB[biq_sL1];
|
||||
lowB[biq_sL1] = (lowmidL * lowB[biq_a1]) - (outSample * lowB[biq_b1]) + lowB[biq_sL2];
|
||||
lowB[biq_sL2] = (lowmidL * lowB[biq_a2]) - (outSample * lowB[biq_b2]);
|
||||
bassL = outSample; lowmidL -= bassL;
|
||||
|
||||
trebleL = (bassL*bassGain) + (lowmidL*lowmidGain) + (highmidL*highmidGain) + (trebleL*trebleGain);
|
||||
//second stage of three crossovers
|
||||
|
||||
outSample = (trebleL * highC[biq_a0]) + highC[biq_sL1];
|
||||
highC[biq_sL1] = (trebleL * highC[biq_a1]) - (outSample * highC[biq_b1]) + highC[biq_sL2];
|
||||
highC[biq_sL2] = (trebleL * highC[biq_a2]) - (outSample * highC[biq_b2]);
|
||||
highmidL = outSample; trebleL -= highmidL;
|
||||
|
||||
outSample = (highmidL * midC[biq_a0]) + midC[biq_sL1];
|
||||
midC[biq_sL1] = (highmidL * midC[biq_a1]) - (outSample * midC[biq_b1]) + midC[biq_sL2];
|
||||
midC[biq_sL2] = (highmidL * midC[biq_a2]) - (outSample * midC[biq_b2]);
|
||||
lowmidL = outSample; highmidL -= lowmidL;
|
||||
|
||||
outSample = (lowmidL * lowC[biq_a0]) + lowC[biq_sL1];
|
||||
lowC[biq_sL1] = (lowmidL * lowC[biq_a1]) - (outSample * lowC[biq_b1]) + lowC[biq_sL2];
|
||||
lowC[biq_sL2] = (lowmidL * lowC[biq_a2]) - (outSample * lowC[biq_b2]);
|
||||
bassL = outSample; lowmidL -= bassL;
|
||||
|
||||
trebleL = (bassL*bassGain) + (lowmidL*lowmidGain) + (highmidL*highmidGain) + (trebleL*trebleGain);
|
||||
//third stage of three crossovers
|
||||
|
||||
highIIR = (highIIR*highCoef) + (trebleL*(1.0-highCoef));
|
||||
highmidL = highIIR; trebleL -= highmidL;
|
||||
|
||||
midIIR = (midIIR*midCoef) + (highmidL*(1.0-midCoef));
|
||||
lowmidL = midIIR; highmidL -= lowmidL;
|
||||
|
||||
lowIIR = (lowIIR*lowCoef) + (lowmidL*(1.0-lowCoef));
|
||||
bassL = lowIIR; lowmidL -= bassL;
|
||||
|
||||
inputSampleL = (bassL*bassGain) + (lowmidL*lowmidGain) + (highmidL*highmidGain) + (trebleL*trebleGain);
|
||||
//fourth stage of three crossovers is the exponential filters
|
||||
|
||||
//begin 32 bit floating point dither
|
||||
int expon; frexpf((float)inputSampleL, &expon);
|
||||
fpd ^= fpd << 13; fpd ^= fpd >> 17; fpd ^= fpd << 5;
|
||||
inputSampleL += ((double(fpd)-uint32_t(0x7fffffff)) * 5.5e-36l * pow(2,expon+62));
|
||||
//end 32 bit floating point dither
|
||||
|
||||
*destP = inputSampleL;
|
||||
|
||||
sourceP += inNumChannels; destP += inNumChannels;
|
||||
}
|
||||
}
|
||||
|
||||
2
plugins/MacSignedAU/SmoothEQ2/SmoothEQ2.exp
Executable file
2
plugins/MacSignedAU/SmoothEQ2/SmoothEQ2.exp
Executable file
|
|
@ -0,0 +1,2 @@
|
|||
_SmoothEQ2Entry
|
||||
_SmoothEQ2Factory
|
||||
184
plugins/MacSignedAU/SmoothEQ2/SmoothEQ2.h
Executable file
184
plugins/MacSignedAU/SmoothEQ2/SmoothEQ2.h
Executable file
|
|
@ -0,0 +1,184 @@
|
|||
/*
|
||||
* File: SmoothEQ2.h
|
||||
*
|
||||
* Version: 1.0
|
||||
*
|
||||
* Created: 8/14/25
|
||||
*
|
||||
* Copyright: Copyright © 2025 Airwindows, Airwindows uses the MIT license
|
||||
*
|
||||
* Disclaimer: IMPORTANT: This Apple software is supplied to you by Apple Computer, Inc. ("Apple") in
|
||||
* consideration of your agreement to the following terms, and your use, installation, modification
|
||||
* or redistribution of this Apple software constitutes acceptance of these terms. If you do
|
||||
* not agree with these terms, please do not use, install, modify or redistribute this Apple
|
||||
* software.
|
||||
*
|
||||
* In consideration of your agreement to abide by the following terms, and subject to these terms,
|
||||
* Apple grants you a personal, non-exclusive license, under Apple's copyrights in this
|
||||
* original Apple software (the "Apple Software"), to use, reproduce, modify and redistribute the
|
||||
* Apple Software, with or without modifications, in source and/or binary forms; provided that if you
|
||||
* redistribute the Apple Software in its entirety and without modifications, you must retain this
|
||||
* notice and the following text and disclaimers in all such redistributions of the Apple Software.
|
||||
* Neither the name, trademarks, service marks or logos of Apple Computer, Inc. may be used to
|
||||
* endorse or promote products derived from the Apple Software without specific prior written
|
||||
* permission from Apple. Except as expressly stated in this notice, no other rights or
|
||||
* licenses, express or implied, are granted by Apple herein, including but not limited to any
|
||||
* patent rights that may be infringed by your derivative works or by other works in which the
|
||||
* Apple Software may be incorporated.
|
||||
*
|
||||
* The Apple Software is provided by Apple on an "AS IS" basis. APPLE MAKES NO WARRANTIES, EXPRESS OR
|
||||
* IMPLIED, INCLUDING WITHOUT LIMITATION THE IMPLIED WARRANTIES OF NON-INFRINGEMENT, MERCHANTABILITY
|
||||
* AND FITNESS FOR A PARTICULAR PURPOSE, REGARDING THE APPLE SOFTWARE OR ITS USE AND OPERATION ALONE
|
||||
* OR IN COMBINATION WITH YOUR PRODUCTS.
|
||||
*
|
||||
* IN NO EVENT SHALL APPLE BE LIABLE FOR ANY SPECIAL, INDIRECT, INCIDENTAL OR CONSEQUENTIAL
|
||||
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
|
||||
* OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) ARISING IN ANY WAY OUT OF THE USE,
|
||||
* REPRODUCTION, MODIFICATION AND/OR DISTRIBUTION OF THE APPLE SOFTWARE, HOWEVER CAUSED AND WHETHER
|
||||
* UNDER THEORY OF CONTRACT, TORT (INCLUDING NEGLIGENCE), STRICT LIABILITY OR OTHERWISE, EVEN
|
||||
* IF APPLE HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
*/
|
||||
#include "AUEffectBase.h"
|
||||
#include "SmoothEQ2Version.h"
|
||||
|
||||
#if AU_DEBUG_DISPATCHER
|
||||
#include "AUDebugDispatcher.h"
|
||||
#endif
|
||||
|
||||
|
||||
#ifndef __SmoothEQ2_h__
|
||||
#define __SmoothEQ2_h__
|
||||
|
||||
|
||||
#pragma mark ____SmoothEQ2 Parameters
|
||||
|
||||
// parameters
|
||||
static const float kDefaultValue_ParamA = 0.5;
|
||||
static const float kDefaultValue_ParamB = 0.5;
|
||||
static const float kDefaultValue_ParamC = 0.5;
|
||||
static const float kDefaultValue_ParamD = 0.5;
|
||||
static const float kDefaultValue_ParamE = 0.5;
|
||||
static const float kDefaultValue_ParamF = 0.5;
|
||||
static const float kDefaultValue_ParamG = 0.5;
|
||||
static const float kDefaultValue_ParamH = 0.5;
|
||||
|
||||
static CFStringRef kParameterAName = CFSTR("High");
|
||||
static CFStringRef kParameterBName = CFSTR("HMid");
|
||||
static CFStringRef kParameterCName = CFSTR("LMid");
|
||||
static CFStringRef kParameterDName = CFSTR("Bass");
|
||||
static CFStringRef kParameterEName = CFSTR("HighF");
|
||||
static CFStringRef kParameterFName = CFSTR("HMidF");
|
||||
static CFStringRef kParameterGName = CFSTR("LMidF");
|
||||
static CFStringRef kParameterHName = CFSTR("BassF");
|
||||
|
||||
enum {
|
||||
kParam_A =0,
|
||||
kParam_B =1,
|
||||
kParam_C =2,
|
||||
kParam_D =3,
|
||||
kParam_E =4,
|
||||
kParam_F =5,
|
||||
kParam_G =6,
|
||||
kParam_H =7,
|
||||
//Add your parameters here...
|
||||
kNumberOfParameters=8
|
||||
};
|
||||
|
||||
#pragma mark ____SmoothEQ2
|
||||
class SmoothEQ2 : public AUEffectBase
|
||||
{
|
||||
public:
|
||||
SmoothEQ2(AudioUnit component);
|
||||
#if AU_DEBUG_DISPATCHER
|
||||
virtual ~SmoothEQ2 () { delete mDebugDispatcher; }
|
||||
#endif
|
||||
|
||||
virtual AUKernelBase * NewKernel() { return new SmoothEQ2Kernel(this); }
|
||||
|
||||
virtual ComponentResult GetParameterValueStrings(AudioUnitScope inScope,
|
||||
AudioUnitParameterID inParameterID,
|
||||
CFArrayRef * outStrings);
|
||||
|
||||
virtual ComponentResult GetParameterInfo(AudioUnitScope inScope,
|
||||
AudioUnitParameterID inParameterID,
|
||||
AudioUnitParameterInfo &outParameterInfo);
|
||||
|
||||
virtual ComponentResult GetPropertyInfo(AudioUnitPropertyID inID,
|
||||
AudioUnitScope inScope,
|
||||
AudioUnitElement inElement,
|
||||
UInt32 & outDataSize,
|
||||
Boolean & outWritable );
|
||||
|
||||
virtual ComponentResult GetProperty(AudioUnitPropertyID inID,
|
||||
AudioUnitScope inScope,
|
||||
AudioUnitElement inElement,
|
||||
void * outData);
|
||||
|
||||
virtual ComponentResult Initialize();
|
||||
virtual bool SupportsTail () { return true; }
|
||||
virtual Float64 GetTailTime() {return (1.0/GetSampleRate())*0.0;} //in SECONDS! gsr * a number = in samples
|
||||
virtual Float64 GetLatency() {return (1.0/GetSampleRate())*0.0;} // in SECONDS! gsr * a number = in samples
|
||||
|
||||
/*! @method Version */
|
||||
virtual ComponentResult Version() { return kSmoothEQ2Version; }
|
||||
|
||||
|
||||
|
||||
protected:
|
||||
class SmoothEQ2Kernel : public AUKernelBase // most of the real work happens here
|
||||
{
|
||||
public:
|
||||
SmoothEQ2Kernel(AUEffectBase *inAudioUnit )
|
||||
: AUKernelBase(inAudioUnit)
|
||||
{
|
||||
}
|
||||
|
||||
// *Required* overides for the process method for this effect
|
||||
// processes one channel of interleaved samples
|
||||
virtual void Process( const Float32 *inSourceP,
|
||||
Float32 *inDestP,
|
||||
UInt32 inFramesToProcess,
|
||||
UInt32 inNumChannels,
|
||||
bool &ioSilence);
|
||||
|
||||
virtual void Reset();
|
||||
|
||||
private:
|
||||
enum {
|
||||
biq_freq,
|
||||
biq_reso,
|
||||
biq_a0,
|
||||
biq_a1,
|
||||
biq_a2,
|
||||
biq_b1,
|
||||
biq_b2,
|
||||
biq_sL1,
|
||||
biq_sL2,
|
||||
biq_sR1,
|
||||
biq_sR2,
|
||||
biq_total
|
||||
}; //coefficient interpolating bessel filter, stereo
|
||||
double highA[biq_total];
|
||||
double highB[biq_total];
|
||||
double highC[biq_total];
|
||||
double highIIR;
|
||||
|
||||
double midA[biq_total];
|
||||
double midB[biq_total];
|
||||
double midC[biq_total];
|
||||
double midIIR;
|
||||
|
||||
double lowA[biq_total];
|
||||
double lowB[biq_total];
|
||||
double lowC[biq_total];
|
||||
double lowIIR;
|
||||
|
||||
uint32_t fpd;
|
||||
};
|
||||
};
|
||||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
|
||||
#endif
|
||||
61
plugins/MacSignedAU/SmoothEQ2/SmoothEQ2.r
Executable file
61
plugins/MacSignedAU/SmoothEQ2/SmoothEQ2.r
Executable file
|
|
@ -0,0 +1,61 @@
|
|||
/*
|
||||
* File: SmoothEQ2.r
|
||||
*
|
||||
* Version: 1.0
|
||||
*
|
||||
* Created: 8/14/25
|
||||
*
|
||||
* Copyright: Copyright © 2025 Airwindows, Airwindows uses the MIT license
|
||||
*
|
||||
* Disclaimer: IMPORTANT: This Apple software is supplied to you by Apple Computer, Inc. ("Apple") in
|
||||
* consideration of your agreement to the following terms, and your use, installation, modification
|
||||
* or redistribution of this Apple software constitutes acceptance of these terms. If you do
|
||||
* not agree with these terms, please do not use, install, modify or redistribute this Apple
|
||||
* software.
|
||||
*
|
||||
* In consideration of your agreement to abide by the following terms, and subject to these terms,
|
||||
* Apple grants you a personal, non-exclusive license, under Apple's copyrights in this
|
||||
* original Apple software (the "Apple Software"), to use, reproduce, modify and redistribute the
|
||||
* Apple Software, with or without modifications, in source and/or binary forms; provided that if you
|
||||
* redistribute the Apple Software in its entirety and without modifications, you must retain this
|
||||
* notice and the following text and disclaimers in all such redistributions of the Apple Software.
|
||||
* Neither the name, trademarks, service marks or logos of Apple Computer, Inc. may be used to
|
||||
* endorse or promote products derived from the Apple Software without specific prior written
|
||||
* permission from Apple. Except as expressly stated in this notice, no other rights or
|
||||
* licenses, express or implied, are granted by Apple herein, including but not limited to any
|
||||
* patent rights that may be infringed by your derivative works or by other works in which the
|
||||
* Apple Software may be incorporated.
|
||||
*
|
||||
* The Apple Software is provided by Apple on an "AS IS" basis. APPLE MAKES NO WARRANTIES, EXPRESS OR
|
||||
* IMPLIED, INCLUDING WITHOUT LIMITATION THE IMPLIED WARRANTIES OF NON-INFRINGEMENT, MERCHANTABILITY
|
||||
* AND FITNESS FOR A PARTICULAR PURPOSE, REGARDING THE APPLE SOFTWARE OR ITS USE AND OPERATION ALONE
|
||||
* OR IN COMBINATION WITH YOUR PRODUCTS.
|
||||
*
|
||||
* IN NO EVENT SHALL APPLE BE LIABLE FOR ANY SPECIAL, INDIRECT, INCIDENTAL OR CONSEQUENTIAL
|
||||
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
|
||||
* OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) ARISING IN ANY WAY OUT OF THE USE,
|
||||
* REPRODUCTION, MODIFICATION AND/OR DISTRIBUTION OF THE APPLE SOFTWARE, HOWEVER CAUSED AND WHETHER
|
||||
* UNDER THEORY OF CONTRACT, TORT (INCLUDING NEGLIGENCE), STRICT LIABILITY OR OTHERWISE, EVEN
|
||||
* IF APPLE HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
*/
|
||||
#include <AudioUnit/AudioUnit.r>
|
||||
|
||||
#include "SmoothEQ2Version.h"
|
||||
|
||||
// Note that resource IDs must be spaced 2 apart for the 'STR ' name and description
|
||||
#define kAudioUnitResID_SmoothEQ2 1000
|
||||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ SmoothEQ2~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
#define RES_ID kAudioUnitResID_SmoothEQ2
|
||||
#define COMP_TYPE kAudioUnitType_Effect
|
||||
#define COMP_SUBTYPE SmoothEQ2_COMP_SUBTYPE
|
||||
#define COMP_MANUF SmoothEQ2_COMP_MANF
|
||||
|
||||
#define VERSION kSmoothEQ2Version
|
||||
#define NAME "Airwindows: SmoothEQ2"
|
||||
#define DESCRIPTION "SmoothEQ2 AU"
|
||||
#define ENTRY_POINT "SmoothEQ2Entry"
|
||||
|
||||
#include "AUResources.r"
|
||||
1358
plugins/MacSignedAU/SmoothEQ2/SmoothEQ2.xcodeproj/christopherjohnson.mode1v3
Executable file
1358
plugins/MacSignedAU/SmoothEQ2/SmoothEQ2.xcodeproj/christopherjohnson.mode1v3
Executable file
File diff suppressed because it is too large
Load diff
166
plugins/MacSignedAU/SmoothEQ2/SmoothEQ2.xcodeproj/christopherjohnson.pbxuser
Executable file
166
plugins/MacSignedAU/SmoothEQ2/SmoothEQ2.xcodeproj/christopherjohnson.pbxuser
Executable file
|
|
@ -0,0 +1,166 @@
|
|||
// !$*UTF8*$!
|
||||
{
|
||||
089C1669FE841209C02AAC07 /* Project object */ = {
|
||||
activeBuildConfigurationName = Release;
|
||||
activeTarget = 8D01CCC60486CAD60068D4B7 /* SmoothEQ2 */;
|
||||
codeSenseManager = 8BD3CCB9148830B20062E48C /* Code sense */;
|
||||
perUserDictionary = {
|
||||
PBXConfiguration.PBXFileTableDataSource3.PBXFileTableDataSource = {
|
||||
PBXFileTableDataSourceColumnSortingDirectionKey = "-1";
|
||||
PBXFileTableDataSourceColumnSortingKey = PBXFileDataSource_Filename_ColumnID;
|
||||
PBXFileTableDataSourceColumnWidthsKey = (
|
||||
20,
|
||||
10,
|
||||
20,
|
||||
48,
|
||||
43,
|
||||
43,
|
||||
20,
|
||||
);
|
||||
PBXFileTableDataSourceColumnsKey = (
|
||||
PBXFileDataSource_FiletypeID,
|
||||
PBXFileDataSource_Filename_ColumnID,
|
||||
PBXFileDataSource_Built_ColumnID,
|
||||
PBXFileDataSource_ObjectSize_ColumnID,
|
||||
PBXFileDataSource_Errors_ColumnID,
|
||||
PBXFileDataSource_Warnings_ColumnID,
|
||||
PBXFileDataSource_Target_ColumnID,
|
||||
);
|
||||
};
|
||||
PBXConfiguration.PBXTargetDataSource.PBXTargetDataSource = {
|
||||
PBXFileTableDataSourceColumnSortingDirectionKey = "-1";
|
||||
PBXFileTableDataSourceColumnSortingKey = PBXFileDataSource_Filename_ColumnID;
|
||||
PBXFileTableDataSourceColumnWidthsKey = (
|
||||
20,
|
||||
252,
|
||||
60,
|
||||
20,
|
||||
48,
|
||||
43,
|
||||
43,
|
||||
);
|
||||
PBXFileTableDataSourceColumnsKey = (
|
||||
PBXFileDataSource_FiletypeID,
|
||||
PBXFileDataSource_Filename_ColumnID,
|
||||
PBXTargetDataSource_PrimaryAttribute,
|
||||
PBXFileDataSource_Built_ColumnID,
|
||||
PBXFileDataSource_ObjectSize_ColumnID,
|
||||
PBXFileDataSource_Errors_ColumnID,
|
||||
PBXFileDataSource_Warnings_ColumnID,
|
||||
);
|
||||
};
|
||||
PBXPerProjectTemplateStateSaveDate = 777106752;
|
||||
PBXWorkspaceStateSaveDate = 777106752;
|
||||
};
|
||||
perUserProjectItems = {
|
||||
8BC8CE942E51B54800FAAE1C /* PBXTextBookmark */ = 8BC8CE942E51B54800FAAE1C /* PBXTextBookmark */;
|
||||
8BC8CE952E51B54800FAAE1C /* PBXTextBookmark */ = 8BC8CE952E51B54800FAAE1C /* PBXTextBookmark */;
|
||||
8BC8CEC42E51BCA900FAAE1C /* PBXTextBookmark */ = 8BC8CEC42E51BCA900FAAE1C /* PBXTextBookmark */;
|
||||
8BEA4A062E4FC78C003D2CCC /* PlistBookmark */ = 8BEA4A062E4FC78C003D2CCC /* PlistBookmark */;
|
||||
8BEA4A072E4FC78C003D2CCC /* PBXTextBookmark */ = 8BEA4A072E4FC78C003D2CCC /* PBXTextBookmark */;
|
||||
};
|
||||
sourceControlManager = 8BD3CCB8148830B20062E48C /* Source Control */;
|
||||
userBuildSettings = {
|
||||
};
|
||||
};
|
||||
8BA05A660720730100365D66 /* SmoothEQ2.cpp */ = {
|
||||
uiCtxt = {
|
||||
sepNavIntBoundsRect = "{{0, 0}, {1101, 8370}}";
|
||||
sepNavSelRange = "{16284, 3370}";
|
||||
sepNavVisRange = "{18464, 1545}";
|
||||
sepNavWindowFrame = "{{624, 38}, {1148, 840}}";
|
||||
};
|
||||
};
|
||||
8BA05A670720730100365D66 /* SmoothEQ2.exp */ = {
|
||||
uiCtxt = {
|
||||
sepNavIntBoundsRect = "{{0, 0}, {272, 432}}";
|
||||
sepNavSelRange = "{0, 0}";
|
||||
sepNavVisRange = "{0, 16}";
|
||||
};
|
||||
};
|
||||
8BA05A690720730100365D66 /* SmoothEQ2Version.h */ = {
|
||||
uiCtxt = {
|
||||
sepNavIntBoundsRect = "{{0, 0}, {1056, 1080}}";
|
||||
sepNavSelRange = "{2906, 0}";
|
||||
sepNavVisRange = "{0, 0}";
|
||||
sepNavWindowFrame = "{{38, 41}, {862, 811}}";
|
||||
};
|
||||
};
|
||||
8BC6025B073B072D006C4272 /* SmoothEQ2.h */ = {
|
||||
uiCtxt = {
|
||||
sepNavIntBoundsRect = "{{0, 0}, {1146, 3402}}";
|
||||
sepNavSelRange = "{5789, 642}";
|
||||
sepNavVisRange = "{5809, 423}";
|
||||
sepNavWindowFrame = "{{690, 81}, {750, 771}}";
|
||||
};
|
||||
};
|
||||
8BC8CE942E51B54800FAAE1C /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 8BA05A670720730100365D66 /* SmoothEQ2.exp */;
|
||||
name = "SmoothEQ2.exp: 1";
|
||||
rLen = 0;
|
||||
rLoc = 0;
|
||||
rType = 0;
|
||||
vrLen = 16;
|
||||
vrLoc = 0;
|
||||
};
|
||||
8BC8CE952E51B54800FAAE1C /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 8BC6025B073B072D006C4272 /* SmoothEQ2.h */;
|
||||
name = "SmoothEQ2.h: 147";
|
||||
rLen = 642;
|
||||
rLoc = 5789;
|
||||
rType = 0;
|
||||
vrLen = 423;
|
||||
vrLoc = 5809;
|
||||
};
|
||||
8BC8CEC42E51BCA900FAAE1C /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 8BC6025B073B072D006C4272 /* SmoothEQ2.h */;
|
||||
name = "SmoothEQ2.h: 147";
|
||||
rLen = 642;
|
||||
rLoc = 5789;
|
||||
rType = 0;
|
||||
vrLen = 423;
|
||||
vrLoc = 5809;
|
||||
};
|
||||
8BD3CCB8148830B20062E48C /* Source Control */ = {
|
||||
isa = PBXSourceControlManager;
|
||||
fallbackIsa = XCSourceControlManager;
|
||||
isSCMEnabled = 0;
|
||||
scmConfiguration = {
|
||||
repositoryNamesForRoots = {
|
||||
"" = "";
|
||||
};
|
||||
};
|
||||
};
|
||||
8BD3CCB9148830B20062E48C /* Code sense */ = {
|
||||
isa = PBXCodeSenseManager;
|
||||
indexTemplatePath = "";
|
||||
};
|
||||
8BEA4A062E4FC78C003D2CCC /* PlistBookmark */ = {
|
||||
isa = PlistBookmark;
|
||||
fRef = 8D01CCD10486CAD60068D4B7 /* Info.plist */;
|
||||
fallbackIsa = PBXBookmark;
|
||||
isK = 0;
|
||||
kPath = (
|
||||
CFBundleName,
|
||||
);
|
||||
name = /Users/christopherjohnson/Desktop/SmoothEQ2/Info.plist;
|
||||
rLen = 0;
|
||||
rLoc = 9223372036854775808;
|
||||
};
|
||||
8BEA4A072E4FC78C003D2CCC /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 8BA05A690720730100365D66 /* SmoothEQ2Version.h */;
|
||||
name = "SmoothEQ2Version.h: 54";
|
||||
rLen = 0;
|
||||
rLoc = 2906;
|
||||
rType = 0;
|
||||
vrLen = 0;
|
||||
vrLoc = 0;
|
||||
};
|
||||
8D01CCC60486CAD60068D4B7 /* SmoothEQ2 */ = {
|
||||
activeExec = 0;
|
||||
};
|
||||
}
|
||||
1596
plugins/MacSignedAU/SmoothEQ2/SmoothEQ2.xcodeproj/christopherjohnson.perspectivev3
Executable file
1596
plugins/MacSignedAU/SmoothEQ2/SmoothEQ2.xcodeproj/christopherjohnson.perspectivev3
Executable file
File diff suppressed because it is too large
Load diff
965
plugins/MacSignedAU/SmoothEQ2/SmoothEQ2.xcodeproj/project.pbxproj
Executable file
965
plugins/MacSignedAU/SmoothEQ2/SmoothEQ2.xcodeproj/project.pbxproj
Executable file
|
|
@ -0,0 +1,965 @@
|
|||
// !$*UTF8*$!
|
||||
{
|
||||
archiveVersion = 1;
|
||||
classes = {
|
||||
};
|
||||
objectVersion = 45;
|
||||
objects = {
|
||||
|
||||
/* Begin PBXBuildFile section */
|
||||
8B300BD62E5278A0006F740B /* CAExtAudioFile.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300B4E2E5278A0006F740B /* CAExtAudioFile.h */; };
|
||||
8B300BD72E5278A0006F740B /* CACFMachPort.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300B4F2E5278A0006F740B /* CACFMachPort.h */; };
|
||||
8B300BD82E5278A0006F740B /* CABool.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300B502E5278A0006F740B /* CABool.h */; };
|
||||
8B300BD92E5278A0006F740B /* CAComponent.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300B512E5278A0006F740B /* CAComponent.cpp */; };
|
||||
8B300BDA2E5278A0006F740B /* CADebugger.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300B522E5278A0006F740B /* CADebugger.h */; };
|
||||
8B300BDB2E5278A0006F740B /* CACFNumber.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300B532E5278A0006F740B /* CACFNumber.cpp */; };
|
||||
8B300BDC2E5278A0006F740B /* CAGuard.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300B542E5278A0006F740B /* CAGuard.h */; };
|
||||
8B300BDD2E5278A0006F740B /* CAAtomic.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300B552E5278A0006F740B /* CAAtomic.h */; };
|
||||
8B300BDE2E5278A0006F740B /* CAStreamBasicDescription.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300B562E5278A0006F740B /* CAStreamBasicDescription.h */; };
|
||||
8B300BDF2E5278A0006F740B /* CACFObject.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300B572E5278A0006F740B /* CACFObject.h */; };
|
||||
8B300BE02E5278A0006F740B /* CAStreamRangedDescription.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300B582E5278A0006F740B /* CAStreamRangedDescription.h */; };
|
||||
8B300BE12E5278A0006F740B /* CATokenMap.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300B592E5278A0006F740B /* CATokenMap.h */; };
|
||||
8B300BE22E5278A0006F740B /* CAComponent.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300B5A2E5278A0006F740B /* CAComponent.h */; };
|
||||
8B300BE32E5278A0006F740B /* CAAudioBufferList.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300B5B2E5278A0006F740B /* CAAudioBufferList.h */; };
|
||||
8B300BE42E5278A0006F740B /* CAAudioUnit.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300B5C2E5278A0006F740B /* CAAudioUnit.h */; };
|
||||
8B300BE52E5278A0006F740B /* CAAUParameter.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300B5D2E5278A0006F740B /* CAAUParameter.h */; };
|
||||
8B300BE62E5278A0006F740B /* CAException.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300B5E2E5278A0006F740B /* CAException.h */; };
|
||||
8B300BE72E5278A0006F740B /* CAAUProcessor.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300B5F2E5278A0006F740B /* CAAUProcessor.cpp */; };
|
||||
8B300BE82E5278A0006F740B /* CAAUProcessor.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300B602E5278A0006F740B /* CAAUProcessor.h */; };
|
||||
8B300BE92E5278A0006F740B /* CAProcess.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300B612E5278A0006F740B /* CAProcess.h */; };
|
||||
8B300BEA2E5278A0006F740B /* CACFDictionary.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300B622E5278A0006F740B /* CACFDictionary.h */; };
|
||||
8B300BEB2E5278A0006F740B /* CAPThread.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300B632E5278A0006F740B /* CAPThread.h */; };
|
||||
8B300BEC2E5278A0006F740B /* CAAUParameter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300B642E5278A0006F740B /* CAAUParameter.cpp */; };
|
||||
8B300BED2E5278A0006F740B /* CAAudioTimeStamp.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300B652E5278A0006F740B /* CAAudioTimeStamp.h */; };
|
||||
8B300BEE2E5278A0006F740B /* CAFilePathUtils.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300B662E5278A0006F740B /* CAFilePathUtils.cpp */; };
|
||||
8B300BEF2E5278A0006F740B /* CAAudioValueRange.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300B672E5278A0006F740B /* CAAudioValueRange.h */; };
|
||||
8B300BF02E5278A0006F740B /* CAVectorUnitTypes.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300B682E5278A0006F740B /* CAVectorUnitTypes.h */; };
|
||||
8B300BF12E5278A0006F740B /* CAAudioChannelLayoutObject.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300B692E5278A0006F740B /* CAAudioChannelLayoutObject.cpp */; };
|
||||
8B300BF22E5278A0006F740B /* CAGuard.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300B6A2E5278A0006F740B /* CAGuard.cpp */; };
|
||||
8B300BF32E5278A0006F740B /* CACFNumber.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300B6B2E5278A0006F740B /* CACFNumber.h */; };
|
||||
8B300BF42E5278A0006F740B /* CACFDistributedNotification.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300B6C2E5278A0006F740B /* CACFDistributedNotification.cpp */; };
|
||||
8B300BF52E5278A0006F740B /* CACFString.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300B6D2E5278A0006F740B /* CACFString.h */; };
|
||||
8B300BF62E5278A0006F740B /* CAAUMIDIMapManager.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300B6E2E5278A0006F740B /* CAAUMIDIMapManager.cpp */; };
|
||||
8B300BF72E5278A0006F740B /* CAComponentDescription.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300B6F2E5278A0006F740B /* CAComponentDescription.cpp */; };
|
||||
8B300BF82E5278A0006F740B /* CAHostTimeBase.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300B702E5278A0006F740B /* CAHostTimeBase.h */; };
|
||||
8B300BF92E5278A0006F740B /* CADebugMacros.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300B712E5278A0006F740B /* CADebugMacros.cpp */; };
|
||||
8B300BFA2E5278A0006F740B /* CAAudioFileFormats.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300B722E5278A0006F740B /* CAAudioFileFormats.h */; };
|
||||
8B300BFB2E5278A0006F740B /* CAAUMIDIMapManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300B732E5278A0006F740B /* CAAUMIDIMapManager.h */; };
|
||||
8B300BFC2E5278A0006F740B /* CACFDictionary.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300B742E5278A0006F740B /* CACFDictionary.cpp */; };
|
||||
8B300BFD2E5278A0006F740B /* CAMutex.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300B752E5278A0006F740B /* CAMutex.h */; };
|
||||
8B300BFE2E5278A0006F740B /* CACFString.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300B762E5278A0006F740B /* CACFString.cpp */; };
|
||||
8B300BFF2E5278A0006F740B /* CASettingsStorage.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300B772E5278A0006F740B /* CASettingsStorage.h */; };
|
||||
8B300C002E5278A0006F740B /* CADebugPrintf.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300B782E5278A0006F740B /* CADebugPrintf.h */; };
|
||||
8B300C012E5278A0006F740B /* CAXException.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300B792E5278A0006F740B /* CAXException.cpp */; };
|
||||
8B300C022E5278A0006F740B /* CAAUMIDIMap.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300B7A2E5278A0006F740B /* CAAUMIDIMap.h */; };
|
||||
8B300C032E5278A0006F740B /* AUParamInfo.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300B7B2E5278A0006F740B /* AUParamInfo.h */; };
|
||||
8B300C042E5278A0006F740B /* CABitOperations.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300B7C2E5278A0006F740B /* CABitOperations.h */; };
|
||||
8B300C052E5278A0006F740B /* CACFPreferences.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300B7D2E5278A0006F740B /* CACFPreferences.cpp */; };
|
||||
8B300C062E5278A0006F740B /* CABundleLocker.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300B7E2E5278A0006F740B /* CABundleLocker.h */; };
|
||||
8B300C072E5278A0006F740B /* CAPropertyAddress.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300B7F2E5278A0006F740B /* CAPropertyAddress.h */; };
|
||||
8B300C082E5278A0006F740B /* CAXException.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300B802E5278A0006F740B /* CAXException.h */; };
|
||||
8B300C092E5278A0006F740B /* CAAudioChannelLayout.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300B812E5278A0006F740B /* CAAudioChannelLayout.cpp */; };
|
||||
8B300C0A2E5278A0006F740B /* CAThreadSafeList.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300B822E5278A0006F740B /* CAThreadSafeList.h */; };
|
||||
8B300C0B2E5278A0006F740B /* CAAudioUnitOutputCapturer.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300B832E5278A0006F740B /* CAAudioUnitOutputCapturer.h */; };
|
||||
8B300C0C2E5278A0006F740B /* AUParamInfo.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300B842E5278A0006F740B /* AUParamInfo.cpp */; };
|
||||
8B300C0D2E5278A0006F740B /* CASharedLibrary.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300B852E5278A0006F740B /* CASharedLibrary.cpp */; };
|
||||
8B300C0E2E5278A0006F740B /* CAAUMIDIMap.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300B862E5278A0006F740B /* CAAUMIDIMap.cpp */; };
|
||||
8B300C0F2E5278A0006F740B /* CALogMacros.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300B872E5278A0006F740B /* CALogMacros.h */; };
|
||||
8B300C102E5278A0006F740B /* CACFMessagePort.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300B882E5278A0006F740B /* CACFMessagePort.cpp */; };
|
||||
8B300C112E5278A0006F740B /* CARingBuffer.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300B892E5278A0006F740B /* CARingBuffer.h */; };
|
||||
8B300C122E5278A0006F740B /* AUOutputBL.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300B8A2E5278A0006F740B /* AUOutputBL.cpp */; };
|
||||
8B300C132E5278A0006F740B /* CABufferList.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300B8B2E5278A0006F740B /* CABufferList.h */; };
|
||||
8B300C142E5278A0006F740B /* CASharedLibrary.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300B8C2E5278A0006F740B /* CASharedLibrary.h */; };
|
||||
8B300C152E5278A0006F740B /* CACFData.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300B8D2E5278A0006F740B /* CACFData.h */; };
|
||||
8B300C162E5278A0006F740B /* CAStreamRangedDescription.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300B8E2E5278A0006F740B /* CAStreamRangedDescription.cpp */; };
|
||||
8B300C172E5278A0006F740B /* CAPThread.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300B8F2E5278A0006F740B /* CAPThread.cpp */; };
|
||||
8B300C182E5278A0006F740B /* CAAutoDisposer.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300B902E5278A0006F740B /* CAAutoDisposer.h */; };
|
||||
8B300C192E5278A0006F740B /* CACFPreferences.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300B912E5278A0006F740B /* CACFPreferences.h */; };
|
||||
8B300C1A2E5278A0006F740B /* CAVectorUnit.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300B922E5278A0006F740B /* CAVectorUnit.cpp */; };
|
||||
8B300C1B2E5278A0006F740B /* CAComponentDescription.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300B932E5278A0006F740B /* CAComponentDescription.h */; };
|
||||
8B300C1C2E5278A0006F740B /* CADebugMacros.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300B942E5278A0006F740B /* CADebugMacros.h */; };
|
||||
8B300C1D2E5278A0006F740B /* AUOutputBL.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300B952E5278A0006F740B /* AUOutputBL.h */; };
|
||||
8B300C1E2E5278A0006F740B /* CADebugPrintf.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300B962E5278A0006F740B /* CADebugPrintf.cpp */; };
|
||||
8B300C1F2E5278A0006F740B /* CARingBuffer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300B972E5278A0006F740B /* CARingBuffer.cpp */; };
|
||||
8B300C202E5278A0006F740B /* CACFPlugIn.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300B982E5278A0006F740B /* CACFPlugIn.h */; };
|
||||
8B300C212E5278A0006F740B /* CASettingsStorage.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300B992E5278A0006F740B /* CASettingsStorage.cpp */; };
|
||||
8B300C222E5278A0006F740B /* CAMixMap.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300B9A2E5278A0006F740B /* CAMixMap.h */; };
|
||||
8B300C232E5278A0006F740B /* CACFDistributedNotification.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300B9B2E5278A0006F740B /* CACFDistributedNotification.h */; };
|
||||
8B300C242E5278A0006F740B /* CAFilePathUtils.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300B9C2E5278A0006F740B /* CAFilePathUtils.h */; };
|
||||
8B300C252E5278A0006F740B /* CATink.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300B9D2E5278A0006F740B /* CATink.h */; };
|
||||
8B300C262E5278A0006F740B /* CAStreamBasicDescription.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300B9E2E5278A0006F740B /* CAStreamBasicDescription.cpp */; };
|
||||
8B300C272E5278A0006F740B /* CAAudioChannelLayout.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300B9F2E5278A0006F740B /* CAAudioChannelLayout.h */; };
|
||||
8B300C282E5278A0006F740B /* CAProcess.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300BA02E5278A0006F740B /* CAProcess.cpp */; };
|
||||
8B300C292E5278A0006F740B /* CAHostTimeBase.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300BA12E5278A0006F740B /* CAHostTimeBase.cpp */; };
|
||||
8B300C2A2E5278A0006F740B /* CAPersistence.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300BA22E5278A0006F740B /* CAPersistence.cpp */; };
|
||||
8B300C2B2E5278A0006F740B /* CAAudioBufferList.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300BA32E5278A0006F740B /* CAAudioBufferList.cpp */; };
|
||||
8B300C2C2E5278A0006F740B /* CAAudioTimeStamp.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300BA42E5278A0006F740B /* CAAudioTimeStamp.cpp */; };
|
||||
8B300C2D2E5278A0006F740B /* CAVectorUnit.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300BA52E5278A0006F740B /* CAVectorUnit.h */; };
|
||||
8B300C2E2E5278A0006F740B /* CAByteOrder.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300BA62E5278A0006F740B /* CAByteOrder.h */; };
|
||||
8B300C2F2E5278A0006F740B /* CACFArray.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300BA72E5278A0006F740B /* CACFArray.h */; };
|
||||
8B300C302E5278A0006F740B /* CAAtomicStack.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300BA82E5278A0006F740B /* CAAtomicStack.h */; };
|
||||
8B300C312E5278A0006F740B /* CAReferenceCounted.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300BA92E5278A0006F740B /* CAReferenceCounted.h */; };
|
||||
8B300C322E5278A0006F740B /* CACFMachPort.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300BAA2E5278A0006F740B /* CACFMachPort.cpp */; };
|
||||
8B300C332E5278A0006F740B /* CABufferList.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300BAB2E5278A0006F740B /* CABufferList.cpp */; };
|
||||
8B300C342E5278A0006F740B /* CAMutex.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300BAC2E5278A0006F740B /* CAMutex.cpp */; };
|
||||
8B300C352E5278A0006F740B /* CADebugger.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300BAD2E5278A0006F740B /* CADebugger.cpp */; };
|
||||
8B300C362E5278A0006F740B /* CABundleLocker.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300BAE2E5278A0006F740B /* CABundleLocker.cpp */; };
|
||||
8B300C372E5278A0006F740B /* CAAudioFileFormats.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300BAF2E5278A0006F740B /* CAAudioFileFormats.cpp */; };
|
||||
8B300C382E5278A0006F740B /* CAMath.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300BB02E5278A0006F740B /* CAMath.h */; };
|
||||
8B300C392E5278A0006F740B /* CACFArray.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300BB12E5278A0006F740B /* CACFArray.cpp */; };
|
||||
8B300C3A2E5278A0006F740B /* CACFMessagePort.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300BB22E5278A0006F740B /* CACFMessagePort.h */; };
|
||||
8B300C3B2E5278A0006F740B /* CAAudioValueRange.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300BB32E5278A0006F740B /* CAAudioValueRange.cpp */; };
|
||||
8B300C3C2E5278A0006F740B /* CAAudioUnit.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300BB42E5278A0006F740B /* CAAudioUnit.cpp */; };
|
||||
8B300C3D2E5278A0006F740B /* AUViewLocalizedStringKeys.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300BB82E5278A0006F740B /* AUViewLocalizedStringKeys.h */; };
|
||||
8B300C3E2E5278A0006F740B /* ComponentBase.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300BBA2E5278A0006F740B /* ComponentBase.cpp */; };
|
||||
8B300C3F2E5278A0006F740B /* AUScopeElement.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300BBB2E5278A0006F740B /* AUScopeElement.cpp */; };
|
||||
8B300C402E5278A0006F740B /* ComponentBase.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300BBC2E5278A0006F740B /* ComponentBase.h */; };
|
||||
8B300C412E5278A0006F740B /* AUBase.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300BBD2E5278A0006F740B /* AUBase.cpp */; };
|
||||
8B300C422E5278A0006F740B /* AUInputElement.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300BBE2E5278A0006F740B /* AUInputElement.h */; };
|
||||
8B300C432E5278A0006F740B /* AUBase.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300BBF2E5278A0006F740B /* AUBase.h */; };
|
||||
8B300C442E5278A0006F740B /* AUPlugInDispatch.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300BC02E5278A0006F740B /* AUPlugInDispatch.h */; };
|
||||
8B300C452E5278A0006F740B /* AUDispatch.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300BC12E5278A0006F740B /* AUDispatch.h */; };
|
||||
8B300C462E5278A0006F740B /* AUOutputElement.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300BC22E5278A0006F740B /* AUOutputElement.cpp */; };
|
||||
8B300C482E5278A0006F740B /* AUPlugInDispatch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300BC42E5278A0006F740B /* AUPlugInDispatch.cpp */; };
|
||||
8B300C492E5278A0006F740B /* AUOutputElement.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300BC52E5278A0006F740B /* AUOutputElement.h */; };
|
||||
8B300C4A2E5278A0006F740B /* AUDispatch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300BC62E5278A0006F740B /* AUDispatch.cpp */; };
|
||||
8B300C4B2E5278A0006F740B /* AUScopeElement.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300BC72E5278A0006F740B /* AUScopeElement.h */; };
|
||||
8B300C4C2E5278A0006F740B /* AUInputElement.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300BC82E5278A0006F740B /* AUInputElement.cpp */; };
|
||||
8B300C4D2E5278A0006F740B /* AUEffectBase.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300BCA2E5278A0006F740B /* AUEffectBase.cpp */; };
|
||||
8B300C4E2E5278A0006F740B /* AUEffectBase.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300BCB2E5278A0006F740B /* AUEffectBase.h */; };
|
||||
8B300C4F2E5278A0006F740B /* AUTimestampGenerator.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300BCD2E5278A0006F740B /* AUTimestampGenerator.h */; };
|
||||
8B300C502E5278A0006F740B /* AUBaseHelper.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300BCE2E5278A0006F740B /* AUBaseHelper.cpp */; };
|
||||
8B300C512E5278A0006F740B /* AUSilentTimeout.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300BCF2E5278A0006F740B /* AUSilentTimeout.h */; };
|
||||
8B300C522E5278A0006F740B /* AUInputFormatConverter.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300BD02E5278A0006F740B /* AUInputFormatConverter.h */; };
|
||||
8B300C532E5278A0006F740B /* AUTimestampGenerator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300BD12E5278A0006F740B /* AUTimestampGenerator.cpp */; };
|
||||
8B300C542E5278A0006F740B /* AUBuffer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300BD22E5278A0006F740B /* AUBuffer.cpp */; };
|
||||
8B300C552E5278A0006F740B /* AUMIDIDefs.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300BD32E5278A0006F740B /* AUMIDIDefs.h */; };
|
||||
8B300C562E5278A0006F740B /* AUBuffer.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300BD42E5278A0006F740B /* AUBuffer.h */; };
|
||||
8B300C572E5278A0006F740B /* AUBaseHelper.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300BD52E5278A0006F740B /* AUBaseHelper.h */; };
|
||||
8BA05A6B0720730100365D66 /* SmoothEQ2.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8BA05A660720730100365D66 /* SmoothEQ2.cpp */; };
|
||||
8BA05A6E0720730100365D66 /* SmoothEQ2Version.h in Headers */ = {isa = PBXBuildFile; fileRef = 8BA05A690720730100365D66 /* SmoothEQ2Version.h */; };
|
||||
8BA05AFC072074E100365D66 /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8BA05AF9072074E100365D66 /* AudioToolbox.framework */; };
|
||||
8BA05AFD072074E100365D66 /* AudioUnit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8BA05AFA072074E100365D66 /* AudioUnit.framework */; };
|
||||
8BA05B02072074F900365D66 /* CoreServices.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8BA05B01072074F900365D66 /* CoreServices.framework */; };
|
||||
8BC6025C073B072D006C4272 /* SmoothEQ2.h in Headers */ = {isa = PBXBuildFile; fileRef = 8BC6025B073B072D006C4272 /* SmoothEQ2.h */; };
|
||||
8D01CCCA0486CAD60068D4B7 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 089C167DFE841241C02AAC07 /* InfoPlist.strings */; };
|
||||
/* End PBXBuildFile section */
|
||||
|
||||
/* Begin PBXFileReference section */
|
||||
8B300B4E2E5278A0006F740B /* CAExtAudioFile.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAExtAudioFile.h; sourceTree = "<group>"; };
|
||||
8B300B4F2E5278A0006F740B /* CACFMachPort.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CACFMachPort.h; sourceTree = "<group>"; };
|
||||
8B300B502E5278A0006F740B /* CABool.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CABool.h; sourceTree = "<group>"; };
|
||||
8B300B512E5278A0006F740B /* CAComponent.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAComponent.cpp; sourceTree = "<group>"; };
|
||||
8B300B522E5278A0006F740B /* CADebugger.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CADebugger.h; sourceTree = "<group>"; };
|
||||
8B300B532E5278A0006F740B /* CACFNumber.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CACFNumber.cpp; sourceTree = "<group>"; };
|
||||
8B300B542E5278A0006F740B /* CAGuard.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAGuard.h; sourceTree = "<group>"; };
|
||||
8B300B552E5278A0006F740B /* CAAtomic.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAAtomic.h; sourceTree = "<group>"; };
|
||||
8B300B562E5278A0006F740B /* CAStreamBasicDescription.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAStreamBasicDescription.h; sourceTree = "<group>"; };
|
||||
8B300B572E5278A0006F740B /* CACFObject.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CACFObject.h; sourceTree = "<group>"; };
|
||||
8B300B582E5278A0006F740B /* CAStreamRangedDescription.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAStreamRangedDescription.h; sourceTree = "<group>"; };
|
||||
8B300B592E5278A0006F740B /* CATokenMap.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CATokenMap.h; sourceTree = "<group>"; };
|
||||
8B300B5A2E5278A0006F740B /* CAComponent.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAComponent.h; sourceTree = "<group>"; };
|
||||
8B300B5B2E5278A0006F740B /* CAAudioBufferList.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAAudioBufferList.h; sourceTree = "<group>"; };
|
||||
8B300B5C2E5278A0006F740B /* CAAudioUnit.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAAudioUnit.h; sourceTree = "<group>"; };
|
||||
8B300B5D2E5278A0006F740B /* CAAUParameter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAAUParameter.h; sourceTree = "<group>"; };
|
||||
8B300B5E2E5278A0006F740B /* CAException.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAException.h; sourceTree = "<group>"; };
|
||||
8B300B5F2E5278A0006F740B /* CAAUProcessor.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAAUProcessor.cpp; sourceTree = "<group>"; };
|
||||
8B300B602E5278A0006F740B /* CAAUProcessor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAAUProcessor.h; sourceTree = "<group>"; };
|
||||
8B300B612E5278A0006F740B /* CAProcess.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAProcess.h; sourceTree = "<group>"; };
|
||||
8B300B622E5278A0006F740B /* CACFDictionary.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CACFDictionary.h; sourceTree = "<group>"; };
|
||||
8B300B632E5278A0006F740B /* CAPThread.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAPThread.h; sourceTree = "<group>"; };
|
||||
8B300B642E5278A0006F740B /* CAAUParameter.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAAUParameter.cpp; sourceTree = "<group>"; };
|
||||
8B300B652E5278A0006F740B /* CAAudioTimeStamp.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAAudioTimeStamp.h; sourceTree = "<group>"; };
|
||||
8B300B662E5278A0006F740B /* CAFilePathUtils.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAFilePathUtils.cpp; sourceTree = "<group>"; };
|
||||
8B300B672E5278A0006F740B /* CAAudioValueRange.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAAudioValueRange.h; sourceTree = "<group>"; };
|
||||
8B300B682E5278A0006F740B /* CAVectorUnitTypes.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAVectorUnitTypes.h; sourceTree = "<group>"; };
|
||||
8B300B692E5278A0006F740B /* CAAudioChannelLayoutObject.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAAudioChannelLayoutObject.cpp; sourceTree = "<group>"; };
|
||||
8B300B6A2E5278A0006F740B /* CAGuard.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAGuard.cpp; sourceTree = "<group>"; };
|
||||
8B300B6B2E5278A0006F740B /* CACFNumber.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CACFNumber.h; sourceTree = "<group>"; };
|
||||
8B300B6C2E5278A0006F740B /* CACFDistributedNotification.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CACFDistributedNotification.cpp; sourceTree = "<group>"; };
|
||||
8B300B6D2E5278A0006F740B /* CACFString.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CACFString.h; sourceTree = "<group>"; };
|
||||
8B300B6E2E5278A0006F740B /* CAAUMIDIMapManager.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAAUMIDIMapManager.cpp; sourceTree = "<group>"; };
|
||||
8B300B6F2E5278A0006F740B /* CAComponentDescription.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAComponentDescription.cpp; sourceTree = "<group>"; };
|
||||
8B300B702E5278A0006F740B /* CAHostTimeBase.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAHostTimeBase.h; sourceTree = "<group>"; };
|
||||
8B300B712E5278A0006F740B /* CADebugMacros.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CADebugMacros.cpp; sourceTree = "<group>"; };
|
||||
8B300B722E5278A0006F740B /* CAAudioFileFormats.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAAudioFileFormats.h; sourceTree = "<group>"; };
|
||||
8B300B732E5278A0006F740B /* CAAUMIDIMapManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAAUMIDIMapManager.h; sourceTree = "<group>"; };
|
||||
8B300B742E5278A0006F740B /* CACFDictionary.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CACFDictionary.cpp; sourceTree = "<group>"; };
|
||||
8B300B752E5278A0006F740B /* CAMutex.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAMutex.h; sourceTree = "<group>"; };
|
||||
8B300B762E5278A0006F740B /* CACFString.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CACFString.cpp; sourceTree = "<group>"; };
|
||||
8B300B772E5278A0006F740B /* CASettingsStorage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CASettingsStorage.h; sourceTree = "<group>"; };
|
||||
8B300B782E5278A0006F740B /* CADebugPrintf.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CADebugPrintf.h; sourceTree = "<group>"; };
|
||||
8B300B792E5278A0006F740B /* CAXException.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAXException.cpp; sourceTree = "<group>"; };
|
||||
8B300B7A2E5278A0006F740B /* CAAUMIDIMap.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAAUMIDIMap.h; sourceTree = "<group>"; };
|
||||
8B300B7B2E5278A0006F740B /* AUParamInfo.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AUParamInfo.h; sourceTree = "<group>"; };
|
||||
8B300B7C2E5278A0006F740B /* CABitOperations.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CABitOperations.h; sourceTree = "<group>"; };
|
||||
8B300B7D2E5278A0006F740B /* CACFPreferences.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CACFPreferences.cpp; sourceTree = "<group>"; };
|
||||
8B300B7E2E5278A0006F740B /* CABundleLocker.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CABundleLocker.h; sourceTree = "<group>"; };
|
||||
8B300B7F2E5278A0006F740B /* CAPropertyAddress.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAPropertyAddress.h; sourceTree = "<group>"; };
|
||||
8B300B802E5278A0006F740B /* CAXException.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAXException.h; sourceTree = "<group>"; };
|
||||
8B300B812E5278A0006F740B /* CAAudioChannelLayout.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAAudioChannelLayout.cpp; sourceTree = "<group>"; };
|
||||
8B300B822E5278A0006F740B /* CAThreadSafeList.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAThreadSafeList.h; sourceTree = "<group>"; };
|
||||
8B300B832E5278A0006F740B /* CAAudioUnitOutputCapturer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAAudioUnitOutputCapturer.h; sourceTree = "<group>"; };
|
||||
8B300B842E5278A0006F740B /* AUParamInfo.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = AUParamInfo.cpp; sourceTree = "<group>"; };
|
||||
8B300B852E5278A0006F740B /* CASharedLibrary.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CASharedLibrary.cpp; sourceTree = "<group>"; };
|
||||
8B300B862E5278A0006F740B /* CAAUMIDIMap.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAAUMIDIMap.cpp; sourceTree = "<group>"; };
|
||||
8B300B872E5278A0006F740B /* CALogMacros.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CALogMacros.h; sourceTree = "<group>"; };
|
||||
8B300B882E5278A0006F740B /* CACFMessagePort.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CACFMessagePort.cpp; sourceTree = "<group>"; };
|
||||
8B300B892E5278A0006F740B /* CARingBuffer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CARingBuffer.h; sourceTree = "<group>"; };
|
||||
8B300B8A2E5278A0006F740B /* AUOutputBL.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = AUOutputBL.cpp; sourceTree = "<group>"; };
|
||||
8B300B8B2E5278A0006F740B /* CABufferList.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CABufferList.h; sourceTree = "<group>"; };
|
||||
8B300B8C2E5278A0006F740B /* CASharedLibrary.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CASharedLibrary.h; sourceTree = "<group>"; };
|
||||
8B300B8D2E5278A0006F740B /* CACFData.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CACFData.h; sourceTree = "<group>"; };
|
||||
8B300B8E2E5278A0006F740B /* CAStreamRangedDescription.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAStreamRangedDescription.cpp; sourceTree = "<group>"; };
|
||||
8B300B8F2E5278A0006F740B /* CAPThread.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAPThread.cpp; sourceTree = "<group>"; };
|
||||
8B300B902E5278A0006F740B /* CAAutoDisposer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAAutoDisposer.h; sourceTree = "<group>"; };
|
||||
8B300B912E5278A0006F740B /* CACFPreferences.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CACFPreferences.h; sourceTree = "<group>"; };
|
||||
8B300B922E5278A0006F740B /* CAVectorUnit.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAVectorUnit.cpp; sourceTree = "<group>"; };
|
||||
8B300B932E5278A0006F740B /* CAComponentDescription.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAComponentDescription.h; sourceTree = "<group>"; };
|
||||
8B300B942E5278A0006F740B /* CADebugMacros.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CADebugMacros.h; sourceTree = "<group>"; };
|
||||
8B300B952E5278A0006F740B /* AUOutputBL.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AUOutputBL.h; sourceTree = "<group>"; };
|
||||
8B300B962E5278A0006F740B /* CADebugPrintf.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CADebugPrintf.cpp; sourceTree = "<group>"; };
|
||||
8B300B972E5278A0006F740B /* CARingBuffer.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CARingBuffer.cpp; sourceTree = "<group>"; };
|
||||
8B300B982E5278A0006F740B /* CACFPlugIn.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CACFPlugIn.h; sourceTree = "<group>"; };
|
||||
8B300B992E5278A0006F740B /* CASettingsStorage.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CASettingsStorage.cpp; sourceTree = "<group>"; };
|
||||
8B300B9A2E5278A0006F740B /* CAMixMap.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAMixMap.h; sourceTree = "<group>"; };
|
||||
8B300B9B2E5278A0006F740B /* CACFDistributedNotification.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CACFDistributedNotification.h; sourceTree = "<group>"; };
|
||||
8B300B9C2E5278A0006F740B /* CAFilePathUtils.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAFilePathUtils.h; sourceTree = "<group>"; };
|
||||
8B300B9D2E5278A0006F740B /* CATink.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CATink.h; sourceTree = "<group>"; };
|
||||
8B300B9E2E5278A0006F740B /* CAStreamBasicDescription.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAStreamBasicDescription.cpp; sourceTree = "<group>"; };
|
||||
8B300B9F2E5278A0006F740B /* CAAudioChannelLayout.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAAudioChannelLayout.h; sourceTree = "<group>"; };
|
||||
8B300BA02E5278A0006F740B /* CAProcess.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAProcess.cpp; sourceTree = "<group>"; };
|
||||
8B300BA12E5278A0006F740B /* CAHostTimeBase.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAHostTimeBase.cpp; sourceTree = "<group>"; };
|
||||
8B300BA22E5278A0006F740B /* CAPersistence.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAPersistence.cpp; sourceTree = "<group>"; };
|
||||
8B300BA32E5278A0006F740B /* CAAudioBufferList.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAAudioBufferList.cpp; sourceTree = "<group>"; };
|
||||
8B300BA42E5278A0006F740B /* CAAudioTimeStamp.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAAudioTimeStamp.cpp; sourceTree = "<group>"; };
|
||||
8B300BA52E5278A0006F740B /* CAVectorUnit.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAVectorUnit.h; sourceTree = "<group>"; };
|
||||
8B300BA62E5278A0006F740B /* CAByteOrder.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAByteOrder.h; sourceTree = "<group>"; };
|
||||
8B300BA72E5278A0006F740B /* CACFArray.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CACFArray.h; sourceTree = "<group>"; };
|
||||
8B300BA82E5278A0006F740B /* CAAtomicStack.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAAtomicStack.h; sourceTree = "<group>"; };
|
||||
8B300BA92E5278A0006F740B /* CAReferenceCounted.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAReferenceCounted.h; sourceTree = "<group>"; };
|
||||
8B300BAA2E5278A0006F740B /* CACFMachPort.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CACFMachPort.cpp; sourceTree = "<group>"; };
|
||||
8B300BAB2E5278A0006F740B /* CABufferList.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CABufferList.cpp; sourceTree = "<group>"; };
|
||||
8B300BAC2E5278A0006F740B /* CAMutex.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAMutex.cpp; sourceTree = "<group>"; };
|
||||
8B300BAD2E5278A0006F740B /* CADebugger.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CADebugger.cpp; sourceTree = "<group>"; };
|
||||
8B300BAE2E5278A0006F740B /* CABundleLocker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CABundleLocker.cpp; sourceTree = "<group>"; };
|
||||
8B300BAF2E5278A0006F740B /* CAAudioFileFormats.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAAudioFileFormats.cpp; sourceTree = "<group>"; };
|
||||
8B300BB02E5278A0006F740B /* CAMath.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAMath.h; sourceTree = "<group>"; };
|
||||
8B300BB12E5278A0006F740B /* CACFArray.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CACFArray.cpp; sourceTree = "<group>"; };
|
||||
8B300BB22E5278A0006F740B /* CACFMessagePort.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CACFMessagePort.h; sourceTree = "<group>"; };
|
||||
8B300BB32E5278A0006F740B /* CAAudioValueRange.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAAudioValueRange.cpp; sourceTree = "<group>"; };
|
||||
8B300BB42E5278A0006F740B /* CAAudioUnit.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAAudioUnit.cpp; sourceTree = "<group>"; };
|
||||
8B300BB82E5278A0006F740B /* AUViewLocalizedStringKeys.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AUViewLocalizedStringKeys.h; sourceTree = "<group>"; };
|
||||
8B300BBA2E5278A0006F740B /* ComponentBase.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ComponentBase.cpp; sourceTree = "<group>"; };
|
||||
8B300BBB2E5278A0006F740B /* AUScopeElement.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = AUScopeElement.cpp; sourceTree = "<group>"; };
|
||||
8B300BBC2E5278A0006F740B /* ComponentBase.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ComponentBase.h; sourceTree = "<group>"; };
|
||||
8B300BBD2E5278A0006F740B /* AUBase.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = AUBase.cpp; sourceTree = "<group>"; };
|
||||
8B300BBE2E5278A0006F740B /* AUInputElement.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AUInputElement.h; sourceTree = "<group>"; };
|
||||
8B300BBF2E5278A0006F740B /* AUBase.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AUBase.h; sourceTree = "<group>"; };
|
||||
8B300BC02E5278A0006F740B /* AUPlugInDispatch.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AUPlugInDispatch.h; sourceTree = "<group>"; };
|
||||
8B300BC12E5278A0006F740B /* AUDispatch.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AUDispatch.h; sourceTree = "<group>"; };
|
||||
8B300BC22E5278A0006F740B /* AUOutputElement.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = AUOutputElement.cpp; sourceTree = "<group>"; };
|
||||
8B300BC32E5278A0006F740B /* AUResources.r */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.rez; path = AUResources.r; sourceTree = "<group>"; };
|
||||
8B300BC42E5278A0006F740B /* AUPlugInDispatch.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = AUPlugInDispatch.cpp; sourceTree = "<group>"; };
|
||||
8B300BC52E5278A0006F740B /* AUOutputElement.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AUOutputElement.h; sourceTree = "<group>"; };
|
||||
8B300BC62E5278A0006F740B /* AUDispatch.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = AUDispatch.cpp; sourceTree = "<group>"; };
|
||||
8B300BC72E5278A0006F740B /* AUScopeElement.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AUScopeElement.h; sourceTree = "<group>"; };
|
||||
8B300BC82E5278A0006F740B /* AUInputElement.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = AUInputElement.cpp; sourceTree = "<group>"; };
|
||||
8B300BCA2E5278A0006F740B /* AUEffectBase.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = AUEffectBase.cpp; sourceTree = "<group>"; };
|
||||
8B300BCB2E5278A0006F740B /* AUEffectBase.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AUEffectBase.h; sourceTree = "<group>"; };
|
||||
8B300BCD2E5278A0006F740B /* AUTimestampGenerator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AUTimestampGenerator.h; sourceTree = "<group>"; };
|
||||
8B300BCE2E5278A0006F740B /* AUBaseHelper.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = AUBaseHelper.cpp; sourceTree = "<group>"; };
|
||||
8B300BCF2E5278A0006F740B /* AUSilentTimeout.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AUSilentTimeout.h; sourceTree = "<group>"; };
|
||||
8B300BD02E5278A0006F740B /* AUInputFormatConverter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AUInputFormatConverter.h; sourceTree = "<group>"; };
|
||||
8B300BD12E5278A0006F740B /* AUTimestampGenerator.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = AUTimestampGenerator.cpp; sourceTree = "<group>"; };
|
||||
8B300BD22E5278A0006F740B /* AUBuffer.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = AUBuffer.cpp; sourceTree = "<group>"; };
|
||||
8B300BD32E5278A0006F740B /* AUMIDIDefs.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AUMIDIDefs.h; sourceTree = "<group>"; };
|
||||
8B300BD42E5278A0006F740B /* AUBuffer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AUBuffer.h; sourceTree = "<group>"; };
|
||||
8B300BD52E5278A0006F740B /* AUBaseHelper.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AUBaseHelper.h; sourceTree = "<group>"; };
|
||||
8B300C582E527948006F740B /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/InfoPlist.strings; sourceTree = "<group>"; };
|
||||
8B5C7FBF076FB2C200A15F61 /* CoreAudio.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreAudio.framework; path = /System/Library/Frameworks/CoreAudio.framework; sourceTree = "<absolute>"; };
|
||||
8BA05A660720730100365D66 /* SmoothEQ2.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = SmoothEQ2.cpp; sourceTree = "<group>"; };
|
||||
8BA05A670720730100365D66 /* SmoothEQ2.exp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.exports; path = SmoothEQ2.exp; sourceTree = "<group>"; };
|
||||
8BA05A680720730100365D66 /* SmoothEQ2.r */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.rez; path = SmoothEQ2.r; sourceTree = "<group>"; };
|
||||
8BA05A690720730100365D66 /* SmoothEQ2Version.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = SmoothEQ2Version.h; sourceTree = "<group>"; };
|
||||
8BA05AF9072074E100365D66 /* AudioToolbox.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AudioToolbox.framework; path = /System/Library/Frameworks/AudioToolbox.framework; sourceTree = "<absolute>"; };
|
||||
8BA05AFA072074E100365D66 /* AudioUnit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AudioUnit.framework; path = /System/Library/Frameworks/AudioUnit.framework; sourceTree = "<absolute>"; };
|
||||
8BA05B01072074F900365D66 /* CoreServices.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreServices.framework; path = /System/Library/Frameworks/CoreServices.framework; sourceTree = "<absolute>"; };
|
||||
8BC6025B073B072D006C4272 /* SmoothEQ2.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = SmoothEQ2.h; sourceTree = "<group>"; };
|
||||
8D01CCD10486CAD60068D4B7 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist; path = Info.plist; sourceTree = "<group>"; };
|
||||
8D01CCD20486CAD60068D4B7 /* SmoothEQ2.component */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = SmoothEQ2.component; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
/* End PBXFileReference section */
|
||||
|
||||
/* Begin PBXFrameworksBuildPhase section */
|
||||
8D01CCCD0486CAD60068D4B7 /* Frameworks */ = {
|
||||
isa = PBXFrameworksBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
8BA05AFC072074E100365D66 /* AudioToolbox.framework in Frameworks */,
|
||||
8BA05AFD072074E100365D66 /* AudioUnit.framework in Frameworks */,
|
||||
8BA05B02072074F900365D66 /* CoreServices.framework in Frameworks */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXFrameworksBuildPhase section */
|
||||
|
||||
/* Begin PBXGroup section */
|
||||
089C166AFE841209C02AAC07 /* SmoothEQ2 */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
08FB77ADFE841716C02AAC07 /* Source */,
|
||||
089C167CFE841241C02AAC07 /* Resources */,
|
||||
089C1671FE841209C02AAC07 /* External Frameworks and Libraries */,
|
||||
19C28FB4FE9D528D11CA2CBB /* Products */,
|
||||
);
|
||||
name = SmoothEQ2;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
089C1671FE841209C02AAC07 /* External Frameworks and Libraries */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8B5C7FBF076FB2C200A15F61 /* CoreAudio.framework */,
|
||||
8BA05B01072074F900365D66 /* CoreServices.framework */,
|
||||
8BA05AF9072074E100365D66 /* AudioToolbox.framework */,
|
||||
8BA05AFA072074E100365D66 /* AudioUnit.framework */,
|
||||
);
|
||||
name = "External Frameworks and Libraries";
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
089C167CFE841241C02AAC07 /* Resources */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8D01CCD10486CAD60068D4B7 /* Info.plist */,
|
||||
089C167DFE841241C02AAC07 /* InfoPlist.strings */,
|
||||
);
|
||||
name = Resources;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
08FB77ADFE841716C02AAC07 /* Source */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8B300B4C2E5278A0006F740B /* CA_SDK */,
|
||||
8BA05A56072072A900365D66 /* AU Source */,
|
||||
);
|
||||
name = Source;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
19C28FB4FE9D528D11CA2CBB /* Products */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8D01CCD20486CAD60068D4B7 /* SmoothEQ2.component */,
|
||||
);
|
||||
name = Products;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
8B300B4C2E5278A0006F740B /* CA_SDK */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8B300B4D2E5278A0006F740B /* PublicUtility */,
|
||||
8B300BB52E5278A0006F740B /* AudioUnits */,
|
||||
);
|
||||
name = CA_SDK;
|
||||
path = ../../../../CA_SDK;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
8B300B4D2E5278A0006F740B /* PublicUtility */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8B300B4E2E5278A0006F740B /* CAExtAudioFile.h */,
|
||||
8B300B4F2E5278A0006F740B /* CACFMachPort.h */,
|
||||
8B300B502E5278A0006F740B /* CABool.h */,
|
||||
8B300B512E5278A0006F740B /* CAComponent.cpp */,
|
||||
8B300B522E5278A0006F740B /* CADebugger.h */,
|
||||
8B300B532E5278A0006F740B /* CACFNumber.cpp */,
|
||||
8B300B542E5278A0006F740B /* CAGuard.h */,
|
||||
8B300B552E5278A0006F740B /* CAAtomic.h */,
|
||||
8B300B562E5278A0006F740B /* CAStreamBasicDescription.h */,
|
||||
8B300B572E5278A0006F740B /* CACFObject.h */,
|
||||
8B300B582E5278A0006F740B /* CAStreamRangedDescription.h */,
|
||||
8B300B592E5278A0006F740B /* CATokenMap.h */,
|
||||
8B300B5A2E5278A0006F740B /* CAComponent.h */,
|
||||
8B300B5B2E5278A0006F740B /* CAAudioBufferList.h */,
|
||||
8B300B5C2E5278A0006F740B /* CAAudioUnit.h */,
|
||||
8B300B5D2E5278A0006F740B /* CAAUParameter.h */,
|
||||
8B300B5E2E5278A0006F740B /* CAException.h */,
|
||||
8B300B5F2E5278A0006F740B /* CAAUProcessor.cpp */,
|
||||
8B300B602E5278A0006F740B /* CAAUProcessor.h */,
|
||||
8B300B612E5278A0006F740B /* CAProcess.h */,
|
||||
8B300B622E5278A0006F740B /* CACFDictionary.h */,
|
||||
8B300B632E5278A0006F740B /* CAPThread.h */,
|
||||
8B300B642E5278A0006F740B /* CAAUParameter.cpp */,
|
||||
8B300B652E5278A0006F740B /* CAAudioTimeStamp.h */,
|
||||
8B300B662E5278A0006F740B /* CAFilePathUtils.cpp */,
|
||||
8B300B672E5278A0006F740B /* CAAudioValueRange.h */,
|
||||
8B300B682E5278A0006F740B /* CAVectorUnitTypes.h */,
|
||||
8B300B692E5278A0006F740B /* CAAudioChannelLayoutObject.cpp */,
|
||||
8B300B6A2E5278A0006F740B /* CAGuard.cpp */,
|
||||
8B300B6B2E5278A0006F740B /* CACFNumber.h */,
|
||||
8B300B6C2E5278A0006F740B /* CACFDistributedNotification.cpp */,
|
||||
8B300B6D2E5278A0006F740B /* CACFString.h */,
|
||||
8B300B6E2E5278A0006F740B /* CAAUMIDIMapManager.cpp */,
|
||||
8B300B6F2E5278A0006F740B /* CAComponentDescription.cpp */,
|
||||
8B300B702E5278A0006F740B /* CAHostTimeBase.h */,
|
||||
8B300B712E5278A0006F740B /* CADebugMacros.cpp */,
|
||||
8B300B722E5278A0006F740B /* CAAudioFileFormats.h */,
|
||||
8B300B732E5278A0006F740B /* CAAUMIDIMapManager.h */,
|
||||
8B300B742E5278A0006F740B /* CACFDictionary.cpp */,
|
||||
8B300B752E5278A0006F740B /* CAMutex.h */,
|
||||
8B300B762E5278A0006F740B /* CACFString.cpp */,
|
||||
8B300B772E5278A0006F740B /* CASettingsStorage.h */,
|
||||
8B300B782E5278A0006F740B /* CADebugPrintf.h */,
|
||||
8B300B792E5278A0006F740B /* CAXException.cpp */,
|
||||
8B300B7A2E5278A0006F740B /* CAAUMIDIMap.h */,
|
||||
8B300B7B2E5278A0006F740B /* AUParamInfo.h */,
|
||||
8B300B7C2E5278A0006F740B /* CABitOperations.h */,
|
||||
8B300B7D2E5278A0006F740B /* CACFPreferences.cpp */,
|
||||
8B300B7E2E5278A0006F740B /* CABundleLocker.h */,
|
||||
8B300B7F2E5278A0006F740B /* CAPropertyAddress.h */,
|
||||
8B300B802E5278A0006F740B /* CAXException.h */,
|
||||
8B300B812E5278A0006F740B /* CAAudioChannelLayout.cpp */,
|
||||
8B300B822E5278A0006F740B /* CAThreadSafeList.h */,
|
||||
8B300B832E5278A0006F740B /* CAAudioUnitOutputCapturer.h */,
|
||||
8B300B842E5278A0006F740B /* AUParamInfo.cpp */,
|
||||
8B300B852E5278A0006F740B /* CASharedLibrary.cpp */,
|
||||
8B300B862E5278A0006F740B /* CAAUMIDIMap.cpp */,
|
||||
8B300B872E5278A0006F740B /* CALogMacros.h */,
|
||||
8B300B882E5278A0006F740B /* CACFMessagePort.cpp */,
|
||||
8B300B892E5278A0006F740B /* CARingBuffer.h */,
|
||||
8B300B8A2E5278A0006F740B /* AUOutputBL.cpp */,
|
||||
8B300B8B2E5278A0006F740B /* CABufferList.h */,
|
||||
8B300B8C2E5278A0006F740B /* CASharedLibrary.h */,
|
||||
8B300B8D2E5278A0006F740B /* CACFData.h */,
|
||||
8B300B8E2E5278A0006F740B /* CAStreamRangedDescription.cpp */,
|
||||
8B300B8F2E5278A0006F740B /* CAPThread.cpp */,
|
||||
8B300B902E5278A0006F740B /* CAAutoDisposer.h */,
|
||||
8B300B912E5278A0006F740B /* CACFPreferences.h */,
|
||||
8B300B922E5278A0006F740B /* CAVectorUnit.cpp */,
|
||||
8B300B932E5278A0006F740B /* CAComponentDescription.h */,
|
||||
8B300B942E5278A0006F740B /* CADebugMacros.h */,
|
||||
8B300B952E5278A0006F740B /* AUOutputBL.h */,
|
||||
8B300B962E5278A0006F740B /* CADebugPrintf.cpp */,
|
||||
8B300B972E5278A0006F740B /* CARingBuffer.cpp */,
|
||||
8B300B982E5278A0006F740B /* CACFPlugIn.h */,
|
||||
8B300B992E5278A0006F740B /* CASettingsStorage.cpp */,
|
||||
8B300B9A2E5278A0006F740B /* CAMixMap.h */,
|
||||
8B300B9B2E5278A0006F740B /* CACFDistributedNotification.h */,
|
||||
8B300B9C2E5278A0006F740B /* CAFilePathUtils.h */,
|
||||
8B300B9D2E5278A0006F740B /* CATink.h */,
|
||||
8B300B9E2E5278A0006F740B /* CAStreamBasicDescription.cpp */,
|
||||
8B300B9F2E5278A0006F740B /* CAAudioChannelLayout.h */,
|
||||
8B300BA02E5278A0006F740B /* CAProcess.cpp */,
|
||||
8B300BA12E5278A0006F740B /* CAHostTimeBase.cpp */,
|
||||
8B300BA22E5278A0006F740B /* CAPersistence.cpp */,
|
||||
8B300BA32E5278A0006F740B /* CAAudioBufferList.cpp */,
|
||||
8B300BA42E5278A0006F740B /* CAAudioTimeStamp.cpp */,
|
||||
8B300BA52E5278A0006F740B /* CAVectorUnit.h */,
|
||||
8B300BA62E5278A0006F740B /* CAByteOrder.h */,
|
||||
8B300BA72E5278A0006F740B /* CACFArray.h */,
|
||||
8B300BA82E5278A0006F740B /* CAAtomicStack.h */,
|
||||
8B300BA92E5278A0006F740B /* CAReferenceCounted.h */,
|
||||
8B300BAA2E5278A0006F740B /* CACFMachPort.cpp */,
|
||||
8B300BAB2E5278A0006F740B /* CABufferList.cpp */,
|
||||
8B300BAC2E5278A0006F740B /* CAMutex.cpp */,
|
||||
8B300BAD2E5278A0006F740B /* CADebugger.cpp */,
|
||||
8B300BAE2E5278A0006F740B /* CABundleLocker.cpp */,
|
||||
8B300BAF2E5278A0006F740B /* CAAudioFileFormats.cpp */,
|
||||
8B300BB02E5278A0006F740B /* CAMath.h */,
|
||||
8B300BB12E5278A0006F740B /* CACFArray.cpp */,
|
||||
8B300BB22E5278A0006F740B /* CACFMessagePort.h */,
|
||||
8B300BB32E5278A0006F740B /* CAAudioValueRange.cpp */,
|
||||
8B300BB42E5278A0006F740B /* CAAudioUnit.cpp */,
|
||||
);
|
||||
path = PublicUtility;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
8B300BB52E5278A0006F740B /* AudioUnits */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8B300BB62E5278A0006F740B /* AUPublic */,
|
||||
);
|
||||
path = AudioUnits;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
8B300BB62E5278A0006F740B /* AUPublic */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8B300BB72E5278A0006F740B /* AUViewBase */,
|
||||
8B300BB92E5278A0006F740B /* AUBase */,
|
||||
8B300BC92E5278A0006F740B /* OtherBases */,
|
||||
8B300BCC2E5278A0006F740B /* Utility */,
|
||||
);
|
||||
path = AUPublic;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
8B300BB72E5278A0006F740B /* AUViewBase */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8B300BB82E5278A0006F740B /* AUViewLocalizedStringKeys.h */,
|
||||
);
|
||||
path = AUViewBase;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
8B300BB92E5278A0006F740B /* AUBase */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8B300BBA2E5278A0006F740B /* ComponentBase.cpp */,
|
||||
8B300BBB2E5278A0006F740B /* AUScopeElement.cpp */,
|
||||
8B300BBC2E5278A0006F740B /* ComponentBase.h */,
|
||||
8B300BBD2E5278A0006F740B /* AUBase.cpp */,
|
||||
8B300BBE2E5278A0006F740B /* AUInputElement.h */,
|
||||
8B300BBF2E5278A0006F740B /* AUBase.h */,
|
||||
8B300BC02E5278A0006F740B /* AUPlugInDispatch.h */,
|
||||
8B300BC12E5278A0006F740B /* AUDispatch.h */,
|
||||
8B300BC22E5278A0006F740B /* AUOutputElement.cpp */,
|
||||
8B300BC32E5278A0006F740B /* AUResources.r */,
|
||||
8B300BC42E5278A0006F740B /* AUPlugInDispatch.cpp */,
|
||||
8B300BC52E5278A0006F740B /* AUOutputElement.h */,
|
||||
8B300BC62E5278A0006F740B /* AUDispatch.cpp */,
|
||||
8B300BC72E5278A0006F740B /* AUScopeElement.h */,
|
||||
8B300BC82E5278A0006F740B /* AUInputElement.cpp */,
|
||||
);
|
||||
path = AUBase;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
8B300BC92E5278A0006F740B /* OtherBases */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8B300BCA2E5278A0006F740B /* AUEffectBase.cpp */,
|
||||
8B300BCB2E5278A0006F740B /* AUEffectBase.h */,
|
||||
);
|
||||
path = OtherBases;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
8B300BCC2E5278A0006F740B /* Utility */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8B300BCD2E5278A0006F740B /* AUTimestampGenerator.h */,
|
||||
8B300BCE2E5278A0006F740B /* AUBaseHelper.cpp */,
|
||||
8B300BCF2E5278A0006F740B /* AUSilentTimeout.h */,
|
||||
8B300BD02E5278A0006F740B /* AUInputFormatConverter.h */,
|
||||
8B300BD12E5278A0006F740B /* AUTimestampGenerator.cpp */,
|
||||
8B300BD22E5278A0006F740B /* AUBuffer.cpp */,
|
||||
8B300BD32E5278A0006F740B /* AUMIDIDefs.h */,
|
||||
8B300BD42E5278A0006F740B /* AUBuffer.h */,
|
||||
8B300BD52E5278A0006F740B /* AUBaseHelper.h */,
|
||||
);
|
||||
path = Utility;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
8BA05A56072072A900365D66 /* AU Source */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8BC6025B073B072D006C4272 /* SmoothEQ2.h */,
|
||||
8BA05A660720730100365D66 /* SmoothEQ2.cpp */,
|
||||
8BA05A670720730100365D66 /* SmoothEQ2.exp */,
|
||||
8BA05A680720730100365D66 /* SmoothEQ2.r */,
|
||||
8BA05A690720730100365D66 /* SmoothEQ2Version.h */,
|
||||
);
|
||||
name = "AU Source";
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
/* End PBXGroup section */
|
||||
|
||||
/* Begin PBXHeadersBuildPhase section */
|
||||
8D01CCC70486CAD60068D4B7 /* Headers */ = {
|
||||
isa = PBXHeadersBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
8B300C062E5278A0006F740B /* CABundleLocker.h in Headers */,
|
||||
8B300C272E5278A0006F740B /* CAAudioChannelLayout.h in Headers */,
|
||||
8B300C1D2E5278A0006F740B /* AUOutputBL.h in Headers */,
|
||||
8B300BF82E5278A0006F740B /* CAHostTimeBase.h in Headers */,
|
||||
8B300C402E5278A0006F740B /* ComponentBase.h in Headers */,
|
||||
8B300C302E5278A0006F740B /* CAAtomicStack.h in Headers */,
|
||||
8B300BED2E5278A0006F740B /* CAAudioTimeStamp.h in Headers */,
|
||||
8B300C0A2E5278A0006F740B /* CAThreadSafeList.h in Headers */,
|
||||
8B300BE52E5278A0006F740B /* CAAUParameter.h in Headers */,
|
||||
8B300C572E5278A0006F740B /* AUBaseHelper.h in Headers */,
|
||||
8B300C4F2E5278A0006F740B /* AUTimestampGenerator.h in Headers */,
|
||||
8B300C002E5278A0006F740B /* CADebugPrintf.h in Headers */,
|
||||
8B300C3A2E5278A0006F740B /* CACFMessagePort.h in Headers */,
|
||||
8B300BE82E5278A0006F740B /* CAAUProcessor.h in Headers */,
|
||||
8B300BE42E5278A0006F740B /* CAAudioUnit.h in Headers */,
|
||||
8B300C3D2E5278A0006F740B /* AUViewLocalizedStringKeys.h in Headers */,
|
||||
8B300C232E5278A0006F740B /* CACFDistributedNotification.h in Headers */,
|
||||
8B300BE22E5278A0006F740B /* CAComponent.h in Headers */,
|
||||
8B300BF02E5278A0006F740B /* CAVectorUnitTypes.h in Headers */,
|
||||
8BA05A6E0720730100365D66 /* SmoothEQ2Version.h in Headers */,
|
||||
8B300C242E5278A0006F740B /* CAFilePathUtils.h in Headers */,
|
||||
8B300BE62E5278A0006F740B /* CAException.h in Headers */,
|
||||
8B300BDD2E5278A0006F740B /* CAAtomic.h in Headers */,
|
||||
8B300BDC2E5278A0006F740B /* CAGuard.h in Headers */,
|
||||
8B300C422E5278A0006F740B /* AUInputElement.h in Headers */,
|
||||
8B300C192E5278A0006F740B /* CACFPreferences.h in Headers */,
|
||||
8B300C2E2E5278A0006F740B /* CAByteOrder.h in Headers */,
|
||||
8B300C112E5278A0006F740B /* CARingBuffer.h in Headers */,
|
||||
8B300BD82E5278A0006F740B /* CABool.h in Headers */,
|
||||
8B300BFD2E5278A0006F740B /* CAMutex.h in Headers */,
|
||||
8B300C432E5278A0006F740B /* AUBase.h in Headers */,
|
||||
8BC6025C073B072D006C4272 /* SmoothEQ2.h in Headers */,
|
||||
8B300BF52E5278A0006F740B /* CACFString.h in Headers */,
|
||||
8B300C142E5278A0006F740B /* CASharedLibrary.h in Headers */,
|
||||
8B300BE12E5278A0006F740B /* CATokenMap.h in Headers */,
|
||||
8B300BD62E5278A0006F740B /* CAExtAudioFile.h in Headers */,
|
||||
8B300BEB2E5278A0006F740B /* CAPThread.h in Headers */,
|
||||
8B300C072E5278A0006F740B /* CAPropertyAddress.h in Headers */,
|
||||
8B300C312E5278A0006F740B /* CAReferenceCounted.h in Headers */,
|
||||
8B300C562E5278A0006F740B /* AUBuffer.h in Headers */,
|
||||
8B300C382E5278A0006F740B /* CAMath.h in Headers */,
|
||||
8B300C182E5278A0006F740B /* CAAutoDisposer.h in Headers */,
|
||||
8B300BDF2E5278A0006F740B /* CACFObject.h in Headers */,
|
||||
8B300BFF2E5278A0006F740B /* CASettingsStorage.h in Headers */,
|
||||
8B300C082E5278A0006F740B /* CAXException.h in Headers */,
|
||||
8B300C252E5278A0006F740B /* CATink.h in Headers */,
|
||||
8B300C522E5278A0006F740B /* AUInputFormatConverter.h in Headers */,
|
||||
8B300C2D2E5278A0006F740B /* CAVectorUnit.h in Headers */,
|
||||
8B300BE92E5278A0006F740B /* CAProcess.h in Headers */,
|
||||
8B300BEF2E5278A0006F740B /* CAAudioValueRange.h in Headers */,
|
||||
8B300C042E5278A0006F740B /* CABitOperations.h in Headers */,
|
||||
8B300BFA2E5278A0006F740B /* CAAudioFileFormats.h in Headers */,
|
||||
8B300BF32E5278A0006F740B /* CACFNumber.h in Headers */,
|
||||
8B300C0B2E5278A0006F740B /* CAAudioUnitOutputCapturer.h in Headers */,
|
||||
8B300C1C2E5278A0006F740B /* CADebugMacros.h in Headers */,
|
||||
8B300C552E5278A0006F740B /* AUMIDIDefs.h in Headers */,
|
||||
8B300C152E5278A0006F740B /* CACFData.h in Headers */,
|
||||
8B300BDE2E5278A0006F740B /* CAStreamBasicDescription.h in Headers */,
|
||||
8B300C442E5278A0006F740B /* AUPlugInDispatch.h in Headers */,
|
||||
8B300BE02E5278A0006F740B /* CAStreamRangedDescription.h in Headers */,
|
||||
8B300C202E5278A0006F740B /* CACFPlugIn.h in Headers */,
|
||||
8B300BE32E5278A0006F740B /* CAAudioBufferList.h in Headers */,
|
||||
8B300BFB2E5278A0006F740B /* CAAUMIDIMapManager.h in Headers */,
|
||||
8B300C4E2E5278A0006F740B /* AUEffectBase.h in Headers */,
|
||||
8B300BEA2E5278A0006F740B /* CACFDictionary.h in Headers */,
|
||||
8B300C4B2E5278A0006F740B /* AUScopeElement.h in Headers */,
|
||||
8B300C1B2E5278A0006F740B /* CAComponentDescription.h in Headers */,
|
||||
8B300C512E5278A0006F740B /* AUSilentTimeout.h in Headers */,
|
||||
8B300C132E5278A0006F740B /* CABufferList.h in Headers */,
|
||||
8B300C452E5278A0006F740B /* AUDispatch.h in Headers */,
|
||||
8B300C492E5278A0006F740B /* AUOutputElement.h in Headers */,
|
||||
8B300C0F2E5278A0006F740B /* CALogMacros.h in Headers */,
|
||||
8B300C032E5278A0006F740B /* AUParamInfo.h in Headers */,
|
||||
8B300C222E5278A0006F740B /* CAMixMap.h in Headers */,
|
||||
8B300C2F2E5278A0006F740B /* CACFArray.h in Headers */,
|
||||
8B300BD72E5278A0006F740B /* CACFMachPort.h in Headers */,
|
||||
8B300C022E5278A0006F740B /* CAAUMIDIMap.h in Headers */,
|
||||
8B300BDA2E5278A0006F740B /* CADebugger.h in Headers */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXHeadersBuildPhase section */
|
||||
|
||||
/* Begin PBXNativeTarget section */
|
||||
8D01CCC60486CAD60068D4B7 /* SmoothEQ2 */ = {
|
||||
isa = PBXNativeTarget;
|
||||
buildConfigurationList = 3E4BA243089833B7007656EC /* Build configuration list for PBXNativeTarget "SmoothEQ2" */;
|
||||
buildPhases = (
|
||||
8D01CCC70486CAD60068D4B7 /* Headers */,
|
||||
8D01CCC90486CAD60068D4B7 /* Resources */,
|
||||
8D01CCCB0486CAD60068D4B7 /* Sources */,
|
||||
8D01CCCD0486CAD60068D4B7 /* Frameworks */,
|
||||
);
|
||||
buildRules = (
|
||||
);
|
||||
dependencies = (
|
||||
);
|
||||
name = SmoothEQ2;
|
||||
productInstallPath = "$(HOME)/Library/Bundles";
|
||||
productName = SmoothEQ2;
|
||||
productReference = 8D01CCD20486CAD60068D4B7 /* SmoothEQ2.component */;
|
||||
productType = "com.apple.product-type.bundle";
|
||||
};
|
||||
/* End PBXNativeTarget section */
|
||||
|
||||
/* Begin PBXProject section */
|
||||
089C1669FE841209C02AAC07 /* Project object */ = {
|
||||
isa = PBXProject;
|
||||
attributes = {
|
||||
LastUpgradeCheck = 1420;
|
||||
};
|
||||
buildConfigurationList = 3E4BA247089833B7007656EC /* Build configuration list for PBXProject "SmoothEQ2" */;
|
||||
compatibilityVersion = "Xcode 3.1";
|
||||
developmentRegion = en;
|
||||
hasScannedForEncodings = 1;
|
||||
knownRegions = (
|
||||
Base,
|
||||
en,
|
||||
ja,
|
||||
fr,
|
||||
de,
|
||||
);
|
||||
mainGroup = 089C166AFE841209C02AAC07 /* SmoothEQ2 */;
|
||||
projectDirPath = "";
|
||||
projectRoot = "";
|
||||
targets = (
|
||||
8D01CCC60486CAD60068D4B7 /* SmoothEQ2 */,
|
||||
);
|
||||
};
|
||||
/* End PBXProject section */
|
||||
|
||||
/* Begin PBXResourcesBuildPhase section */
|
||||
8D01CCC90486CAD60068D4B7 /* Resources */ = {
|
||||
isa = PBXResourcesBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
8D01CCCA0486CAD60068D4B7 /* InfoPlist.strings in Resources */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXResourcesBuildPhase section */
|
||||
|
||||
/* Begin PBXSourcesBuildPhase section */
|
||||
8D01CCCB0486CAD60068D4B7 /* Sources */ = {
|
||||
isa = PBXSourcesBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
8B300C122E5278A0006F740B /* AUOutputBL.cpp in Sources */,
|
||||
8B300C372E5278A0006F740B /* CAAudioFileFormats.cpp in Sources */,
|
||||
8B300C292E5278A0006F740B /* CAHostTimeBase.cpp in Sources */,
|
||||
8B300C012E5278A0006F740B /* CAXException.cpp in Sources */,
|
||||
8B300C2B2E5278A0006F740B /* CAAudioBufferList.cpp in Sources */,
|
||||
8B300BEE2E5278A0006F740B /* CAFilePathUtils.cpp in Sources */,
|
||||
8B300BEC2E5278A0006F740B /* CAAUParameter.cpp in Sources */,
|
||||
8B300C0E2E5278A0006F740B /* CAAUMIDIMap.cpp in Sources */,
|
||||
8B300C3B2E5278A0006F740B /* CAAudioValueRange.cpp in Sources */,
|
||||
8B300C4A2E5278A0006F740B /* AUDispatch.cpp in Sources */,
|
||||
8B300C052E5278A0006F740B /* CACFPreferences.cpp in Sources */,
|
||||
8B300C482E5278A0006F740B /* AUPlugInDispatch.cpp in Sources */,
|
||||
8B300BE72E5278A0006F740B /* CAAUProcessor.cpp in Sources */,
|
||||
8B300BFC2E5278A0006F740B /* CACFDictionary.cpp in Sources */,
|
||||
8B300C502E5278A0006F740B /* AUBaseHelper.cpp in Sources */,
|
||||
8B300C352E5278A0006F740B /* CADebugger.cpp in Sources */,
|
||||
8B300C092E5278A0006F740B /* CAAudioChannelLayout.cpp in Sources */,
|
||||
8B300C0C2E5278A0006F740B /* AUParamInfo.cpp in Sources */,
|
||||
8B300C2A2E5278A0006F740B /* CAPersistence.cpp in Sources */,
|
||||
8B300C1E2E5278A0006F740B /* CADebugPrintf.cpp in Sources */,
|
||||
8B300C532E5278A0006F740B /* AUTimestampGenerator.cpp in Sources */,
|
||||
8B300C262E5278A0006F740B /* CAStreamBasicDescription.cpp in Sources */,
|
||||
8B300BF62E5278A0006F740B /* CAAUMIDIMapManager.cpp in Sources */,
|
||||
8B300C212E5278A0006F740B /* CASettingsStorage.cpp in Sources */,
|
||||
8B300C462E5278A0006F740B /* AUOutputElement.cpp in Sources */,
|
||||
8B300BF22E5278A0006F740B /* CAGuard.cpp in Sources */,
|
||||
8BA05A6B0720730100365D66 /* SmoothEQ2.cpp in Sources */,
|
||||
8B300C342E5278A0006F740B /* CAMutex.cpp in Sources */,
|
||||
8B300C4D2E5278A0006F740B /* AUEffectBase.cpp in Sources */,
|
||||
8B300C322E5278A0006F740B /* CACFMachPort.cpp in Sources */,
|
||||
8B300C412E5278A0006F740B /* AUBase.cpp in Sources */,
|
||||
8B300C0D2E5278A0006F740B /* CASharedLibrary.cpp in Sources */,
|
||||
8B300BF42E5278A0006F740B /* CACFDistributedNotification.cpp in Sources */,
|
||||
8B300BF72E5278A0006F740B /* CAComponentDescription.cpp in Sources */,
|
||||
8B300BFE2E5278A0006F740B /* CACFString.cpp in Sources */,
|
||||
8B300C3E2E5278A0006F740B /* ComponentBase.cpp in Sources */,
|
||||
8B300C1F2E5278A0006F740B /* CARingBuffer.cpp in Sources */,
|
||||
8B300C3F2E5278A0006F740B /* AUScopeElement.cpp in Sources */,
|
||||
8B300C3C2E5278A0006F740B /* CAAudioUnit.cpp in Sources */,
|
||||
8B300C392E5278A0006F740B /* CACFArray.cpp in Sources */,
|
||||
8B300C362E5278A0006F740B /* CABundleLocker.cpp in Sources */,
|
||||
8B300C282E5278A0006F740B /* CAProcess.cpp in Sources */,
|
||||
8B300C162E5278A0006F740B /* CAStreamRangedDescription.cpp in Sources */,
|
||||
8B300C172E5278A0006F740B /* CAPThread.cpp in Sources */,
|
||||
8B300BD92E5278A0006F740B /* CAComponent.cpp in Sources */,
|
||||
8B300BF12E5278A0006F740B /* CAAudioChannelLayoutObject.cpp in Sources */,
|
||||
8B300C2C2E5278A0006F740B /* CAAudioTimeStamp.cpp in Sources */,
|
||||
8B300C332E5278A0006F740B /* CABufferList.cpp in Sources */,
|
||||
8B300C102E5278A0006F740B /* CACFMessagePort.cpp in Sources */,
|
||||
8B300C1A2E5278A0006F740B /* CAVectorUnit.cpp in Sources */,
|
||||
8B300C4C2E5278A0006F740B /* AUInputElement.cpp in Sources */,
|
||||
8B300C542E5278A0006F740B /* AUBuffer.cpp in Sources */,
|
||||
8B300BF92E5278A0006F740B /* CADebugMacros.cpp in Sources */,
|
||||
8B300BDB2E5278A0006F740B /* CACFNumber.cpp in Sources */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXSourcesBuildPhase section */
|
||||
|
||||
/* Begin PBXVariantGroup section */
|
||||
089C167DFE841241C02AAC07 /* InfoPlist.strings */ = {
|
||||
isa = PBXVariantGroup;
|
||||
children = (
|
||||
8B300C582E527948006F740B /* en */,
|
||||
);
|
||||
name = InfoPlist.strings;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
/* End PBXVariantGroup section */
|
||||
|
||||
/* Begin XCBuildConfiguration section */
|
||||
3E4BA244089833B7007656EC /* Debug */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
ARCHS = "$(ARCHS_STANDARD)";
|
||||
CLANG_ENABLE_OBJC_WEAK = YES;
|
||||
CODE_SIGN_IDENTITY = "Apple Development";
|
||||
"CODE_SIGN_IDENTITY[sdk=macosx*]" = "Developer ID Application";
|
||||
CODE_SIGN_STYLE = Manual;
|
||||
DEAD_CODE_STRIPPING = YES;
|
||||
DEVELOPMENT_TEAM = "";
|
||||
"DEVELOPMENT_TEAM[sdk=macosx*]" = 9BMAKYA76W;
|
||||
EXPORTED_SYMBOLS_FILE = SmoothEQ2.exp;
|
||||
GCC_OPTIMIZATION_LEVEL = 0;
|
||||
GENERATE_PKGINFO_FILE = YES;
|
||||
INFOPLIST_FILE = Info.plist;
|
||||
INSTALL_PATH = "$(HOME)/Library/Audio/Plug-Ins/Components/";
|
||||
LIBRARY_STYLE = Bundle;
|
||||
MACOSX_DEPLOYMENT_TARGET = 11.1;
|
||||
OTHER_LDFLAGS = "-bundle";
|
||||
OTHER_REZFLAGS = "";
|
||||
PRODUCT_BUNDLE_IDENTIFIER = "com.airwindows.audiounit.${PRODUCT_NAME:identifier}";
|
||||
PRODUCT_NAME = SmoothEQ2;
|
||||
PROVISIONING_PROFILE_SPECIFIER = "";
|
||||
SDKROOT = macosx;
|
||||
STRIP_STYLE = debugging;
|
||||
WRAPPER_EXTENSION = component;
|
||||
};
|
||||
name = Debug;
|
||||
};
|
||||
3E4BA245089833B7007656EC /* Release */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
ARCHS = "$(ARCHS_STANDARD)";
|
||||
CLANG_ENABLE_OBJC_WEAK = YES;
|
||||
CODE_SIGN_IDENTITY = "Apple Development";
|
||||
"CODE_SIGN_IDENTITY[sdk=macosx*]" = "Developer ID Application";
|
||||
CODE_SIGN_STYLE = Manual;
|
||||
DEAD_CODE_STRIPPING = YES;
|
||||
DEVELOPMENT_TEAM = "";
|
||||
"DEVELOPMENT_TEAM[sdk=macosx*]" = 9BMAKYA76W;
|
||||
EXPORTED_SYMBOLS_FILE = SmoothEQ2.exp;
|
||||
GCC_GENERATE_DEBUGGING_SYMBOLS = NO;
|
||||
GENERATE_PKGINFO_FILE = YES;
|
||||
INFOPLIST_FILE = Info.plist;
|
||||
INSTALL_PATH = "$(HOME)/Library/Audio/Plug-Ins/Components/";
|
||||
LIBRARY_STYLE = Bundle;
|
||||
MACOSX_DEPLOYMENT_TARGET = 11.1;
|
||||
OTHER_LDFLAGS = "-bundle";
|
||||
OTHER_REZFLAGS = "";
|
||||
PRODUCT_BUNDLE_IDENTIFIER = "com.airwindows.audiounit.${PRODUCT_NAME:identifier}";
|
||||
PRODUCT_NAME = SmoothEQ2;
|
||||
PROVISIONING_PROFILE_SPECIFIER = "";
|
||||
SDKROOT = macosx;
|
||||
STRIP_INSTALLED_PRODUCT = YES;
|
||||
STRIP_STYLE = debugging;
|
||||
WRAPPER_EXTENSION = component;
|
||||
};
|
||||
name = Release;
|
||||
};
|
||||
3E4BA248089833B7007656EC /* Debug */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
ALWAYS_SEARCH_USER_PATHS = NO;
|
||||
ARCHS = "$(ARCHS_STANDARD)";
|
||||
CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES;
|
||||
CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
|
||||
CLANG_WARN_BOOL_CONVERSION = YES;
|
||||
CLANG_WARN_COMMA = YES;
|
||||
CLANG_WARN_CONSTANT_CONVERSION = YES;
|
||||
CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
|
||||
CLANG_WARN_EMPTY_BODY = YES;
|
||||
CLANG_WARN_ENUM_CONVERSION = YES;
|
||||
CLANG_WARN_INFINITE_RECURSION = YES;
|
||||
CLANG_WARN_INT_CONVERSION = YES;
|
||||
CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
|
||||
CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
|
||||
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
|
||||
CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
|
||||
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
|
||||
CLANG_WARN_STRICT_PROTOTYPES = YES;
|
||||
CLANG_WARN_SUSPICIOUS_MOVE = YES;
|
||||
CLANG_WARN_UNREACHABLE_CODE = YES;
|
||||
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
|
||||
COPY_PHASE_STRIP = NO;
|
||||
DEAD_CODE_STRIPPING = YES;
|
||||
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
|
||||
ENABLE_STRICT_OBJC_MSGSEND = YES;
|
||||
ENABLE_TESTABILITY = YES;
|
||||
GCC_C_LANGUAGE_STANDARD = c99;
|
||||
GCC_NO_COMMON_BLOCKS = YES;
|
||||
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
|
||||
GCC_WARN_ABOUT_RETURN_TYPE = YES;
|
||||
GCC_WARN_UNDECLARED_SELECTOR = YES;
|
||||
GCC_WARN_UNINITIALIZED_AUTOS = YES;
|
||||
GCC_WARN_UNUSED_FUNCTION = YES;
|
||||
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||
HEADER_SEARCH_PATHS = "/Users/christopherjohnson/Desktop/CA_SDK/**";
|
||||
MACOSX_DEPLOYMENT_TARGET = 11.1;
|
||||
ONLY_ACTIVE_ARCH = YES;
|
||||
SDKROOT = macosx;
|
||||
WARNING_CFLAGS = (
|
||||
"-Wmost",
|
||||
"-Wno-four-char-constants",
|
||||
"-Wno-unknown-pragmas",
|
||||
);
|
||||
};
|
||||
name = Debug;
|
||||
};
|
||||
3E4BA249089833B7007656EC /* Release */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
ALWAYS_SEARCH_USER_PATHS = NO;
|
||||
ARCHS = "$(ARCHS_STANDARD)";
|
||||
CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES;
|
||||
CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
|
||||
CLANG_WARN_BOOL_CONVERSION = YES;
|
||||
CLANG_WARN_COMMA = YES;
|
||||
CLANG_WARN_CONSTANT_CONVERSION = YES;
|
||||
CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
|
||||
CLANG_WARN_EMPTY_BODY = YES;
|
||||
CLANG_WARN_ENUM_CONVERSION = YES;
|
||||
CLANG_WARN_INFINITE_RECURSION = YES;
|
||||
CLANG_WARN_INT_CONVERSION = YES;
|
||||
CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
|
||||
CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
|
||||
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
|
||||
CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
|
||||
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
|
||||
CLANG_WARN_STRICT_PROTOTYPES = YES;
|
||||
CLANG_WARN_SUSPICIOUS_MOVE = YES;
|
||||
CLANG_WARN_UNREACHABLE_CODE = YES;
|
||||
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
|
||||
DEAD_CODE_STRIPPING = YES;
|
||||
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
|
||||
ENABLE_STRICT_OBJC_MSGSEND = YES;
|
||||
GCC_C_LANGUAGE_STANDARD = c99;
|
||||
GCC_NO_COMMON_BLOCKS = YES;
|
||||
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
|
||||
GCC_WARN_ABOUT_RETURN_TYPE = YES;
|
||||
GCC_WARN_UNDECLARED_SELECTOR = YES;
|
||||
GCC_WARN_UNINITIALIZED_AUTOS = YES;
|
||||
GCC_WARN_UNUSED_FUNCTION = YES;
|
||||
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||
HEADER_SEARCH_PATHS = "/Users/christopherjohnson/Desktop/CA_SDK/**";
|
||||
MACOSX_DEPLOYMENT_TARGET = 11.1;
|
||||
ONLY_ACTIVE_ARCH = YES;
|
||||
SDKROOT = macosx;
|
||||
WARNING_CFLAGS = (
|
||||
"-Wmost",
|
||||
"-Wno-four-char-constants",
|
||||
"-Wno-unknown-pragmas",
|
||||
);
|
||||
};
|
||||
name = Release;
|
||||
};
|
||||
/* End XCBuildConfiguration section */
|
||||
|
||||
/* Begin XCConfigurationList section */
|
||||
3E4BA243089833B7007656EC /* Build configuration list for PBXNativeTarget "SmoothEQ2" */ = {
|
||||
isa = XCConfigurationList;
|
||||
buildConfigurations = (
|
||||
3E4BA244089833B7007656EC /* Debug */,
|
||||
3E4BA245089833B7007656EC /* Release */,
|
||||
);
|
||||
defaultConfigurationIsVisible = 0;
|
||||
defaultConfigurationName = Debug;
|
||||
};
|
||||
3E4BA247089833B7007656EC /* Build configuration list for PBXProject "SmoothEQ2" */ = {
|
||||
isa = XCConfigurationList;
|
||||
buildConfigurations = (
|
||||
3E4BA248089833B7007656EC /* Debug */,
|
||||
3E4BA249089833B7007656EC /* Release */,
|
||||
);
|
||||
defaultConfigurationIsVisible = 0;
|
||||
defaultConfigurationName = Debug;
|
||||
};
|
||||
/* End XCConfigurationList section */
|
||||
};
|
||||
rootObject = 089C1669FE841209C02AAC07 /* Project object */;
|
||||
}
|
||||
7
plugins/MacSignedAU/SmoothEQ2/SmoothEQ2.xcodeproj/project.xcworkspace/contents.xcworkspacedata
generated
Normal file
7
plugins/MacSignedAU/SmoothEQ2/SmoothEQ2.xcodeproj/project.xcworkspace/contents.xcworkspacedata
generated
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Workspace
|
||||
version = "1.0">
|
||||
<FileRef
|
||||
location = "self:">
|
||||
</FileRef>
|
||||
</Workspace>
|
||||
|
|
@ -0,0 +1,8 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>IDEDidComputeMac32BitWarning</key>
|
||||
<true/>
|
||||
</dict>
|
||||
</plist>
|
||||
Binary file not shown.
|
|
@ -0,0 +1,67 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Scheme
|
||||
LastUpgradeVersion = "1420"
|
||||
version = "1.3">
|
||||
<BuildAction
|
||||
parallelizeBuildables = "YES"
|
||||
buildImplicitDependencies = "YES">
|
||||
<BuildActionEntries>
|
||||
<BuildActionEntry
|
||||
buildForTesting = "YES"
|
||||
buildForRunning = "YES"
|
||||
buildForProfiling = "YES"
|
||||
buildForArchiving = "YES"
|
||||
buildForAnalyzing = "YES">
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "8D01CCC60486CAD60068D4B7"
|
||||
BuildableName = "SmoothEQ2.component"
|
||||
BlueprintName = "SmoothEQ2"
|
||||
ReferencedContainer = "container:SmoothEQ2.xcodeproj">
|
||||
</BuildableReference>
|
||||
</BuildActionEntry>
|
||||
</BuildActionEntries>
|
||||
</BuildAction>
|
||||
<TestAction
|
||||
buildConfiguration = "Debug"
|
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
|
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
|
||||
shouldUseLaunchSchemeArgsEnv = "YES">
|
||||
<Testables>
|
||||
</Testables>
|
||||
</TestAction>
|
||||
<LaunchAction
|
||||
buildConfiguration = "Release"
|
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
|
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
|
||||
launchStyle = "0"
|
||||
useCustomWorkingDirectory = "NO"
|
||||
ignoresPersistentStateOnLaunch = "NO"
|
||||
debugDocumentVersioning = "YES"
|
||||
debugServiceExtension = "internal"
|
||||
allowLocationSimulation = "YES">
|
||||
</LaunchAction>
|
||||
<ProfileAction
|
||||
buildConfiguration = "Release"
|
||||
shouldUseLaunchSchemeArgsEnv = "YES"
|
||||
savedToolIdentifier = ""
|
||||
useCustomWorkingDirectory = "NO"
|
||||
debugDocumentVersioning = "YES">
|
||||
<MacroExpansion>
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "8D01CCC60486CAD60068D4B7"
|
||||
BuildableName = "SmoothEQ2.component"
|
||||
BlueprintName = "SmoothEQ2"
|
||||
ReferencedContainer = "container:SmoothEQ2.xcodeproj">
|
||||
</BuildableReference>
|
||||
</MacroExpansion>
|
||||
</ProfileAction>
|
||||
<AnalyzeAction
|
||||
buildConfiguration = "Debug">
|
||||
</AnalyzeAction>
|
||||
<ArchiveAction
|
||||
buildConfiguration = "Release"
|
||||
revealArchiveInOrganizer = "YES">
|
||||
</ArchiveAction>
|
||||
</Scheme>
|
||||
|
|
@ -0,0 +1,22 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>SchemeUserState</key>
|
||||
<dict>
|
||||
<key>SmoothEQ2.xcscheme_^#shared#^_</key>
|
||||
<dict>
|
||||
<key>orderHint</key>
|
||||
<integer>0</integer>
|
||||
</dict>
|
||||
</dict>
|
||||
<key>SuppressBuildableAutocreation</key>
|
||||
<dict>
|
||||
<key>8D01CCC60486CAD60068D4B7</key>
|
||||
<dict>
|
||||
<key>primary</key>
|
||||
<true/>
|
||||
</dict>
|
||||
</dict>
|
||||
</dict>
|
||||
</plist>
|
||||
58
plugins/MacSignedAU/SmoothEQ2/SmoothEQ2Version.h
Executable file
58
plugins/MacSignedAU/SmoothEQ2/SmoothEQ2Version.h
Executable file
|
|
@ -0,0 +1,58 @@
|
|||
/*
|
||||
* File: SmoothEQ2Version.h
|
||||
*
|
||||
* Version: 1.0
|
||||
*
|
||||
* Created: 8/14/25
|
||||
*
|
||||
* Copyright: Copyright © 2025 Airwindows, Airwindows uses the MIT license
|
||||
*
|
||||
* Disclaimer: IMPORTANT: This Apple software is supplied to you by Apple Computer, Inc. ("Apple") in
|
||||
* consideration of your agreement to the following terms, and your use, installation, modification
|
||||
* or redistribution of this Apple software constitutes acceptance of these terms. If you do
|
||||
* not agree with these terms, please do not use, install, modify or redistribute this Apple
|
||||
* software.
|
||||
*
|
||||
* In consideration of your agreement to abide by the following terms, and subject to these terms,
|
||||
* Apple grants you a personal, non-exclusive license, under Apple's copyrights in this
|
||||
* original Apple software (the "Apple Software"), to use, reproduce, modify and redistribute the
|
||||
* Apple Software, with or without modifications, in source and/or binary forms; provided that if you
|
||||
* redistribute the Apple Software in its entirety and without modifications, you must retain this
|
||||
* notice and the following text and disclaimers in all such redistributions of the Apple Software.
|
||||
* Neither the name, trademarks, service marks or logos of Apple Computer, Inc. may be used to
|
||||
* endorse or promote products derived from the Apple Software without specific prior written
|
||||
* permission from Apple. Except as expressly stated in this notice, no other rights or
|
||||
* licenses, express or implied, are granted by Apple herein, including but not limited to any
|
||||
* patent rights that may be infringed by your derivative works or by other works in which the
|
||||
* Apple Software may be incorporated.
|
||||
*
|
||||
* The Apple Software is provided by Apple on an "AS IS" basis. APPLE MAKES NO WARRANTIES, EXPRESS OR
|
||||
* IMPLIED, INCLUDING WITHOUT LIMITATION THE IMPLIED WARRANTIES OF NON-INFRINGEMENT, MERCHANTABILITY
|
||||
* AND FITNESS FOR A PARTICULAR PURPOSE, REGARDING THE APPLE SOFTWARE OR ITS USE AND OPERATION ALONE
|
||||
* OR IN COMBINATION WITH YOUR PRODUCTS.
|
||||
*
|
||||
* IN NO EVENT SHALL APPLE BE LIABLE FOR ANY SPECIAL, INDIRECT, INCIDENTAL OR CONSEQUENTIAL
|
||||
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
|
||||
* OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) ARISING IN ANY WAY OUT OF THE USE,
|
||||
* REPRODUCTION, MODIFICATION AND/OR DISTRIBUTION OF THE APPLE SOFTWARE, HOWEVER CAUSED AND WHETHER
|
||||
* UNDER THEORY OF CONTRACT, TORT (INCLUDING NEGLIGENCE), STRICT LIABILITY OR OTHERWISE, EVEN
|
||||
* IF APPLE HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
*/
|
||||
#ifndef __SmoothEQ2Version_h__
|
||||
#define __SmoothEQ2Version_h__
|
||||
|
||||
|
||||
#ifdef DEBUG
|
||||
#define kSmoothEQ2Version 0xFFFFFFFF
|
||||
#else
|
||||
#define kSmoothEQ2Version 0x00010000
|
||||
#endif
|
||||
|
||||
//~~~~~~~~~~~~~~ Change!!! ~~~~~~~~~~~~~~~~~~~~~//
|
||||
#define SmoothEQ2_COMP_MANF 'Dthr'
|
||||
#define SmoothEQ2_COMP_SUBTYPE 'sme2'
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~//
|
||||
|
||||
#endif
|
||||
|
||||
BIN
plugins/MacSignedAU/SmoothEQ2/en.lproj/InfoPlist.strings
Executable file
BIN
plugins/MacSignedAU/SmoothEQ2/en.lproj/InfoPlist.strings
Executable file
Binary file not shown.
16
plugins/MacSignedAU/SmoothEQ2/version.plist
Executable file
16
plugins/MacSignedAU/SmoothEQ2/version.plist
Executable file
|
|
@ -0,0 +1,16 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>BuildVersion</key>
|
||||
<string>3</string>
|
||||
<key>CFBundleShortVersionString</key>
|
||||
<string>1.0</string>
|
||||
<key>CFBundleVersion</key>
|
||||
<string>1.0</string>
|
||||
<key>ProjectName</key>
|
||||
<string>${EXECUTABLE_NAME}</string>
|
||||
<key>SourceVersion</key>
|
||||
<string>590000</string>
|
||||
</dict>
|
||||
</plist>
|
||||
47
plugins/MacSignedAU/SmoothEQ3/Info.plist
Executable file
47
plugins/MacSignedAU/SmoothEQ3/Info.plist
Executable file
|
|
@ -0,0 +1,47 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>AudioComponents</key>
|
||||
<array>
|
||||
<dict>
|
||||
<key>description</key>
|
||||
<string>${PRODUCT_NAME:identifier} AU</string>
|
||||
<key>factoryFunction</key>
|
||||
<string>${PRODUCT_NAME:identifier}Factory</string>
|
||||
<key>manufacturer</key>
|
||||
<string>Dthr</string>
|
||||
<key>name</key>
|
||||
<string>Airwindows: ${PRODUCT_NAME:identifier}</string>
|
||||
<key>subtype</key>
|
||||
<string>sme3</string>
|
||||
<key>type</key>
|
||||
<string>aufx</string>
|
||||
<key>version</key>
|
||||
<integer>65536</integer>
|
||||
</dict>
|
||||
</array>
|
||||
<key>CFBundleDevelopmentRegion</key>
|
||||
<string>English</string>
|
||||
<key>CFBundleExecutable</key>
|
||||
<string>${EXECUTABLE_NAME}</string>
|
||||
<key>CFBundleIconFile</key>
|
||||
<string></string>
|
||||
<key>CFBundleIdentifier</key>
|
||||
<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
|
||||
<key>CFBundleInfoDictionaryVersion</key>
|
||||
<string>6.0</string>
|
||||
<key>CFBundleName</key>
|
||||
<string>${PROJECTNAMEASIDENTIFIER}</string>
|
||||
<key>CFBundlePackageType</key>
|
||||
<string>BNDL</string>
|
||||
<key>CFBundleShortVersionString</key>
|
||||
<string>1.0</string>
|
||||
<key>CFBundleSignature</key>
|
||||
<string>DthX</string>
|
||||
<key>CFBundleVersion</key>
|
||||
<string>1.0</string>
|
||||
<key>CSResourcesFileMapped</key>
|
||||
<true/>
|
||||
</dict>
|
||||
</plist>
|
||||
270
plugins/MacSignedAU/SmoothEQ3/SmoothEQ3.cpp
Executable file
270
plugins/MacSignedAU/SmoothEQ3/SmoothEQ3.cpp
Executable file
|
|
@ -0,0 +1,270 @@
|
|||
/*
|
||||
* File: SmoothEQ3.cpp
|
||||
*
|
||||
* Version: 1.0
|
||||
*
|
||||
* Created: 8/15/25
|
||||
*
|
||||
* Copyright: Copyright © 2025 Airwindows, Airwindows uses the MIT license
|
||||
*
|
||||
* Disclaimer: IMPORTANT: This Apple software is supplied to you by Apple Computer, Inc. ("Apple") in
|
||||
* consideration of your agreement to the following terms, and your use, installation, modification
|
||||
* or redistribution of this Apple software constitutes acceptance of these terms. If you do
|
||||
* not agree with these terms, please do not use, install, modify or redistribute this Apple
|
||||
* software.
|
||||
*
|
||||
* In consideration of your agreement to abide by the following terms, and subject to these terms,
|
||||
* Apple grants you a personal, non-exclusive license, under Apple's copyrights in this
|
||||
* original Apple software (the "Apple Software"), to use, reproduce, modify and redistribute the
|
||||
* Apple Software, with or without modifications, in source and/or binary forms; provided that if you
|
||||
* redistribute the Apple Software in its entirety and without modifications, you must retain this
|
||||
* notice and the following text and disclaimers in all such redistributions of the Apple Software.
|
||||
* Neither the name, trademarks, service marks or logos of Apple Computer, Inc. may be used to
|
||||
* endorse or promote products derived from the Apple Software without specific prior written
|
||||
* permission from Apple. Except as expressly stated in this notice, no other rights or
|
||||
* licenses, express or implied, are granted by Apple herein, including but not limited to any
|
||||
* patent rights that may be infringed by your derivative works or by other works in which the
|
||||
* Apple Software may be incorporated.
|
||||
*
|
||||
* The Apple Software is provided by Apple on an "AS IS" basis. APPLE MAKES NO WARRANTIES, EXPRESS OR
|
||||
* IMPLIED, INCLUDING WITHOUT LIMITATION THE IMPLIED WARRANTIES OF NON-INFRINGEMENT, MERCHANTABILITY
|
||||
* AND FITNESS FOR A PARTICULAR PURPOSE, REGARDING THE APPLE SOFTWARE OR ITS USE AND OPERATION ALONE
|
||||
* OR IN COMBINATION WITH YOUR PRODUCTS.
|
||||
*
|
||||
* IN NO EVENT SHALL APPLE BE LIABLE FOR ANY SPECIAL, INDIRECT, INCIDENTAL OR CONSEQUENTIAL
|
||||
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
|
||||
* OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) ARISING IN ANY WAY OUT OF THE USE,
|
||||
* REPRODUCTION, MODIFICATION AND/OR DISTRIBUTION OF THE APPLE SOFTWARE, HOWEVER CAUSED AND WHETHER
|
||||
* UNDER THEORY OF CONTRACT, TORT (INCLUDING NEGLIGENCE), STRICT LIABILITY OR OTHERWISE, EVEN
|
||||
* IF APPLE HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
*/
|
||||
/*=============================================================================
|
||||
SmoothEQ3.cpp
|
||||
|
||||
=============================================================================*/
|
||||
#include "SmoothEQ3.h"
|
||||
|
||||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
AUDIOCOMPONENT_ENTRY(AUBaseFactory, SmoothEQ3)
|
||||
|
||||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
// SmoothEQ3::SmoothEQ3
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
SmoothEQ3::SmoothEQ3(AudioUnit component)
|
||||
: AUEffectBase(component)
|
||||
{
|
||||
CreateElements();
|
||||
Globals()->UseIndexedParameters(kNumberOfParameters);
|
||||
SetParameter(kParam_A, kDefaultValue_ParamA );
|
||||
SetParameter(kParam_B, kDefaultValue_ParamB );
|
||||
SetParameter(kParam_C, kDefaultValue_ParamC );
|
||||
|
||||
#if AU_DEBUG_DISPATCHER
|
||||
mDebugDispatcher = new AUDebugDispatcher (this);
|
||||
#endif
|
||||
|
||||
}
|
||||
|
||||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
// SmoothEQ3::GetParameterValueStrings
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
ComponentResult SmoothEQ3::GetParameterValueStrings(AudioUnitScope inScope,
|
||||
AudioUnitParameterID inParameterID,
|
||||
CFArrayRef * outStrings)
|
||||
{
|
||||
|
||||
return kAudioUnitErr_InvalidProperty;
|
||||
}
|
||||
|
||||
|
||||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
// SmoothEQ3::GetParameterInfo
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
ComponentResult SmoothEQ3::GetParameterInfo(AudioUnitScope inScope,
|
||||
AudioUnitParameterID inParameterID,
|
||||
AudioUnitParameterInfo &outParameterInfo )
|
||||
{
|
||||
ComponentResult result = noErr;
|
||||
|
||||
outParameterInfo.flags = kAudioUnitParameterFlag_IsWritable
|
||||
| kAudioUnitParameterFlag_IsReadable;
|
||||
|
||||
if (inScope == kAudioUnitScope_Global) {
|
||||
switch(inParameterID)
|
||||
{
|
||||
case kParam_A:
|
||||
AUBase::FillInParameterName (outParameterInfo, kParameterAName, false);
|
||||
outParameterInfo.unit = kAudioUnitParameterUnit_Generic;
|
||||
outParameterInfo.minValue = 0.0;
|
||||
outParameterInfo.maxValue = 1.0;
|
||||
outParameterInfo.defaultValue = kDefaultValue_ParamA;
|
||||
break;
|
||||
case kParam_B:
|
||||
AUBase::FillInParameterName (outParameterInfo, kParameterBName, false);
|
||||
outParameterInfo.unit = kAudioUnitParameterUnit_Generic;
|
||||
outParameterInfo.minValue = 0.0;
|
||||
outParameterInfo.maxValue = 1.0;
|
||||
outParameterInfo.defaultValue = kDefaultValue_ParamB;
|
||||
break;
|
||||
case kParam_C:
|
||||
AUBase::FillInParameterName (outParameterInfo, kParameterCName, false);
|
||||
outParameterInfo.unit = kAudioUnitParameterUnit_Generic;
|
||||
outParameterInfo.minValue = 0.0;
|
||||
outParameterInfo.maxValue = 1.0;
|
||||
outParameterInfo.defaultValue = kDefaultValue_ParamC;
|
||||
break;
|
||||
default:
|
||||
result = kAudioUnitErr_InvalidParameter;
|
||||
break;
|
||||
}
|
||||
} else {
|
||||
result = kAudioUnitErr_InvalidParameter;
|
||||
}
|
||||
|
||||
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
// SmoothEQ3::GetPropertyInfo
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
ComponentResult SmoothEQ3::GetPropertyInfo (AudioUnitPropertyID inID,
|
||||
AudioUnitScope inScope,
|
||||
AudioUnitElement inElement,
|
||||
UInt32 & outDataSize,
|
||||
Boolean & outWritable)
|
||||
{
|
||||
return AUEffectBase::GetPropertyInfo (inID, inScope, inElement, outDataSize, outWritable);
|
||||
}
|
||||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
// SmoothEQ3::GetProperty
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
ComponentResult SmoothEQ3::GetProperty( AudioUnitPropertyID inID,
|
||||
AudioUnitScope inScope,
|
||||
AudioUnitElement inElement,
|
||||
void * outData )
|
||||
{
|
||||
return AUEffectBase::GetProperty (inID, inScope, inElement, outData);
|
||||
}
|
||||
|
||||
// SmoothEQ3::Initialize
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
ComponentResult SmoothEQ3::Initialize()
|
||||
{
|
||||
ComponentResult result = AUEffectBase::Initialize();
|
||||
if (result == noErr)
|
||||
Reset(kAudioUnitScope_Global, 0);
|
||||
return result;
|
||||
}
|
||||
|
||||
#pragma mark ____SmoothEQ3EffectKernel
|
||||
|
||||
|
||||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
// SmoothEQ3::SmoothEQ3Kernel::Reset()
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
void SmoothEQ3::SmoothEQ3Kernel::Reset()
|
||||
{
|
||||
for (int x = 0; x < biq_total; x++) {
|
||||
highFast[x] = 0.0;
|
||||
lowFast[x] = 0.0;
|
||||
}
|
||||
highFastIIR = 0.0;
|
||||
lowFastIIR = 0.0;
|
||||
fpd = 1.0; while (fpd < 16386) fpd = rand()*UINT32_MAX;
|
||||
}
|
||||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
// SmoothEQ3::SmoothEQ3Kernel::Process
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
void SmoothEQ3::SmoothEQ3Kernel::Process( const Float32 *inSourceP,
|
||||
Float32 *inDestP,
|
||||
UInt32 inFramesToProcess,
|
||||
UInt32 inNumChannels,
|
||||
bool &ioSilence )
|
||||
{
|
||||
UInt32 nSampleFrames = inFramesToProcess;
|
||||
const Float32 *sourceP = inSourceP;
|
||||
Float32 *destP = inDestP;
|
||||
|
||||
double trebleGain = (GetParameter( kParam_A )-0.5)*2.0;
|
||||
trebleGain = 1.0+(trebleGain*fabs(trebleGain)*fabs(trebleGain));
|
||||
double midGain = (GetParameter( kParam_B )-0.5)*2.0;
|
||||
midGain = 1.0+(midGain*fabs(midGain)*fabs(midGain));
|
||||
double bassGain = (GetParameter( kParam_C )-0.5)*2.0;
|
||||
bassGain = 1.0+(bassGain*fabs(bassGain)*fabs(bassGain));
|
||||
//separate from filtering stage, this is amplitude, centered on 1.0 unity gain
|
||||
|
||||
//SmoothEQ3 is how to get 3rd order steepness at very low CPU.
|
||||
//because sample rate varies, you could also vary the crossovers
|
||||
//you can't vary Q because math is simplified to take advantage of
|
||||
//how the accurate Q value for this filter is always exactly 1.0.
|
||||
highFast[biq_freq] = (4000.0/GetSampleRate());
|
||||
double omega = 2.0*M_PI*(4000.0/GetSampleRate()); //mid-high crossover freq
|
||||
double K = 2.0 - cos(omega);
|
||||
double highCoef = -sqrt(K*K - 1.0) + K;
|
||||
lowFast[biq_freq] = (200.0/GetSampleRate());
|
||||
omega = 2.0*M_PI*(200.0/GetSampleRate()); //low-mid crossover freq
|
||||
K = 2.0 - cos(omega);
|
||||
double lowCoef = -sqrt(K*K - 1.0) + K;
|
||||
//exponential IIR filter as part of an accurate 3rd order Butterworth filter
|
||||
K = tan(M_PI * highFast[biq_freq]);
|
||||
double norm = 1.0 / (1.0 + K + K*K);
|
||||
highFast[biq_a0] = K * K * norm;
|
||||
highFast[biq_a1] = 2.0 * highFast[biq_a0];
|
||||
highFast[biq_a2] = highFast[biq_a0];
|
||||
highFast[biq_b1] = 2.0 * (K*K - 1.0) * norm;
|
||||
highFast[biq_b2] = (1.0 - K + K*K) * norm;
|
||||
K = tan(M_PI * lowFast[biq_freq]);
|
||||
norm = 1.0 / (1.0 + K + K*K);
|
||||
lowFast[biq_a0] = K * K * norm;
|
||||
lowFast[biq_a1] = 2.0 * lowFast[biq_a0];
|
||||
lowFast[biq_a2] = lowFast[biq_a0];
|
||||
lowFast[biq_b1] = 2.0 * (K*K - 1.0) * norm;
|
||||
lowFast[biq_b2] = (1.0 - K + K*K) * norm;
|
||||
//custom biquad setup with Q = 1.0 gets to omit some divides
|
||||
|
||||
while (nSampleFrames-- > 0) {
|
||||
double inputSampleL = *sourceP;
|
||||
if (fabs(inputSampleL)<1.18e-23) inputSampleL = fpd * 1.18e-17;
|
||||
|
||||
double trebleFastL = inputSampleL;
|
||||
double outSample = (trebleFastL * highFast[biq_a0]) + highFast[biq_sL1];
|
||||
highFast[biq_sL1] = (trebleFastL * highFast[biq_a1]) - (outSample * highFast[biq_b1]) + highFast[biq_sL2];
|
||||
highFast[biq_sL2] = (trebleFastL * highFast[biq_a2]) - (outSample * highFast[biq_b2]);
|
||||
double midFastL = outSample; trebleFastL -= midFastL;
|
||||
outSample = (midFastL * lowFast[biq_a0]) + lowFast[biq_sL1];
|
||||
lowFast[biq_sL1] = (midFastL * lowFast[biq_a1]) - (outSample * lowFast[biq_b1]) + lowFast[biq_sL2];
|
||||
lowFast[biq_sL2] = (midFastL * lowFast[biq_a2]) - (outSample * lowFast[biq_b2]);
|
||||
double bassFastL = outSample; midFastL -= bassFastL;
|
||||
trebleFastL = (bassFastL*bassGain) + (midFastL*midGain) + (trebleFastL*trebleGain);
|
||||
//first stage of two crossovers is biquad of exactly 1.0 Q
|
||||
highFastIIR = (highFastIIR*highCoef) + (trebleFastL*(1.0-highCoef));
|
||||
midFastL = highFastIIR; trebleFastL -= midFastL;
|
||||
lowFastIIR = (lowFastIIR*lowCoef) + (midFastL*(1.0-lowCoef));
|
||||
bassFastL = lowFastIIR; midFastL -= bassFastL;
|
||||
inputSampleL = (bassFastL*bassGain) + (midFastL*midGain) + (trebleFastL*trebleGain);
|
||||
//second stage of two crossovers is the exponential filters
|
||||
//this produces a slightly steeper Butterworth filter very cheaply
|
||||
|
||||
//begin 32 bit floating point dither
|
||||
int expon; frexpf((float)inputSampleL, &expon);
|
||||
fpd ^= fpd << 13; fpd ^= fpd >> 17; fpd ^= fpd << 5;
|
||||
inputSampleL += ((double(fpd)-uint32_t(0x7fffffff)) * 5.5e-36l * pow(2,expon+62));
|
||||
//end 32 bit floating point dither
|
||||
|
||||
*destP = inputSampleL;
|
||||
|
||||
sourceP += inNumChannels; destP += inNumChannels;
|
||||
}
|
||||
}
|
||||
|
||||
2
plugins/MacSignedAU/SmoothEQ3/SmoothEQ3.exp
Executable file
2
plugins/MacSignedAU/SmoothEQ3/SmoothEQ3.exp
Executable file
|
|
@ -0,0 +1,2 @@
|
|||
_SmoothEQ3Entry
|
||||
_SmoothEQ3Factory
|
||||
159
plugins/MacSignedAU/SmoothEQ3/SmoothEQ3.h
Executable file
159
plugins/MacSignedAU/SmoothEQ3/SmoothEQ3.h
Executable file
|
|
@ -0,0 +1,159 @@
|
|||
/*
|
||||
* File: SmoothEQ3.h
|
||||
*
|
||||
* Version: 1.0
|
||||
*
|
||||
* Created: 8/15/25
|
||||
*
|
||||
* Copyright: Copyright © 2025 Airwindows, Airwindows uses the MIT license
|
||||
*
|
||||
* Disclaimer: IMPORTANT: This Apple software is supplied to you by Apple Computer, Inc. ("Apple") in
|
||||
* consideration of your agreement to the following terms, and your use, installation, modification
|
||||
* or redistribution of this Apple software constitutes acceptance of these terms. If you do
|
||||
* not agree with these terms, please do not use, install, modify or redistribute this Apple
|
||||
* software.
|
||||
*
|
||||
* In consideration of your agreement to abide by the following terms, and subject to these terms,
|
||||
* Apple grants you a personal, non-exclusive license, under Apple's copyrights in this
|
||||
* original Apple software (the "Apple Software"), to use, reproduce, modify and redistribute the
|
||||
* Apple Software, with or without modifications, in source and/or binary forms; provided that if you
|
||||
* redistribute the Apple Software in its entirety and without modifications, you must retain this
|
||||
* notice and the following text and disclaimers in all such redistributions of the Apple Software.
|
||||
* Neither the name, trademarks, service marks or logos of Apple Computer, Inc. may be used to
|
||||
* endorse or promote products derived from the Apple Software without specific prior written
|
||||
* permission from Apple. Except as expressly stated in this notice, no other rights or
|
||||
* licenses, express or implied, are granted by Apple herein, including but not limited to any
|
||||
* patent rights that may be infringed by your derivative works or by other works in which the
|
||||
* Apple Software may be incorporated.
|
||||
*
|
||||
* The Apple Software is provided by Apple on an "AS IS" basis. APPLE MAKES NO WARRANTIES, EXPRESS OR
|
||||
* IMPLIED, INCLUDING WITHOUT LIMITATION THE IMPLIED WARRANTIES OF NON-INFRINGEMENT, MERCHANTABILITY
|
||||
* AND FITNESS FOR A PARTICULAR PURPOSE, REGARDING THE APPLE SOFTWARE OR ITS USE AND OPERATION ALONE
|
||||
* OR IN COMBINATION WITH YOUR PRODUCTS.
|
||||
*
|
||||
* IN NO EVENT SHALL APPLE BE LIABLE FOR ANY SPECIAL, INDIRECT, INCIDENTAL OR CONSEQUENTIAL
|
||||
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
|
||||
* OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) ARISING IN ANY WAY OUT OF THE USE,
|
||||
* REPRODUCTION, MODIFICATION AND/OR DISTRIBUTION OF THE APPLE SOFTWARE, HOWEVER CAUSED AND WHETHER
|
||||
* UNDER THEORY OF CONTRACT, TORT (INCLUDING NEGLIGENCE), STRICT LIABILITY OR OTHERWISE, EVEN
|
||||
* IF APPLE HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
*/
|
||||
#include "AUEffectBase.h"
|
||||
#include "SmoothEQ3Version.h"
|
||||
|
||||
#if AU_DEBUG_DISPATCHER
|
||||
#include "AUDebugDispatcher.h"
|
||||
#endif
|
||||
|
||||
|
||||
#ifndef __SmoothEQ3_h__
|
||||
#define __SmoothEQ3_h__
|
||||
|
||||
|
||||
#pragma mark ____SmoothEQ3 Parameters
|
||||
|
||||
// parameters
|
||||
static const float kDefaultValue_ParamA = 0.5;
|
||||
static const float kDefaultValue_ParamB = 0.5;
|
||||
static const float kDefaultValue_ParamC = 0.5;
|
||||
|
||||
static CFStringRef kParameterAName = CFSTR("High");
|
||||
static CFStringRef kParameterBName = CFSTR("Mid");
|
||||
static CFStringRef kParameterCName = CFSTR("Bass");
|
||||
|
||||
enum {
|
||||
kParam_A =0,
|
||||
kParam_B =1,
|
||||
kParam_C =2,
|
||||
//Add your parameters here...
|
||||
kNumberOfParameters=3
|
||||
};
|
||||
|
||||
#pragma mark ____SmoothEQ3
|
||||
class SmoothEQ3 : public AUEffectBase
|
||||
{
|
||||
public:
|
||||
SmoothEQ3(AudioUnit component);
|
||||
#if AU_DEBUG_DISPATCHER
|
||||
virtual ~SmoothEQ3 () { delete mDebugDispatcher; }
|
||||
#endif
|
||||
|
||||
virtual AUKernelBase * NewKernel() { return new SmoothEQ3Kernel(this); }
|
||||
|
||||
virtual ComponentResult GetParameterValueStrings(AudioUnitScope inScope,
|
||||
AudioUnitParameterID inParameterID,
|
||||
CFArrayRef * outStrings);
|
||||
|
||||
virtual ComponentResult GetParameterInfo(AudioUnitScope inScope,
|
||||
AudioUnitParameterID inParameterID,
|
||||
AudioUnitParameterInfo &outParameterInfo);
|
||||
|
||||
virtual ComponentResult GetPropertyInfo(AudioUnitPropertyID inID,
|
||||
AudioUnitScope inScope,
|
||||
AudioUnitElement inElement,
|
||||
UInt32 & outDataSize,
|
||||
Boolean & outWritable );
|
||||
|
||||
virtual ComponentResult GetProperty(AudioUnitPropertyID inID,
|
||||
AudioUnitScope inScope,
|
||||
AudioUnitElement inElement,
|
||||
void * outData);
|
||||
|
||||
virtual ComponentResult Initialize();
|
||||
virtual bool SupportsTail () { return true; }
|
||||
virtual Float64 GetTailTime() {return (1.0/GetSampleRate())*0.0;} //in SECONDS! gsr * a number = in samples
|
||||
virtual Float64 GetLatency() {return (1.0/GetSampleRate())*0.0;} // in SECONDS! gsr * a number = in samples
|
||||
|
||||
/*! @method Version */
|
||||
virtual ComponentResult Version() { return kSmoothEQ3Version; }
|
||||
|
||||
|
||||
|
||||
protected:
|
||||
class SmoothEQ3Kernel : public AUKernelBase // most of the real work happens here
|
||||
{
|
||||
public:
|
||||
SmoothEQ3Kernel(AUEffectBase *inAudioUnit )
|
||||
: AUKernelBase(inAudioUnit)
|
||||
{
|
||||
}
|
||||
|
||||
// *Required* overides for the process method for this effect
|
||||
// processes one channel of interleaved samples
|
||||
virtual void Process( const Float32 *inSourceP,
|
||||
Float32 *inDestP,
|
||||
UInt32 inFramesToProcess,
|
||||
UInt32 inNumChannels,
|
||||
bool &ioSilence);
|
||||
|
||||
virtual void Reset();
|
||||
|
||||
private:
|
||||
enum {
|
||||
biq_freq,
|
||||
biq_reso,
|
||||
biq_a0,
|
||||
biq_a1,
|
||||
biq_a2,
|
||||
biq_b1,
|
||||
biq_b2,
|
||||
biq_sL1,
|
||||
biq_sL2,
|
||||
biq_sR1,
|
||||
biq_sR2,
|
||||
biq_total
|
||||
};
|
||||
double highFast[biq_total];
|
||||
double lowFast[biq_total];
|
||||
double highFastIIR;
|
||||
double lowFastIIR;
|
||||
|
||||
uint32_t fpd;
|
||||
};
|
||||
};
|
||||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
|
||||
#endif
|
||||
61
plugins/MacSignedAU/SmoothEQ3/SmoothEQ3.r
Executable file
61
plugins/MacSignedAU/SmoothEQ3/SmoothEQ3.r
Executable file
|
|
@ -0,0 +1,61 @@
|
|||
/*
|
||||
* File: SmoothEQ3.r
|
||||
*
|
||||
* Version: 1.0
|
||||
*
|
||||
* Created: 8/15/25
|
||||
*
|
||||
* Copyright: Copyright © 2025 Airwindows, Airwindows uses the MIT license
|
||||
*
|
||||
* Disclaimer: IMPORTANT: This Apple software is supplied to you by Apple Computer, Inc. ("Apple") in
|
||||
* consideration of your agreement to the following terms, and your use, installation, modification
|
||||
* or redistribution of this Apple software constitutes acceptance of these terms. If you do
|
||||
* not agree with these terms, please do not use, install, modify or redistribute this Apple
|
||||
* software.
|
||||
*
|
||||
* In consideration of your agreement to abide by the following terms, and subject to these terms,
|
||||
* Apple grants you a personal, non-exclusive license, under Apple's copyrights in this
|
||||
* original Apple software (the "Apple Software"), to use, reproduce, modify and redistribute the
|
||||
* Apple Software, with or without modifications, in source and/or binary forms; provided that if you
|
||||
* redistribute the Apple Software in its entirety and without modifications, you must retain this
|
||||
* notice and the following text and disclaimers in all such redistributions of the Apple Software.
|
||||
* Neither the name, trademarks, service marks or logos of Apple Computer, Inc. may be used to
|
||||
* endorse or promote products derived from the Apple Software without specific prior written
|
||||
* permission from Apple. Except as expressly stated in this notice, no other rights or
|
||||
* licenses, express or implied, are granted by Apple herein, including but not limited to any
|
||||
* patent rights that may be infringed by your derivative works or by other works in which the
|
||||
* Apple Software may be incorporated.
|
||||
*
|
||||
* The Apple Software is provided by Apple on an "AS IS" basis. APPLE MAKES NO WARRANTIES, EXPRESS OR
|
||||
* IMPLIED, INCLUDING WITHOUT LIMITATION THE IMPLIED WARRANTIES OF NON-INFRINGEMENT, MERCHANTABILITY
|
||||
* AND FITNESS FOR A PARTICULAR PURPOSE, REGARDING THE APPLE SOFTWARE OR ITS USE AND OPERATION ALONE
|
||||
* OR IN COMBINATION WITH YOUR PRODUCTS.
|
||||
*
|
||||
* IN NO EVENT SHALL APPLE BE LIABLE FOR ANY SPECIAL, INDIRECT, INCIDENTAL OR CONSEQUENTIAL
|
||||
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
|
||||
* OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) ARISING IN ANY WAY OUT OF THE USE,
|
||||
* REPRODUCTION, MODIFICATION AND/OR DISTRIBUTION OF THE APPLE SOFTWARE, HOWEVER CAUSED AND WHETHER
|
||||
* UNDER THEORY OF CONTRACT, TORT (INCLUDING NEGLIGENCE), STRICT LIABILITY OR OTHERWISE, EVEN
|
||||
* IF APPLE HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
*/
|
||||
#include <AudioUnit/AudioUnit.r>
|
||||
|
||||
#include "SmoothEQ3Version.h"
|
||||
|
||||
// Note that resource IDs must be spaced 2 apart for the 'STR ' name and description
|
||||
#define kAudioUnitResID_SmoothEQ3 1000
|
||||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ SmoothEQ3~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
#define RES_ID kAudioUnitResID_SmoothEQ3
|
||||
#define COMP_TYPE kAudioUnitType_Effect
|
||||
#define COMP_SUBTYPE SmoothEQ3_COMP_SUBTYPE
|
||||
#define COMP_MANUF SmoothEQ3_COMP_MANF
|
||||
|
||||
#define VERSION kSmoothEQ3Version
|
||||
#define NAME "Airwindows: SmoothEQ3"
|
||||
#define DESCRIPTION "SmoothEQ3 AU"
|
||||
#define ENTRY_POINT "SmoothEQ3Entry"
|
||||
|
||||
#include "AUResources.r"
|
||||
1358
plugins/MacSignedAU/SmoothEQ3/SmoothEQ3.xcodeproj/christopherjohnson.mode1v3
Executable file
1358
plugins/MacSignedAU/SmoothEQ3/SmoothEQ3.xcodeproj/christopherjohnson.mode1v3
Executable file
File diff suppressed because it is too large
Load diff
137
plugins/MacSignedAU/SmoothEQ3/SmoothEQ3.xcodeproj/christopherjohnson.pbxuser
Executable file
137
plugins/MacSignedAU/SmoothEQ3/SmoothEQ3.xcodeproj/christopherjohnson.pbxuser
Executable file
|
|
@ -0,0 +1,137 @@
|
|||
// !$*UTF8*$!
|
||||
{
|
||||
089C1669FE841209C02AAC07 /* Project object */ = {
|
||||
activeBuildConfigurationName = Release;
|
||||
activeTarget = 8D01CCC60486CAD60068D4B7 /* SmoothEQ3 */;
|
||||
codeSenseManager = 8BD3CCB9148830B20062E48C /* Code sense */;
|
||||
perUserDictionary = {
|
||||
PBXConfiguration.PBXFileTableDataSource3.PBXFileTableDataSource = {
|
||||
PBXFileTableDataSourceColumnSortingDirectionKey = "-1";
|
||||
PBXFileTableDataSourceColumnSortingKey = PBXFileDataSource_Filename_ColumnID;
|
||||
PBXFileTableDataSourceColumnWidthsKey = (
|
||||
20,
|
||||
292,
|
||||
20,
|
||||
48,
|
||||
43,
|
||||
43,
|
||||
20,
|
||||
);
|
||||
PBXFileTableDataSourceColumnsKey = (
|
||||
PBXFileDataSource_FiletypeID,
|
||||
PBXFileDataSource_Filename_ColumnID,
|
||||
PBXFileDataSource_Built_ColumnID,
|
||||
PBXFileDataSource_ObjectSize_ColumnID,
|
||||
PBXFileDataSource_Errors_ColumnID,
|
||||
PBXFileDataSource_Warnings_ColumnID,
|
||||
PBXFileDataSource_Target_ColumnID,
|
||||
);
|
||||
};
|
||||
PBXConfiguration.PBXTargetDataSource.PBXTargetDataSource = {
|
||||
PBXFileTableDataSourceColumnSortingDirectionKey = "-1";
|
||||
PBXFileTableDataSourceColumnSortingKey = PBXFileDataSource_Filename_ColumnID;
|
||||
PBXFileTableDataSourceColumnWidthsKey = (
|
||||
20,
|
||||
252,
|
||||
60,
|
||||
20,
|
||||
48,
|
||||
43,
|
||||
43,
|
||||
);
|
||||
PBXFileTableDataSourceColumnsKey = (
|
||||
PBXFileDataSource_FiletypeID,
|
||||
PBXFileDataSource_Filename_ColumnID,
|
||||
PBXTargetDataSource_PrimaryAttribute,
|
||||
PBXFileDataSource_Built_ColumnID,
|
||||
PBXFileDataSource_ObjectSize_ColumnID,
|
||||
PBXFileDataSource_Errors_ColumnID,
|
||||
PBXFileDataSource_Warnings_ColumnID,
|
||||
);
|
||||
};
|
||||
PBXPerProjectTemplateStateSaveDate = 777108901;
|
||||
PBXWorkspaceStateSaveDate = 777108901;
|
||||
};
|
||||
perUserProjectItems = {
|
||||
8BBB4C192E50B242007CFABF /* PlistBookmark */ = 8BBB4C192E50B242007CFABF /* PlistBookmark */;
|
||||
8BC8CE222E50B41C00FAAE1C /* PBXTextBookmark */ = 8BC8CE222E50B41C00FAAE1C /* PBXTextBookmark */;
|
||||
8BC8CEF92E51C0CE00FAAE1C /* PBXTextBookmark */ = 8BC8CEF92E51C0CE00FAAE1C /* PBXTextBookmark */;
|
||||
};
|
||||
sourceControlManager = 8BD3CCB8148830B20062E48C /* Source Control */;
|
||||
userBuildSettings = {
|
||||
};
|
||||
};
|
||||
8BA05A660720730100365D66 /* SmoothEQ3.cpp */ = {
|
||||
uiCtxt = {
|
||||
sepNavIntBoundsRect = "{{0, 0}, {912, 4932}}";
|
||||
sepNavSelRange = "{12468, 0}";
|
||||
sepNavVisRange = "{12342, 126}";
|
||||
sepNavWindowFrame = "{{638, 38}, {802, 840}}";
|
||||
};
|
||||
};
|
||||
8BA05A690720730100365D66 /* SmoothEQ3Version.h */ = {
|
||||
uiCtxt = {
|
||||
sepNavIntBoundsRect = "{{0, 0}, {1101, 1062}}";
|
||||
sepNavSelRange = "{2906, 0}";
|
||||
sepNavVisRange = "{862, 2107}";
|
||||
sepNavWindowFrame = "{{15, 38}, {1148, 840}}";
|
||||
};
|
||||
};
|
||||
8BBB4C192E50B242007CFABF /* PlistBookmark */ = {
|
||||
isa = PlistBookmark;
|
||||
fRef = 8D01CCD10486CAD60068D4B7 /* Info.plist */;
|
||||
fallbackIsa = PBXBookmark;
|
||||
isK = 0;
|
||||
kPath = (
|
||||
CFBundleName,
|
||||
);
|
||||
name = /Users/christopherjohnson/Desktop/SmoothEQ3/Info.plist;
|
||||
rLen = 0;
|
||||
rLoc = 9223372036854775808;
|
||||
};
|
||||
8BC6025B073B072D006C4272 /* SmoothEQ3.h */ = {
|
||||
uiCtxt = {
|
||||
sepNavIntBoundsRect = "{{0, 0}, {1146, 2862}}";
|
||||
sepNavSelRange = "{5385, 102}";
|
||||
sepNavVisRange = "{2005, 1230}";
|
||||
sepNavWindowFrame = "{{292, 38}, {1148, 840}}";
|
||||
};
|
||||
};
|
||||
8BC8CE222E50B41C00FAAE1C /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 8BA05A660720730100365D66 /* SmoothEQ3.cpp */;
|
||||
name = "SmoothEQ3.cpp: 274";
|
||||
rLen = 0;
|
||||
rLoc = 12468;
|
||||
rType = 0;
|
||||
vrLen = 315;
|
||||
vrLoc = 12239;
|
||||
};
|
||||
8BC8CEF92E51C0CE00FAAE1C /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 8BA05A660720730100365D66 /* SmoothEQ3.cpp */;
|
||||
name = "SmoothEQ3.cpp: 271";
|
||||
rLen = 0;
|
||||
rLoc = 12468;
|
||||
rType = 0;
|
||||
vrLen = 126;
|
||||
vrLoc = 12342;
|
||||
};
|
||||
8BD3CCB8148830B20062E48C /* Source Control */ = {
|
||||
isa = PBXSourceControlManager;
|
||||
fallbackIsa = XCSourceControlManager;
|
||||
isSCMEnabled = 0;
|
||||
scmConfiguration = {
|
||||
repositoryNamesForRoots = {
|
||||
"" = "";
|
||||
};
|
||||
};
|
||||
};
|
||||
8BD3CCB9148830B20062E48C /* Code sense */ = {
|
||||
isa = PBXCodeSenseManager;
|
||||
indexTemplatePath = "";
|
||||
};
|
||||
8D01CCC60486CAD60068D4B7 /* SmoothEQ3 */ = {
|
||||
activeExec = 0;
|
||||
};
|
||||
}
|
||||
1506
plugins/MacSignedAU/SmoothEQ3/SmoothEQ3.xcodeproj/christopherjohnson.perspectivev3
Executable file
1506
plugins/MacSignedAU/SmoothEQ3/SmoothEQ3.xcodeproj/christopherjohnson.perspectivev3
Executable file
File diff suppressed because it is too large
Load diff
965
plugins/MacSignedAU/SmoothEQ3/SmoothEQ3.xcodeproj/project.pbxproj
Executable file
965
plugins/MacSignedAU/SmoothEQ3/SmoothEQ3.xcodeproj/project.pbxproj
Executable file
|
|
@ -0,0 +1,965 @@
|
|||
// !$*UTF8*$!
|
||||
{
|
||||
archiveVersion = 1;
|
||||
classes = {
|
||||
};
|
||||
objectVersion = 45;
|
||||
objects = {
|
||||
|
||||
/* Begin PBXBuildFile section */
|
||||
8B300CE32E5279B1006F740B /* CAExtAudioFile.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300C5B2E5279B1006F740B /* CAExtAudioFile.h */; };
|
||||
8B300CE42E5279B1006F740B /* CACFMachPort.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300C5C2E5279B1006F740B /* CACFMachPort.h */; };
|
||||
8B300CE52E5279B1006F740B /* CABool.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300C5D2E5279B1006F740B /* CABool.h */; };
|
||||
8B300CE62E5279B1006F740B /* CAComponent.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300C5E2E5279B1006F740B /* CAComponent.cpp */; };
|
||||
8B300CE72E5279B1006F740B /* CADebugger.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300C5F2E5279B1006F740B /* CADebugger.h */; };
|
||||
8B300CE82E5279B1006F740B /* CACFNumber.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300C602E5279B1006F740B /* CACFNumber.cpp */; };
|
||||
8B300CE92E5279B1006F740B /* CAGuard.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300C612E5279B1006F740B /* CAGuard.h */; };
|
||||
8B300CEA2E5279B1006F740B /* CAAtomic.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300C622E5279B1006F740B /* CAAtomic.h */; };
|
||||
8B300CEB2E5279B1006F740B /* CAStreamBasicDescription.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300C632E5279B1006F740B /* CAStreamBasicDescription.h */; };
|
||||
8B300CEC2E5279B1006F740B /* CACFObject.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300C642E5279B1006F740B /* CACFObject.h */; };
|
||||
8B300CED2E5279B1006F740B /* CAStreamRangedDescription.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300C652E5279B1006F740B /* CAStreamRangedDescription.h */; };
|
||||
8B300CEE2E5279B1006F740B /* CATokenMap.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300C662E5279B1006F740B /* CATokenMap.h */; };
|
||||
8B300CEF2E5279B1006F740B /* CAComponent.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300C672E5279B1006F740B /* CAComponent.h */; };
|
||||
8B300CF02E5279B1006F740B /* CAAudioBufferList.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300C682E5279B1006F740B /* CAAudioBufferList.h */; };
|
||||
8B300CF12E5279B1006F740B /* CAAudioUnit.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300C692E5279B1006F740B /* CAAudioUnit.h */; };
|
||||
8B300CF22E5279B1006F740B /* CAAUParameter.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300C6A2E5279B1006F740B /* CAAUParameter.h */; };
|
||||
8B300CF32E5279B1006F740B /* CAException.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300C6B2E5279B1006F740B /* CAException.h */; };
|
||||
8B300CF42E5279B1006F740B /* CAAUProcessor.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300C6C2E5279B1006F740B /* CAAUProcessor.cpp */; };
|
||||
8B300CF52E5279B1006F740B /* CAAUProcessor.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300C6D2E5279B1006F740B /* CAAUProcessor.h */; };
|
||||
8B300CF62E5279B1006F740B /* CAProcess.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300C6E2E5279B1006F740B /* CAProcess.h */; };
|
||||
8B300CF72E5279B1006F740B /* CACFDictionary.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300C6F2E5279B1006F740B /* CACFDictionary.h */; };
|
||||
8B300CF82E5279B1006F740B /* CAPThread.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300C702E5279B1006F740B /* CAPThread.h */; };
|
||||
8B300CF92E5279B1006F740B /* CAAUParameter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300C712E5279B1006F740B /* CAAUParameter.cpp */; };
|
||||
8B300CFA2E5279B1006F740B /* CAAudioTimeStamp.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300C722E5279B1006F740B /* CAAudioTimeStamp.h */; };
|
||||
8B300CFB2E5279B1006F740B /* CAFilePathUtils.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300C732E5279B1006F740B /* CAFilePathUtils.cpp */; };
|
||||
8B300CFC2E5279B1006F740B /* CAAudioValueRange.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300C742E5279B1006F740B /* CAAudioValueRange.h */; };
|
||||
8B300CFD2E5279B1006F740B /* CAVectorUnitTypes.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300C752E5279B1006F740B /* CAVectorUnitTypes.h */; };
|
||||
8B300CFE2E5279B1006F740B /* CAAudioChannelLayoutObject.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300C762E5279B1006F740B /* CAAudioChannelLayoutObject.cpp */; };
|
||||
8B300CFF2E5279B1006F740B /* CAGuard.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300C772E5279B1006F740B /* CAGuard.cpp */; };
|
||||
8B300D002E5279B1006F740B /* CACFNumber.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300C782E5279B1006F740B /* CACFNumber.h */; };
|
||||
8B300D012E5279B1006F740B /* CACFDistributedNotification.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300C792E5279B1006F740B /* CACFDistributedNotification.cpp */; };
|
||||
8B300D022E5279B1006F740B /* CACFString.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300C7A2E5279B1006F740B /* CACFString.h */; };
|
||||
8B300D032E5279B1006F740B /* CAAUMIDIMapManager.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300C7B2E5279B1006F740B /* CAAUMIDIMapManager.cpp */; };
|
||||
8B300D042E5279B1006F740B /* CAComponentDescription.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300C7C2E5279B1006F740B /* CAComponentDescription.cpp */; };
|
||||
8B300D052E5279B1006F740B /* CAHostTimeBase.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300C7D2E5279B1006F740B /* CAHostTimeBase.h */; };
|
||||
8B300D062E5279B1006F740B /* CADebugMacros.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300C7E2E5279B1006F740B /* CADebugMacros.cpp */; };
|
||||
8B300D072E5279B1006F740B /* CAAudioFileFormats.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300C7F2E5279B1006F740B /* CAAudioFileFormats.h */; };
|
||||
8B300D082E5279B1006F740B /* CAAUMIDIMapManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300C802E5279B1006F740B /* CAAUMIDIMapManager.h */; };
|
||||
8B300D092E5279B1006F740B /* CACFDictionary.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300C812E5279B1006F740B /* CACFDictionary.cpp */; };
|
||||
8B300D0A2E5279B1006F740B /* CAMutex.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300C822E5279B1006F740B /* CAMutex.h */; };
|
||||
8B300D0B2E5279B1006F740B /* CACFString.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300C832E5279B1006F740B /* CACFString.cpp */; };
|
||||
8B300D0C2E5279B1006F740B /* CASettingsStorage.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300C842E5279B1006F740B /* CASettingsStorage.h */; };
|
||||
8B300D0D2E5279B1006F740B /* CADebugPrintf.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300C852E5279B1006F740B /* CADebugPrintf.h */; };
|
||||
8B300D0E2E5279B1006F740B /* CAXException.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300C862E5279B1006F740B /* CAXException.cpp */; };
|
||||
8B300D0F2E5279B1006F740B /* CAAUMIDIMap.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300C872E5279B1006F740B /* CAAUMIDIMap.h */; };
|
||||
8B300D102E5279B1006F740B /* AUParamInfo.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300C882E5279B1006F740B /* AUParamInfo.h */; };
|
||||
8B300D112E5279B1006F740B /* CABitOperations.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300C892E5279B1006F740B /* CABitOperations.h */; };
|
||||
8B300D122E5279B1006F740B /* CACFPreferences.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300C8A2E5279B1006F740B /* CACFPreferences.cpp */; };
|
||||
8B300D132E5279B1006F740B /* CABundleLocker.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300C8B2E5279B1006F740B /* CABundleLocker.h */; };
|
||||
8B300D142E5279B1006F740B /* CAPropertyAddress.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300C8C2E5279B1006F740B /* CAPropertyAddress.h */; };
|
||||
8B300D152E5279B1006F740B /* CAXException.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300C8D2E5279B1006F740B /* CAXException.h */; };
|
||||
8B300D162E5279B1006F740B /* CAAudioChannelLayout.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300C8E2E5279B1006F740B /* CAAudioChannelLayout.cpp */; };
|
||||
8B300D172E5279B1006F740B /* CAThreadSafeList.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300C8F2E5279B1006F740B /* CAThreadSafeList.h */; };
|
||||
8B300D182E5279B1006F740B /* CAAudioUnitOutputCapturer.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300C902E5279B1006F740B /* CAAudioUnitOutputCapturer.h */; };
|
||||
8B300D192E5279B1006F740B /* AUParamInfo.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300C912E5279B1006F740B /* AUParamInfo.cpp */; };
|
||||
8B300D1A2E5279B1006F740B /* CASharedLibrary.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300C922E5279B1006F740B /* CASharedLibrary.cpp */; };
|
||||
8B300D1B2E5279B1006F740B /* CAAUMIDIMap.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300C932E5279B1006F740B /* CAAUMIDIMap.cpp */; };
|
||||
8B300D1C2E5279B1006F740B /* CALogMacros.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300C942E5279B1006F740B /* CALogMacros.h */; };
|
||||
8B300D1D2E5279B1006F740B /* CACFMessagePort.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300C952E5279B1006F740B /* CACFMessagePort.cpp */; };
|
||||
8B300D1E2E5279B1006F740B /* CARingBuffer.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300C962E5279B1006F740B /* CARingBuffer.h */; };
|
||||
8B300D1F2E5279B1006F740B /* AUOutputBL.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300C972E5279B1006F740B /* AUOutputBL.cpp */; };
|
||||
8B300D202E5279B1006F740B /* CABufferList.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300C982E5279B1006F740B /* CABufferList.h */; };
|
||||
8B300D212E5279B1006F740B /* CASharedLibrary.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300C992E5279B1006F740B /* CASharedLibrary.h */; };
|
||||
8B300D222E5279B1006F740B /* CACFData.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300C9A2E5279B1006F740B /* CACFData.h */; };
|
||||
8B300D232E5279B1006F740B /* CAStreamRangedDescription.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300C9B2E5279B1006F740B /* CAStreamRangedDescription.cpp */; };
|
||||
8B300D242E5279B1006F740B /* CAPThread.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300C9C2E5279B1006F740B /* CAPThread.cpp */; };
|
||||
8B300D252E5279B1006F740B /* CAAutoDisposer.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300C9D2E5279B1006F740B /* CAAutoDisposer.h */; };
|
||||
8B300D262E5279B1006F740B /* CACFPreferences.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300C9E2E5279B1006F740B /* CACFPreferences.h */; };
|
||||
8B300D272E5279B1006F740B /* CAVectorUnit.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300C9F2E5279B1006F740B /* CAVectorUnit.cpp */; };
|
||||
8B300D282E5279B1006F740B /* CAComponentDescription.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300CA02E5279B1006F740B /* CAComponentDescription.h */; };
|
||||
8B300D292E5279B1006F740B /* CADebugMacros.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300CA12E5279B1006F740B /* CADebugMacros.h */; };
|
||||
8B300D2A2E5279B1006F740B /* AUOutputBL.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300CA22E5279B1006F740B /* AUOutputBL.h */; };
|
||||
8B300D2B2E5279B1006F740B /* CADebugPrintf.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300CA32E5279B1006F740B /* CADebugPrintf.cpp */; };
|
||||
8B300D2C2E5279B1006F740B /* CARingBuffer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300CA42E5279B1006F740B /* CARingBuffer.cpp */; };
|
||||
8B300D2D2E5279B1006F740B /* CACFPlugIn.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300CA52E5279B1006F740B /* CACFPlugIn.h */; };
|
||||
8B300D2E2E5279B1006F740B /* CASettingsStorage.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300CA62E5279B1006F740B /* CASettingsStorage.cpp */; };
|
||||
8B300D2F2E5279B1006F740B /* CAMixMap.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300CA72E5279B1006F740B /* CAMixMap.h */; };
|
||||
8B300D302E5279B1006F740B /* CACFDistributedNotification.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300CA82E5279B1006F740B /* CACFDistributedNotification.h */; };
|
||||
8B300D312E5279B1006F740B /* CAFilePathUtils.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300CA92E5279B1006F740B /* CAFilePathUtils.h */; };
|
||||
8B300D322E5279B1006F740B /* CATink.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300CAA2E5279B1006F740B /* CATink.h */; };
|
||||
8B300D332E5279B1006F740B /* CAStreamBasicDescription.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300CAB2E5279B1006F740B /* CAStreamBasicDescription.cpp */; };
|
||||
8B300D342E5279B1006F740B /* CAAudioChannelLayout.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300CAC2E5279B1006F740B /* CAAudioChannelLayout.h */; };
|
||||
8B300D352E5279B1006F740B /* CAProcess.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300CAD2E5279B1006F740B /* CAProcess.cpp */; };
|
||||
8B300D362E5279B1006F740B /* CAHostTimeBase.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300CAE2E5279B1006F740B /* CAHostTimeBase.cpp */; };
|
||||
8B300D372E5279B1006F740B /* CAPersistence.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300CAF2E5279B1006F740B /* CAPersistence.cpp */; };
|
||||
8B300D382E5279B1006F740B /* CAAudioBufferList.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300CB02E5279B1006F740B /* CAAudioBufferList.cpp */; };
|
||||
8B300D392E5279B1006F740B /* CAAudioTimeStamp.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300CB12E5279B1006F740B /* CAAudioTimeStamp.cpp */; };
|
||||
8B300D3A2E5279B1006F740B /* CAVectorUnit.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300CB22E5279B1006F740B /* CAVectorUnit.h */; };
|
||||
8B300D3B2E5279B1006F740B /* CAByteOrder.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300CB32E5279B1006F740B /* CAByteOrder.h */; };
|
||||
8B300D3C2E5279B1006F740B /* CACFArray.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300CB42E5279B1006F740B /* CACFArray.h */; };
|
||||
8B300D3D2E5279B1006F740B /* CAAtomicStack.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300CB52E5279B1006F740B /* CAAtomicStack.h */; };
|
||||
8B300D3E2E5279B1006F740B /* CAReferenceCounted.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300CB62E5279B1006F740B /* CAReferenceCounted.h */; };
|
||||
8B300D3F2E5279B1006F740B /* CACFMachPort.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300CB72E5279B1006F740B /* CACFMachPort.cpp */; };
|
||||
8B300D402E5279B1006F740B /* CABufferList.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300CB82E5279B1006F740B /* CABufferList.cpp */; };
|
||||
8B300D412E5279B1006F740B /* CAMutex.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300CB92E5279B1006F740B /* CAMutex.cpp */; };
|
||||
8B300D422E5279B1006F740B /* CADebugger.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300CBA2E5279B1006F740B /* CADebugger.cpp */; };
|
||||
8B300D432E5279B1006F740B /* CABundleLocker.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300CBB2E5279B1006F740B /* CABundleLocker.cpp */; };
|
||||
8B300D442E5279B1006F740B /* CAAudioFileFormats.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300CBC2E5279B1006F740B /* CAAudioFileFormats.cpp */; };
|
||||
8B300D452E5279B1006F740B /* CAMath.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300CBD2E5279B1006F740B /* CAMath.h */; };
|
||||
8B300D462E5279B1006F740B /* CACFArray.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300CBE2E5279B1006F740B /* CACFArray.cpp */; };
|
||||
8B300D472E5279B1006F740B /* CACFMessagePort.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300CBF2E5279B1006F740B /* CACFMessagePort.h */; };
|
||||
8B300D482E5279B1006F740B /* CAAudioValueRange.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300CC02E5279B1006F740B /* CAAudioValueRange.cpp */; };
|
||||
8B300D492E5279B1006F740B /* CAAudioUnit.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300CC12E5279B1006F740B /* CAAudioUnit.cpp */; };
|
||||
8B300D4A2E5279B1006F740B /* AUViewLocalizedStringKeys.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300CC52E5279B1006F740B /* AUViewLocalizedStringKeys.h */; };
|
||||
8B300D4B2E5279B1006F740B /* ComponentBase.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300CC72E5279B1006F740B /* ComponentBase.cpp */; };
|
||||
8B300D4C2E5279B1006F740B /* AUScopeElement.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300CC82E5279B1006F740B /* AUScopeElement.cpp */; };
|
||||
8B300D4D2E5279B1006F740B /* ComponentBase.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300CC92E5279B1006F740B /* ComponentBase.h */; };
|
||||
8B300D4E2E5279B1006F740B /* AUBase.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300CCA2E5279B1006F740B /* AUBase.cpp */; };
|
||||
8B300D4F2E5279B1006F740B /* AUInputElement.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300CCB2E5279B1006F740B /* AUInputElement.h */; };
|
||||
8B300D502E5279B1006F740B /* AUBase.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300CCC2E5279B1006F740B /* AUBase.h */; };
|
||||
8B300D512E5279B1006F740B /* AUPlugInDispatch.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300CCD2E5279B1006F740B /* AUPlugInDispatch.h */; };
|
||||
8B300D522E5279B1006F740B /* AUDispatch.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300CCE2E5279B1006F740B /* AUDispatch.h */; };
|
||||
8B300D532E5279B1006F740B /* AUOutputElement.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300CCF2E5279B1006F740B /* AUOutputElement.cpp */; };
|
||||
8B300D552E5279B1006F740B /* AUPlugInDispatch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300CD12E5279B1006F740B /* AUPlugInDispatch.cpp */; };
|
||||
8B300D562E5279B1006F740B /* AUOutputElement.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300CD22E5279B1006F740B /* AUOutputElement.h */; };
|
||||
8B300D572E5279B1006F740B /* AUDispatch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300CD32E5279B1006F740B /* AUDispatch.cpp */; };
|
||||
8B300D582E5279B1006F740B /* AUScopeElement.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300CD42E5279B1006F740B /* AUScopeElement.h */; };
|
||||
8B300D592E5279B1006F740B /* AUInputElement.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300CD52E5279B1006F740B /* AUInputElement.cpp */; };
|
||||
8B300D5A2E5279B1006F740B /* AUEffectBase.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300CD72E5279B1006F740B /* AUEffectBase.cpp */; };
|
||||
8B300D5B2E5279B1006F740B /* AUEffectBase.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300CD82E5279B1006F740B /* AUEffectBase.h */; };
|
||||
8B300D5C2E5279B1006F740B /* AUTimestampGenerator.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300CDA2E5279B1006F740B /* AUTimestampGenerator.h */; };
|
||||
8B300D5D2E5279B1006F740B /* AUBaseHelper.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300CDB2E5279B1006F740B /* AUBaseHelper.cpp */; };
|
||||
8B300D5E2E5279B1006F740B /* AUSilentTimeout.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300CDC2E5279B1006F740B /* AUSilentTimeout.h */; };
|
||||
8B300D5F2E5279B1006F740B /* AUInputFormatConverter.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300CDD2E5279B1006F740B /* AUInputFormatConverter.h */; };
|
||||
8B300D602E5279B1006F740B /* AUTimestampGenerator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300CDE2E5279B1006F740B /* AUTimestampGenerator.cpp */; };
|
||||
8B300D612E5279B1006F740B /* AUBuffer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300CDF2E5279B1006F740B /* AUBuffer.cpp */; };
|
||||
8B300D622E5279B1006F740B /* AUMIDIDefs.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300CE02E5279B1006F740B /* AUMIDIDefs.h */; };
|
||||
8B300D632E5279B1006F740B /* AUBuffer.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300CE12E5279B1006F740B /* AUBuffer.h */; };
|
||||
8B300D642E5279B1006F740B /* AUBaseHelper.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300CE22E5279B1006F740B /* AUBaseHelper.h */; };
|
||||
8BA05A6B0720730100365D66 /* SmoothEQ3.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8BA05A660720730100365D66 /* SmoothEQ3.cpp */; };
|
||||
8BA05A6E0720730100365D66 /* SmoothEQ3Version.h in Headers */ = {isa = PBXBuildFile; fileRef = 8BA05A690720730100365D66 /* SmoothEQ3Version.h */; };
|
||||
8BA05AFC072074E100365D66 /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8BA05AF9072074E100365D66 /* AudioToolbox.framework */; };
|
||||
8BA05AFD072074E100365D66 /* AudioUnit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8BA05AFA072074E100365D66 /* AudioUnit.framework */; };
|
||||
8BA05B02072074F900365D66 /* CoreServices.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8BA05B01072074F900365D66 /* CoreServices.framework */; };
|
||||
8BC6025C073B072D006C4272 /* SmoothEQ3.h in Headers */ = {isa = PBXBuildFile; fileRef = 8BC6025B073B072D006C4272 /* SmoothEQ3.h */; };
|
||||
8D01CCCA0486CAD60068D4B7 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 089C167DFE841241C02AAC07 /* InfoPlist.strings */; };
|
||||
/* End PBXBuildFile section */
|
||||
|
||||
/* Begin PBXFileReference section */
|
||||
8B300C5B2E5279B1006F740B /* CAExtAudioFile.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAExtAudioFile.h; sourceTree = "<group>"; };
|
||||
8B300C5C2E5279B1006F740B /* CACFMachPort.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CACFMachPort.h; sourceTree = "<group>"; };
|
||||
8B300C5D2E5279B1006F740B /* CABool.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CABool.h; sourceTree = "<group>"; };
|
||||
8B300C5E2E5279B1006F740B /* CAComponent.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAComponent.cpp; sourceTree = "<group>"; };
|
||||
8B300C5F2E5279B1006F740B /* CADebugger.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CADebugger.h; sourceTree = "<group>"; };
|
||||
8B300C602E5279B1006F740B /* CACFNumber.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CACFNumber.cpp; sourceTree = "<group>"; };
|
||||
8B300C612E5279B1006F740B /* CAGuard.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAGuard.h; sourceTree = "<group>"; };
|
||||
8B300C622E5279B1006F740B /* CAAtomic.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAAtomic.h; sourceTree = "<group>"; };
|
||||
8B300C632E5279B1006F740B /* CAStreamBasicDescription.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAStreamBasicDescription.h; sourceTree = "<group>"; };
|
||||
8B300C642E5279B1006F740B /* CACFObject.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CACFObject.h; sourceTree = "<group>"; };
|
||||
8B300C652E5279B1006F740B /* CAStreamRangedDescription.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAStreamRangedDescription.h; sourceTree = "<group>"; };
|
||||
8B300C662E5279B1006F740B /* CATokenMap.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CATokenMap.h; sourceTree = "<group>"; };
|
||||
8B300C672E5279B1006F740B /* CAComponent.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAComponent.h; sourceTree = "<group>"; };
|
||||
8B300C682E5279B1006F740B /* CAAudioBufferList.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAAudioBufferList.h; sourceTree = "<group>"; };
|
||||
8B300C692E5279B1006F740B /* CAAudioUnit.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAAudioUnit.h; sourceTree = "<group>"; };
|
||||
8B300C6A2E5279B1006F740B /* CAAUParameter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAAUParameter.h; sourceTree = "<group>"; };
|
||||
8B300C6B2E5279B1006F740B /* CAException.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAException.h; sourceTree = "<group>"; };
|
||||
8B300C6C2E5279B1006F740B /* CAAUProcessor.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAAUProcessor.cpp; sourceTree = "<group>"; };
|
||||
8B300C6D2E5279B1006F740B /* CAAUProcessor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAAUProcessor.h; sourceTree = "<group>"; };
|
||||
8B300C6E2E5279B1006F740B /* CAProcess.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAProcess.h; sourceTree = "<group>"; };
|
||||
8B300C6F2E5279B1006F740B /* CACFDictionary.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CACFDictionary.h; sourceTree = "<group>"; };
|
||||
8B300C702E5279B1006F740B /* CAPThread.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAPThread.h; sourceTree = "<group>"; };
|
||||
8B300C712E5279B1006F740B /* CAAUParameter.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAAUParameter.cpp; sourceTree = "<group>"; };
|
||||
8B300C722E5279B1006F740B /* CAAudioTimeStamp.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAAudioTimeStamp.h; sourceTree = "<group>"; };
|
||||
8B300C732E5279B1006F740B /* CAFilePathUtils.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAFilePathUtils.cpp; sourceTree = "<group>"; };
|
||||
8B300C742E5279B1006F740B /* CAAudioValueRange.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAAudioValueRange.h; sourceTree = "<group>"; };
|
||||
8B300C752E5279B1006F740B /* CAVectorUnitTypes.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAVectorUnitTypes.h; sourceTree = "<group>"; };
|
||||
8B300C762E5279B1006F740B /* CAAudioChannelLayoutObject.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAAudioChannelLayoutObject.cpp; sourceTree = "<group>"; };
|
||||
8B300C772E5279B1006F740B /* CAGuard.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAGuard.cpp; sourceTree = "<group>"; };
|
||||
8B300C782E5279B1006F740B /* CACFNumber.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CACFNumber.h; sourceTree = "<group>"; };
|
||||
8B300C792E5279B1006F740B /* CACFDistributedNotification.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CACFDistributedNotification.cpp; sourceTree = "<group>"; };
|
||||
8B300C7A2E5279B1006F740B /* CACFString.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CACFString.h; sourceTree = "<group>"; };
|
||||
8B300C7B2E5279B1006F740B /* CAAUMIDIMapManager.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAAUMIDIMapManager.cpp; sourceTree = "<group>"; };
|
||||
8B300C7C2E5279B1006F740B /* CAComponentDescription.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAComponentDescription.cpp; sourceTree = "<group>"; };
|
||||
8B300C7D2E5279B1006F740B /* CAHostTimeBase.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAHostTimeBase.h; sourceTree = "<group>"; };
|
||||
8B300C7E2E5279B1006F740B /* CADebugMacros.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CADebugMacros.cpp; sourceTree = "<group>"; };
|
||||
8B300C7F2E5279B1006F740B /* CAAudioFileFormats.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAAudioFileFormats.h; sourceTree = "<group>"; };
|
||||
8B300C802E5279B1006F740B /* CAAUMIDIMapManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAAUMIDIMapManager.h; sourceTree = "<group>"; };
|
||||
8B300C812E5279B1006F740B /* CACFDictionary.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CACFDictionary.cpp; sourceTree = "<group>"; };
|
||||
8B300C822E5279B1006F740B /* CAMutex.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAMutex.h; sourceTree = "<group>"; };
|
||||
8B300C832E5279B1006F740B /* CACFString.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CACFString.cpp; sourceTree = "<group>"; };
|
||||
8B300C842E5279B1006F740B /* CASettingsStorage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CASettingsStorage.h; sourceTree = "<group>"; };
|
||||
8B300C852E5279B1006F740B /* CADebugPrintf.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CADebugPrintf.h; sourceTree = "<group>"; };
|
||||
8B300C862E5279B1006F740B /* CAXException.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAXException.cpp; sourceTree = "<group>"; };
|
||||
8B300C872E5279B1006F740B /* CAAUMIDIMap.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAAUMIDIMap.h; sourceTree = "<group>"; };
|
||||
8B300C882E5279B1006F740B /* AUParamInfo.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AUParamInfo.h; sourceTree = "<group>"; };
|
||||
8B300C892E5279B1006F740B /* CABitOperations.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CABitOperations.h; sourceTree = "<group>"; };
|
||||
8B300C8A2E5279B1006F740B /* CACFPreferences.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CACFPreferences.cpp; sourceTree = "<group>"; };
|
||||
8B300C8B2E5279B1006F740B /* CABundleLocker.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CABundleLocker.h; sourceTree = "<group>"; };
|
||||
8B300C8C2E5279B1006F740B /* CAPropertyAddress.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAPropertyAddress.h; sourceTree = "<group>"; };
|
||||
8B300C8D2E5279B1006F740B /* CAXException.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAXException.h; sourceTree = "<group>"; };
|
||||
8B300C8E2E5279B1006F740B /* CAAudioChannelLayout.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAAudioChannelLayout.cpp; sourceTree = "<group>"; };
|
||||
8B300C8F2E5279B1006F740B /* CAThreadSafeList.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAThreadSafeList.h; sourceTree = "<group>"; };
|
||||
8B300C902E5279B1006F740B /* CAAudioUnitOutputCapturer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAAudioUnitOutputCapturer.h; sourceTree = "<group>"; };
|
||||
8B300C912E5279B1006F740B /* AUParamInfo.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = AUParamInfo.cpp; sourceTree = "<group>"; };
|
||||
8B300C922E5279B1006F740B /* CASharedLibrary.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CASharedLibrary.cpp; sourceTree = "<group>"; };
|
||||
8B300C932E5279B1006F740B /* CAAUMIDIMap.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAAUMIDIMap.cpp; sourceTree = "<group>"; };
|
||||
8B300C942E5279B1006F740B /* CALogMacros.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CALogMacros.h; sourceTree = "<group>"; };
|
||||
8B300C952E5279B1006F740B /* CACFMessagePort.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CACFMessagePort.cpp; sourceTree = "<group>"; };
|
||||
8B300C962E5279B1006F740B /* CARingBuffer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CARingBuffer.h; sourceTree = "<group>"; };
|
||||
8B300C972E5279B1006F740B /* AUOutputBL.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = AUOutputBL.cpp; sourceTree = "<group>"; };
|
||||
8B300C982E5279B1006F740B /* CABufferList.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CABufferList.h; sourceTree = "<group>"; };
|
||||
8B300C992E5279B1006F740B /* CASharedLibrary.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CASharedLibrary.h; sourceTree = "<group>"; };
|
||||
8B300C9A2E5279B1006F740B /* CACFData.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CACFData.h; sourceTree = "<group>"; };
|
||||
8B300C9B2E5279B1006F740B /* CAStreamRangedDescription.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAStreamRangedDescription.cpp; sourceTree = "<group>"; };
|
||||
8B300C9C2E5279B1006F740B /* CAPThread.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAPThread.cpp; sourceTree = "<group>"; };
|
||||
8B300C9D2E5279B1006F740B /* CAAutoDisposer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAAutoDisposer.h; sourceTree = "<group>"; };
|
||||
8B300C9E2E5279B1006F740B /* CACFPreferences.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CACFPreferences.h; sourceTree = "<group>"; };
|
||||
8B300C9F2E5279B1006F740B /* CAVectorUnit.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAVectorUnit.cpp; sourceTree = "<group>"; };
|
||||
8B300CA02E5279B1006F740B /* CAComponentDescription.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAComponentDescription.h; sourceTree = "<group>"; };
|
||||
8B300CA12E5279B1006F740B /* CADebugMacros.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CADebugMacros.h; sourceTree = "<group>"; };
|
||||
8B300CA22E5279B1006F740B /* AUOutputBL.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AUOutputBL.h; sourceTree = "<group>"; };
|
||||
8B300CA32E5279B1006F740B /* CADebugPrintf.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CADebugPrintf.cpp; sourceTree = "<group>"; };
|
||||
8B300CA42E5279B1006F740B /* CARingBuffer.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CARingBuffer.cpp; sourceTree = "<group>"; };
|
||||
8B300CA52E5279B1006F740B /* CACFPlugIn.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CACFPlugIn.h; sourceTree = "<group>"; };
|
||||
8B300CA62E5279B1006F740B /* CASettingsStorage.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CASettingsStorage.cpp; sourceTree = "<group>"; };
|
||||
8B300CA72E5279B1006F740B /* CAMixMap.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAMixMap.h; sourceTree = "<group>"; };
|
||||
8B300CA82E5279B1006F740B /* CACFDistributedNotification.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CACFDistributedNotification.h; sourceTree = "<group>"; };
|
||||
8B300CA92E5279B1006F740B /* CAFilePathUtils.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAFilePathUtils.h; sourceTree = "<group>"; };
|
||||
8B300CAA2E5279B1006F740B /* CATink.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CATink.h; sourceTree = "<group>"; };
|
||||
8B300CAB2E5279B1006F740B /* CAStreamBasicDescription.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAStreamBasicDescription.cpp; sourceTree = "<group>"; };
|
||||
8B300CAC2E5279B1006F740B /* CAAudioChannelLayout.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAAudioChannelLayout.h; sourceTree = "<group>"; };
|
||||
8B300CAD2E5279B1006F740B /* CAProcess.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAProcess.cpp; sourceTree = "<group>"; };
|
||||
8B300CAE2E5279B1006F740B /* CAHostTimeBase.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAHostTimeBase.cpp; sourceTree = "<group>"; };
|
||||
8B300CAF2E5279B1006F740B /* CAPersistence.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAPersistence.cpp; sourceTree = "<group>"; };
|
||||
8B300CB02E5279B1006F740B /* CAAudioBufferList.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAAudioBufferList.cpp; sourceTree = "<group>"; };
|
||||
8B300CB12E5279B1006F740B /* CAAudioTimeStamp.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAAudioTimeStamp.cpp; sourceTree = "<group>"; };
|
||||
8B300CB22E5279B1006F740B /* CAVectorUnit.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAVectorUnit.h; sourceTree = "<group>"; };
|
||||
8B300CB32E5279B1006F740B /* CAByteOrder.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAByteOrder.h; sourceTree = "<group>"; };
|
||||
8B300CB42E5279B1006F740B /* CACFArray.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CACFArray.h; sourceTree = "<group>"; };
|
||||
8B300CB52E5279B1006F740B /* CAAtomicStack.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAAtomicStack.h; sourceTree = "<group>"; };
|
||||
8B300CB62E5279B1006F740B /* CAReferenceCounted.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAReferenceCounted.h; sourceTree = "<group>"; };
|
||||
8B300CB72E5279B1006F740B /* CACFMachPort.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CACFMachPort.cpp; sourceTree = "<group>"; };
|
||||
8B300CB82E5279B1006F740B /* CABufferList.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CABufferList.cpp; sourceTree = "<group>"; };
|
||||
8B300CB92E5279B1006F740B /* CAMutex.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAMutex.cpp; sourceTree = "<group>"; };
|
||||
8B300CBA2E5279B1006F740B /* CADebugger.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CADebugger.cpp; sourceTree = "<group>"; };
|
||||
8B300CBB2E5279B1006F740B /* CABundleLocker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CABundleLocker.cpp; sourceTree = "<group>"; };
|
||||
8B300CBC2E5279B1006F740B /* CAAudioFileFormats.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAAudioFileFormats.cpp; sourceTree = "<group>"; };
|
||||
8B300CBD2E5279B1006F740B /* CAMath.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAMath.h; sourceTree = "<group>"; };
|
||||
8B300CBE2E5279B1006F740B /* CACFArray.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CACFArray.cpp; sourceTree = "<group>"; };
|
||||
8B300CBF2E5279B1006F740B /* CACFMessagePort.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CACFMessagePort.h; sourceTree = "<group>"; };
|
||||
8B300CC02E5279B1006F740B /* CAAudioValueRange.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAAudioValueRange.cpp; sourceTree = "<group>"; };
|
||||
8B300CC12E5279B1006F740B /* CAAudioUnit.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAAudioUnit.cpp; sourceTree = "<group>"; };
|
||||
8B300CC52E5279B1006F740B /* AUViewLocalizedStringKeys.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AUViewLocalizedStringKeys.h; sourceTree = "<group>"; };
|
||||
8B300CC72E5279B1006F740B /* ComponentBase.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ComponentBase.cpp; sourceTree = "<group>"; };
|
||||
8B300CC82E5279B1006F740B /* AUScopeElement.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = AUScopeElement.cpp; sourceTree = "<group>"; };
|
||||
8B300CC92E5279B1006F740B /* ComponentBase.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ComponentBase.h; sourceTree = "<group>"; };
|
||||
8B300CCA2E5279B1006F740B /* AUBase.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = AUBase.cpp; sourceTree = "<group>"; };
|
||||
8B300CCB2E5279B1006F740B /* AUInputElement.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AUInputElement.h; sourceTree = "<group>"; };
|
||||
8B300CCC2E5279B1006F740B /* AUBase.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AUBase.h; sourceTree = "<group>"; };
|
||||
8B300CCD2E5279B1006F740B /* AUPlugInDispatch.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AUPlugInDispatch.h; sourceTree = "<group>"; };
|
||||
8B300CCE2E5279B1006F740B /* AUDispatch.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AUDispatch.h; sourceTree = "<group>"; };
|
||||
8B300CCF2E5279B1006F740B /* AUOutputElement.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = AUOutputElement.cpp; sourceTree = "<group>"; };
|
||||
8B300CD02E5279B1006F740B /* AUResources.r */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.rez; path = AUResources.r; sourceTree = "<group>"; };
|
||||
8B300CD12E5279B1006F740B /* AUPlugInDispatch.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = AUPlugInDispatch.cpp; sourceTree = "<group>"; };
|
||||
8B300CD22E5279B1006F740B /* AUOutputElement.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AUOutputElement.h; sourceTree = "<group>"; };
|
||||
8B300CD32E5279B1006F740B /* AUDispatch.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = AUDispatch.cpp; sourceTree = "<group>"; };
|
||||
8B300CD42E5279B1006F740B /* AUScopeElement.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AUScopeElement.h; sourceTree = "<group>"; };
|
||||
8B300CD52E5279B1006F740B /* AUInputElement.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = AUInputElement.cpp; sourceTree = "<group>"; };
|
||||
8B300CD72E5279B1006F740B /* AUEffectBase.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = AUEffectBase.cpp; sourceTree = "<group>"; };
|
||||
8B300CD82E5279B1006F740B /* AUEffectBase.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AUEffectBase.h; sourceTree = "<group>"; };
|
||||
8B300CDA2E5279B1006F740B /* AUTimestampGenerator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AUTimestampGenerator.h; sourceTree = "<group>"; };
|
||||
8B300CDB2E5279B1006F740B /* AUBaseHelper.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = AUBaseHelper.cpp; sourceTree = "<group>"; };
|
||||
8B300CDC2E5279B1006F740B /* AUSilentTimeout.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AUSilentTimeout.h; sourceTree = "<group>"; };
|
||||
8B300CDD2E5279B1006F740B /* AUInputFormatConverter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AUInputFormatConverter.h; sourceTree = "<group>"; };
|
||||
8B300CDE2E5279B1006F740B /* AUTimestampGenerator.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = AUTimestampGenerator.cpp; sourceTree = "<group>"; };
|
||||
8B300CDF2E5279B1006F740B /* AUBuffer.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = AUBuffer.cpp; sourceTree = "<group>"; };
|
||||
8B300CE02E5279B1006F740B /* AUMIDIDefs.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AUMIDIDefs.h; sourceTree = "<group>"; };
|
||||
8B300CE12E5279B1006F740B /* AUBuffer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AUBuffer.h; sourceTree = "<group>"; };
|
||||
8B300CE22E5279B1006F740B /* AUBaseHelper.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AUBaseHelper.h; sourceTree = "<group>"; };
|
||||
8B300D652E527A4D006F740B /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/InfoPlist.strings; sourceTree = "<group>"; };
|
||||
8B5C7FBF076FB2C200A15F61 /* CoreAudio.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreAudio.framework; path = /System/Library/Frameworks/CoreAudio.framework; sourceTree = "<absolute>"; };
|
||||
8BA05A660720730100365D66 /* SmoothEQ3.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = SmoothEQ3.cpp; sourceTree = "<group>"; };
|
||||
8BA05A670720730100365D66 /* SmoothEQ3.exp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.exports; path = SmoothEQ3.exp; sourceTree = "<group>"; };
|
||||
8BA05A680720730100365D66 /* SmoothEQ3.r */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.rez; path = SmoothEQ3.r; sourceTree = "<group>"; };
|
||||
8BA05A690720730100365D66 /* SmoothEQ3Version.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = SmoothEQ3Version.h; sourceTree = "<group>"; };
|
||||
8BA05AF9072074E100365D66 /* AudioToolbox.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AudioToolbox.framework; path = /System/Library/Frameworks/AudioToolbox.framework; sourceTree = "<absolute>"; };
|
||||
8BA05AFA072074E100365D66 /* AudioUnit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AudioUnit.framework; path = /System/Library/Frameworks/AudioUnit.framework; sourceTree = "<absolute>"; };
|
||||
8BA05B01072074F900365D66 /* CoreServices.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreServices.framework; path = /System/Library/Frameworks/CoreServices.framework; sourceTree = "<absolute>"; };
|
||||
8BC6025B073B072D006C4272 /* SmoothEQ3.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = SmoothEQ3.h; sourceTree = "<group>"; };
|
||||
8D01CCD10486CAD60068D4B7 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist; path = Info.plist; sourceTree = "<group>"; };
|
||||
8D01CCD20486CAD60068D4B7 /* SmoothEQ3.component */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = SmoothEQ3.component; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
/* End PBXFileReference section */
|
||||
|
||||
/* Begin PBXFrameworksBuildPhase section */
|
||||
8D01CCCD0486CAD60068D4B7 /* Frameworks */ = {
|
||||
isa = PBXFrameworksBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
8BA05AFC072074E100365D66 /* AudioToolbox.framework in Frameworks */,
|
||||
8BA05AFD072074E100365D66 /* AudioUnit.framework in Frameworks */,
|
||||
8BA05B02072074F900365D66 /* CoreServices.framework in Frameworks */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXFrameworksBuildPhase section */
|
||||
|
||||
/* Begin PBXGroup section */
|
||||
089C166AFE841209C02AAC07 /* SmoothEQ3 */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
08FB77ADFE841716C02AAC07 /* Source */,
|
||||
089C167CFE841241C02AAC07 /* Resources */,
|
||||
089C1671FE841209C02AAC07 /* External Frameworks and Libraries */,
|
||||
19C28FB4FE9D528D11CA2CBB /* Products */,
|
||||
);
|
||||
name = SmoothEQ3;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
089C1671FE841209C02AAC07 /* External Frameworks and Libraries */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8B5C7FBF076FB2C200A15F61 /* CoreAudio.framework */,
|
||||
8BA05B01072074F900365D66 /* CoreServices.framework */,
|
||||
8BA05AF9072074E100365D66 /* AudioToolbox.framework */,
|
||||
8BA05AFA072074E100365D66 /* AudioUnit.framework */,
|
||||
);
|
||||
name = "External Frameworks and Libraries";
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
089C167CFE841241C02AAC07 /* Resources */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8D01CCD10486CAD60068D4B7 /* Info.plist */,
|
||||
089C167DFE841241C02AAC07 /* InfoPlist.strings */,
|
||||
);
|
||||
name = Resources;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
08FB77ADFE841716C02AAC07 /* Source */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8B300C592E5279B1006F740B /* CA_SDK */,
|
||||
8BA05A56072072A900365D66 /* AU Source */,
|
||||
);
|
||||
name = Source;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
19C28FB4FE9D528D11CA2CBB /* Products */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8D01CCD20486CAD60068D4B7 /* SmoothEQ3.component */,
|
||||
);
|
||||
name = Products;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
8B300C592E5279B1006F740B /* CA_SDK */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8B300C5A2E5279B1006F740B /* PublicUtility */,
|
||||
8B300CC22E5279B1006F740B /* AudioUnits */,
|
||||
);
|
||||
name = CA_SDK;
|
||||
path = ../../../../CA_SDK;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
8B300C5A2E5279B1006F740B /* PublicUtility */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8B300C5B2E5279B1006F740B /* CAExtAudioFile.h */,
|
||||
8B300C5C2E5279B1006F740B /* CACFMachPort.h */,
|
||||
8B300C5D2E5279B1006F740B /* CABool.h */,
|
||||
8B300C5E2E5279B1006F740B /* CAComponent.cpp */,
|
||||
8B300C5F2E5279B1006F740B /* CADebugger.h */,
|
||||
8B300C602E5279B1006F740B /* CACFNumber.cpp */,
|
||||
8B300C612E5279B1006F740B /* CAGuard.h */,
|
||||
8B300C622E5279B1006F740B /* CAAtomic.h */,
|
||||
8B300C632E5279B1006F740B /* CAStreamBasicDescription.h */,
|
||||
8B300C642E5279B1006F740B /* CACFObject.h */,
|
||||
8B300C652E5279B1006F740B /* CAStreamRangedDescription.h */,
|
||||
8B300C662E5279B1006F740B /* CATokenMap.h */,
|
||||
8B300C672E5279B1006F740B /* CAComponent.h */,
|
||||
8B300C682E5279B1006F740B /* CAAudioBufferList.h */,
|
||||
8B300C692E5279B1006F740B /* CAAudioUnit.h */,
|
||||
8B300C6A2E5279B1006F740B /* CAAUParameter.h */,
|
||||
8B300C6B2E5279B1006F740B /* CAException.h */,
|
||||
8B300C6C2E5279B1006F740B /* CAAUProcessor.cpp */,
|
||||
8B300C6D2E5279B1006F740B /* CAAUProcessor.h */,
|
||||
8B300C6E2E5279B1006F740B /* CAProcess.h */,
|
||||
8B300C6F2E5279B1006F740B /* CACFDictionary.h */,
|
||||
8B300C702E5279B1006F740B /* CAPThread.h */,
|
||||
8B300C712E5279B1006F740B /* CAAUParameter.cpp */,
|
||||
8B300C722E5279B1006F740B /* CAAudioTimeStamp.h */,
|
||||
8B300C732E5279B1006F740B /* CAFilePathUtils.cpp */,
|
||||
8B300C742E5279B1006F740B /* CAAudioValueRange.h */,
|
||||
8B300C752E5279B1006F740B /* CAVectorUnitTypes.h */,
|
||||
8B300C762E5279B1006F740B /* CAAudioChannelLayoutObject.cpp */,
|
||||
8B300C772E5279B1006F740B /* CAGuard.cpp */,
|
||||
8B300C782E5279B1006F740B /* CACFNumber.h */,
|
||||
8B300C792E5279B1006F740B /* CACFDistributedNotification.cpp */,
|
||||
8B300C7A2E5279B1006F740B /* CACFString.h */,
|
||||
8B300C7B2E5279B1006F740B /* CAAUMIDIMapManager.cpp */,
|
||||
8B300C7C2E5279B1006F740B /* CAComponentDescription.cpp */,
|
||||
8B300C7D2E5279B1006F740B /* CAHostTimeBase.h */,
|
||||
8B300C7E2E5279B1006F740B /* CADebugMacros.cpp */,
|
||||
8B300C7F2E5279B1006F740B /* CAAudioFileFormats.h */,
|
||||
8B300C802E5279B1006F740B /* CAAUMIDIMapManager.h */,
|
||||
8B300C812E5279B1006F740B /* CACFDictionary.cpp */,
|
||||
8B300C822E5279B1006F740B /* CAMutex.h */,
|
||||
8B300C832E5279B1006F740B /* CACFString.cpp */,
|
||||
8B300C842E5279B1006F740B /* CASettingsStorage.h */,
|
||||
8B300C852E5279B1006F740B /* CADebugPrintf.h */,
|
||||
8B300C862E5279B1006F740B /* CAXException.cpp */,
|
||||
8B300C872E5279B1006F740B /* CAAUMIDIMap.h */,
|
||||
8B300C882E5279B1006F740B /* AUParamInfo.h */,
|
||||
8B300C892E5279B1006F740B /* CABitOperations.h */,
|
||||
8B300C8A2E5279B1006F740B /* CACFPreferences.cpp */,
|
||||
8B300C8B2E5279B1006F740B /* CABundleLocker.h */,
|
||||
8B300C8C2E5279B1006F740B /* CAPropertyAddress.h */,
|
||||
8B300C8D2E5279B1006F740B /* CAXException.h */,
|
||||
8B300C8E2E5279B1006F740B /* CAAudioChannelLayout.cpp */,
|
||||
8B300C8F2E5279B1006F740B /* CAThreadSafeList.h */,
|
||||
8B300C902E5279B1006F740B /* CAAudioUnitOutputCapturer.h */,
|
||||
8B300C912E5279B1006F740B /* AUParamInfo.cpp */,
|
||||
8B300C922E5279B1006F740B /* CASharedLibrary.cpp */,
|
||||
8B300C932E5279B1006F740B /* CAAUMIDIMap.cpp */,
|
||||
8B300C942E5279B1006F740B /* CALogMacros.h */,
|
||||
8B300C952E5279B1006F740B /* CACFMessagePort.cpp */,
|
||||
8B300C962E5279B1006F740B /* CARingBuffer.h */,
|
||||
8B300C972E5279B1006F740B /* AUOutputBL.cpp */,
|
||||
8B300C982E5279B1006F740B /* CABufferList.h */,
|
||||
8B300C992E5279B1006F740B /* CASharedLibrary.h */,
|
||||
8B300C9A2E5279B1006F740B /* CACFData.h */,
|
||||
8B300C9B2E5279B1006F740B /* CAStreamRangedDescription.cpp */,
|
||||
8B300C9C2E5279B1006F740B /* CAPThread.cpp */,
|
||||
8B300C9D2E5279B1006F740B /* CAAutoDisposer.h */,
|
||||
8B300C9E2E5279B1006F740B /* CACFPreferences.h */,
|
||||
8B300C9F2E5279B1006F740B /* CAVectorUnit.cpp */,
|
||||
8B300CA02E5279B1006F740B /* CAComponentDescription.h */,
|
||||
8B300CA12E5279B1006F740B /* CADebugMacros.h */,
|
||||
8B300CA22E5279B1006F740B /* AUOutputBL.h */,
|
||||
8B300CA32E5279B1006F740B /* CADebugPrintf.cpp */,
|
||||
8B300CA42E5279B1006F740B /* CARingBuffer.cpp */,
|
||||
8B300CA52E5279B1006F740B /* CACFPlugIn.h */,
|
||||
8B300CA62E5279B1006F740B /* CASettingsStorage.cpp */,
|
||||
8B300CA72E5279B1006F740B /* CAMixMap.h */,
|
||||
8B300CA82E5279B1006F740B /* CACFDistributedNotification.h */,
|
||||
8B300CA92E5279B1006F740B /* CAFilePathUtils.h */,
|
||||
8B300CAA2E5279B1006F740B /* CATink.h */,
|
||||
8B300CAB2E5279B1006F740B /* CAStreamBasicDescription.cpp */,
|
||||
8B300CAC2E5279B1006F740B /* CAAudioChannelLayout.h */,
|
||||
8B300CAD2E5279B1006F740B /* CAProcess.cpp */,
|
||||
8B300CAE2E5279B1006F740B /* CAHostTimeBase.cpp */,
|
||||
8B300CAF2E5279B1006F740B /* CAPersistence.cpp */,
|
||||
8B300CB02E5279B1006F740B /* CAAudioBufferList.cpp */,
|
||||
8B300CB12E5279B1006F740B /* CAAudioTimeStamp.cpp */,
|
||||
8B300CB22E5279B1006F740B /* CAVectorUnit.h */,
|
||||
8B300CB32E5279B1006F740B /* CAByteOrder.h */,
|
||||
8B300CB42E5279B1006F740B /* CACFArray.h */,
|
||||
8B300CB52E5279B1006F740B /* CAAtomicStack.h */,
|
||||
8B300CB62E5279B1006F740B /* CAReferenceCounted.h */,
|
||||
8B300CB72E5279B1006F740B /* CACFMachPort.cpp */,
|
||||
8B300CB82E5279B1006F740B /* CABufferList.cpp */,
|
||||
8B300CB92E5279B1006F740B /* CAMutex.cpp */,
|
||||
8B300CBA2E5279B1006F740B /* CADebugger.cpp */,
|
||||
8B300CBB2E5279B1006F740B /* CABundleLocker.cpp */,
|
||||
8B300CBC2E5279B1006F740B /* CAAudioFileFormats.cpp */,
|
||||
8B300CBD2E5279B1006F740B /* CAMath.h */,
|
||||
8B300CBE2E5279B1006F740B /* CACFArray.cpp */,
|
||||
8B300CBF2E5279B1006F740B /* CACFMessagePort.h */,
|
||||
8B300CC02E5279B1006F740B /* CAAudioValueRange.cpp */,
|
||||
8B300CC12E5279B1006F740B /* CAAudioUnit.cpp */,
|
||||
);
|
||||
path = PublicUtility;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
8B300CC22E5279B1006F740B /* AudioUnits */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8B300CC32E5279B1006F740B /* AUPublic */,
|
||||
);
|
||||
path = AudioUnits;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
8B300CC32E5279B1006F740B /* AUPublic */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8B300CC42E5279B1006F740B /* AUViewBase */,
|
||||
8B300CC62E5279B1006F740B /* AUBase */,
|
||||
8B300CD62E5279B1006F740B /* OtherBases */,
|
||||
8B300CD92E5279B1006F740B /* Utility */,
|
||||
);
|
||||
path = AUPublic;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
8B300CC42E5279B1006F740B /* AUViewBase */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8B300CC52E5279B1006F740B /* AUViewLocalizedStringKeys.h */,
|
||||
);
|
||||
path = AUViewBase;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
8B300CC62E5279B1006F740B /* AUBase */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8B300CC72E5279B1006F740B /* ComponentBase.cpp */,
|
||||
8B300CC82E5279B1006F740B /* AUScopeElement.cpp */,
|
||||
8B300CC92E5279B1006F740B /* ComponentBase.h */,
|
||||
8B300CCA2E5279B1006F740B /* AUBase.cpp */,
|
||||
8B300CCB2E5279B1006F740B /* AUInputElement.h */,
|
||||
8B300CCC2E5279B1006F740B /* AUBase.h */,
|
||||
8B300CCD2E5279B1006F740B /* AUPlugInDispatch.h */,
|
||||
8B300CCE2E5279B1006F740B /* AUDispatch.h */,
|
||||
8B300CCF2E5279B1006F740B /* AUOutputElement.cpp */,
|
||||
8B300CD02E5279B1006F740B /* AUResources.r */,
|
||||
8B300CD12E5279B1006F740B /* AUPlugInDispatch.cpp */,
|
||||
8B300CD22E5279B1006F740B /* AUOutputElement.h */,
|
||||
8B300CD32E5279B1006F740B /* AUDispatch.cpp */,
|
||||
8B300CD42E5279B1006F740B /* AUScopeElement.h */,
|
||||
8B300CD52E5279B1006F740B /* AUInputElement.cpp */,
|
||||
);
|
||||
path = AUBase;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
8B300CD62E5279B1006F740B /* OtherBases */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8B300CD72E5279B1006F740B /* AUEffectBase.cpp */,
|
||||
8B300CD82E5279B1006F740B /* AUEffectBase.h */,
|
||||
);
|
||||
path = OtherBases;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
8B300CD92E5279B1006F740B /* Utility */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8B300CDA2E5279B1006F740B /* AUTimestampGenerator.h */,
|
||||
8B300CDB2E5279B1006F740B /* AUBaseHelper.cpp */,
|
||||
8B300CDC2E5279B1006F740B /* AUSilentTimeout.h */,
|
||||
8B300CDD2E5279B1006F740B /* AUInputFormatConverter.h */,
|
||||
8B300CDE2E5279B1006F740B /* AUTimestampGenerator.cpp */,
|
||||
8B300CDF2E5279B1006F740B /* AUBuffer.cpp */,
|
||||
8B300CE02E5279B1006F740B /* AUMIDIDefs.h */,
|
||||
8B300CE12E5279B1006F740B /* AUBuffer.h */,
|
||||
8B300CE22E5279B1006F740B /* AUBaseHelper.h */,
|
||||
);
|
||||
path = Utility;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
8BA05A56072072A900365D66 /* AU Source */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8BC6025B073B072D006C4272 /* SmoothEQ3.h */,
|
||||
8BA05A660720730100365D66 /* SmoothEQ3.cpp */,
|
||||
8BA05A670720730100365D66 /* SmoothEQ3.exp */,
|
||||
8BA05A680720730100365D66 /* SmoothEQ3.r */,
|
||||
8BA05A690720730100365D66 /* SmoothEQ3Version.h */,
|
||||
);
|
||||
name = "AU Source";
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
/* End PBXGroup section */
|
||||
|
||||
/* Begin PBXHeadersBuildPhase section */
|
||||
8D01CCC70486CAD60068D4B7 /* Headers */ = {
|
||||
isa = PBXHeadersBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
8B300D132E5279B1006F740B /* CABundleLocker.h in Headers */,
|
||||
8B300D342E5279B1006F740B /* CAAudioChannelLayout.h in Headers */,
|
||||
8B300D2A2E5279B1006F740B /* AUOutputBL.h in Headers */,
|
||||
8B300D052E5279B1006F740B /* CAHostTimeBase.h in Headers */,
|
||||
8B300D4D2E5279B1006F740B /* ComponentBase.h in Headers */,
|
||||
8B300D3D2E5279B1006F740B /* CAAtomicStack.h in Headers */,
|
||||
8B300CFA2E5279B1006F740B /* CAAudioTimeStamp.h in Headers */,
|
||||
8B300D172E5279B1006F740B /* CAThreadSafeList.h in Headers */,
|
||||
8B300CF22E5279B1006F740B /* CAAUParameter.h in Headers */,
|
||||
8B300D642E5279B1006F740B /* AUBaseHelper.h in Headers */,
|
||||
8B300D5C2E5279B1006F740B /* AUTimestampGenerator.h in Headers */,
|
||||
8B300D0D2E5279B1006F740B /* CADebugPrintf.h in Headers */,
|
||||
8B300D472E5279B1006F740B /* CACFMessagePort.h in Headers */,
|
||||
8B300CF52E5279B1006F740B /* CAAUProcessor.h in Headers */,
|
||||
8B300CF12E5279B1006F740B /* CAAudioUnit.h in Headers */,
|
||||
8B300D4A2E5279B1006F740B /* AUViewLocalizedStringKeys.h in Headers */,
|
||||
8B300D302E5279B1006F740B /* CACFDistributedNotification.h in Headers */,
|
||||
8B300CEF2E5279B1006F740B /* CAComponent.h in Headers */,
|
||||
8B300CFD2E5279B1006F740B /* CAVectorUnitTypes.h in Headers */,
|
||||
8BA05A6E0720730100365D66 /* SmoothEQ3Version.h in Headers */,
|
||||
8B300D312E5279B1006F740B /* CAFilePathUtils.h in Headers */,
|
||||
8B300CF32E5279B1006F740B /* CAException.h in Headers */,
|
||||
8B300CEA2E5279B1006F740B /* CAAtomic.h in Headers */,
|
||||
8B300CE92E5279B1006F740B /* CAGuard.h in Headers */,
|
||||
8B300D4F2E5279B1006F740B /* AUInputElement.h in Headers */,
|
||||
8B300D262E5279B1006F740B /* CACFPreferences.h in Headers */,
|
||||
8B300D3B2E5279B1006F740B /* CAByteOrder.h in Headers */,
|
||||
8B300D1E2E5279B1006F740B /* CARingBuffer.h in Headers */,
|
||||
8B300CE52E5279B1006F740B /* CABool.h in Headers */,
|
||||
8B300D0A2E5279B1006F740B /* CAMutex.h in Headers */,
|
||||
8B300D502E5279B1006F740B /* AUBase.h in Headers */,
|
||||
8BC6025C073B072D006C4272 /* SmoothEQ3.h in Headers */,
|
||||
8B300D022E5279B1006F740B /* CACFString.h in Headers */,
|
||||
8B300D212E5279B1006F740B /* CASharedLibrary.h in Headers */,
|
||||
8B300CEE2E5279B1006F740B /* CATokenMap.h in Headers */,
|
||||
8B300CE32E5279B1006F740B /* CAExtAudioFile.h in Headers */,
|
||||
8B300CF82E5279B1006F740B /* CAPThread.h in Headers */,
|
||||
8B300D142E5279B1006F740B /* CAPropertyAddress.h in Headers */,
|
||||
8B300D3E2E5279B1006F740B /* CAReferenceCounted.h in Headers */,
|
||||
8B300D632E5279B1006F740B /* AUBuffer.h in Headers */,
|
||||
8B300D452E5279B1006F740B /* CAMath.h in Headers */,
|
||||
8B300D252E5279B1006F740B /* CAAutoDisposer.h in Headers */,
|
||||
8B300CEC2E5279B1006F740B /* CACFObject.h in Headers */,
|
||||
8B300D0C2E5279B1006F740B /* CASettingsStorage.h in Headers */,
|
||||
8B300D152E5279B1006F740B /* CAXException.h in Headers */,
|
||||
8B300D322E5279B1006F740B /* CATink.h in Headers */,
|
||||
8B300D5F2E5279B1006F740B /* AUInputFormatConverter.h in Headers */,
|
||||
8B300D3A2E5279B1006F740B /* CAVectorUnit.h in Headers */,
|
||||
8B300CF62E5279B1006F740B /* CAProcess.h in Headers */,
|
||||
8B300CFC2E5279B1006F740B /* CAAudioValueRange.h in Headers */,
|
||||
8B300D112E5279B1006F740B /* CABitOperations.h in Headers */,
|
||||
8B300D072E5279B1006F740B /* CAAudioFileFormats.h in Headers */,
|
||||
8B300D002E5279B1006F740B /* CACFNumber.h in Headers */,
|
||||
8B300D182E5279B1006F740B /* CAAudioUnitOutputCapturer.h in Headers */,
|
||||
8B300D292E5279B1006F740B /* CADebugMacros.h in Headers */,
|
||||
8B300D622E5279B1006F740B /* AUMIDIDefs.h in Headers */,
|
||||
8B300D222E5279B1006F740B /* CACFData.h in Headers */,
|
||||
8B300CEB2E5279B1006F740B /* CAStreamBasicDescription.h in Headers */,
|
||||
8B300D512E5279B1006F740B /* AUPlugInDispatch.h in Headers */,
|
||||
8B300CED2E5279B1006F740B /* CAStreamRangedDescription.h in Headers */,
|
||||
8B300D2D2E5279B1006F740B /* CACFPlugIn.h in Headers */,
|
||||
8B300CF02E5279B1006F740B /* CAAudioBufferList.h in Headers */,
|
||||
8B300D082E5279B1006F740B /* CAAUMIDIMapManager.h in Headers */,
|
||||
8B300D5B2E5279B1006F740B /* AUEffectBase.h in Headers */,
|
||||
8B300CF72E5279B1006F740B /* CACFDictionary.h in Headers */,
|
||||
8B300D582E5279B1006F740B /* AUScopeElement.h in Headers */,
|
||||
8B300D282E5279B1006F740B /* CAComponentDescription.h in Headers */,
|
||||
8B300D5E2E5279B1006F740B /* AUSilentTimeout.h in Headers */,
|
||||
8B300D202E5279B1006F740B /* CABufferList.h in Headers */,
|
||||
8B300D522E5279B1006F740B /* AUDispatch.h in Headers */,
|
||||
8B300D562E5279B1006F740B /* AUOutputElement.h in Headers */,
|
||||
8B300D1C2E5279B1006F740B /* CALogMacros.h in Headers */,
|
||||
8B300D102E5279B1006F740B /* AUParamInfo.h in Headers */,
|
||||
8B300D2F2E5279B1006F740B /* CAMixMap.h in Headers */,
|
||||
8B300D3C2E5279B1006F740B /* CACFArray.h in Headers */,
|
||||
8B300CE42E5279B1006F740B /* CACFMachPort.h in Headers */,
|
||||
8B300D0F2E5279B1006F740B /* CAAUMIDIMap.h in Headers */,
|
||||
8B300CE72E5279B1006F740B /* CADebugger.h in Headers */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXHeadersBuildPhase section */
|
||||
|
||||
/* Begin PBXNativeTarget section */
|
||||
8D01CCC60486CAD60068D4B7 /* SmoothEQ3 */ = {
|
||||
isa = PBXNativeTarget;
|
||||
buildConfigurationList = 3E4BA243089833B7007656EC /* Build configuration list for PBXNativeTarget "SmoothEQ3" */;
|
||||
buildPhases = (
|
||||
8D01CCC70486CAD60068D4B7 /* Headers */,
|
||||
8D01CCC90486CAD60068D4B7 /* Resources */,
|
||||
8D01CCCB0486CAD60068D4B7 /* Sources */,
|
||||
8D01CCCD0486CAD60068D4B7 /* Frameworks */,
|
||||
);
|
||||
buildRules = (
|
||||
);
|
||||
dependencies = (
|
||||
);
|
||||
name = SmoothEQ3;
|
||||
productInstallPath = "$(HOME)/Library/Bundles";
|
||||
productName = SmoothEQ3;
|
||||
productReference = 8D01CCD20486CAD60068D4B7 /* SmoothEQ3.component */;
|
||||
productType = "com.apple.product-type.bundle";
|
||||
};
|
||||
/* End PBXNativeTarget section */
|
||||
|
||||
/* Begin PBXProject section */
|
||||
089C1669FE841209C02AAC07 /* Project object */ = {
|
||||
isa = PBXProject;
|
||||
attributes = {
|
||||
LastUpgradeCheck = 1420;
|
||||
};
|
||||
buildConfigurationList = 3E4BA247089833B7007656EC /* Build configuration list for PBXProject "SmoothEQ3" */;
|
||||
compatibilityVersion = "Xcode 3.1";
|
||||
developmentRegion = en;
|
||||
hasScannedForEncodings = 1;
|
||||
knownRegions = (
|
||||
Base,
|
||||
en,
|
||||
de,
|
||||
fr,
|
||||
ja,
|
||||
);
|
||||
mainGroup = 089C166AFE841209C02AAC07 /* SmoothEQ3 */;
|
||||
projectDirPath = "";
|
||||
projectRoot = "";
|
||||
targets = (
|
||||
8D01CCC60486CAD60068D4B7 /* SmoothEQ3 */,
|
||||
);
|
||||
};
|
||||
/* End PBXProject section */
|
||||
|
||||
/* Begin PBXResourcesBuildPhase section */
|
||||
8D01CCC90486CAD60068D4B7 /* Resources */ = {
|
||||
isa = PBXResourcesBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
8D01CCCA0486CAD60068D4B7 /* InfoPlist.strings in Resources */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXResourcesBuildPhase section */
|
||||
|
||||
/* Begin PBXSourcesBuildPhase section */
|
||||
8D01CCCB0486CAD60068D4B7 /* Sources */ = {
|
||||
isa = PBXSourcesBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
8B300D1F2E5279B1006F740B /* AUOutputBL.cpp in Sources */,
|
||||
8B300D442E5279B1006F740B /* CAAudioFileFormats.cpp in Sources */,
|
||||
8B300D362E5279B1006F740B /* CAHostTimeBase.cpp in Sources */,
|
||||
8B300D0E2E5279B1006F740B /* CAXException.cpp in Sources */,
|
||||
8B300D382E5279B1006F740B /* CAAudioBufferList.cpp in Sources */,
|
||||
8B300CFB2E5279B1006F740B /* CAFilePathUtils.cpp in Sources */,
|
||||
8B300CF92E5279B1006F740B /* CAAUParameter.cpp in Sources */,
|
||||
8B300D1B2E5279B1006F740B /* CAAUMIDIMap.cpp in Sources */,
|
||||
8B300D482E5279B1006F740B /* CAAudioValueRange.cpp in Sources */,
|
||||
8B300D572E5279B1006F740B /* AUDispatch.cpp in Sources */,
|
||||
8B300D122E5279B1006F740B /* CACFPreferences.cpp in Sources */,
|
||||
8B300D552E5279B1006F740B /* AUPlugInDispatch.cpp in Sources */,
|
||||
8B300CF42E5279B1006F740B /* CAAUProcessor.cpp in Sources */,
|
||||
8B300D092E5279B1006F740B /* CACFDictionary.cpp in Sources */,
|
||||
8B300D5D2E5279B1006F740B /* AUBaseHelper.cpp in Sources */,
|
||||
8B300D422E5279B1006F740B /* CADebugger.cpp in Sources */,
|
||||
8B300D162E5279B1006F740B /* CAAudioChannelLayout.cpp in Sources */,
|
||||
8B300D192E5279B1006F740B /* AUParamInfo.cpp in Sources */,
|
||||
8B300D372E5279B1006F740B /* CAPersistence.cpp in Sources */,
|
||||
8B300D2B2E5279B1006F740B /* CADebugPrintf.cpp in Sources */,
|
||||
8B300D602E5279B1006F740B /* AUTimestampGenerator.cpp in Sources */,
|
||||
8B300D332E5279B1006F740B /* CAStreamBasicDescription.cpp in Sources */,
|
||||
8B300D032E5279B1006F740B /* CAAUMIDIMapManager.cpp in Sources */,
|
||||
8B300D2E2E5279B1006F740B /* CASettingsStorage.cpp in Sources */,
|
||||
8B300D532E5279B1006F740B /* AUOutputElement.cpp in Sources */,
|
||||
8B300CFF2E5279B1006F740B /* CAGuard.cpp in Sources */,
|
||||
8BA05A6B0720730100365D66 /* SmoothEQ3.cpp in Sources */,
|
||||
8B300D412E5279B1006F740B /* CAMutex.cpp in Sources */,
|
||||
8B300D5A2E5279B1006F740B /* AUEffectBase.cpp in Sources */,
|
||||
8B300D3F2E5279B1006F740B /* CACFMachPort.cpp in Sources */,
|
||||
8B300D4E2E5279B1006F740B /* AUBase.cpp in Sources */,
|
||||
8B300D1A2E5279B1006F740B /* CASharedLibrary.cpp in Sources */,
|
||||
8B300D012E5279B1006F740B /* CACFDistributedNotification.cpp in Sources */,
|
||||
8B300D042E5279B1006F740B /* CAComponentDescription.cpp in Sources */,
|
||||
8B300D0B2E5279B1006F740B /* CACFString.cpp in Sources */,
|
||||
8B300D4B2E5279B1006F740B /* ComponentBase.cpp in Sources */,
|
||||
8B300D2C2E5279B1006F740B /* CARingBuffer.cpp in Sources */,
|
||||
8B300D4C2E5279B1006F740B /* AUScopeElement.cpp in Sources */,
|
||||
8B300D492E5279B1006F740B /* CAAudioUnit.cpp in Sources */,
|
||||
8B300D462E5279B1006F740B /* CACFArray.cpp in Sources */,
|
||||
8B300D432E5279B1006F740B /* CABundleLocker.cpp in Sources */,
|
||||
8B300D352E5279B1006F740B /* CAProcess.cpp in Sources */,
|
||||
8B300D232E5279B1006F740B /* CAStreamRangedDescription.cpp in Sources */,
|
||||
8B300D242E5279B1006F740B /* CAPThread.cpp in Sources */,
|
||||
8B300CE62E5279B1006F740B /* CAComponent.cpp in Sources */,
|
||||
8B300CFE2E5279B1006F740B /* CAAudioChannelLayoutObject.cpp in Sources */,
|
||||
8B300D392E5279B1006F740B /* CAAudioTimeStamp.cpp in Sources */,
|
||||
8B300D402E5279B1006F740B /* CABufferList.cpp in Sources */,
|
||||
8B300D1D2E5279B1006F740B /* CACFMessagePort.cpp in Sources */,
|
||||
8B300D272E5279B1006F740B /* CAVectorUnit.cpp in Sources */,
|
||||
8B300D592E5279B1006F740B /* AUInputElement.cpp in Sources */,
|
||||
8B300D612E5279B1006F740B /* AUBuffer.cpp in Sources */,
|
||||
8B300D062E5279B1006F740B /* CADebugMacros.cpp in Sources */,
|
||||
8B300CE82E5279B1006F740B /* CACFNumber.cpp in Sources */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXSourcesBuildPhase section */
|
||||
|
||||
/* Begin PBXVariantGroup section */
|
||||
089C167DFE841241C02AAC07 /* InfoPlist.strings */ = {
|
||||
isa = PBXVariantGroup;
|
||||
children = (
|
||||
8B300D652E527A4D006F740B /* en */,
|
||||
);
|
||||
name = InfoPlist.strings;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
/* End PBXVariantGroup section */
|
||||
|
||||
/* Begin XCBuildConfiguration section */
|
||||
3E4BA244089833B7007656EC /* Debug */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
ARCHS = "$(ARCHS_STANDARD)";
|
||||
CLANG_ENABLE_OBJC_WEAK = YES;
|
||||
CODE_SIGN_IDENTITY = "Apple Development";
|
||||
"CODE_SIGN_IDENTITY[sdk=macosx*]" = "Developer ID Application";
|
||||
CODE_SIGN_STYLE = Manual;
|
||||
DEAD_CODE_STRIPPING = YES;
|
||||
DEVELOPMENT_TEAM = "";
|
||||
"DEVELOPMENT_TEAM[sdk=macosx*]" = 9BMAKYA76W;
|
||||
EXPORTED_SYMBOLS_FILE = SmoothEQ3.exp;
|
||||
GCC_OPTIMIZATION_LEVEL = 0;
|
||||
GENERATE_PKGINFO_FILE = YES;
|
||||
INFOPLIST_FILE = Info.plist;
|
||||
INSTALL_PATH = "$(HOME)/Library/Audio/Plug-Ins/Components/";
|
||||
LIBRARY_STYLE = Bundle;
|
||||
MACOSX_DEPLOYMENT_TARGET = 11.1;
|
||||
OTHER_LDFLAGS = "-bundle";
|
||||
OTHER_REZFLAGS = "";
|
||||
PRODUCT_BUNDLE_IDENTIFIER = "com.airwindows.audiounit.${PRODUCT_NAME:identifier}";
|
||||
PRODUCT_NAME = SmoothEQ3;
|
||||
PROVISIONING_PROFILE_SPECIFIER = "";
|
||||
SDKROOT = macosx;
|
||||
STRIP_STYLE = debugging;
|
||||
WRAPPER_EXTENSION = component;
|
||||
};
|
||||
name = Debug;
|
||||
};
|
||||
3E4BA245089833B7007656EC /* Release */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
ARCHS = "$(ARCHS_STANDARD)";
|
||||
CLANG_ENABLE_OBJC_WEAK = YES;
|
||||
CODE_SIGN_IDENTITY = "Apple Development";
|
||||
"CODE_SIGN_IDENTITY[sdk=macosx*]" = "Developer ID Application";
|
||||
CODE_SIGN_STYLE = Manual;
|
||||
DEAD_CODE_STRIPPING = YES;
|
||||
DEVELOPMENT_TEAM = "";
|
||||
"DEVELOPMENT_TEAM[sdk=macosx*]" = 9BMAKYA76W;
|
||||
EXPORTED_SYMBOLS_FILE = SmoothEQ3.exp;
|
||||
GCC_GENERATE_DEBUGGING_SYMBOLS = NO;
|
||||
GENERATE_PKGINFO_FILE = YES;
|
||||
INFOPLIST_FILE = Info.plist;
|
||||
INSTALL_PATH = "$(HOME)/Library/Audio/Plug-Ins/Components/";
|
||||
LIBRARY_STYLE = Bundle;
|
||||
MACOSX_DEPLOYMENT_TARGET = 11.1;
|
||||
OTHER_LDFLAGS = "-bundle";
|
||||
OTHER_REZFLAGS = "";
|
||||
PRODUCT_BUNDLE_IDENTIFIER = "com.airwindows.audiounit.${PRODUCT_NAME:identifier}";
|
||||
PRODUCT_NAME = SmoothEQ3;
|
||||
PROVISIONING_PROFILE_SPECIFIER = "";
|
||||
SDKROOT = macosx;
|
||||
STRIP_INSTALLED_PRODUCT = YES;
|
||||
STRIP_STYLE = debugging;
|
||||
WRAPPER_EXTENSION = component;
|
||||
};
|
||||
name = Release;
|
||||
};
|
||||
3E4BA248089833B7007656EC /* Debug */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
ALWAYS_SEARCH_USER_PATHS = NO;
|
||||
ARCHS = "$(ARCHS_STANDARD)";
|
||||
CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES;
|
||||
CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
|
||||
CLANG_WARN_BOOL_CONVERSION = YES;
|
||||
CLANG_WARN_COMMA = YES;
|
||||
CLANG_WARN_CONSTANT_CONVERSION = YES;
|
||||
CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
|
||||
CLANG_WARN_EMPTY_BODY = YES;
|
||||
CLANG_WARN_ENUM_CONVERSION = YES;
|
||||
CLANG_WARN_INFINITE_RECURSION = YES;
|
||||
CLANG_WARN_INT_CONVERSION = YES;
|
||||
CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
|
||||
CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
|
||||
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
|
||||
CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
|
||||
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
|
||||
CLANG_WARN_STRICT_PROTOTYPES = YES;
|
||||
CLANG_WARN_SUSPICIOUS_MOVE = YES;
|
||||
CLANG_WARN_UNREACHABLE_CODE = YES;
|
||||
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
|
||||
COPY_PHASE_STRIP = NO;
|
||||
DEAD_CODE_STRIPPING = YES;
|
||||
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
|
||||
ENABLE_STRICT_OBJC_MSGSEND = YES;
|
||||
ENABLE_TESTABILITY = YES;
|
||||
GCC_C_LANGUAGE_STANDARD = c99;
|
||||
GCC_NO_COMMON_BLOCKS = YES;
|
||||
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
|
||||
GCC_WARN_ABOUT_RETURN_TYPE = YES;
|
||||
GCC_WARN_UNDECLARED_SELECTOR = YES;
|
||||
GCC_WARN_UNINITIALIZED_AUTOS = YES;
|
||||
GCC_WARN_UNUSED_FUNCTION = YES;
|
||||
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||
HEADER_SEARCH_PATHS = "/Users/christopherjohnson/Desktop/CA_SDK/**";
|
||||
MACOSX_DEPLOYMENT_TARGET = 11.1;
|
||||
ONLY_ACTIVE_ARCH = YES;
|
||||
SDKROOT = macosx;
|
||||
WARNING_CFLAGS = (
|
||||
"-Wmost",
|
||||
"-Wno-four-char-constants",
|
||||
"-Wno-unknown-pragmas",
|
||||
);
|
||||
};
|
||||
name = Debug;
|
||||
};
|
||||
3E4BA249089833B7007656EC /* Release */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
ALWAYS_SEARCH_USER_PATHS = NO;
|
||||
ARCHS = "$(ARCHS_STANDARD)";
|
||||
CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES;
|
||||
CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
|
||||
CLANG_WARN_BOOL_CONVERSION = YES;
|
||||
CLANG_WARN_COMMA = YES;
|
||||
CLANG_WARN_CONSTANT_CONVERSION = YES;
|
||||
CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
|
||||
CLANG_WARN_EMPTY_BODY = YES;
|
||||
CLANG_WARN_ENUM_CONVERSION = YES;
|
||||
CLANG_WARN_INFINITE_RECURSION = YES;
|
||||
CLANG_WARN_INT_CONVERSION = YES;
|
||||
CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
|
||||
CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
|
||||
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
|
||||
CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
|
||||
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
|
||||
CLANG_WARN_STRICT_PROTOTYPES = YES;
|
||||
CLANG_WARN_SUSPICIOUS_MOVE = YES;
|
||||
CLANG_WARN_UNREACHABLE_CODE = YES;
|
||||
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
|
||||
DEAD_CODE_STRIPPING = YES;
|
||||
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
|
||||
ENABLE_STRICT_OBJC_MSGSEND = YES;
|
||||
GCC_C_LANGUAGE_STANDARD = c99;
|
||||
GCC_NO_COMMON_BLOCKS = YES;
|
||||
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
|
||||
GCC_WARN_ABOUT_RETURN_TYPE = YES;
|
||||
GCC_WARN_UNDECLARED_SELECTOR = YES;
|
||||
GCC_WARN_UNINITIALIZED_AUTOS = YES;
|
||||
GCC_WARN_UNUSED_FUNCTION = YES;
|
||||
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||
HEADER_SEARCH_PATHS = "/Users/christopherjohnson/Desktop/CA_SDK/**";
|
||||
MACOSX_DEPLOYMENT_TARGET = 11.1;
|
||||
ONLY_ACTIVE_ARCH = YES;
|
||||
SDKROOT = macosx;
|
||||
WARNING_CFLAGS = (
|
||||
"-Wmost",
|
||||
"-Wno-four-char-constants",
|
||||
"-Wno-unknown-pragmas",
|
||||
);
|
||||
};
|
||||
name = Release;
|
||||
};
|
||||
/* End XCBuildConfiguration section */
|
||||
|
||||
/* Begin XCConfigurationList section */
|
||||
3E4BA243089833B7007656EC /* Build configuration list for PBXNativeTarget "SmoothEQ3" */ = {
|
||||
isa = XCConfigurationList;
|
||||
buildConfigurations = (
|
||||
3E4BA244089833B7007656EC /* Debug */,
|
||||
3E4BA245089833B7007656EC /* Release */,
|
||||
);
|
||||
defaultConfigurationIsVisible = 0;
|
||||
defaultConfigurationName = Debug;
|
||||
};
|
||||
3E4BA247089833B7007656EC /* Build configuration list for PBXProject "SmoothEQ3" */ = {
|
||||
isa = XCConfigurationList;
|
||||
buildConfigurations = (
|
||||
3E4BA248089833B7007656EC /* Debug */,
|
||||
3E4BA249089833B7007656EC /* Release */,
|
||||
);
|
||||
defaultConfigurationIsVisible = 0;
|
||||
defaultConfigurationName = Debug;
|
||||
};
|
||||
/* End XCConfigurationList section */
|
||||
};
|
||||
rootObject = 089C1669FE841209C02AAC07 /* Project object */;
|
||||
}
|
||||
7
plugins/MacSignedAU/SmoothEQ3/SmoothEQ3.xcodeproj/project.xcworkspace/contents.xcworkspacedata
generated
Normal file
7
plugins/MacSignedAU/SmoothEQ3/SmoothEQ3.xcodeproj/project.xcworkspace/contents.xcworkspacedata
generated
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Workspace
|
||||
version = "1.0">
|
||||
<FileRef
|
||||
location = "self:">
|
||||
</FileRef>
|
||||
</Workspace>
|
||||
|
|
@ -0,0 +1,8 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>IDEDidComputeMac32BitWarning</key>
|
||||
<true/>
|
||||
</dict>
|
||||
</plist>
|
||||
Binary file not shown.
|
|
@ -0,0 +1,67 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Scheme
|
||||
LastUpgradeVersion = "1420"
|
||||
version = "1.3">
|
||||
<BuildAction
|
||||
parallelizeBuildables = "YES"
|
||||
buildImplicitDependencies = "YES">
|
||||
<BuildActionEntries>
|
||||
<BuildActionEntry
|
||||
buildForTesting = "YES"
|
||||
buildForRunning = "YES"
|
||||
buildForProfiling = "YES"
|
||||
buildForArchiving = "YES"
|
||||
buildForAnalyzing = "YES">
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "8D01CCC60486CAD60068D4B7"
|
||||
BuildableName = "SmoothEQ3.component"
|
||||
BlueprintName = "SmoothEQ3"
|
||||
ReferencedContainer = "container:SmoothEQ3.xcodeproj">
|
||||
</BuildableReference>
|
||||
</BuildActionEntry>
|
||||
</BuildActionEntries>
|
||||
</BuildAction>
|
||||
<TestAction
|
||||
buildConfiguration = "Debug"
|
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
|
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
|
||||
shouldUseLaunchSchemeArgsEnv = "YES">
|
||||
<Testables>
|
||||
</Testables>
|
||||
</TestAction>
|
||||
<LaunchAction
|
||||
buildConfiguration = "Release"
|
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
|
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
|
||||
launchStyle = "0"
|
||||
useCustomWorkingDirectory = "NO"
|
||||
ignoresPersistentStateOnLaunch = "NO"
|
||||
debugDocumentVersioning = "YES"
|
||||
debugServiceExtension = "internal"
|
||||
allowLocationSimulation = "YES">
|
||||
</LaunchAction>
|
||||
<ProfileAction
|
||||
buildConfiguration = "Release"
|
||||
shouldUseLaunchSchemeArgsEnv = "YES"
|
||||
savedToolIdentifier = ""
|
||||
useCustomWorkingDirectory = "NO"
|
||||
debugDocumentVersioning = "YES">
|
||||
<MacroExpansion>
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "8D01CCC60486CAD60068D4B7"
|
||||
BuildableName = "SmoothEQ3.component"
|
||||
BlueprintName = "SmoothEQ3"
|
||||
ReferencedContainer = "container:SmoothEQ3.xcodeproj">
|
||||
</BuildableReference>
|
||||
</MacroExpansion>
|
||||
</ProfileAction>
|
||||
<AnalyzeAction
|
||||
buildConfiguration = "Debug">
|
||||
</AnalyzeAction>
|
||||
<ArchiveAction
|
||||
buildConfiguration = "Release"
|
||||
revealArchiveInOrganizer = "YES">
|
||||
</ArchiveAction>
|
||||
</Scheme>
|
||||
|
|
@ -0,0 +1,22 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>SchemeUserState</key>
|
||||
<dict>
|
||||
<key>SmoothEQ3.xcscheme_^#shared#^_</key>
|
||||
<dict>
|
||||
<key>orderHint</key>
|
||||
<integer>0</integer>
|
||||
</dict>
|
||||
</dict>
|
||||
<key>SuppressBuildableAutocreation</key>
|
||||
<dict>
|
||||
<key>8D01CCC60486CAD60068D4B7</key>
|
||||
<dict>
|
||||
<key>primary</key>
|
||||
<true/>
|
||||
</dict>
|
||||
</dict>
|
||||
</dict>
|
||||
</plist>
|
||||
58
plugins/MacSignedAU/SmoothEQ3/SmoothEQ3Version.h
Executable file
58
plugins/MacSignedAU/SmoothEQ3/SmoothEQ3Version.h
Executable file
|
|
@ -0,0 +1,58 @@
|
|||
/*
|
||||
* File: SmoothEQ3Version.h
|
||||
*
|
||||
* Version: 1.0
|
||||
*
|
||||
* Created: 8/15/25
|
||||
*
|
||||
* Copyright: Copyright © 2025 Airwindows, Airwindows uses the MIT license
|
||||
*
|
||||
* Disclaimer: IMPORTANT: This Apple software is supplied to you by Apple Computer, Inc. ("Apple") in
|
||||
* consideration of your agreement to the following terms, and your use, installation, modification
|
||||
* or redistribution of this Apple software constitutes acceptance of these terms. If you do
|
||||
* not agree with these terms, please do not use, install, modify or redistribute this Apple
|
||||
* software.
|
||||
*
|
||||
* In consideration of your agreement to abide by the following terms, and subject to these terms,
|
||||
* Apple grants you a personal, non-exclusive license, under Apple's copyrights in this
|
||||
* original Apple software (the "Apple Software"), to use, reproduce, modify and redistribute the
|
||||
* Apple Software, with or without modifications, in source and/or binary forms; provided that if you
|
||||
* redistribute the Apple Software in its entirety and without modifications, you must retain this
|
||||
* notice and the following text and disclaimers in all such redistributions of the Apple Software.
|
||||
* Neither the name, trademarks, service marks or logos of Apple Computer, Inc. may be used to
|
||||
* endorse or promote products derived from the Apple Software without specific prior written
|
||||
* permission from Apple. Except as expressly stated in this notice, no other rights or
|
||||
* licenses, express or implied, are granted by Apple herein, including but not limited to any
|
||||
* patent rights that may be infringed by your derivative works or by other works in which the
|
||||
* Apple Software may be incorporated.
|
||||
*
|
||||
* The Apple Software is provided by Apple on an "AS IS" basis. APPLE MAKES NO WARRANTIES, EXPRESS OR
|
||||
* IMPLIED, INCLUDING WITHOUT LIMITATION THE IMPLIED WARRANTIES OF NON-INFRINGEMENT, MERCHANTABILITY
|
||||
* AND FITNESS FOR A PARTICULAR PURPOSE, REGARDING THE APPLE SOFTWARE OR ITS USE AND OPERATION ALONE
|
||||
* OR IN COMBINATION WITH YOUR PRODUCTS.
|
||||
*
|
||||
* IN NO EVENT SHALL APPLE BE LIABLE FOR ANY SPECIAL, INDIRECT, INCIDENTAL OR CONSEQUENTIAL
|
||||
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
|
||||
* OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) ARISING IN ANY WAY OUT OF THE USE,
|
||||
* REPRODUCTION, MODIFICATION AND/OR DISTRIBUTION OF THE APPLE SOFTWARE, HOWEVER CAUSED AND WHETHER
|
||||
* UNDER THEORY OF CONTRACT, TORT (INCLUDING NEGLIGENCE), STRICT LIABILITY OR OTHERWISE, EVEN
|
||||
* IF APPLE HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
*/
|
||||
#ifndef __SmoothEQ3Version_h__
|
||||
#define __SmoothEQ3Version_h__
|
||||
|
||||
|
||||
#ifdef DEBUG
|
||||
#define kSmoothEQ3Version 0xFFFFFFFF
|
||||
#else
|
||||
#define kSmoothEQ3Version 0x00010000
|
||||
#endif
|
||||
|
||||
//~~~~~~~~~~~~~~ Change!!! ~~~~~~~~~~~~~~~~~~~~~//
|
||||
#define SmoothEQ3_COMP_MANF 'Dthr'
|
||||
#define SmoothEQ3_COMP_SUBTYPE 'sme3'
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~//
|
||||
|
||||
#endif
|
||||
|
||||
BIN
plugins/MacSignedAU/SmoothEQ3/en.lproj/InfoPlist.strings
Executable file
BIN
plugins/MacSignedAU/SmoothEQ3/en.lproj/InfoPlist.strings
Executable file
Binary file not shown.
16
plugins/MacSignedAU/SmoothEQ3/version.plist
Executable file
16
plugins/MacSignedAU/SmoothEQ3/version.plist
Executable file
|
|
@ -0,0 +1,16 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>BuildVersion</key>
|
||||
<string>3</string>
|
||||
<key>CFBundleShortVersionString</key>
|
||||
<string>1.0</string>
|
||||
<key>CFBundleVersion</key>
|
||||
<string>1.0</string>
|
||||
<key>ProjectName</key>
|
||||
<string>${EXECUTABLE_NAME}</string>
|
||||
<key>SourceVersion</key>
|
||||
<string>590000</string>
|
||||
</dict>
|
||||
</plist>
|
||||
108
plugins/MacSignedVST/SmoothEQ2/SmoothEQ2.xcodeproj/christopherjohnson.pbxuser
Executable file
108
plugins/MacSignedVST/SmoothEQ2/SmoothEQ2.xcodeproj/christopherjohnson.pbxuser
Executable file
|
|
@ -0,0 +1,108 @@
|
|||
// !$*UTF8*$!
|
||||
{
|
||||
089C1669FE841209C02AAC07 /* Project object */ = {
|
||||
activeBuildConfigurationName = Release;
|
||||
activeTarget = 8D01CCC60486CAD60068D4B7 /* SmoothEQ2 */;
|
||||
codeSenseManager = 8B02375F1D42B1C400E1E8C8 /* Code sense */;
|
||||
perUserDictionary = {
|
||||
PBXConfiguration.PBXFileTableDataSource3.PBXFileTableDataSource = {
|
||||
PBXFileTableDataSourceColumnSortingDirectionKey = "-1";
|
||||
PBXFileTableDataSourceColumnSortingKey = PBXFileDataSource_Filename_ColumnID;
|
||||
PBXFileTableDataSourceColumnWidthsKey = (
|
||||
20,
|
||||
364,
|
||||
20,
|
||||
48,
|
||||
43,
|
||||
43,
|
||||
20,
|
||||
);
|
||||
PBXFileTableDataSourceColumnsKey = (
|
||||
PBXFileDataSource_FiletypeID,
|
||||
PBXFileDataSource_Filename_ColumnID,
|
||||
PBXFileDataSource_Built_ColumnID,
|
||||
PBXFileDataSource_ObjectSize_ColumnID,
|
||||
PBXFileDataSource_Errors_ColumnID,
|
||||
PBXFileDataSource_Warnings_ColumnID,
|
||||
PBXFileDataSource_Target_ColumnID,
|
||||
);
|
||||
};
|
||||
PBXConfiguration.PBXTargetDataSource.PBXTargetDataSource = {
|
||||
PBXFileTableDataSourceColumnSortingDirectionKey = "-1";
|
||||
PBXFileTableDataSourceColumnSortingKey = PBXFileDataSource_Filename_ColumnID;
|
||||
PBXFileTableDataSourceColumnWidthsKey = (
|
||||
20,
|
||||
324,
|
||||
60,
|
||||
20,
|
||||
48,
|
||||
43,
|
||||
43,
|
||||
);
|
||||
PBXFileTableDataSourceColumnsKey = (
|
||||
PBXFileDataSource_FiletypeID,
|
||||
PBXFileDataSource_Filename_ColumnID,
|
||||
PBXTargetDataSource_PrimaryAttribute,
|
||||
PBXFileDataSource_Built_ColumnID,
|
||||
PBXFileDataSource_ObjectSize_ColumnID,
|
||||
PBXFileDataSource_Errors_ColumnID,
|
||||
PBXFileDataSource_Warnings_ColumnID,
|
||||
);
|
||||
};
|
||||
PBXPerProjectTemplateStateSaveDate = 777106790;
|
||||
PBXWorkspaceStateSaveDate = 777106790;
|
||||
};
|
||||
sourceControlManager = 8B02375E1D42B1C400E1E8C8 /* Source Control */;
|
||||
userBuildSettings = {
|
||||
};
|
||||
};
|
||||
2407DEB6089929BA00EB68BF /* SmoothEQ2.cpp */ = {
|
||||
uiCtxt = {
|
||||
sepNavIntBoundsRect = "{{0, 0}, {948, 3384}}";
|
||||
sepNavSelRange = "{825, 0}";
|
||||
sepNavVisRange = "{3883, 2095}";
|
||||
sepNavWindowFrame = "{{10, 47}, {895, 831}}";
|
||||
};
|
||||
};
|
||||
245463B80991757100464AD3 /* SmoothEQ2.h */ = {
|
||||
uiCtxt = {
|
||||
sepNavIntBoundsRect = "{{0, 0}, {1110, 1962}}";
|
||||
sepNavSelRange = "{3107, 0}";
|
||||
sepNavVisRange = "{2583, 591}";
|
||||
sepNavWindowFrame = "{{20, 47}, {895, 831}}";
|
||||
};
|
||||
};
|
||||
24A2FFDB0F90D1DD003BB5A7 /* audioeffectx.cpp */ = {
|
||||
uiCtxt = {
|
||||
sepNavIntBoundsRect = "{{0, 0}, {859, 20267}}";
|
||||
sepNavSelRange = "{10616, 0}";
|
||||
sepNavVisRange = "{9653, 2414}";
|
||||
sepNavWindowFrame = "{{15, 42}, {895, 831}}";
|
||||
};
|
||||
};
|
||||
24D8286F09A914000093AEF8 /* SmoothEQ2Proc.cpp */ = {
|
||||
uiCtxt = {
|
||||
sepNavIntBoundsRect = "{{0, 0}, {1056, 9360}}";
|
||||
sepNavSelRange = "{21407, 0}";
|
||||
sepNavVisRange = "{23172, 2004}";
|
||||
sepNavWindowFrame = "{{31, 42}, {895, 831}}";
|
||||
};
|
||||
};
|
||||
8B02375E1D42B1C400E1E8C8 /* Source Control */ = {
|
||||
isa = PBXSourceControlManager;
|
||||
fallbackIsa = XCSourceControlManager;
|
||||
isSCMEnabled = 0;
|
||||
scmConfiguration = {
|
||||
repositoryNamesForRoots = {
|
||||
"" = "";
|
||||
};
|
||||
};
|
||||
};
|
||||
8B02375F1D42B1C400E1E8C8 /* Code sense */ = {
|
||||
isa = PBXCodeSenseManager;
|
||||
indexTemplatePath = "";
|
||||
};
|
||||
8D01CCC60486CAD60068D4B7 /* SmoothEQ2 */ = {
|
||||
activeExec = 0;
|
||||
};
|
||||
}
|
||||
1500
plugins/MacSignedVST/SmoothEQ2/SmoothEQ2.xcodeproj/christopherjohnson.perspectivev3
Executable file
1500
plugins/MacSignedVST/SmoothEQ2/SmoothEQ2.xcodeproj/christopherjohnson.perspectivev3
Executable file
File diff suppressed because it is too large
Load diff
462
plugins/MacSignedVST/SmoothEQ2/SmoothEQ2.xcodeproj/project.pbxproj
Executable file
462
plugins/MacSignedVST/SmoothEQ2/SmoothEQ2.xcodeproj/project.pbxproj
Executable file
|
|
@ -0,0 +1,462 @@
|
|||
// !$*UTF8*$!
|
||||
{
|
||||
archiveVersion = 1;
|
||||
classes = {
|
||||
};
|
||||
objectVersion = 45;
|
||||
objects = {
|
||||
|
||||
/* Begin PBXBuildFile section */
|
||||
2407DEB9089929BA00EB68BF /* SmoothEQ2.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2407DEB6089929BA00EB68BF /* SmoothEQ2.cpp */; };
|
||||
245463B90991757100464AD3 /* SmoothEQ2.h in Headers */ = {isa = PBXBuildFile; fileRef = 245463B80991757100464AD3 /* SmoothEQ2.h */; };
|
||||
24CFB70407E7A0220081BD57 /* PkgInfo in Resources */ = {isa = PBXBuildFile; fileRef = 24CFB70307E7A0220081BD57 /* PkgInfo */; };
|
||||
24D8287009A914000093AEF8 /* SmoothEQ2Proc.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 24D8286F09A914000093AEF8 /* SmoothEQ2Proc.cpp */; };
|
||||
24D8287F09A9164A0093AEF8 /* xcode_vst_prefix.h in Headers */ = {isa = PBXBuildFile; fileRef = 24D8287E09A9164A0093AEF8 /* xcode_vst_prefix.h */; };
|
||||
8B300D782E527AF9006F740B /* vstfxstore.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300D6C2E527AF9006F740B /* vstfxstore.h */; };
|
||||
8B300D792E527AF9006F740B /* aeffect.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300D6D2E527AF9006F740B /* aeffect.h */; };
|
||||
8B300D7A2E527AF9006F740B /* aeffectx.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300D6E2E527AF9006F740B /* aeffectx.h */; };
|
||||
8B300D7B2E527AF9006F740B /* audioeffectx.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300D722E527AF9006F740B /* audioeffectx.h */; };
|
||||
8B300D7C2E527AF9006F740B /* audioeffect.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300D732E527AF9006F740B /* audioeffect.cpp */; };
|
||||
8B300D7D2E527AF9006F740B /* audioeffectx.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300D742E527AF9006F740B /* audioeffectx.cpp */; };
|
||||
8B300D7E2E527AF9006F740B /* aeffeditor.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300D752E527AF9006F740B /* aeffeditor.h */; };
|
||||
8B300D7F2E527AF9006F740B /* vstplugmain.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300D762E527AF9006F740B /* vstplugmain.cpp */; };
|
||||
8B300D802E527AF9006F740B /* audioeffect.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300D772E527AF9006F740B /* audioeffect.h */; };
|
||||
/* End PBXBuildFile section */
|
||||
|
||||
/* Begin PBXFileReference section */
|
||||
2407DE920899296600EB68BF /* SmoothEQ2.vst */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = SmoothEQ2.vst; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
2407DEB6089929BA00EB68BF /* SmoothEQ2.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; name = SmoothEQ2.cpp; path = source/SmoothEQ2.cpp; sourceTree = "<group>"; };
|
||||
245463B80991757100464AD3 /* SmoothEQ2.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = SmoothEQ2.h; path = source/SmoothEQ2.h; sourceTree = "<group>"; };
|
||||
24CFB70307E7A0220081BD57 /* PkgInfo */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = PkgInfo; path = mac/PkgInfo; sourceTree = "<group>"; };
|
||||
24D8286F09A914000093AEF8 /* SmoothEQ2Proc.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SmoothEQ2Proc.cpp; path = source/SmoothEQ2Proc.cpp; sourceTree = "<group>"; };
|
||||
24D8287E09A9164A0093AEF8 /* xcode_vst_prefix.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = xcode_vst_prefix.h; path = mac/xcode_vst_prefix.h; sourceTree = SOURCE_ROOT; };
|
||||
8B300D6C2E527AF9006F740B /* vstfxstore.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = vstfxstore.h; sourceTree = "<group>"; };
|
||||
8B300D6D2E527AF9006F740B /* aeffect.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = aeffect.h; sourceTree = "<group>"; };
|
||||
8B300D6E2E527AF9006F740B /* aeffectx.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = aeffectx.h; sourceTree = "<group>"; };
|
||||
8B300D722E527AF9006F740B /* audioeffectx.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = audioeffectx.h; sourceTree = "<group>"; };
|
||||
8B300D732E527AF9006F740B /* audioeffect.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = audioeffect.cpp; sourceTree = "<group>"; };
|
||||
8B300D742E527AF9006F740B /* audioeffectx.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = audioeffectx.cpp; sourceTree = "<group>"; };
|
||||
8B300D752E527AF9006F740B /* aeffeditor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = aeffeditor.h; sourceTree = "<group>"; };
|
||||
8B300D762E527AF9006F740B /* vstplugmain.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = vstplugmain.cpp; sourceTree = "<group>"; };
|
||||
8B300D772E527AF9006F740B /* audioeffect.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = audioeffect.h; sourceTree = "<group>"; };
|
||||
8D01CCD10486CAD60068D4B7 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = Info.plist; path = mac/Info.plist; sourceTree = "<group>"; };
|
||||
/* End PBXFileReference section */
|
||||
|
||||
/* Begin PBXGroup section */
|
||||
089C166AFE841209C02AAC07 /* FM-Chopper */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
19C28FB4FE9D528D11CA2CBB /* Products */,
|
||||
089C167CFE841241C02AAC07 /* Resources */,
|
||||
08FB77ADFE841716C02AAC07 /* Source */,
|
||||
);
|
||||
name = "FM-Chopper";
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
089C167CFE841241C02AAC07 /* Resources */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
24D8287E09A9164A0093AEF8 /* xcode_vst_prefix.h */,
|
||||
24CFB70307E7A0220081BD57 /* PkgInfo */,
|
||||
8D01CCD10486CAD60068D4B7 /* Info.plist */,
|
||||
);
|
||||
name = Resources;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
08FB77ADFE841716C02AAC07 /* Source */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8B300D692E527AF9006F740B /* vstsdk2.4 */,
|
||||
2407DEB6089929BA00EB68BF /* SmoothEQ2.cpp */,
|
||||
24D8286F09A914000093AEF8 /* SmoothEQ2Proc.cpp */,
|
||||
245463B80991757100464AD3 /* SmoothEQ2.h */,
|
||||
);
|
||||
name = Source;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
19C28FB4FE9D528D11CA2CBB /* Products */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
2407DE920899296600EB68BF /* SmoothEQ2.vst */,
|
||||
);
|
||||
name = Products;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
8B300D692E527AF9006F740B /* vstsdk2.4 */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8B300D6A2E527AF9006F740B /* pluginterfaces */,
|
||||
8B300D6F2E527AF9006F740B /* public.sdk */,
|
||||
);
|
||||
name = vstsdk2.4;
|
||||
path = ../../../../vstsdk2.4;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
8B300D6A2E527AF9006F740B /* pluginterfaces */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8B300D6B2E527AF9006F740B /* vst2.x */,
|
||||
);
|
||||
path = pluginterfaces;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
8B300D6B2E527AF9006F740B /* vst2.x */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8B300D6C2E527AF9006F740B /* vstfxstore.h */,
|
||||
8B300D6D2E527AF9006F740B /* aeffect.h */,
|
||||
8B300D6E2E527AF9006F740B /* aeffectx.h */,
|
||||
);
|
||||
path = vst2.x;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
8B300D6F2E527AF9006F740B /* public.sdk */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8B300D702E527AF9006F740B /* source */,
|
||||
);
|
||||
path = public.sdk;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
8B300D702E527AF9006F740B /* source */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8B300D712E527AF9006F740B /* vst2.x */,
|
||||
);
|
||||
path = source;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
8B300D712E527AF9006F740B /* vst2.x */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8B300D722E527AF9006F740B /* audioeffectx.h */,
|
||||
8B300D732E527AF9006F740B /* audioeffect.cpp */,
|
||||
8B300D742E527AF9006F740B /* audioeffectx.cpp */,
|
||||
8B300D752E527AF9006F740B /* aeffeditor.h */,
|
||||
8B300D762E527AF9006F740B /* vstplugmain.cpp */,
|
||||
8B300D772E527AF9006F740B /* audioeffect.h */,
|
||||
);
|
||||
path = vst2.x;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
/* End PBXGroup section */
|
||||
|
||||
/* Begin PBXHeadersBuildPhase section */
|
||||
8D01CCC70486CAD60068D4B7 /* Headers */ = {
|
||||
isa = PBXHeadersBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
8B300D7E2E527AF9006F740B /* aeffeditor.h in Headers */,
|
||||
245463B90991757100464AD3 /* SmoothEQ2.h in Headers */,
|
||||
8B300D802E527AF9006F740B /* audioeffect.h in Headers */,
|
||||
8B300D792E527AF9006F740B /* aeffect.h in Headers */,
|
||||
24D8287F09A9164A0093AEF8 /* xcode_vst_prefix.h in Headers */,
|
||||
8B300D7B2E527AF9006F740B /* audioeffectx.h in Headers */,
|
||||
8B300D782E527AF9006F740B /* vstfxstore.h in Headers */,
|
||||
8B300D7A2E527AF9006F740B /* aeffectx.h in Headers */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXHeadersBuildPhase section */
|
||||
|
||||
/* Begin PBXNativeTarget section */
|
||||
8D01CCC60486CAD60068D4B7 /* SmoothEQ2 */ = {
|
||||
isa = PBXNativeTarget;
|
||||
buildConfigurationList = 24BEAAED08919AE700E695F9 /* Build configuration list for PBXNativeTarget "SmoothEQ2" */;
|
||||
buildPhases = (
|
||||
8D01CCC70486CAD60068D4B7 /* Headers */,
|
||||
8D01CCC90486CAD60068D4B7 /* Resources */,
|
||||
8D01CCCB0486CAD60068D4B7 /* Sources */,
|
||||
24CFB70807E7A07C0081BD57 /* Copy PkgInfo */,
|
||||
);
|
||||
buildRules = (
|
||||
);
|
||||
dependencies = (
|
||||
);
|
||||
name = SmoothEQ2;
|
||||
productInstallPath = "$(HOME)/Library/Bundles";
|
||||
productName = "FM-Chopper";
|
||||
productReference = 2407DE920899296600EB68BF /* SmoothEQ2.vst */;
|
||||
productType = "com.apple.product-type.bundle";
|
||||
};
|
||||
/* End PBXNativeTarget section */
|
||||
|
||||
/* Begin PBXProject section */
|
||||
089C1669FE841209C02AAC07 /* Project object */ = {
|
||||
isa = PBXProject;
|
||||
attributes = {
|
||||
LastUpgradeCheck = 1420;
|
||||
};
|
||||
buildConfigurationList = 24BEAAF108919AE700E695F9 /* Build configuration list for PBXProject "SmoothEQ2" */;
|
||||
compatibilityVersion = "Xcode 2.4";
|
||||
developmentRegion = en;
|
||||
hasScannedForEncodings = 1;
|
||||
knownRegions = (
|
||||
Base,
|
||||
fr,
|
||||
en,
|
||||
de,
|
||||
ja,
|
||||
);
|
||||
mainGroup = 089C166AFE841209C02AAC07 /* FM-Chopper */;
|
||||
projectDirPath = "";
|
||||
projectRoot = "";
|
||||
targets = (
|
||||
8D01CCC60486CAD60068D4B7 /* SmoothEQ2 */,
|
||||
);
|
||||
};
|
||||
/* End PBXProject section */
|
||||
|
||||
/* Begin PBXResourcesBuildPhase section */
|
||||
8D01CCC90486CAD60068D4B7 /* Resources */ = {
|
||||
isa = PBXResourcesBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
24CFB70407E7A0220081BD57 /* PkgInfo in Resources */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXResourcesBuildPhase section */
|
||||
|
||||
/* Begin PBXShellScriptBuildPhase section */
|
||||
24CFB70807E7A07C0081BD57 /* Copy PkgInfo */ = {
|
||||
isa = PBXShellScriptBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
);
|
||||
inputPaths = (
|
||||
);
|
||||
name = "Copy PkgInfo";
|
||||
outputPaths = (
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
shellPath = /bin/bash;
|
||||
shellScript = "cp mac/PkgInfo \"$BUILT_PRODUCTS_DIR/$PRODUCT_NAME.vst/Contents/\"";
|
||||
};
|
||||
/* End PBXShellScriptBuildPhase section */
|
||||
|
||||
/* Begin PBXSourcesBuildPhase section */
|
||||
8D01CCCB0486CAD60068D4B7 /* Sources */ = {
|
||||
isa = PBXSourcesBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
8B300D7D2E527AF9006F740B /* audioeffectx.cpp in Sources */,
|
||||
2407DEB9089929BA00EB68BF /* SmoothEQ2.cpp in Sources */,
|
||||
8B300D7C2E527AF9006F740B /* audioeffect.cpp in Sources */,
|
||||
8B300D7F2E527AF9006F740B /* vstplugmain.cpp in Sources */,
|
||||
24D8287009A914000093AEF8 /* SmoothEQ2Proc.cpp in Sources */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXSourcesBuildPhase section */
|
||||
|
||||
/* Begin XCBuildConfiguration section */
|
||||
24BEAAEE08919AE700E695F9 /* Debug */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
ARCHS = "$(ARCHS_STANDARD)";
|
||||
CLANG_ENABLE_OBJC_WEAK = YES;
|
||||
CODE_SIGN_IDENTITY = "Apple Development";
|
||||
"CODE_SIGN_IDENTITY[sdk=macosx*]" = "Developer ID Application";
|
||||
CODE_SIGN_STYLE = Manual;
|
||||
COPY_PHASE_STRIP = NO;
|
||||
DEAD_CODE_STRIPPING = YES;
|
||||
DEVELOPMENT_TEAM = "";
|
||||
"DEVELOPMENT_TEAM[sdk=macosx*]" = 9BMAKYA76W;
|
||||
FRAMEWORK_SEARCH_PATHS = "";
|
||||
GCC_DYNAMIC_NO_PIC = NO;
|
||||
GCC_ENABLE_TRIGRAPHS = NO;
|
||||
GCC_GENERATE_DEBUGGING_SYMBOLS = YES;
|
||||
GCC_MODEL_TUNING = "";
|
||||
GCC_PRECOMPILE_PREFIX_HEADER = YES;
|
||||
GCC_PREFIX_HEADER = "";
|
||||
GCC_WARN_ABOUT_MISSING_PROTOTYPES = NO;
|
||||
GCC_WARN_FOUR_CHARACTER_CONSTANTS = NO;
|
||||
GCC_WARN_UNKNOWN_PRAGMAS = NO;
|
||||
HEADER_SEARCH_PATHS = "/Users/christopherjohnson/Desktop/vstsdk2.4/**";
|
||||
INFOPLIST_FILE = ./mac/Info.plist;
|
||||
INSTALL_PATH = "$(HOME)/Library/Audio/Plug-Ins/VST";
|
||||
LIBRARY_SEARCH_PATHS = "";
|
||||
MACOSX_DEPLOYMENT_TARGET = 11.1;
|
||||
OTHER_CFLAGS = "";
|
||||
OTHER_LDFLAGS = "";
|
||||
OTHER_REZFLAGS = "";
|
||||
PRODUCT_BUNDLE_IDENTIFIER = com.airwindows.SmoothEQ2;
|
||||
PRODUCT_NAME = SmoothEQ2;
|
||||
PROVISIONING_PROFILE_SPECIFIER = "";
|
||||
SDKROOT = macosx;
|
||||
SECTORDER_FLAGS = "";
|
||||
STRIP_STYLE = debugging;
|
||||
WARNING_CFLAGS = (
|
||||
"-Wmost",
|
||||
"-Wno-four-char-constants",
|
||||
"-Wno-unknown-pragmas",
|
||||
);
|
||||
WRAPPER_EXTENSION = vst;
|
||||
};
|
||||
name = Debug;
|
||||
};
|
||||
24BEAAEF08919AE700E695F9 /* Release */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
ARCHS = "$(ARCHS_STANDARD)";
|
||||
CLANG_ENABLE_OBJC_WEAK = YES;
|
||||
CODE_SIGN_IDENTITY = "Apple Development";
|
||||
"CODE_SIGN_IDENTITY[sdk=macosx*]" = "Developer ID Application";
|
||||
CODE_SIGN_STYLE = Manual;
|
||||
COPY_PHASE_STRIP = YES;
|
||||
DEAD_CODE_STRIPPING = YES;
|
||||
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
|
||||
DEVELOPMENT_TEAM = "";
|
||||
"DEVELOPMENT_TEAM[sdk=macosx*]" = 9BMAKYA76W;
|
||||
FRAMEWORK_SEARCH_PATHS = "";
|
||||
GCC_C_LANGUAGE_STANDARD = c99;
|
||||
GCC_ENABLE_TRIGRAPHS = NO;
|
||||
GCC_GENERATE_DEBUGGING_SYMBOLS = NO;
|
||||
GCC_MODEL_TUNING = "";
|
||||
GCC_OPTIMIZATION_LEVEL = s;
|
||||
GCC_PRECOMPILE_PREFIX_HEADER = YES;
|
||||
GCC_PREFIX_HEADER = "";
|
||||
GCC_WARN_ABOUT_MISSING_PROTOTYPES = NO;
|
||||
GCC_WARN_FOUR_CHARACTER_CONSTANTS = NO;
|
||||
GCC_WARN_UNKNOWN_PRAGMAS = NO;
|
||||
HEADER_SEARCH_PATHS = "/Users/christopherjohnson/Desktop/vstsdk2.4/**";
|
||||
INFOPLIST_FILE = ./mac/Info.plist;
|
||||
INSTALL_PATH = "$(HOME)/Library/Audio/Plug-Ins/VST";
|
||||
LIBRARY_SEARCH_PATHS = "";
|
||||
MACOSX_DEPLOYMENT_TARGET = 11.1;
|
||||
OTHER_CFLAGS = "";
|
||||
OTHER_LDFLAGS = "";
|
||||
OTHER_REZFLAGS = "";
|
||||
PRODUCT_BUNDLE_IDENTIFIER = com.airwindows.SmoothEQ2;
|
||||
PRODUCT_NAME = SmoothEQ2;
|
||||
PROVISIONING_PROFILE_SPECIFIER = "";
|
||||
SDKROOT = macosx;
|
||||
SECTORDER_FLAGS = "";
|
||||
SKIP_INSTALL = NO;
|
||||
STRIP_INSTALLED_PRODUCT = YES;
|
||||
STRIP_STYLE = debugging;
|
||||
WARNING_CFLAGS = (
|
||||
"-Wmost",
|
||||
"-Wno-four-char-constants",
|
||||
"-Wno-unknown-pragmas",
|
||||
);
|
||||
WRAPPER_EXTENSION = vst;
|
||||
};
|
||||
name = Release;
|
||||
};
|
||||
24BEAAF208919AE700E695F9 /* Debug */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
ALWAYS_SEARCH_USER_PATHS = NO;
|
||||
ARCHS = "$(ARCHS_STANDARD)";
|
||||
CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES;
|
||||
CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
|
||||
CLANG_WARN_BOOL_CONVERSION = YES;
|
||||
CLANG_WARN_COMMA = YES;
|
||||
CLANG_WARN_CONSTANT_CONVERSION = YES;
|
||||
CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
|
||||
CLANG_WARN_EMPTY_BODY = YES;
|
||||
CLANG_WARN_ENUM_CONVERSION = YES;
|
||||
CLANG_WARN_INFINITE_RECURSION = YES;
|
||||
CLANG_WARN_INT_CONVERSION = YES;
|
||||
CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
|
||||
CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
|
||||
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
|
||||
CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
|
||||
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
|
||||
CLANG_WARN_STRICT_PROTOTYPES = YES;
|
||||
CLANG_WARN_SUSPICIOUS_MOVE = YES;
|
||||
CLANG_WARN_UNREACHABLE_CODE = YES;
|
||||
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
|
||||
DEAD_CODE_STRIPPING = YES;
|
||||
ENABLE_STRICT_OBJC_MSGSEND = YES;
|
||||
ENABLE_TESTABILITY = YES;
|
||||
GCC_MODEL_TUNING = G5;
|
||||
GCC_NO_COMMON_BLOCKS = YES;
|
||||
GCC_OPTIMIZATION_LEVEL = 0;
|
||||
GCC_PREPROCESSOR_DEFINITIONS = "DEBUG=1";
|
||||
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
|
||||
GCC_WARN_ABOUT_RETURN_TYPE = YES;
|
||||
GCC_WARN_UNDECLARED_SELECTOR = YES;
|
||||
GCC_WARN_UNINITIALIZED_AUTOS = YES;
|
||||
GCC_WARN_UNUSED_FUNCTION = YES;
|
||||
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||
INFOPLIST_FILE = "";
|
||||
INFOPLIST_PREPROCESS = NO;
|
||||
MACOSX_DEPLOYMENT_TARGET = 11.1;
|
||||
ONLY_ACTIVE_ARCH = YES;
|
||||
SDKROOT = macosx;
|
||||
};
|
||||
name = Debug;
|
||||
};
|
||||
24BEAAF308919AE700E695F9 /* Release */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
ALWAYS_SEARCH_USER_PATHS = NO;
|
||||
ARCHS = "$(ARCHS_STANDARD)";
|
||||
CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES;
|
||||
CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
|
||||
CLANG_WARN_BOOL_CONVERSION = YES;
|
||||
CLANG_WARN_COMMA = YES;
|
||||
CLANG_WARN_CONSTANT_CONVERSION = YES;
|
||||
CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
|
||||
CLANG_WARN_EMPTY_BODY = YES;
|
||||
CLANG_WARN_ENUM_CONVERSION = YES;
|
||||
CLANG_WARN_INFINITE_RECURSION = YES;
|
||||
CLANG_WARN_INT_CONVERSION = YES;
|
||||
CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
|
||||
CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
|
||||
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
|
||||
CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
|
||||
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
|
||||
CLANG_WARN_STRICT_PROTOTYPES = YES;
|
||||
CLANG_WARN_SUSPICIOUS_MOVE = YES;
|
||||
CLANG_WARN_UNREACHABLE_CODE = YES;
|
||||
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
|
||||
DEAD_CODE_STRIPPING = YES;
|
||||
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
|
||||
ENABLE_STRICT_OBJC_MSGSEND = YES;
|
||||
GCC_C_LANGUAGE_STANDARD = c99;
|
||||
GCC_MODEL_TUNING = G4;
|
||||
GCC_NO_COMMON_BLOCKS = YES;
|
||||
GCC_OPTIMIZATION_LEVEL = s;
|
||||
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
|
||||
GCC_WARN_ABOUT_RETURN_TYPE = YES;
|
||||
GCC_WARN_UNDECLARED_SELECTOR = YES;
|
||||
GCC_WARN_UNINITIALIZED_AUTOS = YES;
|
||||
GCC_WARN_UNUSED_FUNCTION = YES;
|
||||
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||
INFOPLIST_FILE = "";
|
||||
INFOPLIST_PREPROCESS = NO;
|
||||
MACOSX_DEPLOYMENT_TARGET = 11.1;
|
||||
ONLY_ACTIVE_ARCH = YES;
|
||||
SDKROOT = macosx;
|
||||
};
|
||||
name = Release;
|
||||
};
|
||||
/* End XCBuildConfiguration section */
|
||||
|
||||
/* Begin XCConfigurationList section */
|
||||
24BEAAED08919AE700E695F9 /* Build configuration list for PBXNativeTarget "SmoothEQ2" */ = {
|
||||
isa = XCConfigurationList;
|
||||
buildConfigurations = (
|
||||
24BEAAEE08919AE700E695F9 /* Debug */,
|
||||
24BEAAEF08919AE700E695F9 /* Release */,
|
||||
);
|
||||
defaultConfigurationIsVisible = 0;
|
||||
defaultConfigurationName = Debug;
|
||||
};
|
||||
24BEAAF108919AE700E695F9 /* Build configuration list for PBXProject "SmoothEQ2" */ = {
|
||||
isa = XCConfigurationList;
|
||||
buildConfigurations = (
|
||||
24BEAAF208919AE700E695F9 /* Debug */,
|
||||
24BEAAF308919AE700E695F9 /* Release */,
|
||||
);
|
||||
defaultConfigurationIsVisible = 0;
|
||||
defaultConfigurationName = Debug;
|
||||
};
|
||||
/* End XCConfigurationList section */
|
||||
};
|
||||
rootObject = 089C1669FE841209C02AAC07 /* Project object */;
|
||||
}
|
||||
7
plugins/MacSignedVST/SmoothEQ2/SmoothEQ2.xcodeproj/project.xcworkspace/contents.xcworkspacedata
generated
Executable file
7
plugins/MacSignedVST/SmoothEQ2/SmoothEQ2.xcodeproj/project.xcworkspace/contents.xcworkspacedata
generated
Executable file
|
|
@ -0,0 +1,7 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Workspace
|
||||
version = "1.0">
|
||||
<FileRef
|
||||
location = "self:Sample.xcodeproj">
|
||||
</FileRef>
|
||||
</Workspace>
|
||||
|
|
@ -0,0 +1,8 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>IDEDidComputeMac32BitWarning</key>
|
||||
<true/>
|
||||
</dict>
|
||||
</plist>
|
||||
Binary file not shown.
Binary file not shown.
1372
plugins/MacSignedVST/SmoothEQ2/SmoothEQ2.xcodeproj/spiadmin.mode1v3
Executable file
1372
plugins/MacSignedVST/SmoothEQ2/SmoothEQ2.xcodeproj/spiadmin.mode1v3
Executable file
File diff suppressed because it is too large
Load diff
143
plugins/MacSignedVST/SmoothEQ2/SmoothEQ2.xcodeproj/spiadmin.pbxuser
Executable file
143
plugins/MacSignedVST/SmoothEQ2/SmoothEQ2.xcodeproj/spiadmin.pbxuser
Executable file
|
|
@ -0,0 +1,143 @@
|
|||
// !$*UTF8*$!
|
||||
{
|
||||
089C1669FE841209C02AAC07 /* Project object */ = {
|
||||
activeBuildConfigurationName = Release;
|
||||
activeTarget = 8D01CCC60486CAD60068D4B7 /* Gain */;
|
||||
codeSenseManager = 91857D95148EF55400AAA11B /* Code sense */;
|
||||
perUserDictionary = {
|
||||
PBXConfiguration.PBXFileTableDataSource3.PBXFileTableDataSource = {
|
||||
PBXFileTableDataSourceColumnSortingDirectionKey = "-1";
|
||||
PBXFileTableDataSourceColumnSortingKey = PBXFileDataSource_Filename_ColumnID;
|
||||
PBXFileTableDataSourceColumnWidthsKey = (
|
||||
20,
|
||||
829,
|
||||
20,
|
||||
48,
|
||||
43,
|
||||
43,
|
||||
20,
|
||||
);
|
||||
PBXFileTableDataSourceColumnsKey = (
|
||||
PBXFileDataSource_FiletypeID,
|
||||
PBXFileDataSource_Filename_ColumnID,
|
||||
PBXFileDataSource_Built_ColumnID,
|
||||
PBXFileDataSource_ObjectSize_ColumnID,
|
||||
PBXFileDataSource_Errors_ColumnID,
|
||||
PBXFileDataSource_Warnings_ColumnID,
|
||||
PBXFileDataSource_Target_ColumnID,
|
||||
);
|
||||
};
|
||||
PBXConfiguration.PBXTargetDataSource.PBXTargetDataSource = {
|
||||
PBXFileTableDataSourceColumnSortingDirectionKey = "-1";
|
||||
PBXFileTableDataSourceColumnSortingKey = PBXFileDataSource_Filename_ColumnID;
|
||||
PBXFileTableDataSourceColumnWidthsKey = (
|
||||
20,
|
||||
789,
|
||||
60,
|
||||
20,
|
||||
48,
|
||||
43,
|
||||
43,
|
||||
);
|
||||
PBXFileTableDataSourceColumnsKey = (
|
||||
PBXFileDataSource_FiletypeID,
|
||||
PBXFileDataSource_Filename_ColumnID,
|
||||
PBXTargetDataSource_PrimaryAttribute,
|
||||
PBXFileDataSource_Built_ColumnID,
|
||||
PBXFileDataSource_ObjectSize_ColumnID,
|
||||
PBXFileDataSource_Errors_ColumnID,
|
||||
PBXFileDataSource_Warnings_ColumnID,
|
||||
);
|
||||
};
|
||||
PBXPerProjectTemplateStateSaveDate = 345089498;
|
||||
PBXWorkspaceStateSaveDate = 345089498;
|
||||
};
|
||||
perUserProjectItems = {
|
||||
911C2A9D1491A5F600A430AF /* PBXTextBookmark */ = 911C2A9D1491A5F600A430AF /* PBXTextBookmark */;
|
||||
915DCCBB1491A5B8008574E6 /* PBXTextBookmark */ = 915DCCBB1491A5B8008574E6 /* PBXTextBookmark */;
|
||||
};
|
||||
sourceControlManager = 91857D94148EF55400AAA11B /* Source Control */;
|
||||
userBuildSettings = {
|
||||
};
|
||||
};
|
||||
2407DEB6089929BA00EB68BF /* Gain.cpp */ = {
|
||||
uiCtxt = {
|
||||
sepNavIntBoundsRect = "{{0, 0}, {992, 1768}}";
|
||||
sepNavSelRange = "{247, 0}";
|
||||
sepNavVisRange = "{0, 1657}";
|
||||
};
|
||||
};
|
||||
245463B80991757100464AD3 /* Gain.h */ = {
|
||||
uiCtxt = {
|
||||
sepNavIntBoundsRect = "{{0, 0}, {992, 975}}";
|
||||
sepNavSelRange = "{1552, 0}";
|
||||
sepNavVisRange = "{796, 1857}";
|
||||
sepNavWindowFrame = "{{15, 465}, {750, 558}}";
|
||||
};
|
||||
};
|
||||
24A2FF9A0F90D1DD003BB5A7 /* adelaymain.cpp */ = {
|
||||
uiCtxt = {
|
||||
sepNavIntBoundsRect = "{{0, 0}, {992, 488}}";
|
||||
sepNavSelRange = "{0, 0}";
|
||||
sepNavVisRange = "{0, 798}";
|
||||
};
|
||||
};
|
||||
24A2FFDB0F90D1DD003BB5A7 /* audioeffectx.cpp */ = {
|
||||
uiCtxt = {
|
||||
sepNavIntBoundsRect = "{{0, 0}, {859, 19825}}";
|
||||
sepNavSelRange = "{10641, 0}";
|
||||
sepNavVisRange = "{10076, 1095}";
|
||||
};
|
||||
};
|
||||
24D8286F09A914000093AEF8 /* GainProc.cpp */ = {
|
||||
uiCtxt = {
|
||||
sepNavIntBoundsRect = "{{0, 0}, {992, 482}}";
|
||||
sepNavSelRange = "{239, 0}";
|
||||
sepNavVisRange = "{0, 950}";
|
||||
};
|
||||
};
|
||||
24D8287E09A9164A0093AEF8 /* xcode_vst_prefix.h */ = {
|
||||
uiCtxt = {
|
||||
sepNavIntBoundsRect = "{{0, 0}, {992, 493}}";
|
||||
sepNavSelRange = "{249, 0}";
|
||||
sepNavVisRange = "{0, 249}";
|
||||
};
|
||||
};
|
||||
8D01CCC60486CAD60068D4B7 /* Gain */ = {
|
||||
activeExec = 0;
|
||||
};
|
||||
911C2A9D1491A5F600A430AF /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 2407DEB6089929BA00EB68BF /* Gain.cpp */;
|
||||
name = "Gain.cpp: 10";
|
||||
rLen = 0;
|
||||
rLoc = 247;
|
||||
rType = 0;
|
||||
vrLen = 1657;
|
||||
vrLoc = 0;
|
||||
};
|
||||
915DCCBB1491A5B8008574E6 /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 2407DEB6089929BA00EB68BF /* Gain.cpp */;
|
||||
name = "Gain.cpp: 10";
|
||||
rLen = 0;
|
||||
rLoc = 247;
|
||||
rType = 0;
|
||||
vrLen = 1625;
|
||||
vrLoc = 0;
|
||||
};
|
||||
91857D94148EF55400AAA11B /* Source Control */ = {
|
||||
isa = PBXSourceControlManager;
|
||||
fallbackIsa = XCSourceControlManager;
|
||||
isSCMEnabled = 0;
|
||||
scmConfiguration = {
|
||||
repositoryNamesForRoots = {
|
||||
"" = "";
|
||||
};
|
||||
};
|
||||
};
|
||||
91857D95148EF55400AAA11B /* Code sense */ = {
|
||||
isa = PBXCodeSenseManager;
|
||||
indexTemplatePath = "";
|
||||
};
|
||||
}
|
||||
|
|
@ -0,0 +1,67 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Scheme
|
||||
LastUpgradeVersion = "1420"
|
||||
version = "1.3">
|
||||
<BuildAction
|
||||
parallelizeBuildables = "YES"
|
||||
buildImplicitDependencies = "YES">
|
||||
<BuildActionEntries>
|
||||
<BuildActionEntry
|
||||
buildForTesting = "YES"
|
||||
buildForRunning = "YES"
|
||||
buildForProfiling = "YES"
|
||||
buildForArchiving = "YES"
|
||||
buildForAnalyzing = "YES">
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "8D01CCC60486CAD60068D4B7"
|
||||
BuildableName = "Gain.vst"
|
||||
BlueprintName = "SmoothEQ2"
|
||||
ReferencedContainer = "container:SmoothEQ2.xcodeproj">
|
||||
</BuildableReference>
|
||||
</BuildActionEntry>
|
||||
</BuildActionEntries>
|
||||
</BuildAction>
|
||||
<TestAction
|
||||
buildConfiguration = "Debug"
|
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
|
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
|
||||
shouldUseLaunchSchemeArgsEnv = "YES">
|
||||
<Testables>
|
||||
</Testables>
|
||||
</TestAction>
|
||||
<LaunchAction
|
||||
buildConfiguration = "Release"
|
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
|
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
|
||||
launchStyle = "0"
|
||||
useCustomWorkingDirectory = "NO"
|
||||
ignoresPersistentStateOnLaunch = "NO"
|
||||
debugDocumentVersioning = "YES"
|
||||
debugServiceExtension = "internal"
|
||||
allowLocationSimulation = "YES">
|
||||
</LaunchAction>
|
||||
<ProfileAction
|
||||
buildConfiguration = "Release"
|
||||
shouldUseLaunchSchemeArgsEnv = "YES"
|
||||
savedToolIdentifier = ""
|
||||
useCustomWorkingDirectory = "NO"
|
||||
debugDocumentVersioning = "YES">
|
||||
<MacroExpansion>
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "8D01CCC60486CAD60068D4B7"
|
||||
BuildableName = "Gain.vst"
|
||||
BlueprintName = "SmoothEQ2"
|
||||
ReferencedContainer = "container:SmoothEQ2.xcodeproj">
|
||||
</BuildableReference>
|
||||
</MacroExpansion>
|
||||
</ProfileAction>
|
||||
<AnalyzeAction
|
||||
buildConfiguration = "Debug">
|
||||
</AnalyzeAction>
|
||||
<ArchiveAction
|
||||
buildConfiguration = "Release"
|
||||
revealArchiveInOrganizer = "YES">
|
||||
</ArchiveAction>
|
||||
</Scheme>
|
||||
|
|
@ -0,0 +1,22 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>SchemeUserState</key>
|
||||
<dict>
|
||||
<key>SmoothEQ2.xcscheme_^#shared#^_</key>
|
||||
<dict>
|
||||
<key>orderHint</key>
|
||||
<integer>1</integer>
|
||||
</dict>
|
||||
</dict>
|
||||
<key>SuppressBuildableAutocreation</key>
|
||||
<dict>
|
||||
<key>8D01CCC60486CAD60068D4B7</key>
|
||||
<dict>
|
||||
<key>primary</key>
|
||||
<true/>
|
||||
</dict>
|
||||
</dict>
|
||||
</dict>
|
||||
</plist>
|
||||
|
|
@ -0,0 +1,22 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>SchemeUserState</key>
|
||||
<dict>
|
||||
<key>«PROJECTNAME».xcscheme</key>
|
||||
<dict>
|
||||
<key>orderHint</key>
|
||||
<integer>0</integer>
|
||||
</dict>
|
||||
</dict>
|
||||
<key>SuppressBuildableAutocreation</key>
|
||||
<dict>
|
||||
<key>8D01CCC60486CAD60068D4B7</key>
|
||||
<dict>
|
||||
<key>primary</key>
|
||||
<true/>
|
||||
</dict>
|
||||
</dict>
|
||||
</dict>
|
||||
</plist>
|
||||
|
|
@ -0,0 +1,57 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Scheme
|
||||
version = "1.3">
|
||||
<BuildAction
|
||||
parallelizeBuildables = "YES"
|
||||
buildImplicitDependencies = "YES">
|
||||
<BuildActionEntries>
|
||||
<BuildActionEntry
|
||||
buildForTesting = "YES"
|
||||
buildForRunning = "YES"
|
||||
buildForProfiling = "YES"
|
||||
buildForArchiving = "YES"
|
||||
buildForAnalyzing = "YES">
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "8D01CCC60486CAD60068D4B7"
|
||||
BuildableName = "«PROJECTNAME».vst"
|
||||
BlueprintName = "«PROJECTNAME»"
|
||||
ReferencedContainer = "container:Sample.xcodeproj">
|
||||
</BuildableReference>
|
||||
</BuildActionEntry>
|
||||
</BuildActionEntries>
|
||||
</BuildAction>
|
||||
<TestAction
|
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.GDB"
|
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.GDB"
|
||||
shouldUseLaunchSchemeArgsEnv = "YES"
|
||||
buildConfiguration = "Debug">
|
||||
<Testables>
|
||||
</Testables>
|
||||
</TestAction>
|
||||
<LaunchAction
|
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.GDB"
|
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.GDB"
|
||||
launchStyle = "0"
|
||||
useCustomWorkingDirectory = "NO"
|
||||
buildConfiguration = "Debug"
|
||||
debugDocumentVersioning = "YES"
|
||||
allowLocationSimulation = "YES">
|
||||
<AdditionalOptions>
|
||||
</AdditionalOptions>
|
||||
</LaunchAction>
|
||||
<ProfileAction
|
||||
shouldUseLaunchSchemeArgsEnv = "YES"
|
||||
savedToolIdentifier = ""
|
||||
useCustomWorkingDirectory = "NO"
|
||||
buildConfiguration = "Release"
|
||||
debugDocumentVersioning = "YES">
|
||||
</ProfileAction>
|
||||
<AnalyzeAction
|
||||
buildConfiguration = "Debug">
|
||||
</AnalyzeAction>
|
||||
<ArchiveAction
|
||||
buildConfiguration = "Release"
|
||||
revealArchiveInOrganizer = "YES">
|
||||
</ArchiveAction>
|
||||
</Scheme>
|
||||
24
plugins/MacSignedVST/SmoothEQ2/mac/Info.plist
Executable file
24
plugins/MacSignedVST/SmoothEQ2/mac/Info.plist
Executable file
|
|
@ -0,0 +1,24 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>CFBundleDevelopmentRegion</key>
|
||||
<string>English</string>
|
||||
<key>CFBundleExecutable</key>
|
||||
<string>SmoothEQ2</string>
|
||||
<key>CFBundleIconFile</key>
|
||||
<string></string>
|
||||
<key>CFBundleIdentifier</key>
|
||||
<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
|
||||
<key>CFBundleInfoDictionaryVersion</key>
|
||||
<string>6.0</string>
|
||||
<key>CFBundlePackageType</key>
|
||||
<string>BNDL</string>
|
||||
<key>CFBundleSignature</key>
|
||||
<string>Dthr</string>
|
||||
<key>CFBundleVersion</key>
|
||||
<string>1.0</string>
|
||||
<key>CSResourcesFileMapped</key>
|
||||
<true/>
|
||||
</dict>
|
||||
</plist>
|
||||
1
plugins/MacSignedVST/SmoothEQ2/mac/PkgInfo
Executable file
1
plugins/MacSignedVST/SmoothEQ2/mac/PkgInfo
Executable file
|
|
@ -0,0 +1 @@
|
|||
BNDL????
|
||||
17
plugins/MacSignedVST/SmoothEQ2/mac/xcode_vst_prefix.h
Executable file
17
plugins/MacSignedVST/SmoothEQ2/mac/xcode_vst_prefix.h
Executable file
|
|
@ -0,0 +1,17 @@
|
|||
#define MAC 1
|
||||
#define MACX 1
|
||||
|
||||
#define USE_NAMESPACE 0
|
||||
|
||||
#define TARGET_API_MAC_CARBON 1
|
||||
#define USENAVSERVICES 1
|
||||
|
||||
#define __CF_USE_FRAMEWORK_INCLUDES__
|
||||
|
||||
#if __MWERKS__
|
||||
#define __NOEXTENSIONS__
|
||||
#endif
|
||||
|
||||
#define QUARTZ 1
|
||||
|
||||
#include <AvailabilityMacros.h>
|
||||
194
plugins/MacSignedVST/SmoothEQ2/source/SmoothEQ2.cpp
Executable file
194
plugins/MacSignedVST/SmoothEQ2/source/SmoothEQ2.cpp
Executable file
|
|
@ -0,0 +1,194 @@
|
|||
/* ========================================
|
||||
* SmoothEQ2 - SmoothEQ2.h
|
||||
* Copyright (c) airwindows, Airwindows uses the MIT license
|
||||
* ======================================== */
|
||||
|
||||
#ifndef __SmoothEQ2_H
|
||||
#include "SmoothEQ2.h"
|
||||
#endif
|
||||
|
||||
AudioEffect* createEffectInstance(audioMasterCallback audioMaster) {return new SmoothEQ2(audioMaster);}
|
||||
|
||||
SmoothEQ2::SmoothEQ2(audioMasterCallback audioMaster) :
|
||||
AudioEffectX(audioMaster, kNumPrograms, kNumParameters)
|
||||
{
|
||||
A = 0.5;
|
||||
B = 0.5;
|
||||
C = 0.5;
|
||||
D = 0.5;
|
||||
E = 0.5;
|
||||
F = 0.5;
|
||||
G = 0.5;
|
||||
H = 0.5;
|
||||
|
||||
for (int x = 0; x < biq_total; x++) {
|
||||
highA[x] = 0.0;
|
||||
highB[x] = 0.0;
|
||||
highC[x] = 0.0;
|
||||
midA[x] = 0.0;
|
||||
midB[x] = 0.0;
|
||||
midC[x] = 0.0;
|
||||
lowA[x] = 0.0;
|
||||
lowB[x] = 0.0;
|
||||
lowC[x] = 0.0;
|
||||
}
|
||||
highLIIR = 0.0;
|
||||
highRIIR = 0.0;
|
||||
midLIIR = 0.0;
|
||||
midRIIR = 0.0;
|
||||
lowLIIR = 0.0;
|
||||
lowRIIR = 0.0;
|
||||
|
||||
fpdL = 1.0; while (fpdL < 16386) fpdL = rand()*UINT32_MAX;
|
||||
fpdR = 1.0; while (fpdR < 16386) fpdR = rand()*UINT32_MAX;
|
||||
//this is reset: values being initialized only once. Startup values, whatever they are.
|
||||
|
||||
_canDo.insert("plugAsChannelInsert"); // plug-in can be used as a channel insert effect.
|
||||
_canDo.insert("plugAsSend"); // plug-in can be used as a send effect.
|
||||
_canDo.insert("x2in2out");
|
||||
setNumInputs(kNumInputs);
|
||||
setNumOutputs(kNumOutputs);
|
||||
setUniqueID(kUniqueId);
|
||||
canProcessReplacing(); // supports output replacing
|
||||
canDoubleReplacing(); // supports double precision processing
|
||||
programsAreChunks(true);
|
||||
vst_strncpy (_programName, "Default", kVstMaxProgNameLen); // default program name
|
||||
}
|
||||
|
||||
SmoothEQ2::~SmoothEQ2() {}
|
||||
VstInt32 SmoothEQ2::getVendorVersion () {return 1000;}
|
||||
void SmoothEQ2::setProgramName(char *name) {vst_strncpy (_programName, name, kVstMaxProgNameLen);}
|
||||
void SmoothEQ2::getProgramName(char *name) {vst_strncpy (name, _programName, kVstMaxProgNameLen);}
|
||||
//airwindows likes to ignore this stuff. Make your own programs, and make a different plugin rather than
|
||||
//trying to do versioning and preventing people from using older versions. Maybe they like the old one!
|
||||
|
||||
static float pinParameter(float data)
|
||||
{
|
||||
if (data < 0.0f) return 0.0f;
|
||||
if (data > 1.0f) return 1.0f;
|
||||
return data;
|
||||
}
|
||||
|
||||
VstInt32 SmoothEQ2::getChunk (void** data, bool isPreset)
|
||||
{
|
||||
float *chunkData = (float *)calloc(kNumParameters, sizeof(float));
|
||||
chunkData[0] = A;
|
||||
chunkData[1] = B;
|
||||
chunkData[2] = C;
|
||||
chunkData[3] = D;
|
||||
chunkData[4] = E;
|
||||
chunkData[5] = F;
|
||||
chunkData[6] = G;
|
||||
chunkData[7] = H;
|
||||
/* Note: The way this is set up, it will break if you manage to save settings on an Intel
|
||||
machine and load them on a PPC Mac. However, it's fine if you stick to the machine you
|
||||
started with. */
|
||||
|
||||
*data = chunkData;
|
||||
return kNumParameters * sizeof(float);
|
||||
}
|
||||
|
||||
VstInt32 SmoothEQ2::setChunk (void* data, VstInt32 byteSize, bool isPreset)
|
||||
{
|
||||
float *chunkData = (float *)data;
|
||||
A = pinParameter(chunkData[0]);
|
||||
B = pinParameter(chunkData[1]);
|
||||
C = pinParameter(chunkData[2]);
|
||||
D = pinParameter(chunkData[3]);
|
||||
E = pinParameter(chunkData[4]);
|
||||
F = pinParameter(chunkData[5]);
|
||||
G = pinParameter(chunkData[6]);
|
||||
H = pinParameter(chunkData[7]);
|
||||
/* We're ignoring byteSize as we found it to be a filthy liar */
|
||||
|
||||
/* calculate any other fields you need here - you could copy in
|
||||
code from setParameter() here. */
|
||||
return 0;
|
||||
}
|
||||
|
||||
void SmoothEQ2::setParameter(VstInt32 index, float value) {
|
||||
switch (index) {
|
||||
case kParamA: A = value; break;
|
||||
case kParamB: B = value; break;
|
||||
case kParamC: C = value; break;
|
||||
case kParamD: D = value; break;
|
||||
case kParamE: E = value; break;
|
||||
case kParamF: F = value; break;
|
||||
case kParamG: G = value; break;
|
||||
case kParamH: H = value; break;
|
||||
default: throw; // unknown parameter, shouldn't happen!
|
||||
}
|
||||
}
|
||||
|
||||
float SmoothEQ2::getParameter(VstInt32 index) {
|
||||
switch (index) {
|
||||
case kParamA: return A; break;
|
||||
case kParamB: return B; break;
|
||||
case kParamC: return C; break;
|
||||
case kParamD: return D; break;
|
||||
case kParamE: return E; break;
|
||||
case kParamF: return F; break;
|
||||
case kParamG: return G; break;
|
||||
case kParamH: return H; break;
|
||||
default: break; // unknown parameter, shouldn't happen!
|
||||
} return 0.0; //we only need to update the relevant name, this is simple to manage
|
||||
}
|
||||
|
||||
void SmoothEQ2::getParameterName(VstInt32 index, char *text) {
|
||||
switch (index) {
|
||||
case kParamA: vst_strncpy (text, "High", kVstMaxParamStrLen); break;
|
||||
case kParamB: vst_strncpy (text, "HMid", kVstMaxParamStrLen); break;
|
||||
case kParamC: vst_strncpy (text, "LMid", kVstMaxParamStrLen); break;
|
||||
case kParamD: vst_strncpy (text, "Bass", kVstMaxParamStrLen); break;
|
||||
case kParamE: vst_strncpy (text, "HighF", kVstMaxParamStrLen); break;
|
||||
case kParamF: vst_strncpy (text, "HMidF", kVstMaxParamStrLen); break;
|
||||
case kParamG: vst_strncpy (text, "LMidF", kVstMaxParamStrLen); break;
|
||||
case kParamH: vst_strncpy (text, "BassF", kVstMaxParamStrLen); break;
|
||||
default: break; // unknown parameter, shouldn't happen!
|
||||
} //this is our labels for displaying in the VST host
|
||||
}
|
||||
|
||||
void SmoothEQ2::getParameterDisplay(VstInt32 index, char *text) {
|
||||
switch (index) {
|
||||
case kParamA: float2string (A, text, kVstMaxParamStrLen); break;
|
||||
case kParamB: float2string (B, text, kVstMaxParamStrLen); break;
|
||||
case kParamC: float2string (C, text, kVstMaxParamStrLen); break;
|
||||
case kParamD: float2string (D, text, kVstMaxParamStrLen); break;
|
||||
case kParamE: float2string (E, text, kVstMaxParamStrLen); break;
|
||||
case kParamF: float2string (F, text, kVstMaxParamStrLen); break;
|
||||
case kParamG: float2string (G, text, kVstMaxParamStrLen); break;
|
||||
case kParamH: float2string (H, text, kVstMaxParamStrLen); break;
|
||||
default: break; // unknown parameter, shouldn't happen!
|
||||
} //this displays the values and handles 'popups' where it's discrete choices
|
||||
}
|
||||
|
||||
void SmoothEQ2::getParameterLabel(VstInt32 index, char *text) {
|
||||
switch (index) {
|
||||
case kParamA: vst_strncpy (text, "", kVstMaxParamStrLen); break;
|
||||
case kParamB: vst_strncpy (text, "", kVstMaxParamStrLen); break;
|
||||
case kParamC: vst_strncpy (text, "", kVstMaxParamStrLen); break;
|
||||
case kParamD: vst_strncpy (text, "", kVstMaxParamStrLen); break;
|
||||
case kParamE: vst_strncpy (text, "", kVstMaxParamStrLen); break;
|
||||
case kParamF: vst_strncpy (text, "", kVstMaxParamStrLen); break;
|
||||
case kParamG: vst_strncpy (text, "", kVstMaxParamStrLen); break;
|
||||
case kParamH: vst_strncpy (text, "", kVstMaxParamStrLen); break;
|
||||
default: break; // unknown parameter, shouldn't happen!
|
||||
}
|
||||
}
|
||||
|
||||
VstInt32 SmoothEQ2::canDo(char *text)
|
||||
{ return (_canDo.find(text) == _canDo.end()) ? -1: 1; } // 1 = yes, -1 = no, 0 = don't know
|
||||
|
||||
bool SmoothEQ2::getEffectName(char* name) {
|
||||
vst_strncpy(name, "SmoothEQ2", kVstMaxProductStrLen); return true;
|
||||
}
|
||||
|
||||
VstPlugCategory SmoothEQ2::getPlugCategory() {return kPlugCategEffect;}
|
||||
|
||||
bool SmoothEQ2::getProductString(char* text) {
|
||||
vst_strncpy (text, "airwindows SmoothEQ2", kVstMaxProductStrLen); return true;
|
||||
}
|
||||
|
||||
bool SmoothEQ2::getVendorString(char* text) {
|
||||
vst_strncpy (text, "airwindows", kVstMaxVendorStrLen); return true;
|
||||
}
|
||||
108
plugins/MacSignedVST/SmoothEQ2/source/SmoothEQ2.h
Executable file
108
plugins/MacSignedVST/SmoothEQ2/source/SmoothEQ2.h
Executable file
|
|
@ -0,0 +1,108 @@
|
|||
/* ========================================
|
||||
* SmoothEQ2 - SmoothEQ2.h
|
||||
* Created 8/12/11 by SPIAdmin
|
||||
* Copyright (c) Airwindows, Airwindows uses the MIT license
|
||||
* ======================================== */
|
||||
|
||||
#ifndef __SmoothEQ2_H
|
||||
#define __SmoothEQ2_H
|
||||
|
||||
#ifndef __audioeffect__
|
||||
#include "audioeffectx.h"
|
||||
#endif
|
||||
|
||||
#include <set>
|
||||
#include <string>
|
||||
#include <math.h>
|
||||
|
||||
enum {
|
||||
kParamA =0,
|
||||
kParamB =1,
|
||||
kParamC =2,
|
||||
kParamD =3,
|
||||
kParamE =4,
|
||||
kParamF =5,
|
||||
kParamG =6,
|
||||
kParamH =7,
|
||||
kNumParameters = 8
|
||||
}; //
|
||||
|
||||
const int kNumPrograms = 0;
|
||||
const int kNumInputs = 2;
|
||||
const int kNumOutputs = 2;
|
||||
const unsigned long kUniqueId = 'sme2'; //Change this to what the AU identity is!
|
||||
|
||||
class SmoothEQ2 :
|
||||
public AudioEffectX
|
||||
{
|
||||
public:
|
||||
SmoothEQ2(audioMasterCallback audioMaster);
|
||||
~SmoothEQ2();
|
||||
virtual bool getEffectName(char* name); // The plug-in name
|
||||
virtual VstPlugCategory getPlugCategory(); // The general category for the plug-in
|
||||
virtual bool getProductString(char* text); // This is a unique plug-in string provided by Steinberg
|
||||
virtual bool getVendorString(char* text); // Vendor info
|
||||
virtual VstInt32 getVendorVersion(); // Version number
|
||||
virtual void processReplacing (float** inputs, float** outputs, VstInt32 sampleFrames);
|
||||
virtual void processDoubleReplacing (double** inputs, double** outputs, VstInt32 sampleFrames);
|
||||
virtual void getProgramName(char *name); // read the name from the host
|
||||
virtual void setProgramName(char *name); // changes the name of the preset displayed in the host
|
||||
virtual VstInt32 getChunk (void** data, bool isPreset);
|
||||
virtual VstInt32 setChunk (void* data, VstInt32 byteSize, bool isPreset);
|
||||
virtual float getParameter(VstInt32 index); // get the parameter value at the specified index
|
||||
virtual void setParameter(VstInt32 index, float value); // set the parameter at index to value
|
||||
virtual void getParameterLabel(VstInt32 index, char *text); // label for the parameter (eg dB)
|
||||
virtual void getParameterName(VstInt32 index, char *text); // name of the parameter
|
||||
virtual void getParameterDisplay(VstInt32 index, char *text); // text description of the current value
|
||||
virtual VstInt32 canDo(char *text);
|
||||
private:
|
||||
char _programName[kVstMaxProgNameLen + 1];
|
||||
std::set< std::string > _canDo;
|
||||
|
||||
float A;
|
||||
float B;
|
||||
float C;
|
||||
float D;
|
||||
float E;
|
||||
float F;
|
||||
float G;
|
||||
float H;
|
||||
|
||||
enum {
|
||||
biq_freq,
|
||||
biq_reso,
|
||||
biq_a0,
|
||||
biq_a1,
|
||||
biq_a2,
|
||||
biq_b1,
|
||||
biq_b2,
|
||||
biq_sL1,
|
||||
biq_sL2,
|
||||
biq_sR1,
|
||||
biq_sR2,
|
||||
biq_total
|
||||
}; //coefficient interpolating bessel filter, stereo
|
||||
double highA[biq_total];
|
||||
double highB[biq_total];
|
||||
double highC[biq_total];
|
||||
double highLIIR;
|
||||
double highRIIR;
|
||||
|
||||
double midA[biq_total];
|
||||
double midB[biq_total];
|
||||
double midC[biq_total];
|
||||
double midLIIR;
|
||||
double midRIIR;
|
||||
|
||||
double lowA[biq_total];
|
||||
double lowB[biq_total];
|
||||
double lowC[biq_total];
|
||||
double lowLIIR;
|
||||
double lowRIIR;
|
||||
|
||||
uint32_t fpdL;
|
||||
uint32_t fpdR;
|
||||
//default stuff
|
||||
};
|
||||
|
||||
#endif
|
||||
578
plugins/MacSignedVST/SmoothEQ2/source/SmoothEQ2Proc.cpp
Executable file
578
plugins/MacSignedVST/SmoothEQ2/source/SmoothEQ2Proc.cpp
Executable file
|
|
@ -0,0 +1,578 @@
|
|||
/* ========================================
|
||||
* SmoothEQ2 - SmoothEQ2.h
|
||||
* Copyright (c) airwindows, Airwindows uses the MIT license
|
||||
* ======================================== */
|
||||
|
||||
#ifndef __SmoothEQ2_H
|
||||
#include "SmoothEQ2.h"
|
||||
#endif
|
||||
|
||||
void SmoothEQ2::processReplacing(float **inputs, float **outputs, VstInt32 sampleFrames)
|
||||
{
|
||||
float* in1 = inputs[0];
|
||||
float* in2 = inputs[1];
|
||||
float* out1 = outputs[0];
|
||||
float* out2 = outputs[1];
|
||||
|
||||
double trebleGain = (A-0.5)*2.0;
|
||||
trebleGain = 1.0+(trebleGain*fabs(trebleGain)*fabs(trebleGain));
|
||||
double highmidGain = (B-0.5)*2.0;
|
||||
highmidGain = 1.0+(highmidGain*fabs(highmidGain)*fabs(highmidGain));
|
||||
double lowmidGain = (C-0.5)*2.0;
|
||||
lowmidGain = 1.0+(lowmidGain*fabs(lowmidGain)*fabs(lowmidGain));
|
||||
double bassGain = (D-0.5)*2.0;
|
||||
bassGain = 1.0+(bassGain*fabs(bassGain)*fabs(bassGain));
|
||||
|
||||
double trebleRef = E-0.5;
|
||||
double highmidRef = F-0.5;
|
||||
double lowmidRef = G-0.5;
|
||||
double bassRef = H-0.5;
|
||||
double highF = 0.75 + ((trebleRef+trebleRef+trebleRef+highmidRef)*0.125);
|
||||
double bassF = 0.25 + ((lowmidRef+bassRef+bassRef+bassRef)*0.125);
|
||||
double midF = (highF*0.5) + (bassF*0.5) + ((highmidRef+lowmidRef)*0.125);
|
||||
|
||||
double highQ = fmax(fmin(1.0+(highmidRef-trebleRef),4.0),0.125);
|
||||
double midQ = fmax(fmin(1.0+(lowmidRef-highmidRef),4.0),0.125);
|
||||
double lowQ = fmax(fmin(1.0+(bassRef-lowmidRef),4.0),0.125);
|
||||
|
||||
highA[biq_freq] = ((pow(highF,3)*20000.0)/getSampleRate());
|
||||
highC[biq_freq] = highB[biq_freq] = highA[biq_freq] = fmax(fmin(highA[biq_freq],0.4999),0.00025);
|
||||
double highFreq = pow(highF,3)*20000.0;
|
||||
double omega = 2.0*M_PI*(highFreq/getSampleRate());
|
||||
double K = 2.0-cos(omega);
|
||||
double highCoef = -sqrt((K*K)-1.0)+K;
|
||||
highA[biq_reso] = 2.24697960 * highQ;
|
||||
highB[biq_reso] = 0.80193774 * highQ;
|
||||
highC[biq_reso] = 0.55495813 * highQ;
|
||||
|
||||
midA[biq_freq] = ((pow(midF,3)*20000.0)/getSampleRate());
|
||||
midC[biq_freq] = midB[biq_freq] = midA[biq_freq] = fmax(fmin(midA[biq_freq],0.4999),0.00025);
|
||||
double midFreq = pow(midF,3)*20000.0;
|
||||
omega = 2.0*M_PI*(midFreq/getSampleRate());
|
||||
K = 2.0-cos(omega);
|
||||
double midCoef = -sqrt((K*K)-1.0)+K;
|
||||
midA[biq_reso] = 2.24697960 * midQ;
|
||||
midB[biq_reso] = 0.80193774 * midQ;
|
||||
midC[biq_reso] = 0.55495813 * midQ;
|
||||
|
||||
lowA[biq_freq] = ((pow(bassF,3)*20000.0)/getSampleRate());
|
||||
lowC[biq_freq] = lowB[biq_freq] = lowA[biq_freq] = fmax(fmin(lowA[biq_freq],0.4999),0.00025);
|
||||
double lowFreq = pow(bassF,3)*20000.0;
|
||||
omega = 2.0*M_PI*(lowFreq/getSampleRate());
|
||||
K = 2.0-cos(omega);
|
||||
double lowCoef = -sqrt((K*K)-1.0)+K;
|
||||
lowA[biq_reso] = 2.24697960 * lowQ;
|
||||
lowB[biq_reso] = 0.80193774 * lowQ;
|
||||
lowC[biq_reso] = 0.55495813 * lowQ;
|
||||
|
||||
K = tan(M_PI * highA[biq_freq]);
|
||||
double norm = 1.0 / (1.0 + K / highA[biq_reso] + K * K);
|
||||
highA[biq_a0] = K * K * norm;
|
||||
highA[biq_a1] = 2.0 * highA[biq_a0];
|
||||
highA[biq_a2] = highA[biq_a0];
|
||||
highA[biq_b1] = 2.0 * (K * K - 1.0) * norm;
|
||||
highA[biq_b2] = (1.0 - K / highA[biq_reso] + K * K) * norm;
|
||||
K = tan(M_PI * highB[biq_freq]);
|
||||
norm = 1.0 / (1.0 + K / highB[biq_reso] + K * K);
|
||||
highB[biq_a0] = K * K * norm;
|
||||
highB[biq_a1] = 2.0 * highB[biq_a0];
|
||||
highB[biq_a2] = highB[biq_a0];
|
||||
highB[biq_b1] = 2.0 * (K * K - 1.0) * norm;
|
||||
highB[biq_b2] = (1.0 - K / highB[biq_reso] + K * K) * norm;
|
||||
K = tan(M_PI * highC[biq_freq]);
|
||||
norm = 1.0 / (1.0 + K / highC[biq_reso] + K * K);
|
||||
highC[biq_a0] = K * K * norm;
|
||||
highC[biq_a1] = 2.0 * highC[biq_a0];
|
||||
highC[biq_a2] = highC[biq_a0];
|
||||
highC[biq_b1] = 2.0 * (K * K - 1.0) * norm;
|
||||
highC[biq_b2] = (1.0 - K / highC[biq_reso] + K * K) * norm;
|
||||
|
||||
K = tan(M_PI * midA[biq_freq]);
|
||||
norm = 1.0 / (1.0 + K / midA[biq_reso] + K * K);
|
||||
midA[biq_a0] = K * K * norm;
|
||||
midA[biq_a1] = 2.0 * midA[biq_a0];
|
||||
midA[biq_a2] = midA[biq_a0];
|
||||
midA[biq_b1] = 2.0 * (K * K - 1.0) * norm;
|
||||
midA[biq_b2] = (1.0 - K / midA[biq_reso] + K * K) * norm;
|
||||
K = tan(M_PI * midB[biq_freq]);
|
||||
norm = 1.0 / (1.0 + K / midB[biq_reso] + K * K);
|
||||
midB[biq_a0] = K * K * norm;
|
||||
midB[biq_a1] = 2.0 * midB[biq_a0];
|
||||
midB[biq_a2] = midB[biq_a0];
|
||||
midB[biq_b1] = 2.0 * (K * K - 1.0) * norm;
|
||||
midB[biq_b2] = (1.0 - K / midB[biq_reso] + K * K) * norm;
|
||||
K = tan(M_PI * midC[biq_freq]);
|
||||
norm = 1.0 / (1.0 + K / midC[biq_reso] + K * K);
|
||||
midC[biq_a0] = K * K * norm;
|
||||
midC[biq_a1] = 2.0 * midC[biq_a0];
|
||||
midC[biq_a2] = midC[biq_a0];
|
||||
midC[biq_b1] = 2.0 * (K * K - 1.0) * norm;
|
||||
midC[biq_b2] = (1.0 - K / midC[biq_reso] + K * K) * norm;
|
||||
|
||||
K = tan(M_PI * lowA[biq_freq]);
|
||||
norm = 1.0 / (1.0 + K / lowA[biq_reso] + K * K);
|
||||
lowA[biq_a0] = K * K * norm;
|
||||
lowA[biq_a1] = 2.0 * lowA[biq_a0];
|
||||
lowA[biq_a2] = lowA[biq_a0];
|
||||
lowA[biq_b1] = 2.0 * (K * K - 1.0) * norm;
|
||||
lowA[biq_b2] = (1.0 - K / lowA[biq_reso] + K * K) * norm;
|
||||
K = tan(M_PI * lowB[biq_freq]);
|
||||
norm = 1.0 / (1.0 + K / lowB[biq_reso] + K * K);
|
||||
lowB[biq_a0] = K * K * norm;
|
||||
lowB[biq_a1] = 2.0 * lowB[biq_a0];
|
||||
lowB[biq_a2] = lowB[biq_a0];
|
||||
lowB[biq_b1] = 2.0 * (K * K - 1.0) * norm;
|
||||
lowB[biq_b2] = (1.0 - K / lowB[biq_reso] + K * K) * norm;
|
||||
K = tan(M_PI * lowC[biq_freq]);
|
||||
norm = 1.0 / (1.0 + K / lowC[biq_reso] + K * K);
|
||||
lowC[biq_a0] = K * K * norm;
|
||||
lowC[biq_a1] = 2.0 * lowC[biq_a0];
|
||||
lowC[biq_a2] = lowC[biq_a0];
|
||||
lowC[biq_b1] = 2.0 * (K * K - 1.0) * norm;
|
||||
lowC[biq_b2] = (1.0 - K / lowC[biq_reso] + K * K) * norm;
|
||||
|
||||
while (--sampleFrames >= 0)
|
||||
{
|
||||
double inputSampleL = *in1;
|
||||
double inputSampleR = *in2;
|
||||
if (fabs(inputSampleL)<1.18e-23) inputSampleL = fpdL * 1.18e-17;
|
||||
if (fabs(inputSampleR)<1.18e-23) inputSampleR = fpdR * 1.18e-17;
|
||||
|
||||
double trebleL = inputSampleL;
|
||||
double outSample = (trebleL * highA[biq_a0]) + highA[biq_sL1];
|
||||
highA[biq_sL1] = (trebleL * highA[biq_a1]) - (outSample * highA[biq_b1]) + highA[biq_sL2];
|
||||
highA[biq_sL2] = (trebleL * highA[biq_a2]) - (outSample * highA[biq_b2]);
|
||||
double highmidL = outSample; trebleL -= highmidL;
|
||||
|
||||
outSample = (highmidL * midA[biq_a0]) + midA[biq_sL1];
|
||||
midA[biq_sL1] = (highmidL * midA[biq_a1]) - (outSample * midA[biq_b1]) + midA[biq_sL2];
|
||||
midA[biq_sL2] = (highmidL * midA[biq_a2]) - (outSample * midA[biq_b2]);
|
||||
double lowmidL = outSample; highmidL -= lowmidL;
|
||||
|
||||
outSample = (lowmidL * lowA[biq_a0]) + lowA[biq_sL1];
|
||||
lowA[biq_sL1] = (lowmidL * lowA[biq_a1]) - (outSample * lowA[biq_b1]) + lowA[biq_sL2];
|
||||
lowA[biq_sL2] = (lowmidL * lowA[biq_a2]) - (outSample * lowA[biq_b2]);
|
||||
double bassL = outSample; lowmidL -= bassL;
|
||||
|
||||
trebleL = (bassL*bassGain) + (lowmidL*lowmidGain) + (highmidL*highmidGain) + (trebleL*trebleGain);
|
||||
//first stage of three crossovers
|
||||
|
||||
outSample = (trebleL * highB[biq_a0]) + highB[biq_sL1];
|
||||
highB[biq_sL1] = (trebleL * highB[biq_a1]) - (outSample * highB[biq_b1]) + highB[biq_sL2];
|
||||
highB[biq_sL2] = (trebleL * highB[biq_a2]) - (outSample * highB[biq_b2]);
|
||||
highmidL = outSample; trebleL -= highmidL;
|
||||
|
||||
outSample = (highmidL * midB[biq_a0]) + midB[biq_sL1];
|
||||
midB[biq_sL1] = (highmidL * midB[biq_a1]) - (outSample * midB[biq_b1]) + midB[biq_sL2];
|
||||
midB[biq_sL2] = (highmidL * midB[biq_a2]) - (outSample * midB[biq_b2]);
|
||||
lowmidL = outSample; highmidL -= lowmidL;
|
||||
|
||||
outSample = (lowmidL * lowB[biq_a0]) + lowB[biq_sL1];
|
||||
lowB[biq_sL1] = (lowmidL * lowB[biq_a1]) - (outSample * lowB[biq_b1]) + lowB[biq_sL2];
|
||||
lowB[biq_sL2] = (lowmidL * lowB[biq_a2]) - (outSample * lowB[biq_b2]);
|
||||
bassL = outSample; lowmidL -= bassL;
|
||||
|
||||
trebleL = (bassL*bassGain) + (lowmidL*lowmidGain) + (highmidL*highmidGain) + (trebleL*trebleGain);
|
||||
//second stage of three crossovers
|
||||
|
||||
outSample = (trebleL * highC[biq_a0]) + highC[biq_sL1];
|
||||
highC[biq_sL1] = (trebleL * highC[biq_a1]) - (outSample * highC[biq_b1]) + highC[biq_sL2];
|
||||
highC[biq_sL2] = (trebleL * highC[biq_a2]) - (outSample * highC[biq_b2]);
|
||||
highmidL = outSample; trebleL -= highmidL;
|
||||
|
||||
outSample = (highmidL * midC[biq_a0]) + midC[biq_sL1];
|
||||
midC[biq_sL1] = (highmidL * midC[biq_a1]) - (outSample * midC[biq_b1]) + midC[biq_sL2];
|
||||
midC[biq_sL2] = (highmidL * midC[biq_a2]) - (outSample * midC[biq_b2]);
|
||||
lowmidL = outSample; highmidL -= lowmidL;
|
||||
|
||||
outSample = (lowmidL * lowC[biq_a0]) + lowC[biq_sL1];
|
||||
lowC[biq_sL1] = (lowmidL * lowC[biq_a1]) - (outSample * lowC[biq_b1]) + lowC[biq_sL2];
|
||||
lowC[biq_sL2] = (lowmidL * lowC[biq_a2]) - (outSample * lowC[biq_b2]);
|
||||
bassL = outSample; lowmidL -= bassL;
|
||||
|
||||
trebleL = (bassL*bassGain) + (lowmidL*lowmidGain) + (highmidL*highmidGain) + (trebleL*trebleGain);
|
||||
//third stage of three crossovers
|
||||
|
||||
highLIIR = (highLIIR*highCoef) + (trebleL*(1.0-highCoef));
|
||||
highmidL = highLIIR; trebleL -= highmidL;
|
||||
|
||||
midLIIR = (midLIIR*midCoef) + (highmidL*(1.0-midCoef));
|
||||
lowmidL = midLIIR; highmidL -= lowmidL;
|
||||
|
||||
lowLIIR = (lowLIIR*lowCoef) + (lowmidL*(1.0-lowCoef));
|
||||
bassL = lowLIIR; lowmidL -= bassL;
|
||||
|
||||
inputSampleL = (bassL*bassGain) + (lowmidL*lowmidGain) + (highmidL*highmidGain) + (trebleL*trebleGain);
|
||||
//fourth stage of three crossovers is the exponential filters
|
||||
|
||||
|
||||
double trebleR = inputSampleR;
|
||||
outSample = (trebleR * highA[biq_a0]) + highA[biq_sR1];
|
||||
highA[biq_sR1] = (trebleR * highA[biq_a1]) - (outSample * highA[biq_b1]) + highA[biq_sR2];
|
||||
highA[biq_sR2] = (trebleR * highA[biq_a2]) - (outSample * highA[biq_b2]);
|
||||
double highmidR = outSample; trebleR -= highmidR;
|
||||
|
||||
outSample = (highmidR * midA[biq_a0]) + midA[biq_sR1];
|
||||
midA[biq_sR1] = (highmidR * midA[biq_a1]) - (outSample * midA[biq_b1]) + midA[biq_sR2];
|
||||
midA[biq_sR2] = (highmidR * midA[biq_a2]) - (outSample * midA[biq_b2]);
|
||||
double lowmidR = outSample; highmidR -= lowmidR;
|
||||
|
||||
outSample = (lowmidR * lowA[biq_a0]) + lowA[biq_sR1];
|
||||
lowA[biq_sR1] = (lowmidR * lowA[biq_a1]) - (outSample * lowA[biq_b1]) + lowA[biq_sR2];
|
||||
lowA[biq_sR2] = (lowmidR * lowA[biq_a2]) - (outSample * lowA[biq_b2]);
|
||||
double bassR = outSample; lowmidR -= bassR;
|
||||
|
||||
trebleR = (bassR*bassGain) + (lowmidR*lowmidGain) + (highmidR*highmidGain) + (trebleR*trebleGain);
|
||||
//first stage of three crossovers
|
||||
|
||||
outSample = (trebleR * highB[biq_a0]) + highB[biq_sR1];
|
||||
highB[biq_sR1] = (trebleR * highB[biq_a1]) - (outSample * highB[biq_b1]) + highB[biq_sR2];
|
||||
highB[biq_sR2] = (trebleR * highB[biq_a2]) - (outSample * highB[biq_b2]);
|
||||
highmidR = outSample; trebleR -= highmidR;
|
||||
|
||||
outSample = (highmidR * midB[biq_a0]) + midB[biq_sR1];
|
||||
midB[biq_sR1] = (highmidR * midB[biq_a1]) - (outSample * midB[biq_b1]) + midB[biq_sR2];
|
||||
midB[biq_sR2] = (highmidR * midB[biq_a2]) - (outSample * midB[biq_b2]);
|
||||
lowmidR = outSample; highmidR -= lowmidR;
|
||||
|
||||
outSample = (lowmidR * lowB[biq_a0]) + lowB[biq_sR1];
|
||||
lowB[biq_sR1] = (lowmidR * lowB[biq_a1]) - (outSample * lowB[biq_b1]) + lowB[biq_sR2];
|
||||
lowB[biq_sR2] = (lowmidR * lowB[biq_a2]) - (outSample * lowB[biq_b2]);
|
||||
bassR = outSample; lowmidR -= bassR;
|
||||
|
||||
trebleR = (bassR*bassGain) + (lowmidR*lowmidGain) + (highmidR*highmidGain) + (trebleR*trebleGain);
|
||||
//second stage of three crossovers
|
||||
|
||||
outSample = (trebleR * highC[biq_a0]) + highC[biq_sR1];
|
||||
highC[biq_sR1] = (trebleR * highC[biq_a1]) - (outSample * highC[biq_b1]) + highC[biq_sR2];
|
||||
highC[biq_sR2] = (trebleR * highC[biq_a2]) - (outSample * highC[biq_b2]);
|
||||
highmidR = outSample; trebleR -= highmidR;
|
||||
|
||||
outSample = (highmidR * midC[biq_a0]) + midC[biq_sR1];
|
||||
midC[biq_sR1] = (highmidR * midC[biq_a1]) - (outSample * midC[biq_b1]) + midC[biq_sR2];
|
||||
midC[biq_sR2] = (highmidR * midC[biq_a2]) - (outSample * midC[biq_b2]);
|
||||
lowmidR = outSample; highmidR -= lowmidR;
|
||||
|
||||
outSample = (lowmidR * lowC[biq_a0]) + lowC[biq_sR1];
|
||||
lowC[biq_sR1] = (lowmidR * lowC[biq_a1]) - (outSample * lowC[biq_b1]) + lowC[biq_sR2];
|
||||
lowC[biq_sR2] = (lowmidR * lowC[biq_a2]) - (outSample * lowC[biq_b2]);
|
||||
bassR = outSample; lowmidR -= bassR;
|
||||
|
||||
trebleR = (bassR*bassGain) + (lowmidR*lowmidGain) + (highmidR*highmidGain) + (trebleR*trebleGain);
|
||||
//third stage of three crossovers
|
||||
|
||||
highRIIR = (highRIIR*highCoef) + (trebleR*(1.0-highCoef));
|
||||
highmidR = highRIIR; trebleR -= highmidR;
|
||||
|
||||
midRIIR = (midRIIR*midCoef) + (highmidR*(1.0-midCoef));
|
||||
lowmidR = midRIIR; highmidR -= lowmidR;
|
||||
|
||||
lowRIIR = (lowRIIR*lowCoef) + (lowmidR*(1.0-lowCoef));
|
||||
bassR = lowRIIR; lowmidR -= bassR;
|
||||
|
||||
inputSampleR = (bassR*bassGain) + (lowmidR*lowmidGain) + (highmidR*highmidGain) + (trebleR*trebleGain);
|
||||
//fourth stage of three crossovers is the exponential filters
|
||||
|
||||
//begin 32 bit stereo floating point dither
|
||||
int expon; frexpf((float)inputSampleL, &expon);
|
||||
fpdL ^= fpdL << 13; fpdL ^= fpdL >> 17; fpdL ^= fpdL << 5;
|
||||
inputSampleL += ((double(fpdL)-uint32_t(0x7fffffff)) * 5.5e-36l * pow(2,expon+62));
|
||||
frexpf((float)inputSampleR, &expon);
|
||||
fpdR ^= fpdR << 13; fpdR ^= fpdR >> 17; fpdR ^= fpdR << 5;
|
||||
inputSampleR += ((double(fpdR)-uint32_t(0x7fffffff)) * 5.5e-36l * pow(2,expon+62));
|
||||
//end 32 bit stereo floating point dither
|
||||
|
||||
*out1 = inputSampleL;
|
||||
*out2 = inputSampleR;
|
||||
|
||||
in1++;
|
||||
in2++;
|
||||
out1++;
|
||||
out2++;
|
||||
}
|
||||
}
|
||||
|
||||
void SmoothEQ2::processDoubleReplacing(double **inputs, double **outputs, VstInt32 sampleFrames)
|
||||
{
|
||||
double* in1 = inputs[0];
|
||||
double* in2 = inputs[1];
|
||||
double* out1 = outputs[0];
|
||||
double* out2 = outputs[1];
|
||||
|
||||
double trebleGain = (A-0.5)*2.0;
|
||||
trebleGain = 1.0+(trebleGain*fabs(trebleGain)*fabs(trebleGain));
|
||||
double highmidGain = (B-0.5)*2.0;
|
||||
highmidGain = 1.0+(highmidGain*fabs(highmidGain)*fabs(highmidGain));
|
||||
double lowmidGain = (C-0.5)*2.0;
|
||||
lowmidGain = 1.0+(lowmidGain*fabs(lowmidGain)*fabs(lowmidGain));
|
||||
double bassGain = (D-0.5)*2.0;
|
||||
bassGain = 1.0+(bassGain*fabs(bassGain)*fabs(bassGain));
|
||||
|
||||
double trebleRef = E-0.5;
|
||||
double highmidRef = F-0.5;
|
||||
double lowmidRef = G-0.5;
|
||||
double bassRef = H-0.5;
|
||||
double highF = 0.75 + ((trebleRef+trebleRef+trebleRef+highmidRef)*0.125);
|
||||
double bassF = 0.25 + ((lowmidRef+bassRef+bassRef+bassRef)*0.125);
|
||||
double midF = (highF*0.5) + (bassF*0.5) + ((highmidRef+lowmidRef)*0.125);
|
||||
|
||||
double highQ = fmax(fmin(1.0+(highmidRef-trebleRef),4.0),0.125);
|
||||
double midQ = fmax(fmin(1.0+(lowmidRef-highmidRef),4.0),0.125);
|
||||
double lowQ = fmax(fmin(1.0+(bassRef-lowmidRef),4.0),0.125);
|
||||
|
||||
highA[biq_freq] = ((pow(highF,3)*20000.0)/getSampleRate());
|
||||
highC[biq_freq] = highB[biq_freq] = highA[biq_freq] = fmax(fmin(highA[biq_freq],0.4999),0.00025);
|
||||
double highFreq = pow(highF,3)*20000.0;
|
||||
double omega = 2.0*M_PI*(highFreq/getSampleRate());
|
||||
double K = 2.0-cos(omega);
|
||||
double highCoef = -sqrt((K*K)-1.0)+K;
|
||||
highA[biq_reso] = 2.24697960 * highQ;
|
||||
highB[biq_reso] = 0.80193774 * highQ;
|
||||
highC[biq_reso] = 0.55495813 * highQ;
|
||||
|
||||
midA[biq_freq] = ((pow(midF,3)*20000.0)/getSampleRate());
|
||||
midC[biq_freq] = midB[biq_freq] = midA[biq_freq] = fmax(fmin(midA[biq_freq],0.4999),0.00025);
|
||||
double midFreq = pow(midF,3)*20000.0;
|
||||
omega = 2.0*M_PI*(midFreq/getSampleRate());
|
||||
K = 2.0-cos(omega);
|
||||
double midCoef = -sqrt((K*K)-1.0)+K;
|
||||
midA[biq_reso] = 2.24697960 * midQ;
|
||||
midB[biq_reso] = 0.80193774 * midQ;
|
||||
midC[biq_reso] = 0.55495813 * midQ;
|
||||
|
||||
lowA[biq_freq] = ((pow(bassF,3)*20000.0)/getSampleRate());
|
||||
lowC[biq_freq] = lowB[biq_freq] = lowA[biq_freq] = fmax(fmin(lowA[biq_freq],0.4999),0.00025);
|
||||
double lowFreq = pow(bassF,3)*20000.0;
|
||||
omega = 2.0*M_PI*(lowFreq/getSampleRate());
|
||||
K = 2.0-cos(omega);
|
||||
double lowCoef = -sqrt((K*K)-1.0)+K;
|
||||
lowA[biq_reso] = 2.24697960 * lowQ;
|
||||
lowB[biq_reso] = 0.80193774 * lowQ;
|
||||
lowC[biq_reso] = 0.55495813 * lowQ;
|
||||
|
||||
K = tan(M_PI * highA[biq_freq]);
|
||||
double norm = 1.0 / (1.0 + K / highA[biq_reso] + K * K);
|
||||
highA[biq_a0] = K * K * norm;
|
||||
highA[biq_a1] = 2.0 * highA[biq_a0];
|
||||
highA[biq_a2] = highA[biq_a0];
|
||||
highA[biq_b1] = 2.0 * (K * K - 1.0) * norm;
|
||||
highA[biq_b2] = (1.0 - K / highA[biq_reso] + K * K) * norm;
|
||||
K = tan(M_PI * highB[biq_freq]);
|
||||
norm = 1.0 / (1.0 + K / highB[biq_reso] + K * K);
|
||||
highB[biq_a0] = K * K * norm;
|
||||
highB[biq_a1] = 2.0 * highB[biq_a0];
|
||||
highB[biq_a2] = highB[biq_a0];
|
||||
highB[biq_b1] = 2.0 * (K * K - 1.0) * norm;
|
||||
highB[biq_b2] = (1.0 - K / highB[biq_reso] + K * K) * norm;
|
||||
K = tan(M_PI * highC[biq_freq]);
|
||||
norm = 1.0 / (1.0 + K / highC[biq_reso] + K * K);
|
||||
highC[biq_a0] = K * K * norm;
|
||||
highC[biq_a1] = 2.0 * highC[biq_a0];
|
||||
highC[biq_a2] = highC[biq_a0];
|
||||
highC[biq_b1] = 2.0 * (K * K - 1.0) * norm;
|
||||
highC[biq_b2] = (1.0 - K / highC[biq_reso] + K * K) * norm;
|
||||
|
||||
K = tan(M_PI * midA[biq_freq]);
|
||||
norm = 1.0 / (1.0 + K / midA[biq_reso] + K * K);
|
||||
midA[biq_a0] = K * K * norm;
|
||||
midA[biq_a1] = 2.0 * midA[biq_a0];
|
||||
midA[biq_a2] = midA[biq_a0];
|
||||
midA[biq_b1] = 2.0 * (K * K - 1.0) * norm;
|
||||
midA[biq_b2] = (1.0 - K / midA[biq_reso] + K * K) * norm;
|
||||
K = tan(M_PI * midB[biq_freq]);
|
||||
norm = 1.0 / (1.0 + K / midB[biq_reso] + K * K);
|
||||
midB[biq_a0] = K * K * norm;
|
||||
midB[biq_a1] = 2.0 * midB[biq_a0];
|
||||
midB[biq_a2] = midB[biq_a0];
|
||||
midB[biq_b1] = 2.0 * (K * K - 1.0) * norm;
|
||||
midB[biq_b2] = (1.0 - K / midB[biq_reso] + K * K) * norm;
|
||||
K = tan(M_PI * midC[biq_freq]);
|
||||
norm = 1.0 / (1.0 + K / midC[biq_reso] + K * K);
|
||||
midC[biq_a0] = K * K * norm;
|
||||
midC[biq_a1] = 2.0 * midC[biq_a0];
|
||||
midC[biq_a2] = midC[biq_a0];
|
||||
midC[biq_b1] = 2.0 * (K * K - 1.0) * norm;
|
||||
midC[biq_b2] = (1.0 - K / midC[biq_reso] + K * K) * norm;
|
||||
|
||||
K = tan(M_PI * lowA[biq_freq]);
|
||||
norm = 1.0 / (1.0 + K / lowA[biq_reso] + K * K);
|
||||
lowA[biq_a0] = K * K * norm;
|
||||
lowA[biq_a1] = 2.0 * lowA[biq_a0];
|
||||
lowA[biq_a2] = lowA[biq_a0];
|
||||
lowA[biq_b1] = 2.0 * (K * K - 1.0) * norm;
|
||||
lowA[biq_b2] = (1.0 - K / lowA[biq_reso] + K * K) * norm;
|
||||
K = tan(M_PI * lowB[biq_freq]);
|
||||
norm = 1.0 / (1.0 + K / lowB[biq_reso] + K * K);
|
||||
lowB[biq_a0] = K * K * norm;
|
||||
lowB[biq_a1] = 2.0 * lowB[biq_a0];
|
||||
lowB[biq_a2] = lowB[biq_a0];
|
||||
lowB[biq_b1] = 2.0 * (K * K - 1.0) * norm;
|
||||
lowB[biq_b2] = (1.0 - K / lowB[biq_reso] + K * K) * norm;
|
||||
K = tan(M_PI * lowC[biq_freq]);
|
||||
norm = 1.0 / (1.0 + K / lowC[biq_reso] + K * K);
|
||||
lowC[biq_a0] = K * K * norm;
|
||||
lowC[biq_a1] = 2.0 * lowC[biq_a0];
|
||||
lowC[biq_a2] = lowC[biq_a0];
|
||||
lowC[biq_b1] = 2.0 * (K * K - 1.0) * norm;
|
||||
lowC[biq_b2] = (1.0 - K / lowC[biq_reso] + K * K) * norm;
|
||||
|
||||
while (--sampleFrames >= 0)
|
||||
{
|
||||
double inputSampleL = *in1;
|
||||
double inputSampleR = *in2;
|
||||
if (fabs(inputSampleL)<1.18e-23) inputSampleL = fpdL * 1.18e-17;
|
||||
if (fabs(inputSampleR)<1.18e-23) inputSampleR = fpdR * 1.18e-17;
|
||||
|
||||
double trebleL = inputSampleL;
|
||||
double outSample = (trebleL * highA[biq_a0]) + highA[biq_sL1];
|
||||
highA[biq_sL1] = (trebleL * highA[biq_a1]) - (outSample * highA[biq_b1]) + highA[biq_sL2];
|
||||
highA[biq_sL2] = (trebleL * highA[biq_a2]) - (outSample * highA[biq_b2]);
|
||||
double highmidL = outSample; trebleL -= highmidL;
|
||||
|
||||
outSample = (highmidL * midA[biq_a0]) + midA[biq_sL1];
|
||||
midA[biq_sL1] = (highmidL * midA[biq_a1]) - (outSample * midA[biq_b1]) + midA[biq_sL2];
|
||||
midA[biq_sL2] = (highmidL * midA[biq_a2]) - (outSample * midA[biq_b2]);
|
||||
double lowmidL = outSample; highmidL -= lowmidL;
|
||||
|
||||
outSample = (lowmidL * lowA[biq_a0]) + lowA[biq_sL1];
|
||||
lowA[biq_sL1] = (lowmidL * lowA[biq_a1]) - (outSample * lowA[biq_b1]) + lowA[biq_sL2];
|
||||
lowA[biq_sL2] = (lowmidL * lowA[biq_a2]) - (outSample * lowA[biq_b2]);
|
||||
double bassL = outSample; lowmidL -= bassL;
|
||||
|
||||
trebleL = (bassL*bassGain) + (lowmidL*lowmidGain) + (highmidL*highmidGain) + (trebleL*trebleGain);
|
||||
//first stage of three crossovers
|
||||
|
||||
outSample = (trebleL * highB[biq_a0]) + highB[biq_sL1];
|
||||
highB[biq_sL1] = (trebleL * highB[biq_a1]) - (outSample * highB[biq_b1]) + highB[biq_sL2];
|
||||
highB[biq_sL2] = (trebleL * highB[biq_a2]) - (outSample * highB[biq_b2]);
|
||||
highmidL = outSample; trebleL -= highmidL;
|
||||
|
||||
outSample = (highmidL * midB[biq_a0]) + midB[biq_sL1];
|
||||
midB[biq_sL1] = (highmidL * midB[biq_a1]) - (outSample * midB[biq_b1]) + midB[biq_sL2];
|
||||
midB[biq_sL2] = (highmidL * midB[biq_a2]) - (outSample * midB[biq_b2]);
|
||||
lowmidL = outSample; highmidL -= lowmidL;
|
||||
|
||||
outSample = (lowmidL * lowB[biq_a0]) + lowB[biq_sL1];
|
||||
lowB[biq_sL1] = (lowmidL * lowB[biq_a1]) - (outSample * lowB[biq_b1]) + lowB[biq_sL2];
|
||||
lowB[biq_sL2] = (lowmidL * lowB[biq_a2]) - (outSample * lowB[biq_b2]);
|
||||
bassL = outSample; lowmidL -= bassL;
|
||||
|
||||
trebleL = (bassL*bassGain) + (lowmidL*lowmidGain) + (highmidL*highmidGain) + (trebleL*trebleGain);
|
||||
//second stage of three crossovers
|
||||
|
||||
outSample = (trebleL * highC[biq_a0]) + highC[biq_sL1];
|
||||
highC[biq_sL1] = (trebleL * highC[biq_a1]) - (outSample * highC[biq_b1]) + highC[biq_sL2];
|
||||
highC[biq_sL2] = (trebleL * highC[biq_a2]) - (outSample * highC[biq_b2]);
|
||||
highmidL = outSample; trebleL -= highmidL;
|
||||
|
||||
outSample = (highmidL * midC[biq_a0]) + midC[biq_sL1];
|
||||
midC[biq_sL1] = (highmidL * midC[biq_a1]) - (outSample * midC[biq_b1]) + midC[biq_sL2];
|
||||
midC[biq_sL2] = (highmidL * midC[biq_a2]) - (outSample * midC[biq_b2]);
|
||||
lowmidL = outSample; highmidL -= lowmidL;
|
||||
|
||||
outSample = (lowmidL * lowC[biq_a0]) + lowC[biq_sL1];
|
||||
lowC[biq_sL1] = (lowmidL * lowC[biq_a1]) - (outSample * lowC[biq_b1]) + lowC[biq_sL2];
|
||||
lowC[biq_sL2] = (lowmidL * lowC[biq_a2]) - (outSample * lowC[biq_b2]);
|
||||
bassL = outSample; lowmidL -= bassL;
|
||||
|
||||
trebleL = (bassL*bassGain) + (lowmidL*lowmidGain) + (highmidL*highmidGain) + (trebleL*trebleGain);
|
||||
//third stage of three crossovers
|
||||
|
||||
highLIIR = (highLIIR*highCoef) + (trebleL*(1.0-highCoef));
|
||||
highmidL = highLIIR; trebleL -= highmidL;
|
||||
|
||||
midLIIR = (midLIIR*midCoef) + (highmidL*(1.0-midCoef));
|
||||
lowmidL = midLIIR; highmidL -= lowmidL;
|
||||
|
||||
lowLIIR = (lowLIIR*lowCoef) + (lowmidL*(1.0-lowCoef));
|
||||
bassL = lowLIIR; lowmidL -= bassL;
|
||||
|
||||
inputSampleL = (bassL*bassGain) + (lowmidL*lowmidGain) + (highmidL*highmidGain) + (trebleL*trebleGain);
|
||||
//fourth stage of three crossovers is the exponential filters
|
||||
|
||||
|
||||
double trebleR = inputSampleR;
|
||||
outSample = (trebleR * highA[biq_a0]) + highA[biq_sR1];
|
||||
highA[biq_sR1] = (trebleR * highA[biq_a1]) - (outSample * highA[biq_b1]) + highA[biq_sR2];
|
||||
highA[biq_sR2] = (trebleR * highA[biq_a2]) - (outSample * highA[biq_b2]);
|
||||
double highmidR = outSample; trebleR -= highmidR;
|
||||
|
||||
outSample = (highmidR * midA[biq_a0]) + midA[biq_sR1];
|
||||
midA[biq_sR1] = (highmidR * midA[biq_a1]) - (outSample * midA[biq_b1]) + midA[biq_sR2];
|
||||
midA[biq_sR2] = (highmidR * midA[biq_a2]) - (outSample * midA[biq_b2]);
|
||||
double lowmidR = outSample; highmidR -= lowmidR;
|
||||
|
||||
outSample = (lowmidR * lowA[biq_a0]) + lowA[biq_sR1];
|
||||
lowA[biq_sR1] = (lowmidR * lowA[biq_a1]) - (outSample * lowA[biq_b1]) + lowA[biq_sR2];
|
||||
lowA[biq_sR2] = (lowmidR * lowA[biq_a2]) - (outSample * lowA[biq_b2]);
|
||||
double bassR = outSample; lowmidR -= bassR;
|
||||
|
||||
trebleR = (bassR*bassGain) + (lowmidR*lowmidGain) + (highmidR*highmidGain) + (trebleR*trebleGain);
|
||||
//first stage of three crossovers
|
||||
|
||||
outSample = (trebleR * highB[biq_a0]) + highB[biq_sR1];
|
||||
highB[biq_sR1] = (trebleR * highB[biq_a1]) - (outSample * highB[biq_b1]) + highB[biq_sR2];
|
||||
highB[biq_sR2] = (trebleR * highB[biq_a2]) - (outSample * highB[biq_b2]);
|
||||
highmidR = outSample; trebleR -= highmidR;
|
||||
|
||||
outSample = (highmidR * midB[biq_a0]) + midB[biq_sR1];
|
||||
midB[biq_sR1] = (highmidR * midB[biq_a1]) - (outSample * midB[biq_b1]) + midB[biq_sR2];
|
||||
midB[biq_sR2] = (highmidR * midB[biq_a2]) - (outSample * midB[biq_b2]);
|
||||
lowmidR = outSample; highmidR -= lowmidR;
|
||||
|
||||
outSample = (lowmidR * lowB[biq_a0]) + lowB[biq_sR1];
|
||||
lowB[biq_sR1] = (lowmidR * lowB[biq_a1]) - (outSample * lowB[biq_b1]) + lowB[biq_sR2];
|
||||
lowB[biq_sR2] = (lowmidR * lowB[biq_a2]) - (outSample * lowB[biq_b2]);
|
||||
bassR = outSample; lowmidR -= bassR;
|
||||
|
||||
trebleR = (bassR*bassGain) + (lowmidR*lowmidGain) + (highmidR*highmidGain) + (trebleR*trebleGain);
|
||||
//second stage of three crossovers
|
||||
|
||||
outSample = (trebleR * highC[biq_a0]) + highC[biq_sR1];
|
||||
highC[biq_sR1] = (trebleR * highC[biq_a1]) - (outSample * highC[biq_b1]) + highC[biq_sR2];
|
||||
highC[biq_sR2] = (trebleR * highC[biq_a2]) - (outSample * highC[biq_b2]);
|
||||
highmidR = outSample; trebleR -= highmidR;
|
||||
|
||||
outSample = (highmidR * midC[biq_a0]) + midC[biq_sR1];
|
||||
midC[biq_sR1] = (highmidR * midC[biq_a1]) - (outSample * midC[biq_b1]) + midC[biq_sR2];
|
||||
midC[biq_sR2] = (highmidR * midC[biq_a2]) - (outSample * midC[biq_b2]);
|
||||
lowmidR = outSample; highmidR -= lowmidR;
|
||||
|
||||
outSample = (lowmidR * lowC[biq_a0]) + lowC[biq_sR1];
|
||||
lowC[biq_sR1] = (lowmidR * lowC[biq_a1]) - (outSample * lowC[biq_b1]) + lowC[biq_sR2];
|
||||
lowC[biq_sR2] = (lowmidR * lowC[biq_a2]) - (outSample * lowC[biq_b2]);
|
||||
bassR = outSample; lowmidR -= bassR;
|
||||
|
||||
trebleR = (bassR*bassGain) + (lowmidR*lowmidGain) + (highmidR*highmidGain) + (trebleR*trebleGain);
|
||||
//third stage of three crossovers
|
||||
|
||||
highRIIR = (highRIIR*highCoef) + (trebleR*(1.0-highCoef));
|
||||
highmidR = highRIIR; trebleR -= highmidR;
|
||||
|
||||
midRIIR = (midRIIR*midCoef) + (highmidR*(1.0-midCoef));
|
||||
lowmidR = midRIIR; highmidR -= lowmidR;
|
||||
|
||||
lowRIIR = (lowRIIR*lowCoef) + (lowmidR*(1.0-lowCoef));
|
||||
bassR = lowRIIR; lowmidR -= bassR;
|
||||
|
||||
inputSampleR = (bassR*bassGain) + (lowmidR*lowmidGain) + (highmidR*highmidGain) + (trebleR*trebleGain);
|
||||
//fourth stage of three crossovers is the exponential filters
|
||||
|
||||
//begin 64 bit stereo floating point dither
|
||||
//int expon; frexp((double)inputSampleL, &expon);
|
||||
fpdL ^= fpdL << 13; fpdL ^= fpdL >> 17; fpdL ^= fpdL << 5;
|
||||
//inputSampleL += ((double(fpdL)-uint32_t(0x7fffffff)) * 1.1e-44l * pow(2,expon+62));
|
||||
//frexp((double)inputSampleR, &expon);
|
||||
fpdR ^= fpdR << 13; fpdR ^= fpdR >> 17; fpdR ^= fpdR << 5;
|
||||
//inputSampleR += ((double(fpdR)-uint32_t(0x7fffffff)) * 1.1e-44l * pow(2,expon+62));
|
||||
//end 64 bit stereo floating point dither
|
||||
|
||||
*out1 = inputSampleL;
|
||||
*out2 = inputSampleR;
|
||||
|
||||
in1++;
|
||||
in2++;
|
||||
out1++;
|
||||
out2++;
|
||||
}
|
||||
}
|
||||
108
plugins/MacSignedVST/SmoothEQ3/SmoothEQ3.xcodeproj/christopherjohnson.pbxuser
Executable file
108
plugins/MacSignedVST/SmoothEQ3/SmoothEQ3.xcodeproj/christopherjohnson.pbxuser
Executable file
|
|
@ -0,0 +1,108 @@
|
|||
// !$*UTF8*$!
|
||||
{
|
||||
089C1669FE841209C02AAC07 /* Project object */ = {
|
||||
activeBuildConfigurationName = Release;
|
||||
activeTarget = 8D01CCC60486CAD60068D4B7 /* SmoothEQ3 */;
|
||||
codeSenseManager = 8B02375F1D42B1C400E1E8C8 /* Code sense */;
|
||||
perUserDictionary = {
|
||||
PBXConfiguration.PBXFileTableDataSource3.PBXFileTableDataSource = {
|
||||
PBXFileTableDataSourceColumnSortingDirectionKey = "-1";
|
||||
PBXFileTableDataSourceColumnSortingKey = PBXFileDataSource_Filename_ColumnID;
|
||||
PBXFileTableDataSourceColumnWidthsKey = (
|
||||
20,
|
||||
364,
|
||||
20,
|
||||
48,
|
||||
43,
|
||||
43,
|
||||
20,
|
||||
);
|
||||
PBXFileTableDataSourceColumnsKey = (
|
||||
PBXFileDataSource_FiletypeID,
|
||||
PBXFileDataSource_Filename_ColumnID,
|
||||
PBXFileDataSource_Built_ColumnID,
|
||||
PBXFileDataSource_ObjectSize_ColumnID,
|
||||
PBXFileDataSource_Errors_ColumnID,
|
||||
PBXFileDataSource_Warnings_ColumnID,
|
||||
PBXFileDataSource_Target_ColumnID,
|
||||
);
|
||||
};
|
||||
PBXConfiguration.PBXTargetDataSource.PBXTargetDataSource = {
|
||||
PBXFileTableDataSourceColumnSortingDirectionKey = "-1";
|
||||
PBXFileTableDataSourceColumnSortingKey = PBXFileDataSource_Filename_ColumnID;
|
||||
PBXFileTableDataSourceColumnWidthsKey = (
|
||||
20,
|
||||
324,
|
||||
60,
|
||||
20,
|
||||
48,
|
||||
43,
|
||||
43,
|
||||
);
|
||||
PBXFileTableDataSourceColumnsKey = (
|
||||
PBXFileDataSource_FiletypeID,
|
||||
PBXFileDataSource_Filename_ColumnID,
|
||||
PBXTargetDataSource_PrimaryAttribute,
|
||||
PBXFileDataSource_Built_ColumnID,
|
||||
PBXFileDataSource_ObjectSize_ColumnID,
|
||||
PBXFileDataSource_Errors_ColumnID,
|
||||
PBXFileDataSource_Warnings_ColumnID,
|
||||
);
|
||||
};
|
||||
PBXPerProjectTemplateStateSaveDate = 777108892;
|
||||
PBXWorkspaceStateSaveDate = 777108892;
|
||||
};
|
||||
sourceControlManager = 8B02375E1D42B1C400E1E8C8 /* Source Control */;
|
||||
userBuildSettings = {
|
||||
};
|
||||
};
|
||||
2407DEB6089929BA00EB68BF /* SmoothEQ3.cpp */ = {
|
||||
uiCtxt = {
|
||||
sepNavIntBoundsRect = "{{0, 0}, {948, 2628}}";
|
||||
sepNavSelRange = "{3745, 0}";
|
||||
sepNavVisRange = "{0, 1314}";
|
||||
sepNavWindowFrame = "{{12, 47}, {895, 831}}";
|
||||
};
|
||||
};
|
||||
245463B80991757100464AD3 /* SmoothEQ3.h */ = {
|
||||
uiCtxt = {
|
||||
sepNavIntBoundsRect = "{{0, 0}, {1110, 1584}}";
|
||||
sepNavSelRange = "{2784, 0}";
|
||||
sepNavVisRange = "{1975, 876}";
|
||||
sepNavWindowFrame = "{{20, 47}, {895, 831}}";
|
||||
};
|
||||
};
|
||||
24A2FFDB0F90D1DD003BB5A7 /* audioeffectx.cpp */ = {
|
||||
uiCtxt = {
|
||||
sepNavIntBoundsRect = "{{0, 0}, {859, 20267}}";
|
||||
sepNavSelRange = "{10616, 0}";
|
||||
sepNavVisRange = "{9653, 2414}";
|
||||
sepNavWindowFrame = "{{15, 42}, {895, 831}}";
|
||||
};
|
||||
};
|
||||
24D8286F09A914000093AEF8 /* SmoothEQ3Proc.cpp */ = {
|
||||
uiCtxt = {
|
||||
sepNavIntBoundsRect = "{{0, 0}, {1038, 4122}}";
|
||||
sepNavSelRange = "{10201, 0}";
|
||||
sepNavVisRange = "{7447, 2620}";
|
||||
sepNavWindowFrame = "{{31, 42}, {895, 831}}";
|
||||
};
|
||||
};
|
||||
8B02375E1D42B1C400E1E8C8 /* Source Control */ = {
|
||||
isa = PBXSourceControlManager;
|
||||
fallbackIsa = XCSourceControlManager;
|
||||
isSCMEnabled = 0;
|
||||
scmConfiguration = {
|
||||
repositoryNamesForRoots = {
|
||||
"" = "";
|
||||
};
|
||||
};
|
||||
};
|
||||
8B02375F1D42B1C400E1E8C8 /* Code sense */ = {
|
||||
isa = PBXCodeSenseManager;
|
||||
indexTemplatePath = "";
|
||||
};
|
||||
8D01CCC60486CAD60068D4B7 /* SmoothEQ3 */ = {
|
||||
activeExec = 0;
|
||||
};
|
||||
}
|
||||
1502
plugins/MacSignedVST/SmoothEQ3/SmoothEQ3.xcodeproj/christopherjohnson.perspectivev3
Executable file
1502
plugins/MacSignedVST/SmoothEQ3/SmoothEQ3.xcodeproj/christopherjohnson.perspectivev3
Executable file
File diff suppressed because it is too large
Load diff
462
plugins/MacSignedVST/SmoothEQ3/SmoothEQ3.xcodeproj/project.pbxproj
Executable file
462
plugins/MacSignedVST/SmoothEQ3/SmoothEQ3.xcodeproj/project.pbxproj
Executable file
|
|
@ -0,0 +1,462 @@
|
|||
// !$*UTF8*$!
|
||||
{
|
||||
archiveVersion = 1;
|
||||
classes = {
|
||||
};
|
||||
objectVersion = 45;
|
||||
objects = {
|
||||
|
||||
/* Begin PBXBuildFile section */
|
||||
2407DEB9089929BA00EB68BF /* SmoothEQ3.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2407DEB6089929BA00EB68BF /* SmoothEQ3.cpp */; };
|
||||
245463B90991757100464AD3 /* SmoothEQ3.h in Headers */ = {isa = PBXBuildFile; fileRef = 245463B80991757100464AD3 /* SmoothEQ3.h */; };
|
||||
24CFB70407E7A0220081BD57 /* PkgInfo in Resources */ = {isa = PBXBuildFile; fileRef = 24CFB70307E7A0220081BD57 /* PkgInfo */; };
|
||||
24D8287009A914000093AEF8 /* SmoothEQ3Proc.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 24D8286F09A914000093AEF8 /* SmoothEQ3Proc.cpp */; };
|
||||
24D8287F09A9164A0093AEF8 /* xcode_vst_prefix.h in Headers */ = {isa = PBXBuildFile; fileRef = 24D8287E09A9164A0093AEF8 /* xcode_vst_prefix.h */; };
|
||||
8B300D932E527D2B006F740B /* vstfxstore.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300D872E527D2B006F740B /* vstfxstore.h */; };
|
||||
8B300D942E527D2B006F740B /* aeffect.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300D882E527D2B006F740B /* aeffect.h */; };
|
||||
8B300D952E527D2B006F740B /* aeffectx.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300D892E527D2B006F740B /* aeffectx.h */; };
|
||||
8B300D962E527D2B006F740B /* audioeffectx.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300D8D2E527D2B006F740B /* audioeffectx.h */; };
|
||||
8B300D972E527D2B006F740B /* audioeffect.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300D8E2E527D2B006F740B /* audioeffect.cpp */; };
|
||||
8B300D982E527D2B006F740B /* audioeffectx.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300D8F2E527D2B006F740B /* audioeffectx.cpp */; };
|
||||
8B300D992E527D2B006F740B /* aeffeditor.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300D902E527D2B006F740B /* aeffeditor.h */; };
|
||||
8B300D9A2E527D2B006F740B /* vstplugmain.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B300D912E527D2B006F740B /* vstplugmain.cpp */; };
|
||||
8B300D9B2E527D2B006F740B /* audioeffect.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B300D922E527D2B006F740B /* audioeffect.h */; };
|
||||
/* End PBXBuildFile section */
|
||||
|
||||
/* Begin PBXFileReference section */
|
||||
2407DE920899296600EB68BF /* SmoothEQ3.vst */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = SmoothEQ3.vst; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
2407DEB6089929BA00EB68BF /* SmoothEQ3.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; name = SmoothEQ3.cpp; path = source/SmoothEQ3.cpp; sourceTree = "<group>"; };
|
||||
245463B80991757100464AD3 /* SmoothEQ3.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = SmoothEQ3.h; path = source/SmoothEQ3.h; sourceTree = "<group>"; };
|
||||
24CFB70307E7A0220081BD57 /* PkgInfo */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = PkgInfo; path = mac/PkgInfo; sourceTree = "<group>"; };
|
||||
24D8286F09A914000093AEF8 /* SmoothEQ3Proc.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SmoothEQ3Proc.cpp; path = source/SmoothEQ3Proc.cpp; sourceTree = "<group>"; };
|
||||
24D8287E09A9164A0093AEF8 /* xcode_vst_prefix.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = xcode_vst_prefix.h; path = mac/xcode_vst_prefix.h; sourceTree = SOURCE_ROOT; };
|
||||
8B300D872E527D2B006F740B /* vstfxstore.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = vstfxstore.h; sourceTree = "<group>"; };
|
||||
8B300D882E527D2B006F740B /* aeffect.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = aeffect.h; sourceTree = "<group>"; };
|
||||
8B300D892E527D2B006F740B /* aeffectx.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = aeffectx.h; sourceTree = "<group>"; };
|
||||
8B300D8D2E527D2B006F740B /* audioeffectx.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = audioeffectx.h; sourceTree = "<group>"; };
|
||||
8B300D8E2E527D2B006F740B /* audioeffect.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = audioeffect.cpp; sourceTree = "<group>"; };
|
||||
8B300D8F2E527D2B006F740B /* audioeffectx.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = audioeffectx.cpp; sourceTree = "<group>"; };
|
||||
8B300D902E527D2B006F740B /* aeffeditor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = aeffeditor.h; sourceTree = "<group>"; };
|
||||
8B300D912E527D2B006F740B /* vstplugmain.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = vstplugmain.cpp; sourceTree = "<group>"; };
|
||||
8B300D922E527D2B006F740B /* audioeffect.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = audioeffect.h; sourceTree = "<group>"; };
|
||||
8D01CCD10486CAD60068D4B7 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = Info.plist; path = mac/Info.plist; sourceTree = "<group>"; };
|
||||
/* End PBXFileReference section */
|
||||
|
||||
/* Begin PBXGroup section */
|
||||
089C166AFE841209C02AAC07 /* FM-Chopper */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
19C28FB4FE9D528D11CA2CBB /* Products */,
|
||||
089C167CFE841241C02AAC07 /* Resources */,
|
||||
08FB77ADFE841716C02AAC07 /* Source */,
|
||||
);
|
||||
name = "FM-Chopper";
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
089C167CFE841241C02AAC07 /* Resources */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
24D8287E09A9164A0093AEF8 /* xcode_vst_prefix.h */,
|
||||
24CFB70307E7A0220081BD57 /* PkgInfo */,
|
||||
8D01CCD10486CAD60068D4B7 /* Info.plist */,
|
||||
);
|
||||
name = Resources;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
08FB77ADFE841716C02AAC07 /* Source */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8B300D842E527D2B006F740B /* vstsdk2.4 */,
|
||||
2407DEB6089929BA00EB68BF /* SmoothEQ3.cpp */,
|
||||
24D8286F09A914000093AEF8 /* SmoothEQ3Proc.cpp */,
|
||||
245463B80991757100464AD3 /* SmoothEQ3.h */,
|
||||
);
|
||||
name = Source;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
19C28FB4FE9D528D11CA2CBB /* Products */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
2407DE920899296600EB68BF /* SmoothEQ3.vst */,
|
||||
);
|
||||
name = Products;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
8B300D842E527D2B006F740B /* vstsdk2.4 */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8B300D852E527D2B006F740B /* pluginterfaces */,
|
||||
8B300D8A2E527D2B006F740B /* public.sdk */,
|
||||
);
|
||||
name = vstsdk2.4;
|
||||
path = ../../../../vstsdk2.4;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
8B300D852E527D2B006F740B /* pluginterfaces */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8B300D862E527D2B006F740B /* vst2.x */,
|
||||
);
|
||||
path = pluginterfaces;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
8B300D862E527D2B006F740B /* vst2.x */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8B300D872E527D2B006F740B /* vstfxstore.h */,
|
||||
8B300D882E527D2B006F740B /* aeffect.h */,
|
||||
8B300D892E527D2B006F740B /* aeffectx.h */,
|
||||
);
|
||||
path = vst2.x;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
8B300D8A2E527D2B006F740B /* public.sdk */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8B300D8B2E527D2B006F740B /* source */,
|
||||
);
|
||||
path = public.sdk;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
8B300D8B2E527D2B006F740B /* source */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8B300D8C2E527D2B006F740B /* vst2.x */,
|
||||
);
|
||||
path = source;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
8B300D8C2E527D2B006F740B /* vst2.x */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8B300D8D2E527D2B006F740B /* audioeffectx.h */,
|
||||
8B300D8E2E527D2B006F740B /* audioeffect.cpp */,
|
||||
8B300D8F2E527D2B006F740B /* audioeffectx.cpp */,
|
||||
8B300D902E527D2B006F740B /* aeffeditor.h */,
|
||||
8B300D912E527D2B006F740B /* vstplugmain.cpp */,
|
||||
8B300D922E527D2B006F740B /* audioeffect.h */,
|
||||
);
|
||||
path = vst2.x;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
/* End PBXGroup section */
|
||||
|
||||
/* Begin PBXHeadersBuildPhase section */
|
||||
8D01CCC70486CAD60068D4B7 /* Headers */ = {
|
||||
isa = PBXHeadersBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
8B300D992E527D2B006F740B /* aeffeditor.h in Headers */,
|
||||
245463B90991757100464AD3 /* SmoothEQ3.h in Headers */,
|
||||
8B300D9B2E527D2B006F740B /* audioeffect.h in Headers */,
|
||||
8B300D942E527D2B006F740B /* aeffect.h in Headers */,
|
||||
24D8287F09A9164A0093AEF8 /* xcode_vst_prefix.h in Headers */,
|
||||
8B300D962E527D2B006F740B /* audioeffectx.h in Headers */,
|
||||
8B300D932E527D2B006F740B /* vstfxstore.h in Headers */,
|
||||
8B300D952E527D2B006F740B /* aeffectx.h in Headers */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXHeadersBuildPhase section */
|
||||
|
||||
/* Begin PBXNativeTarget section */
|
||||
8D01CCC60486CAD60068D4B7 /* SmoothEQ3 */ = {
|
||||
isa = PBXNativeTarget;
|
||||
buildConfigurationList = 24BEAAED08919AE700E695F9 /* Build configuration list for PBXNativeTarget "SmoothEQ3" */;
|
||||
buildPhases = (
|
||||
8D01CCC70486CAD60068D4B7 /* Headers */,
|
||||
8D01CCC90486CAD60068D4B7 /* Resources */,
|
||||
8D01CCCB0486CAD60068D4B7 /* Sources */,
|
||||
24CFB70807E7A07C0081BD57 /* Copy PkgInfo */,
|
||||
);
|
||||
buildRules = (
|
||||
);
|
||||
dependencies = (
|
||||
);
|
||||
name = SmoothEQ3;
|
||||
productInstallPath = "$(HOME)/Library/Bundles";
|
||||
productName = "FM-Chopper";
|
||||
productReference = 2407DE920899296600EB68BF /* SmoothEQ3.vst */;
|
||||
productType = "com.apple.product-type.bundle";
|
||||
};
|
||||
/* End PBXNativeTarget section */
|
||||
|
||||
/* Begin PBXProject section */
|
||||
089C1669FE841209C02AAC07 /* Project object */ = {
|
||||
isa = PBXProject;
|
||||
attributes = {
|
||||
LastUpgradeCheck = 1420;
|
||||
};
|
||||
buildConfigurationList = 24BEAAF108919AE700E695F9 /* Build configuration list for PBXProject "SmoothEQ3" */;
|
||||
compatibilityVersion = "Xcode 2.4";
|
||||
developmentRegion = en;
|
||||
hasScannedForEncodings = 1;
|
||||
knownRegions = (
|
||||
Base,
|
||||
fr,
|
||||
de,
|
||||
en,
|
||||
ja,
|
||||
);
|
||||
mainGroup = 089C166AFE841209C02AAC07 /* FM-Chopper */;
|
||||
projectDirPath = "";
|
||||
projectRoot = "";
|
||||
targets = (
|
||||
8D01CCC60486CAD60068D4B7 /* SmoothEQ3 */,
|
||||
);
|
||||
};
|
||||
/* End PBXProject section */
|
||||
|
||||
/* Begin PBXResourcesBuildPhase section */
|
||||
8D01CCC90486CAD60068D4B7 /* Resources */ = {
|
||||
isa = PBXResourcesBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
24CFB70407E7A0220081BD57 /* PkgInfo in Resources */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXResourcesBuildPhase section */
|
||||
|
||||
/* Begin PBXShellScriptBuildPhase section */
|
||||
24CFB70807E7A07C0081BD57 /* Copy PkgInfo */ = {
|
||||
isa = PBXShellScriptBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
);
|
||||
inputPaths = (
|
||||
);
|
||||
name = "Copy PkgInfo";
|
||||
outputPaths = (
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
shellPath = /bin/bash;
|
||||
shellScript = "cp mac/PkgInfo \"$BUILT_PRODUCTS_DIR/$PRODUCT_NAME.vst/Contents/\"";
|
||||
};
|
||||
/* End PBXShellScriptBuildPhase section */
|
||||
|
||||
/* Begin PBXSourcesBuildPhase section */
|
||||
8D01CCCB0486CAD60068D4B7 /* Sources */ = {
|
||||
isa = PBXSourcesBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
8B300D982E527D2B006F740B /* audioeffectx.cpp in Sources */,
|
||||
2407DEB9089929BA00EB68BF /* SmoothEQ3.cpp in Sources */,
|
||||
8B300D972E527D2B006F740B /* audioeffect.cpp in Sources */,
|
||||
8B300D9A2E527D2B006F740B /* vstplugmain.cpp in Sources */,
|
||||
24D8287009A914000093AEF8 /* SmoothEQ3Proc.cpp in Sources */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXSourcesBuildPhase section */
|
||||
|
||||
/* Begin XCBuildConfiguration section */
|
||||
24BEAAEE08919AE700E695F9 /* Debug */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
ARCHS = "$(ARCHS_STANDARD)";
|
||||
CLANG_ENABLE_OBJC_WEAK = YES;
|
||||
CODE_SIGN_IDENTITY = "Apple Development";
|
||||
"CODE_SIGN_IDENTITY[sdk=macosx*]" = "Developer ID Application";
|
||||
CODE_SIGN_STYLE = Manual;
|
||||
COPY_PHASE_STRIP = NO;
|
||||
DEAD_CODE_STRIPPING = YES;
|
||||
DEVELOPMENT_TEAM = "";
|
||||
"DEVELOPMENT_TEAM[sdk=macosx*]" = 9BMAKYA76W;
|
||||
FRAMEWORK_SEARCH_PATHS = "";
|
||||
GCC_DYNAMIC_NO_PIC = NO;
|
||||
GCC_ENABLE_TRIGRAPHS = NO;
|
||||
GCC_GENERATE_DEBUGGING_SYMBOLS = YES;
|
||||
GCC_MODEL_TUNING = "";
|
||||
GCC_PRECOMPILE_PREFIX_HEADER = YES;
|
||||
GCC_PREFIX_HEADER = "";
|
||||
GCC_WARN_ABOUT_MISSING_PROTOTYPES = NO;
|
||||
GCC_WARN_FOUR_CHARACTER_CONSTANTS = NO;
|
||||
GCC_WARN_UNKNOWN_PRAGMAS = NO;
|
||||
HEADER_SEARCH_PATHS = "/Users/christopherjohnson/Desktop/vstsdk2.4/**";
|
||||
INFOPLIST_FILE = ./mac/Info.plist;
|
||||
INSTALL_PATH = "$(HOME)/Library/Audio/Plug-Ins/VST";
|
||||
LIBRARY_SEARCH_PATHS = "";
|
||||
MACOSX_DEPLOYMENT_TARGET = 11.1;
|
||||
OTHER_CFLAGS = "";
|
||||
OTHER_LDFLAGS = "";
|
||||
OTHER_REZFLAGS = "";
|
||||
PRODUCT_BUNDLE_IDENTIFIER = com.airwindows.SmoothEQ3;
|
||||
PRODUCT_NAME = SmoothEQ3;
|
||||
PROVISIONING_PROFILE_SPECIFIER = "";
|
||||
SDKROOT = macosx;
|
||||
SECTORDER_FLAGS = "";
|
||||
STRIP_STYLE = debugging;
|
||||
WARNING_CFLAGS = (
|
||||
"-Wmost",
|
||||
"-Wno-four-char-constants",
|
||||
"-Wno-unknown-pragmas",
|
||||
);
|
||||
WRAPPER_EXTENSION = vst;
|
||||
};
|
||||
name = Debug;
|
||||
};
|
||||
24BEAAEF08919AE700E695F9 /* Release */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
ARCHS = "$(ARCHS_STANDARD)";
|
||||
CLANG_ENABLE_OBJC_WEAK = YES;
|
||||
CODE_SIGN_IDENTITY = "Apple Development";
|
||||
"CODE_SIGN_IDENTITY[sdk=macosx*]" = "Developer ID Application";
|
||||
CODE_SIGN_STYLE = Manual;
|
||||
COPY_PHASE_STRIP = YES;
|
||||
DEAD_CODE_STRIPPING = YES;
|
||||
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
|
||||
DEVELOPMENT_TEAM = "";
|
||||
"DEVELOPMENT_TEAM[sdk=macosx*]" = 9BMAKYA76W;
|
||||
FRAMEWORK_SEARCH_PATHS = "";
|
||||
GCC_C_LANGUAGE_STANDARD = c99;
|
||||
GCC_ENABLE_TRIGRAPHS = NO;
|
||||
GCC_GENERATE_DEBUGGING_SYMBOLS = NO;
|
||||
GCC_MODEL_TUNING = "";
|
||||
GCC_OPTIMIZATION_LEVEL = s;
|
||||
GCC_PRECOMPILE_PREFIX_HEADER = YES;
|
||||
GCC_PREFIX_HEADER = "";
|
||||
GCC_WARN_ABOUT_MISSING_PROTOTYPES = NO;
|
||||
GCC_WARN_FOUR_CHARACTER_CONSTANTS = NO;
|
||||
GCC_WARN_UNKNOWN_PRAGMAS = NO;
|
||||
HEADER_SEARCH_PATHS = "/Users/christopherjohnson/Desktop/vstsdk2.4/**";
|
||||
INFOPLIST_FILE = ./mac/Info.plist;
|
||||
INSTALL_PATH = "$(HOME)/Library/Audio/Plug-Ins/VST";
|
||||
LIBRARY_SEARCH_PATHS = "";
|
||||
MACOSX_DEPLOYMENT_TARGET = 11.1;
|
||||
OTHER_CFLAGS = "";
|
||||
OTHER_LDFLAGS = "";
|
||||
OTHER_REZFLAGS = "";
|
||||
PRODUCT_BUNDLE_IDENTIFIER = com.airwindows.SmoothEQ3;
|
||||
PRODUCT_NAME = SmoothEQ3;
|
||||
PROVISIONING_PROFILE_SPECIFIER = "";
|
||||
SDKROOT = macosx;
|
||||
SECTORDER_FLAGS = "";
|
||||
SKIP_INSTALL = NO;
|
||||
STRIP_INSTALLED_PRODUCT = YES;
|
||||
STRIP_STYLE = debugging;
|
||||
WARNING_CFLAGS = (
|
||||
"-Wmost",
|
||||
"-Wno-four-char-constants",
|
||||
"-Wno-unknown-pragmas",
|
||||
);
|
||||
WRAPPER_EXTENSION = vst;
|
||||
};
|
||||
name = Release;
|
||||
};
|
||||
24BEAAF208919AE700E695F9 /* Debug */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
ALWAYS_SEARCH_USER_PATHS = NO;
|
||||
ARCHS = "$(ARCHS_STANDARD)";
|
||||
CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES;
|
||||
CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
|
||||
CLANG_WARN_BOOL_CONVERSION = YES;
|
||||
CLANG_WARN_COMMA = YES;
|
||||
CLANG_WARN_CONSTANT_CONVERSION = YES;
|
||||
CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
|
||||
CLANG_WARN_EMPTY_BODY = YES;
|
||||
CLANG_WARN_ENUM_CONVERSION = YES;
|
||||
CLANG_WARN_INFINITE_RECURSION = YES;
|
||||
CLANG_WARN_INT_CONVERSION = YES;
|
||||
CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
|
||||
CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
|
||||
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
|
||||
CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
|
||||
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
|
||||
CLANG_WARN_STRICT_PROTOTYPES = YES;
|
||||
CLANG_WARN_SUSPICIOUS_MOVE = YES;
|
||||
CLANG_WARN_UNREACHABLE_CODE = YES;
|
||||
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
|
||||
DEAD_CODE_STRIPPING = YES;
|
||||
ENABLE_STRICT_OBJC_MSGSEND = YES;
|
||||
ENABLE_TESTABILITY = YES;
|
||||
GCC_MODEL_TUNING = G5;
|
||||
GCC_NO_COMMON_BLOCKS = YES;
|
||||
GCC_OPTIMIZATION_LEVEL = 0;
|
||||
GCC_PREPROCESSOR_DEFINITIONS = "DEBUG=1";
|
||||
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
|
||||
GCC_WARN_ABOUT_RETURN_TYPE = YES;
|
||||
GCC_WARN_UNDECLARED_SELECTOR = YES;
|
||||
GCC_WARN_UNINITIALIZED_AUTOS = YES;
|
||||
GCC_WARN_UNUSED_FUNCTION = YES;
|
||||
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||
INFOPLIST_FILE = "";
|
||||
INFOPLIST_PREPROCESS = NO;
|
||||
MACOSX_DEPLOYMENT_TARGET = 11.1;
|
||||
ONLY_ACTIVE_ARCH = YES;
|
||||
SDKROOT = macosx;
|
||||
};
|
||||
name = Debug;
|
||||
};
|
||||
24BEAAF308919AE700E695F9 /* Release */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
ALWAYS_SEARCH_USER_PATHS = NO;
|
||||
ARCHS = "$(ARCHS_STANDARD)";
|
||||
CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES;
|
||||
CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
|
||||
CLANG_WARN_BOOL_CONVERSION = YES;
|
||||
CLANG_WARN_COMMA = YES;
|
||||
CLANG_WARN_CONSTANT_CONVERSION = YES;
|
||||
CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
|
||||
CLANG_WARN_EMPTY_BODY = YES;
|
||||
CLANG_WARN_ENUM_CONVERSION = YES;
|
||||
CLANG_WARN_INFINITE_RECURSION = YES;
|
||||
CLANG_WARN_INT_CONVERSION = YES;
|
||||
CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
|
||||
CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
|
||||
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
|
||||
CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
|
||||
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
|
||||
CLANG_WARN_STRICT_PROTOTYPES = YES;
|
||||
CLANG_WARN_SUSPICIOUS_MOVE = YES;
|
||||
CLANG_WARN_UNREACHABLE_CODE = YES;
|
||||
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
|
||||
DEAD_CODE_STRIPPING = YES;
|
||||
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
|
||||
ENABLE_STRICT_OBJC_MSGSEND = YES;
|
||||
GCC_C_LANGUAGE_STANDARD = c99;
|
||||
GCC_MODEL_TUNING = G4;
|
||||
GCC_NO_COMMON_BLOCKS = YES;
|
||||
GCC_OPTIMIZATION_LEVEL = s;
|
||||
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
|
||||
GCC_WARN_ABOUT_RETURN_TYPE = YES;
|
||||
GCC_WARN_UNDECLARED_SELECTOR = YES;
|
||||
GCC_WARN_UNINITIALIZED_AUTOS = YES;
|
||||
GCC_WARN_UNUSED_FUNCTION = YES;
|
||||
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||
INFOPLIST_FILE = "";
|
||||
INFOPLIST_PREPROCESS = NO;
|
||||
MACOSX_DEPLOYMENT_TARGET = 11.1;
|
||||
ONLY_ACTIVE_ARCH = YES;
|
||||
SDKROOT = macosx;
|
||||
};
|
||||
name = Release;
|
||||
};
|
||||
/* End XCBuildConfiguration section */
|
||||
|
||||
/* Begin XCConfigurationList section */
|
||||
24BEAAED08919AE700E695F9 /* Build configuration list for PBXNativeTarget "SmoothEQ3" */ = {
|
||||
isa = XCConfigurationList;
|
||||
buildConfigurations = (
|
||||
24BEAAEE08919AE700E695F9 /* Debug */,
|
||||
24BEAAEF08919AE700E695F9 /* Release */,
|
||||
);
|
||||
defaultConfigurationIsVisible = 0;
|
||||
defaultConfigurationName = Debug;
|
||||
};
|
||||
24BEAAF108919AE700E695F9 /* Build configuration list for PBXProject "SmoothEQ3" */ = {
|
||||
isa = XCConfigurationList;
|
||||
buildConfigurations = (
|
||||
24BEAAF208919AE700E695F9 /* Debug */,
|
||||
24BEAAF308919AE700E695F9 /* Release */,
|
||||
);
|
||||
defaultConfigurationIsVisible = 0;
|
||||
defaultConfigurationName = Debug;
|
||||
};
|
||||
/* End XCConfigurationList section */
|
||||
};
|
||||
rootObject = 089C1669FE841209C02AAC07 /* Project object */;
|
||||
}
|
||||
7
plugins/MacSignedVST/SmoothEQ3/SmoothEQ3.xcodeproj/project.xcworkspace/contents.xcworkspacedata
generated
Executable file
7
plugins/MacSignedVST/SmoothEQ3/SmoothEQ3.xcodeproj/project.xcworkspace/contents.xcworkspacedata
generated
Executable file
|
|
@ -0,0 +1,7 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Workspace
|
||||
version = "1.0">
|
||||
<FileRef
|
||||
location = "self:Sample.xcodeproj">
|
||||
</FileRef>
|
||||
</Workspace>
|
||||
|
|
@ -0,0 +1,8 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>IDEDidComputeMac32BitWarning</key>
|
||||
<true/>
|
||||
</dict>
|
||||
</plist>
|
||||
Binary file not shown.
Binary file not shown.
1372
plugins/MacSignedVST/SmoothEQ3/SmoothEQ3.xcodeproj/spiadmin.mode1v3
Executable file
1372
plugins/MacSignedVST/SmoothEQ3/SmoothEQ3.xcodeproj/spiadmin.mode1v3
Executable file
File diff suppressed because it is too large
Load diff
143
plugins/MacSignedVST/SmoothEQ3/SmoothEQ3.xcodeproj/spiadmin.pbxuser
Executable file
143
plugins/MacSignedVST/SmoothEQ3/SmoothEQ3.xcodeproj/spiadmin.pbxuser
Executable file
|
|
@ -0,0 +1,143 @@
|
|||
// !$*UTF8*$!
|
||||
{
|
||||
089C1669FE841209C02AAC07 /* Project object */ = {
|
||||
activeBuildConfigurationName = Release;
|
||||
activeTarget = 8D01CCC60486CAD60068D4B7 /* Gain */;
|
||||
codeSenseManager = 91857D95148EF55400AAA11B /* Code sense */;
|
||||
perUserDictionary = {
|
||||
PBXConfiguration.PBXFileTableDataSource3.PBXFileTableDataSource = {
|
||||
PBXFileTableDataSourceColumnSortingDirectionKey = "-1";
|
||||
PBXFileTableDataSourceColumnSortingKey = PBXFileDataSource_Filename_ColumnID;
|
||||
PBXFileTableDataSourceColumnWidthsKey = (
|
||||
20,
|
||||
829,
|
||||
20,
|
||||
48,
|
||||
43,
|
||||
43,
|
||||
20,
|
||||
);
|
||||
PBXFileTableDataSourceColumnsKey = (
|
||||
PBXFileDataSource_FiletypeID,
|
||||
PBXFileDataSource_Filename_ColumnID,
|
||||
PBXFileDataSource_Built_ColumnID,
|
||||
PBXFileDataSource_ObjectSize_ColumnID,
|
||||
PBXFileDataSource_Errors_ColumnID,
|
||||
PBXFileDataSource_Warnings_ColumnID,
|
||||
PBXFileDataSource_Target_ColumnID,
|
||||
);
|
||||
};
|
||||
PBXConfiguration.PBXTargetDataSource.PBXTargetDataSource = {
|
||||
PBXFileTableDataSourceColumnSortingDirectionKey = "-1";
|
||||
PBXFileTableDataSourceColumnSortingKey = PBXFileDataSource_Filename_ColumnID;
|
||||
PBXFileTableDataSourceColumnWidthsKey = (
|
||||
20,
|
||||
789,
|
||||
60,
|
||||
20,
|
||||
48,
|
||||
43,
|
||||
43,
|
||||
);
|
||||
PBXFileTableDataSourceColumnsKey = (
|
||||
PBXFileDataSource_FiletypeID,
|
||||
PBXFileDataSource_Filename_ColumnID,
|
||||
PBXTargetDataSource_PrimaryAttribute,
|
||||
PBXFileDataSource_Built_ColumnID,
|
||||
PBXFileDataSource_ObjectSize_ColumnID,
|
||||
PBXFileDataSource_Errors_ColumnID,
|
||||
PBXFileDataSource_Warnings_ColumnID,
|
||||
);
|
||||
};
|
||||
PBXPerProjectTemplateStateSaveDate = 345089498;
|
||||
PBXWorkspaceStateSaveDate = 345089498;
|
||||
};
|
||||
perUserProjectItems = {
|
||||
911C2A9D1491A5F600A430AF /* PBXTextBookmark */ = 911C2A9D1491A5F600A430AF /* PBXTextBookmark */;
|
||||
915DCCBB1491A5B8008574E6 /* PBXTextBookmark */ = 915DCCBB1491A5B8008574E6 /* PBXTextBookmark */;
|
||||
};
|
||||
sourceControlManager = 91857D94148EF55400AAA11B /* Source Control */;
|
||||
userBuildSettings = {
|
||||
};
|
||||
};
|
||||
2407DEB6089929BA00EB68BF /* Gain.cpp */ = {
|
||||
uiCtxt = {
|
||||
sepNavIntBoundsRect = "{{0, 0}, {992, 1768}}";
|
||||
sepNavSelRange = "{247, 0}";
|
||||
sepNavVisRange = "{0, 1657}";
|
||||
};
|
||||
};
|
||||
245463B80991757100464AD3 /* Gain.h */ = {
|
||||
uiCtxt = {
|
||||
sepNavIntBoundsRect = "{{0, 0}, {992, 975}}";
|
||||
sepNavSelRange = "{1552, 0}";
|
||||
sepNavVisRange = "{796, 1857}";
|
||||
sepNavWindowFrame = "{{15, 465}, {750, 558}}";
|
||||
};
|
||||
};
|
||||
24A2FF9A0F90D1DD003BB5A7 /* adelaymain.cpp */ = {
|
||||
uiCtxt = {
|
||||
sepNavIntBoundsRect = "{{0, 0}, {992, 488}}";
|
||||
sepNavSelRange = "{0, 0}";
|
||||
sepNavVisRange = "{0, 798}";
|
||||
};
|
||||
};
|
||||
24A2FFDB0F90D1DD003BB5A7 /* audioeffectx.cpp */ = {
|
||||
uiCtxt = {
|
||||
sepNavIntBoundsRect = "{{0, 0}, {859, 19825}}";
|
||||
sepNavSelRange = "{10641, 0}";
|
||||
sepNavVisRange = "{10076, 1095}";
|
||||
};
|
||||
};
|
||||
24D8286F09A914000093AEF8 /* GainProc.cpp */ = {
|
||||
uiCtxt = {
|
||||
sepNavIntBoundsRect = "{{0, 0}, {992, 482}}";
|
||||
sepNavSelRange = "{239, 0}";
|
||||
sepNavVisRange = "{0, 950}";
|
||||
};
|
||||
};
|
||||
24D8287E09A9164A0093AEF8 /* xcode_vst_prefix.h */ = {
|
||||
uiCtxt = {
|
||||
sepNavIntBoundsRect = "{{0, 0}, {992, 493}}";
|
||||
sepNavSelRange = "{249, 0}";
|
||||
sepNavVisRange = "{0, 249}";
|
||||
};
|
||||
};
|
||||
8D01CCC60486CAD60068D4B7 /* Gain */ = {
|
||||
activeExec = 0;
|
||||
};
|
||||
911C2A9D1491A5F600A430AF /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 2407DEB6089929BA00EB68BF /* Gain.cpp */;
|
||||
name = "Gain.cpp: 10";
|
||||
rLen = 0;
|
||||
rLoc = 247;
|
||||
rType = 0;
|
||||
vrLen = 1657;
|
||||
vrLoc = 0;
|
||||
};
|
||||
915DCCBB1491A5B8008574E6 /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 2407DEB6089929BA00EB68BF /* Gain.cpp */;
|
||||
name = "Gain.cpp: 10";
|
||||
rLen = 0;
|
||||
rLoc = 247;
|
||||
rType = 0;
|
||||
vrLen = 1625;
|
||||
vrLoc = 0;
|
||||
};
|
||||
91857D94148EF55400AAA11B /* Source Control */ = {
|
||||
isa = PBXSourceControlManager;
|
||||
fallbackIsa = XCSourceControlManager;
|
||||
isSCMEnabled = 0;
|
||||
scmConfiguration = {
|
||||
repositoryNamesForRoots = {
|
||||
"" = "";
|
||||
};
|
||||
};
|
||||
};
|
||||
91857D95148EF55400AAA11B /* Code sense */ = {
|
||||
isa = PBXCodeSenseManager;
|
||||
indexTemplatePath = "";
|
||||
};
|
||||
}
|
||||
|
|
@ -0,0 +1,67 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Scheme
|
||||
LastUpgradeVersion = "1420"
|
||||
version = "1.3">
|
||||
<BuildAction
|
||||
parallelizeBuildables = "YES"
|
||||
buildImplicitDependencies = "YES">
|
||||
<BuildActionEntries>
|
||||
<BuildActionEntry
|
||||
buildForTesting = "YES"
|
||||
buildForRunning = "YES"
|
||||
buildForProfiling = "YES"
|
||||
buildForArchiving = "YES"
|
||||
buildForAnalyzing = "YES">
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "8D01CCC60486CAD60068D4B7"
|
||||
BuildableName = "Gain.vst"
|
||||
BlueprintName = "SmoothEQ3"
|
||||
ReferencedContainer = "container:SmoothEQ3.xcodeproj">
|
||||
</BuildableReference>
|
||||
</BuildActionEntry>
|
||||
</BuildActionEntries>
|
||||
</BuildAction>
|
||||
<TestAction
|
||||
buildConfiguration = "Debug"
|
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
|
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
|
||||
shouldUseLaunchSchemeArgsEnv = "YES">
|
||||
<Testables>
|
||||
</Testables>
|
||||
</TestAction>
|
||||
<LaunchAction
|
||||
buildConfiguration = "Release"
|
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
|
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
|
||||
launchStyle = "0"
|
||||
useCustomWorkingDirectory = "NO"
|
||||
ignoresPersistentStateOnLaunch = "NO"
|
||||
debugDocumentVersioning = "YES"
|
||||
debugServiceExtension = "internal"
|
||||
allowLocationSimulation = "YES">
|
||||
</LaunchAction>
|
||||
<ProfileAction
|
||||
buildConfiguration = "Release"
|
||||
shouldUseLaunchSchemeArgsEnv = "YES"
|
||||
savedToolIdentifier = ""
|
||||
useCustomWorkingDirectory = "NO"
|
||||
debugDocumentVersioning = "YES">
|
||||
<MacroExpansion>
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "8D01CCC60486CAD60068D4B7"
|
||||
BuildableName = "Gain.vst"
|
||||
BlueprintName = "SmoothEQ3"
|
||||
ReferencedContainer = "container:SmoothEQ3.xcodeproj">
|
||||
</BuildableReference>
|
||||
</MacroExpansion>
|
||||
</ProfileAction>
|
||||
<AnalyzeAction
|
||||
buildConfiguration = "Debug">
|
||||
</AnalyzeAction>
|
||||
<ArchiveAction
|
||||
buildConfiguration = "Release"
|
||||
revealArchiveInOrganizer = "YES">
|
||||
</ArchiveAction>
|
||||
</Scheme>
|
||||
|
|
@ -0,0 +1,22 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>SchemeUserState</key>
|
||||
<dict>
|
||||
<key>SmoothEQ3.xcscheme_^#shared#^_</key>
|
||||
<dict>
|
||||
<key>orderHint</key>
|
||||
<integer>1</integer>
|
||||
</dict>
|
||||
</dict>
|
||||
<key>SuppressBuildableAutocreation</key>
|
||||
<dict>
|
||||
<key>8D01CCC60486CAD60068D4B7</key>
|
||||
<dict>
|
||||
<key>primary</key>
|
||||
<true/>
|
||||
</dict>
|
||||
</dict>
|
||||
</dict>
|
||||
</plist>
|
||||
|
|
@ -0,0 +1,22 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>SchemeUserState</key>
|
||||
<dict>
|
||||
<key>«PROJECTNAME».xcscheme</key>
|
||||
<dict>
|
||||
<key>orderHint</key>
|
||||
<integer>0</integer>
|
||||
</dict>
|
||||
</dict>
|
||||
<key>SuppressBuildableAutocreation</key>
|
||||
<dict>
|
||||
<key>8D01CCC60486CAD60068D4B7</key>
|
||||
<dict>
|
||||
<key>primary</key>
|
||||
<true/>
|
||||
</dict>
|
||||
</dict>
|
||||
</dict>
|
||||
</plist>
|
||||
|
|
@ -0,0 +1,57 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Scheme
|
||||
version = "1.3">
|
||||
<BuildAction
|
||||
parallelizeBuildables = "YES"
|
||||
buildImplicitDependencies = "YES">
|
||||
<BuildActionEntries>
|
||||
<BuildActionEntry
|
||||
buildForTesting = "YES"
|
||||
buildForRunning = "YES"
|
||||
buildForProfiling = "YES"
|
||||
buildForArchiving = "YES"
|
||||
buildForAnalyzing = "YES">
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "8D01CCC60486CAD60068D4B7"
|
||||
BuildableName = "«PROJECTNAME».vst"
|
||||
BlueprintName = "«PROJECTNAME»"
|
||||
ReferencedContainer = "container:Sample.xcodeproj">
|
||||
</BuildableReference>
|
||||
</BuildActionEntry>
|
||||
</BuildActionEntries>
|
||||
</BuildAction>
|
||||
<TestAction
|
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.GDB"
|
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.GDB"
|
||||
shouldUseLaunchSchemeArgsEnv = "YES"
|
||||
buildConfiguration = "Debug">
|
||||
<Testables>
|
||||
</Testables>
|
||||
</TestAction>
|
||||
<LaunchAction
|
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.GDB"
|
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.GDB"
|
||||
launchStyle = "0"
|
||||
useCustomWorkingDirectory = "NO"
|
||||
buildConfiguration = "Debug"
|
||||
debugDocumentVersioning = "YES"
|
||||
allowLocationSimulation = "YES">
|
||||
<AdditionalOptions>
|
||||
</AdditionalOptions>
|
||||
</LaunchAction>
|
||||
<ProfileAction
|
||||
shouldUseLaunchSchemeArgsEnv = "YES"
|
||||
savedToolIdentifier = ""
|
||||
useCustomWorkingDirectory = "NO"
|
||||
buildConfiguration = "Release"
|
||||
debugDocumentVersioning = "YES">
|
||||
</ProfileAction>
|
||||
<AnalyzeAction
|
||||
buildConfiguration = "Debug">
|
||||
</AnalyzeAction>
|
||||
<ArchiveAction
|
||||
buildConfiguration = "Release"
|
||||
revealArchiveInOrganizer = "YES">
|
||||
</ArchiveAction>
|
||||
</Scheme>
|
||||
24
plugins/MacSignedVST/SmoothEQ3/mac/Info.plist
Executable file
24
plugins/MacSignedVST/SmoothEQ3/mac/Info.plist
Executable file
|
|
@ -0,0 +1,24 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>CFBundleDevelopmentRegion</key>
|
||||
<string>English</string>
|
||||
<key>CFBundleExecutable</key>
|
||||
<string>SmoothEQ3</string>
|
||||
<key>CFBundleIconFile</key>
|
||||
<string></string>
|
||||
<key>CFBundleIdentifier</key>
|
||||
<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
|
||||
<key>CFBundleInfoDictionaryVersion</key>
|
||||
<string>6.0</string>
|
||||
<key>CFBundlePackageType</key>
|
||||
<string>BNDL</string>
|
||||
<key>CFBundleSignature</key>
|
||||
<string>Dthr</string>
|
||||
<key>CFBundleVersion</key>
|
||||
<string>1.0</string>
|
||||
<key>CSResourcesFileMapped</key>
|
||||
<true/>
|
||||
</dict>
|
||||
</plist>
|
||||
1
plugins/MacSignedVST/SmoothEQ3/mac/PkgInfo
Executable file
1
plugins/MacSignedVST/SmoothEQ3/mac/PkgInfo
Executable file
|
|
@ -0,0 +1 @@
|
|||
BNDL????
|
||||
17
plugins/MacSignedVST/SmoothEQ3/mac/xcode_vst_prefix.h
Executable file
17
plugins/MacSignedVST/SmoothEQ3/mac/xcode_vst_prefix.h
Executable file
|
|
@ -0,0 +1,17 @@
|
|||
#define MAC 1
|
||||
#define MACX 1
|
||||
|
||||
#define USE_NAMESPACE 0
|
||||
|
||||
#define TARGET_API_MAC_CARBON 1
|
||||
#define USENAVSERVICES 1
|
||||
|
||||
#define __CF_USE_FRAMEWORK_INCLUDES__
|
||||
|
||||
#if __MWERKS__
|
||||
#define __NOEXTENSIONS__
|
||||
#endif
|
||||
|
||||
#define QUARTZ 1
|
||||
|
||||
#include <AvailabilityMacros.h>
|
||||
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Add a link
Reference in a new issue