virtual void compute(int count, FAUSTFLOAT** inputs, FAUSTFLOAT** outputs) {
		FAUSTFLOAT* input0 = inputs[0];
		FAUSTFLOAT* output0 = outputs[0];
		float fSlow0 = (float(fVslider0) + float(fVslider1));
		float fSlow1 = (1973.48f - (1000.f / ((fSlow0 * (1.9841f + (fSlow0 * (5.76598f + (fSlow0 * ((fSlow0 * (49.9836f + (fSlow0 * ((12.499f * fSlow0) - 40.3658f)))) - 28.3434f)))))) - 1.6086f)));
		float fSlow2 = (1.f - (fConst1 * (fSlow1 / (21.9737f + (fSlow0 * ((fSlow0 * (42.2734f + (fSlow0 * ((fSlow0 * (115.375f - (52.3051f * fSlow0))) - 99.7712f)))) - 24.555f))))));
		float fSlow3 = (0.007f * ((0.f - (2.f * fSlow2)) * cosf((fConst2 * fSlow1))));
		float fSlow4 = (0.007f * faustpower2_f(fSlow2));
		float fSlow5 = (fConst4 * (0.f - ((1.f / ((fSlow0 * (0.270546f + (fSlow0 * ((fSlow0 * (3.64419f + (fSlow0 * ((2.85511f * fSlow0) - 5.20364f)))) - 0.86331f)))) - 0.814203f)) + 0.933975f)));
		for (int i = 0; (i < count); i = (i + 1)) {
			float fTemp0 = float(input0[i]);
			fRec1[0] = ((0.993f * fRec1[1]) + fSlow3);
			fRec2[0] = ((0.993f * fRec2[1]) + fSlow4);
			fRec3[0] = ((0.993f * fRec3[1]) + fSlow5);
			fRec0[0] = (0.f - ((((fRec0[1] * (fRec1[0] - fConst3)) + (fRec0[2] * (fRec2[0] - (fConst3 * fRec1[0])))) + (fConst3 * ((0.f - fRec2[0]) * fRec0[3]))) - (fRec3[0] * fTemp0)));
			output0[i] = FAUSTFLOAT((((fRec0[0] + (fConst7 * fRec0[1])) + (fConst10 * fRec0[2])) + (fConst11 * fRec0[3])));
			fRec1[1] = fRec1[0];
			fRec2[1] = fRec2[0];
			fRec3[1] = fRec3[0];
			for (int j0 = 3; (j0 > 0); j0 = (j0 - 1)) {
				fRec0[j0] = fRec0[(j0 - 1)];
				
			}
			
		}
		
	}
	virtual void compute(int count, FAUSTFLOAT** inputs, FAUSTFLOAT** outputs) {
		FAUSTFLOAT* input0 = inputs[0];
		FAUSTFLOAT* output0 = outputs[0];
		float fSlow0 = float(fVslider0);
		float fSlow1 = (0.01f * fSlow0);
		float fSlow2 = (1.f - fSlow1);
		float fSlow3 = float(fVslider1);
		float fSlow4 = (0.001f * powf(10.f, (0.05f * (0.f - (0.5f * fSlow3)))));
		float fSlow5 = (0.0001f * faustpower2_f(fSlow0));
		float fSlow6 = (fSlow3 - 1.f);
		for (int i = 0; (i < count); i = (i + 1)) {
			float fTemp0 = float(input0[i]);
			fRec0[0] = ((0.999f * fRec0[1]) + fSlow4);
			float fTemp1 = fabsf((fSlow1 * fTemp0));
			output0[i] = FAUSTFLOAT(((fSlow2 + (fSlow1 * ((fRec0[0] * (fTemp1 + fSlow3)) / (1.f + ((fSlow5 * faustpower2_f(fTemp0)) + (fSlow6 * fTemp1)))))) * fTemp0));
			fRec0[1] = fRec0[0];
			
		}
		
	}
Exemplo n.º 3
0
void computephaser(phaser* dsp, int count, FAUSTFLOAT** inputs, FAUSTFLOAT** outputs) {
	FAUSTFLOAT* input0 = inputs[0];
	FAUSTFLOAT* input1 = inputs[1];
	FAUSTFLOAT* output0 = outputs[0];
	FAUSTFLOAT* output1 = outputs[1];
	float fSlow0 = powf(10.f, (0.05f * (float)dsp->fHslider0));
	float fSlow1 = (0.5f * ((int)(float)dsp->fCheckbox0?2.f:(float)dsp->fHslider1));
	float fSlow2 = (1.f - fSlow1);
	float fSlow3 = expf((dsp->fConst1 * (0.f - (3.14159f * (float)dsp->fHslider2))));
	float fSlow4 = faustpower2_f(fSlow3);
	float fSlow5 = (0.f - (2.f * fSlow3));
	float fSlow6 = (float)dsp->fHslider3;
	float fSlow7 = (dsp->fConst1 * fSlow6);
	float fSlow8 = (float)dsp->fHslider4;
	float fSlow9 = (6.28319f * fSlow8);
	float fSlow10 = (0.5f * ((6.28319f * max(fSlow8, (float)dsp->fHslider5)) - fSlow9));
	float fSlow11 = (dsp->fConst2 * (float)dsp->fHslider6);
	float fSlow12 = sinf(fSlow11);
	float fSlow13 = cosf(fSlow11);
	float fSlow14 = (0.f - fSlow12);
	float fSlow15 = (float)dsp->fHslider7;
	float fSlow16 = (dsp->fConst1 * faustpower2_f(fSlow6));
	float fSlow17 = (dsp->fConst1 * faustpower3_f(fSlow6));
	float fSlow18 = (dsp->fConst1 * faustpower4_f(fSlow6));
	float fSlow19 = ((int)(float)dsp->fCheckbox1?(0.f - fSlow1):fSlow1);
	/* C99 loop */
	{
		int i;
		for (i = 0; (i < count); i = (i + 1)) {
			dsp->iVec0[0] = 1;
			float fTemp0 = (float)input0[i];
			dsp->fRec5[0] = ((fSlow12 * dsp->fRec6[1]) + (fSlow13 * dsp->fRec5[1]));
			dsp->fRec6[0] = ((1.f + ((fSlow13 * dsp->fRec6[1]) + (fSlow14 * dsp->fRec5[1]))) - (float)dsp->iVec0[1]);
			float fTemp1 = ((fSlow10 * (1.f - dsp->fRec5[0])) + fSlow9);
			float fTemp2 = (dsp->fRec4[1] * cosf((fSlow7 * fTemp1)));
			dsp->fRec4[0] = (0.f - (((fSlow5 * fTemp2) + (fSlow4 * dsp->fRec4[2])) - ((fSlow0 * fTemp0) + (fSlow15 * dsp->fRec0[1]))));
			float fTemp3 = (dsp->fRec3[1] * cosf((fSlow16 * fTemp1)));
			dsp->fRec3[0] = ((fSlow5 * (fTemp2 - fTemp3)) + (dsp->fRec4[2] + (fSlow4 * (dsp->fRec4[0] - dsp->fRec3[2]))));
			float fTemp4 = (dsp->fRec2[1] * cosf((fSlow17 * fTemp1)));
			dsp->fRec2[0] = ((fSlow5 * (fTemp3 - fTemp4)) + (dsp->fRec3[2] + (fSlow4 * (dsp->fRec3[0] - dsp->fRec2[2]))));
			float fTemp5 = (dsp->fRec1[1] * cosf((fSlow18 * fTemp1)));
			dsp->fRec1[0] = ((fSlow5 * (fTemp4 - fTemp5)) + (dsp->fRec2[2] + (fSlow4 * (dsp->fRec2[0] - dsp->fRec1[2]))));
			dsp->fRec0[0] = ((fSlow4 * dsp->fRec1[0]) + ((fSlow5 * fTemp5) + dsp->fRec1[2]));
			output0[i] = (FAUSTFLOAT)((fSlow0 * (fSlow2 * fTemp0)) + (dsp->fRec0[0] * fSlow19));
			float fTemp6 = (float)input1[i];
			float fTemp7 = ((fSlow10 * (1.f - dsp->fRec6[0])) + fSlow9);
			float fTemp8 = (dsp->fRec11[1] * cosf((fSlow7 * fTemp7)));
			dsp->fRec11[0] = (0.f - (((fSlow5 * fTemp8) + (fSlow4 * dsp->fRec11[2])) - ((fSlow0 * fTemp6) + (fSlow15 * dsp->fRec7[1]))));
			float fTemp9 = (dsp->fRec10[1] * cosf((fSlow16 * fTemp7)));
			dsp->fRec10[0] = ((fSlow5 * (fTemp8 - fTemp9)) + (dsp->fRec11[2] + (fSlow4 * (dsp->fRec11[0] - dsp->fRec10[2]))));
			float fTemp10 = (dsp->fRec9[1] * cosf((fSlow17 * fTemp7)));
			dsp->fRec9[0] = ((fSlow5 * (fTemp9 - fTemp10)) + (dsp->fRec10[2] + (fSlow4 * (dsp->fRec10[0] - dsp->fRec9[2]))));
			float fTemp11 = (dsp->fRec8[1] * cosf((fSlow18 * fTemp7)));
			dsp->fRec8[0] = ((fSlow5 * (fTemp10 - fTemp11)) + (dsp->fRec9[2] + (fSlow4 * (dsp->fRec9[0] - dsp->fRec8[2]))));
			dsp->fRec7[0] = ((fSlow4 * dsp->fRec8[0]) + ((fSlow5 * fTemp11) + dsp->fRec8[2]));
			output1[i] = (FAUSTFLOAT)((fSlow0 * (fSlow2 * fTemp6)) + (dsp->fRec7[0] * fSlow19));
			dsp->iVec0[1] = dsp->iVec0[0];
			dsp->fRec5[1] = dsp->fRec5[0];
			dsp->fRec6[1] = dsp->fRec6[0];
			dsp->fRec4[2] = dsp->fRec4[1];
			dsp->fRec4[1] = dsp->fRec4[0];
			dsp->fRec3[2] = dsp->fRec3[1];
			dsp->fRec3[1] = dsp->fRec3[0];
			dsp->fRec2[2] = dsp->fRec2[1];
			dsp->fRec2[1] = dsp->fRec2[0];
			dsp->fRec1[2] = dsp->fRec1[1];
			dsp->fRec1[1] = dsp->fRec1[0];
			dsp->fRec0[1] = dsp->fRec0[0];
			dsp->fRec11[2] = dsp->fRec11[1];
			dsp->fRec11[1] = dsp->fRec11[0];
			dsp->fRec10[2] = dsp->fRec10[1];
			dsp->fRec10[1] = dsp->fRec10[0];
			dsp->fRec9[2] = dsp->fRec9[1];
			dsp->fRec9[1] = dsp->fRec9[0];
			dsp->fRec8[2] = dsp->fRec8[1];
			dsp->fRec8[1] = dsp->fRec8[0];
			dsp->fRec7[1] = dsp->fRec7[0];
			
		}
		
	}
	
}