コード例 #1
0
ファイル: Echo.cpp プロジェクト: LancePutnam/Gamma
	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();
	}
コード例 #2
0
ファイル: OscTrm.cpp プロジェクト: LancePutnam/Gamma
	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();   
	}
コード例 #3
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();
	}
コード例 #4
0
ファイル: additive.cpp プロジェクト: LancePutnam/Gamma
    void onProcess(AudioIOData& io) {

        mEnvStri.totalLength(mDur, 1);
        mEnvLow.totalLength(mDur, 1);
        mEnvUp.totalLength(mDur, 1);

        while(io()) {
            float s1 = (mOsc1() + mOsc2() + mOsc3()) * mEnvStri() * mAmpStri;
            s1 += (mOsc4() + mOsc5()) * mEnvLow() * mAmpLow;
            s1 += (mOsc6() + mOsc7() + mOsc8() + mOsc9()) * mEnvUp() * mAmpUp;
            s1 *= mAmp;
            float s2;
            mPan(s1, s1,s2);
            io.out(0) += s1;
            io.out(1) += s2;
        }
        if(mEnvStri.done()) free();
    }
コード例 #5
0
ファイル: Sub.cpp プロジェクト: LancePutnam/Gamma
	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();
	}