Music and Computers

WaveShaping using Tables and Chebyshev Formulae

(Special thanks to Nick Didkovsky for contributing the Chebyshev Polynomial calculating software.)

How it works:

The value of a sine wave is used lookup a value in a table. That value becomes the audio output  signal. The table's value can be drawn or generated using Chebyshev formulae. The output of different Chebyshev polynomials of increasing order are mixed together to generate a complex wave shape. Faders control the amount that each Chebyshev order contributes to the final polynomial.

To Do:

  1. Move the Oscilloscope window to the side.
  2. Scroll down until you can see the faders and the large rectangle..
  3. Turn up fader number 1 all the way so that the line in the box is slanted.
  4. Click on the "Play Keys" button to enable keys on the left side of the ASCII keyboard. Play a tune.
  5. If the keyboard ever stops playing notes, then click on the "Play Keys" button.
  6. Click the "Note On" box to turn on a steady note.
  7. Draw a little wiggle on the far right side of the line. Move the "Range" fader which controls the amplitude of the sine wave used to index into the table.
  8. Note that when the range does not include the wiggle, the sound is smooth. But when the range includes wiggle the notes sounds richer and the output has a wiggle in it.
  9. Hit the smooth button. By smoothing the transfer function, we get a smoother output with less harmonic content.
  10. Set the "Range" fader to 1.0 and the "Amplitude" fader to 0.5.
  11. Hit "Clear" then turn up fader #0. Notice the shape and that you hear silence. The sine wave is converted to a flat signal.
  12. Hit "Clear" then turn up fader #1 which is a first order Chebyshev polynomial. This linear transfer function converts a sine wave to another sinewave
  13. Hit "Clear and turn up fader #2 which is a first order Chebyshev polynomial. Note that we get a sine wave twice as high which is the second harmonic. Repeat for higher orders.
  14. Combine different polynomials and turn the Range fader up and down. Hear how a higher "Range" introduces higher harmonics.
  15. Push buttons. Get crazy.