HAIL SKINI !!!

Synthesis toolKit Instrument Network Interface


Brief Descriptions of Classes in TK96CPP
A ToolKit of Sound Synthesis Classes 
        and Instruments in C++
Perry Cook, 1995-96, free distribution for  
academic, instructional, tutorial, etc. purposes.
Please read README.txt for more information.

<-----Building Blocks----->|<----------------Instruments------------------>

SourcSink Filters  Non-Lin   ModalSyn    FM      Physical  Sampling   PhISM
                              & Formant

Object---------------------------Instrmnt----------.  
  |     |    |        |    |                       |
Envelope| Filter   BowTabl |    .------------------|---------------------.
  |     |    |     JetTabl |    |    |    |     |   |         |    |    |
ADSR    | OneZero  ReedTabl| Modal4  | FM4Op---.|   |         |    |  PhISEM
        | OnePole          |    |    |    |    ||   |         |    |    |
  ._____| TwoZero     .____| Marimba | FM4Alg3 || Plucked  Sampler | Maracha
  |     | TwoPole     |      Vibraphn|    |    || Clarinet    |    | Whistle
Noise   | DCBlock  LipFilt   AgogoBel| HeavyMtl|| Brass    SamplFlt| VibraSlp
  |     | BiQuad                     |         || Flute       |    | Tambourn
SubNoise| AllPass1              .____|    .____|| Bowed     Moog1  |
        | DLineA                |         |    ||                  |
  ._____| DLineL             VoicForm  FM4Alg4 ||____.             |
  |     | DLineN                          |    |     |             |
RawWave | FormSwep                     PercFlut|  Plucked2         |
        |                                      |     |             |
  ._____|                                 .____|  Mandolin    .____|
  |     |                                 |    |              |
RawLoop |                              FM4Alg5 |           DrumSynt
        |                                 |    |
  ._____|                              Rhodey  |
  |     |                              Wurley  |
NiWave1S|                             TubeBell |
        |                                 .____|
  ._____|                                 |    |
  |     |                              FM4Alg6 |
Modulatr|                                 |    |
        |                              FMVoices|
  ._____|                                      |
  |     |                                 .____|
SingWave|                                 |
        |                              FM4Alg8
  ._____|                                 |
  |     |                              BeeThree
RawWvOut|
        |
  ._____|
  |     |
RawWvIn |
  ._____|
  |
NIFileIn

********** Instruments and Algorithms **************    
Each Class will be listed either with all UGs it uses, 
or the <> of which it is a flavor.
All inherit from Instrmnt, which inherits from Object.

Plucked.cpp     Basic Plucked String    DLineA,OneZero,OnePole,Noise
Plucked2.cpp    Not so Basic Pluck      DLineL,DlineA,OneZero
Mandolin.cpp    My Own Mandolin         <>
Bowed.cpp       Not Hideous Bowed String DlineL,BowTabl,OnePole,BiQuad,RawWave,ADSR
Brass.cpp       Not So Bad Brass Inst.  DLineA,LipFilt,DCBlock,ADSR,BiQuad
Clarinet.cpp    Pretty Good Clarinet    DLineL,ReedTabl,OneZero,Envelope,Noise.h
Flute.cpp       Pretty Good Flute       JetTabl,DLineL,OnePole,DCBlock,Noise,ADSR,RawWave
Modal4.cpp      4 Resonances  		Envelope,RawWave,BiQuad,OnePole
Marimba.cpp                             <>
Vibraphn.cpp                            <>
Agogobel.cpp                            <>
FM4Op.cpp       4 Operator FM Master    ADSR,RawLoop,TwoZero
FM4Alg3.cpp     3 Cascade w/ FB Mod.    <>
FM4Alg4.cpp     Like Alg3 but diff.     <>
FM4Alg5.cpp     2 Parallel Simple FMs   <>
FM4Alg6.cpp     3 Carr. with 1 Mod.     <>
FM4Alg8.cpp	4 Osc. Additive		<>
HeavyMtl.cpp    Distorted Synth         <>
PercFlut.cpp    Perc. Flute             <>
Rhodey.cpp      Rhodes-Like Elec. Piano <>
Wurley.cpp      Wurlitz. Elec. Piano    <>
TubeBell.cpp    Classic FM Bell         <>
FMVoices.cpp	3-Formant Voice Synth.	<>
BeeThree.cpp	Cheezy Organ for Paul	<>
Sampler.cpp     Sampling Synth.         4 each ADSR, RawWave (att), RawWave (loop), OnePole
SamplFlt.cpp    Sampler with Swept Filt.<>
Moog1.cpp       Swept filter flavor of  <>   
Voicform.cpp    Source/Filter Voice   	Envelope,Noise,SingWave,FormSwep,OnePole,OneZero
DrumSynt.cpp    Drum Synthesizer        bunch of NIFileIn, and OnePole

***********    Basic Unit Generators   **************

Master Object:  Object.cpp      for compatibility with Objective C

Source&Sink:    RawWave.cpp     Lin-Interp Wavetable, Looped or 1 Shot
                NIWave1S.cpp    Non-Interp Wavetable, 1 Shot
                RawLoop.cpp     Lin-Interp Wavetable, Looping   
                RawWvIn.cpp     Lin-Interp Wave In streaming 'device'   
                NIFileIn.cpp    Non-Interp Wave In streamer, closes & opens
                RawWvOut.cpp    Non-Interp Wave Out streaming 'device'
                Envelope.cpp    Linearly Goes to Target by Rate, + noteOn/Off
                ADSR.cpp        ADSR Flavor of Envelope
                Noise.cpp       Random Number Generator
                SubNoise.cpp    Random Numbers each N samples
                
Filters:        Filter.cpp      Filter Master Class
                OneZero.cpp     One Zero Filter
                OnePole.cpp     One Pole Filter
                AllPass1.cpp    1st Order All-Pass (phase) Filter
                DCBlock.cpp     DC Blocking 1Pole/1Zero Filter
                TwoZero.cpp     Two Zero Filter
                TwoPole.cpp     Two Pole Filter
                BiQuad.cpp      2Pole/2Zero Filter
                FormSwep.cpp    Sweepable 2Pole filter, go to target by rate
                DLineL.cpp      Linearly Interpolating Delay Line
                DLineA.cpp      AllPass Interpolating Delay Line
                DLineN.cpp      Non Interpolating Delay Line

NonLin&Lookup:  JetTabl.cpp     Cubic Jet NonLinearity
                BowTabl.cpp     1/x^3-like Bow NonLinearity
                ReedTabl.cpp    1 break point Reed NonLinearity
                LipFilt.cpp     Pressure Controlled BiQuad with NonLin 
                                
Derived:        Modulatr.cpp    Per. and Rnd. Vibrato: RawWave,SubNoise,OnePole
                SingWave.cpp    Looping Wavetable with: Modulatr,Envelope