1. Reading samples from wave (uncompressed) audio files.
2. Writing a function to generate array of samples of various waves. Sine wave can be made with, you guessed it, sin(x) function. You can add in harmonics if you want. You can also produce square wave, triangle. Store the samples in an array and feed your filter.