Package

Source Code of SquareCombInst

import jm.audio.io.SampleOut;
import jm.audio.synth.Comb;
import jm.audio.synth.Envelope;
import jm.audio.synth.Oscillator;

public final class SquareCombInst extends jm.audio.Instrument {
    private int sampleRate;
    private int channels;
    private int delay;
    private double decay;

    /**
     * Constructor
     */
    public SquareCombInst(int sampleRate) {
        this(sampleRate, 20, 0.5);
    }

    public SquareCombInst(int sampleRate, int delay, double decay) {
        this.sampleRate = sampleRate;
        this.delay = delay;
        this.decay = decay;
        this.channels = 1;
    }

    /**
     * This method is automatically called on startup to initialise
     * any AudioObjects used by this instrument
     */
    public void createChain() {
        Oscillator osc = new Oscillator(this, Oscillator.SQUARE_WAVE,
                this.sampleRate, this.channels);
        Envelope env = new Envelope(osc, new double[]{0.0, 0.0, 0.1, 1.0, 0.3, 0.0});
        Comb comb = new Comb(env, delay, decay);
        SampleOut sout = new SampleOut(comb);
    }
}
TOP

Related Classes of SquareCombInst

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.