#ifndef __AQuickVoiceClip_H #define __AQuickVoiceClip_H #include class AQuickVoiceClip : public LV2Plugin<1> { public: AQuickVoiceClip(double rate); void run(uint32_t num_samples); static constexpr const char * URI = "https://www.airwindows.com/aquickvoiceclip-vst"; private: /* * These are the original DSP functions from the VST plugin. * They need to be called from the LV2 plugins `run` function. */ void processReplacing(float **in, float **out, VstInt32 samples); void processDoubleReplacing(double **in, double **out, VstInt32 samples); /* * Members needed by the processing functions. */ double LataLast6Sample; double LataLast5Sample; double LataLast4Sample; double LataLast3Sample; double LataLast2Sample; double LataLast1Sample; double LataHalfwaySample; double LataHalfDrySample; double LataHalfDiffSample; double LataLastDiffSample; double LataDrySample; double LataDiffSample; double LataPrevDiffSample; double RataLast6Sample; double RataLast5Sample; double RataLast4Sample; double RataLast3Sample; double RataLast2Sample; double RataLast1Sample; double RataHalfwaySample; double RataHalfDrySample; double RataHalfDiffSample; double RataLastDiffSample; double RataDrySample; double RataDiffSample; double RataPrevDiffSample; double ataK1; double ataK2; double ataK3; double ataK4; double ataK5; double ataK6; double ataK7; double ataK8; //end antialiasing variables double LlastSample; double LlastOutSample; double LlastOut2Sample; double LlastOut3Sample; double LlpDepth; double Lovershoot; double Loverall; double LiirSampleA; double LiirSampleB; double LiirSampleC; double LiirSampleD; double RlastSample; double RlastOutSample; double RlastOut2Sample; double RlastOut3Sample; double RlpDepth; double Rovershoot; double Roverall; double RiirSampleA; double RiirSampleB; double RiirSampleC; double RiirSampleD; bool flip; long double fpNShapeL; long double fpNShapeR; //default stuff float A; }; #endif