com.softsynth.jmsl.jsyn.circuits
Class VariableRateSampleReader

java.lang.Object
  extended by java.util.Observable
      extended by com.softsynth.jsyn.SynthObject
          extended by com.softsynth.jsyn.SynthSound
              extended by com.softsynth.jsyn.SynthCircuit
                  extended by com.softsynth.jmsl.jsyn.circuits.VariableRateSampleReader

public class VariableRateSampleReader
extends com.softsynth.jsyn.SynthCircuit

Sample playback with amplitude envelopes. Four stages : SHORT_ATTACK_STAGE , NICE_RELEASE_STAGE_AUTOSTOP , CROSSFADE_ATTACK_STAGE , CROSSFADE_RELEASE_STAGE

Used by TransposingSamplePlayingInstrument and TransposingSampleSustainingInstrument

Author:
Nick Didkovsky, (c) 2005 Nick DIdkovsky, all rights reserved
See Also:
com.softsynth.jmsl.jsyn.TransposingSamplePlayingInstrument, com.softsynth.jmsl.jsyn.TransposingSampleSustainingInstrument

Field Summary
 com.softsynth.jsyn.SynthInput amplitude
           
static int CROSSFADE_ATTACK_STAGE
          queues ampEnv frame [ CROSSFADE_DURATION, 1.0 ]
static double CROSSFADE_DURATION
          0.001 sec.
static int CROSSFADE_RELEASE_STAGE
          queues ampEnv frame [ CROSSFADE_DURATION, 0.0 ]
 com.softsynth.jsyn.SynthInput envRate
           
static double NICE_RELEASE_DURATION
          0.2 sec
static int NICE_RELEASE_STAGE_AUTOSTOP
          queues ampEnv frame [ NICE_RELEASE_DURATION, 0.0 ]
 com.softsynth.jsyn.SynthInput rate
           
 com.softsynth.jsyn.SynthSampleQueue samplePort
           
static int SHORT_ATTACK_STAGE
          queues ampEnv frame [ 0.001, 1.0 ]
 
Fields inherited from class com.softsynth.jsyn.SynthCircuit
output
 
Constructor Summary
VariableRateSampleReader()
           
VariableRateSampleReader(com.softsynth.jsyn.SynthContext synthContext)
           
 
Method Summary
 void setStage(int time, int stage)
          stage is one of: SHORT_ATTACK_STAGE , NICE_RELEASE_STAGE_AUTOSTOP , CROSSFADE_ATTACK_STAGE , CROSSFADE_RELEASE_STAGE
 
Methods inherited from class com.softsynth.jsyn.SynthCircuit
add, compile, delete, getPeer, loadByName
 
Methods inherited from class com.softsynth.jsyn.SynthSound
addPort, addPort, findNamedPort, getName, getNumPorts, getPortAt, getPriority, setPriority, setStage, start, start, stop, stop
 
Methods inherited from class com.softsynth.jsyn.SynthObject
deleteAll, enableDeletionByGarbageCollector, enableTracking, getSynthContext, isTrackingEnabled, toString, track
 
Methods inherited from class java.util.Observable
addObserver, countObservers, deleteObserver, deleteObservers, hasChanged, notifyObservers, notifyObservers
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

amplitude

public com.softsynth.jsyn.SynthInput amplitude

rate

public com.softsynth.jsyn.SynthInput rate

envRate

public com.softsynth.jsyn.SynthInput envRate

samplePort

public com.softsynth.jsyn.SynthSampleQueue samplePort

SHORT_ATTACK_STAGE

public static final int SHORT_ATTACK_STAGE
queues ampEnv frame [ 0.001, 1.0 ]

See Also:
Constant Field Values

NICE_RELEASE_STAGE_AUTOSTOP

public static final int NICE_RELEASE_STAGE_AUTOSTOP
queues ampEnv frame [ NICE_RELEASE_DURATION, 0.0 ]

See Also:
Constant Field Values

CROSSFADE_ATTACK_STAGE

public static final int CROSSFADE_ATTACK_STAGE
queues ampEnv frame [ CROSSFADE_DURATION, 1.0 ]

See Also:
Constant Field Values

CROSSFADE_RELEASE_STAGE

public static final int CROSSFADE_RELEASE_STAGE
queues ampEnv frame [ CROSSFADE_DURATION, 0.0 ]

See Also:
Constant Field Values

NICE_RELEASE_DURATION

public static final double NICE_RELEASE_DURATION
0.2 sec

See Also:
Constant Field Values

CROSSFADE_DURATION

public static final double CROSSFADE_DURATION
0.001 sec. Use envRate to change

See Also:
Constant Field Values
Constructor Detail

VariableRateSampleReader

public VariableRateSampleReader()

VariableRateSampleReader

public VariableRateSampleReader(com.softsynth.jsyn.SynthContext synthContext)
Method Detail

setStage

public void setStage(int time,
                     int stage)
              throws com.softsynth.jsyn.SynthException
stage is one of: SHORT_ATTACK_STAGE , NICE_RELEASE_STAGE_AUTOSTOP , CROSSFADE_ATTACK_STAGE , CROSSFADE_RELEASE_STAGE

Overrides:
setStage in class com.softsynth.jsyn.SynthSound
Throws:
com.softsynth.jsyn.SynthException