Exemplo n.º 1
0
	void onProcess(AudioIOData& io){

		mAmpEnv.totalLength(mDur, 1);

		while(io()){
			float s1 = mOsc() * mAmpEnv() * mAmp;
			float s2;
			mPan(s1, s1,s2);
			io.out(0) += s1;
			io.out(1) += s2;
		}
		if(mAmpEnv.done()) free();
	}
Exemplo n.º 2
0
	void onProcess(AudioIOData& io){

		mAmpEnv.totalLength(mDur, 1);
		mVibEnv.lengths()[0] = mDur * (1-mVibRise);
		mVibEnv.lengths()[1] = mDur * mVibRise;

		while(io()){
			mVib.freq(mVibEnv());
			mOsc.freq(mOscFrq + mVib()*mVibDepth*mOscFrq);
		
			float s1 = mOsc() * mAmpEnv() * mAmp;
			float s2;
			mPan(s1, s1,s2);
			io.out(0) += s1;
			io.out(1) += s2;
		}
		if(mAmpEnv.done()) free();
	}
Exemplo n.º 3
0
	void onProcess(AudioIOData& io){
		
		mAmpEnv.totalLength(mDur, 1);
		mTrmEnv.totalLength(mDur);
		
		while(io()){
			
			mTrm.freq(mTrmEnv());
			//float trmAmp = mAmp - mTrm()*mTrmDepth; // Replaced with line below
			float trmAmp = (mTrm()*0.5+0.5)*mTrmDepth + (1-mTrmDepth); // Corrected 
			float s1 = mOsc() * mAmpEnv() * trmAmp * mAmp;
			float s2;
			mPan(s1, s1,s2);
			io.out(0) += s1;
			io.out(1) += s2;
		}
		if(mAmpEnv.done()) free();   
	}
Exemplo n.º 4
0
	void onProcess(AudioIOData& io){

		mAmpEnv.totalLength(mDur, 1);
		mCFEnv.totalLength(mDur);
		mBWEnv.totalLength(mDur);

		while(io()){
			// mix oscillator with noise
			float s1 = mOsc()*(1-mNoiseMix) + mNoise()*mNoiseMix;

			// apply resonant filter
			mRes.set(mCFEnv(), mBWEnv());
			s1 = mRes(s1);

			// appy amplitude envelope
			s1 *= mAmpEnv() * mAmp;

			float s2;
			mPan(s1, s1,s2);
			io.out(0) += s1;
			io.out(1) += s2;
		}
		if(mAmpEnv.done()) free();
	}