Telecom 346/446 extra-credit programming assignment Worth up to 7-8 points of exam extra credit. Write a program that takes a sound file (.wav file) and identifies the frequencies it contains in either one or the other (but not both) of the following senses: 1. Dual-Tone Multi-Frequency (touchtone) encoding: The sound file contains two tones indicating one of the digits from 0-9 or *,#, as follows: 1209 Hz 1336 Hz 1477 Hz 697 Hz 1 2 3 770 Hz 4 5 6 852 Hz 7 8 9 941 Hz * 0 # The sound file will contain exactly two sine-wave tones. 2. Musical notes, in the primary octave. The sound file contains one to three tones, forming a chord, from the octave shown. Half-tones (sharps and flats) have been omitted. C 262 Hz D 294 Hz E 330 Hz F 349 Hz G 392 Hz A 440 Hz B 494 Hz In case 1, the program should print some analysis information, and then an indication of what key was pressed. In case 2, just print the analysis information and the notes. In each case, construct a set of seven pass-band filters, centered about each frequency and not containing any adjoining frequencies. Place the band cutoffs about halfway between each pair of adjacent frequencies (ie for D, the cutoffs might be 278 and 312). Run the sound file through each filter. Measure the resultant "power level" by finding the average of the absolute value of the amplitude. The power level should be near zero for absent frequencies, and much higher for the others.