com.softsynth.jsyn
Class Filter_1o1z

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.SynthUnit
                  extended by com.softsynth.jsyn.SynthFilter
                      extended by com.softsynth.jsyn.Filter_1o1z

public class Filter_1o1z
extends SynthFilter

Filter_1o1z unit. First Order, One Zero filter.

First Order, One Zero filter using the following formula:

y(n) = A0*x(n) + A1*x(n-1)

where y(n) is Output, x(n) is Input and x(n-1) is Input at the prior sample tick.

Setting A1 positive gives a low-pass response; setting A1 negative gives a high-pass response. The bandwidth of this filter is fairly high, so it often serves a building block by being cascaded with other filters.

If A0 and A1 are both 0.5, then this filter is a simple averaging lowpass filter, with a zero at SR/2 = 22050 Hz.

If A0 is 0.5 and A1 is -0.5, then this filter is a high pass filter, with a zero at 0.0 Hz.

A thorough description of the digital filter theory needed to fully describe this filter is beyond the scope of this document. Calculating coefficients is non-intuitive; the interested user is referred to one of the standard texts on filter theory (e.g., Moore, "Elements of Computer Music", section 2.4).

Version:
JSyn Version 005
Author:
(C) 1997 Phil Burk, SoftSynth.com, All Rights Reserved
See Also:
Synth, SynthUnit, Filter_1o1p, Filter_StateVariable

Field Summary
 SynthInput A0
          Filter coefficient.
 SynthInput A1
          Filter coefficient.
 
Fields inherited from class com.softsynth.jsyn.SynthFilter
input, output
 
Constructor Summary
Filter_1o1z()
           
Filter_1o1z(SynthContext synthContext)
          Create a SynthUnit that runs at Synth.RATE_AUDIO.
Filter_1o1z(SynthContext synthContext, int calculationRate)
           
 
Method Summary
 
Methods inherited from class com.softsynth.jsyn.SynthSound
addPort, addPort, findNamedPort, getName, getNumPorts, getPortAt, getPriority, setPriority, setStage, setStage, start, start, stop, stop
 
Methods inherited from class com.softsynth.jsyn.SynthObject
delete, deleteAll, enableDeletionByGarbageCollector, enableTracking, getPeer, 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

A0

public SynthInput A0
Filter coefficient. SIGNAL_TYPE_RAW_SIGNED, default = 0.5.


A1

public SynthInput A1
Filter coefficient. SIGNAL_TYPE_RAW_SIGNED, default = 0.5.

Constructor Detail

Filter_1o1z

public Filter_1o1z(SynthContext synthContext,
                   int calculationRate)
            throws SynthException
Throws:
SynthException

Filter_1o1z

public Filter_1o1z(SynthContext synthContext)
            throws SynthException
Create a SynthUnit that runs at Synth.RATE_AUDIO.

Throws:
SynthException - If resource allocation fails.

Filter_1o1z

public Filter_1o1z()
            throws SynthException
Throws:
SynthException